사용자가 작업을 실행하는 동안 기본 설정을 변경하는 상황이 반복적으로 발생합니다. 예를 들어, 항공편을 예약하는 동안 사용자는 여행 날짜를 변경할 수 있으며 경우에 따라 목적지도 변경할 수 있습니다. 엔티티 수정은 이러한 시나리오를 위한 기능입니다. 이 기능을 사용하면 사용자가 엔티티 값을 수정하고 수정 후 대화의 동작을 제어할 수 있습니다. 엔티티 수정 프로세스는 다음 세 단계로 구성됩니다.
- 수정 식별: 최종 사용자가 수정하기를 원하는지 식별하는 것은 봇에 내장된 NLP 기능에 의해 결정됩니다.
- 엔티티 수정: 수정하려는 의도를 식별하면 현재 작업이 보류되고 수정 흐름이 트리거 됩니다. 사용자 발화에 따라 세 가지 유형의 수정 흐름이 있을 수 있습니다.
- 사용자가 엔티티 이름(또는 엔티티 동의어)을 참조하면 엔티티 값을 입력하라는 메시지가 표시됩니다. 예: 사용자 발화 목적지를 변경하고 싶습니다는 목적지 엔티티의 프롬프트를 트리거 합니다. 대화에 동일한 엔티티 노드가 여러 번 표시되는 경우 사용자가 이미 입력한 최신 엔티티 노드가 수정됩니다.
- 사용자가 엔티티 값을 제공하면 엔티티가 그에 따라 업데이트됩니다. 예: 사용자 발화 비행기로 JFK에 가고 싶습니다는 목적지 엔티티 값을 변경합니다. 값이 대화에서 둘 이상의 엔티티와 호환되면 수정할 엔티티를 선택하라는 메시지가 표시됩니다.
- 사용자가 엔티티 및 해당 값을 참조하면 엔티티가 그에 따라 업데이트됩니다. 예: 사용자 발화 목적지를 JFK로 변경하고 싶습니다는 목적지 엔티티 값을 변경합니다.
- 수정 후 동작: 엔티티가 성공적으로 수정한 후 봇을 설정할 수 있는 대화 실행 흐름은 다음 세 가지입니다.
- 엔티티의 연결을 평가하여 수정된 노드에서 대화를 다시 실행합니다.
- 수정이 식별되거나 생성된 노드에서 대화를 다시 시작할 수 있습니다.
- 대화에 있는 특정 노드에서 대화를 다시 시작할 수 있습니다.
참고 사항: 이 기능은 일부 언어에서는 지원되지 않습니다. 자세한 내용은 여기를 클릭하세요.
구현
Kore.ai 플랫폼에서 엔티티 수정 동작은 다음 두 가지 수준에서 정의됩니다.
- 봇 수준
- 작업 수준
봇 수준
봇 수준 엔티티 수정 동작을 설정하려면 다음 단계를 따르십시오.
- 상단 메뉴에서 빌드 탭을 선택합니다
- 왼쪽 메뉴에서 인텔리전스 -> 엔티티 수정을 클릭합니다.
- 기본적으로 엔티티 수정은 비활성화되어 있습니다.
- 엔티티 수정을 허용하면 다양한 대화 재개 옵션을 사용할 수 있습니다.
- 수정된 엔티티에서 대화 다시 실행 – 수정된 엔티티의 연결을 평가하여 대화를 다시 시작하려면 이 옵션을 사용합니다. 추가로 선택할 수 있는 사항은 다음과 같습니다.
- 다운 스트림 엔티티에 대해 캡처된 엔티티 값 지우기. – 식별된 엔티티와 수정 사이에 캡처된 모든 엔티티를 지웁니다
- 이전에 표시된 메시지 표시 건너뛰기 – 메시지 노드의 메시지 전용.
- 수정 식별 노드에서 대화 재개– 이 옵션을 사용하여 수정이 식별된 노드에서 대화를 재개합니다.
- 수정된 엔티티에서 대화 다시 실행 – 수정된 엔티티의 연결을 평가하여 대화를 다시 시작하려면 이 옵션을 사용합니다. 추가로 선택할 수 있는 사항은 다음과 같습니다.
- 수정 프로세스는 숨겨진 엔티티 수정 옵션을 사용하여 숨김으로 표시된 엔티티로 확장할 수 있습니다.
작업 수준
작업 수준 엔티티 수정 동작을 설정하려면 다음 단계를 따르십시오. 엔티티 수정 동작도 작업 수준에서 설정됩니다. 작업 수준에서 정의된 설정은 봇 수준 설정을 재정의합니다.
- 대화 작업 페이지에서 생략 아이콘을 클릭하고 수정 동작 관리를 선택합니다.
- 수정 동작 관리 대화 상자는 기본적으로 봇 수준 설정 사용 옵션이 선택되어 있고 봇 수준 설정을 표시합니다.
- 봇 수준 설정을 재정의하려면 이 작업의 사용자 정의를 선택합니다.
- 엔티티 수정을 허용하지 않음 – 사용자가 이 작업에 대한 엔티티 값을 수정할 수 없습니다.
- 엔티티 수정 허용 – 세 개의 대화 재개 옵션이 추가로 제공됩니다.
- 수정된 엔티티에서 대화 다시 실행 – 엔티티 수정 동작도 작업 수준에서 설정합니다. 작업 수준에서 정의된 설정은 봇 수준 설정을 재정의합니다.
- 다운 스트림 엔티티에 대해 캡처된 엔티티 값 지우기. – 식별된 엔티티와 수정 사이에 캡처된 모든 엔티티를 지웁니다
- 이전에 표시된 메시지 표시 건너뛰기 – 메시지 노드의 메시지 전용.
- 수정 식별 노드에서 대화 재개– 이 옵션을 사용하여 수정이 식별된 노드에서 대화를 재개합니다.
- 대화에서 특정 노드로 이동 – 이 옵션을 사용하여 현재 대화에서 작업 흐름을 건너뛰어야 하는 노드를 선택합니다. 이 옵션을 사용하여 대화를 다시 시작하기 전에 사용자 정의 동작을 추가할 수 있습니다. 컨텍스트 개체는 이전 및 현재 값과 함께 수정된 엔티티의 세부 정보를 포함합니다. 이 정보를 사용하여 대화를 사용자 정의할 수 있습니다.
- 수정 프로세스는 숨겨진 엔티티 수정 옵션을 사용하여 숨겨진 엔티티로 확장할 수 있습니다.
- 수정된 엔티티에서 대화 다시 실행 – 엔티티 수정 동작도 작업 수준에서 설정합니다. 작업 수준에서 정의된 설정은 봇 수준 설정을 재정의합니다.
트리거
다음은 엔티티 수정 동작을 지원하는 패턴입니다. 이러한 패턴에 대한 사용자 발화는 엔티티 수정을 트리거합니다.
~amend_synonyms <entity_name> from <old_value> to <new_value>
예: "출발 날짜를 오늘에서 내일로 변경합니다".~amend_synonyms <entity_name> [to as from with] <new_value> [instead_of rather_than not] <old_value>
예: "출발 날짜를 오늘 대신 내일로 수정합니다".~amend_synonyms <entity_name><old_value> [to as with] <new_value>
예: "출발 날짜를 오늘에서 내일로 바꿉니다".~amend_synonyms <entity_name> from <old_value>
예: "출발 날짜를 오늘에서 변경합니다".~amend_synonyms <entity_name> [to as from with] <new_value>
예: "출발 날짜를 오늘에서 내일로 수정합니다".~amend_synonyms {from} <old_value> [to as with] <new_value>
예: "오늘에서 내일로 변경합니다".~amend_synonyms [to as from] <new_value> [instead_of rather_than not] <old_value>
예: "오늘 대신 내일로 변경합니다".~amend_synonyms [to as from] <new_value> instead
예: "대신 내일로 변경합니다".~amend_synonyms [([it that this] {to}) it that this to] <new_value>
예: "오늘을 내일로 변경합니다".~amend_synonyms <entity_name>
예: "출발 날짜를 수정합니다".~amend_synonyms <old_value>
예: "오늘 날짜 변경"[to as from] <new_value> [instead_of rather_than not] <old_value>
예: "오늘 대신 내일로"[to as from] <new_value> instead
예: "내일로"
위에서 언급한 패턴에서 ~amend_synonyms
개념은 "amend", "change","modify","alter","update", "replace", "make", "move", "upgrade", "want"
를 포함합니다. 참고 사항: 사용자는 이 패턴을 사용하여 여러 엔티티 값을 변경할 수 있습니다. 예를 들어, 출발 날짜를 오늘에서 내일로 변경하고 출발 도시를 시카고로 변경합니다에서는 출발 날짜와 도시가 모두 변경됩니다.
추가 참고 사항
- 범용 봇의 기본 언어에는 수정 기능이 적용되지 않습니다. 그러나 연결된 봇이 진행 중일 때는 연결된 봇의 설정을 수정하면 적용됩니다.
- 플랫폼에 내장된 학습 데이터는 수정 요청을 식별하는 데 사용되며 현재 영어로 진행되는 대화 작업의 대화에서만 지원됩니다.
- 이 기능의 범위에는 현재 이전에 채워진 엔티티의 교체만 포함됩니다. 부분 수정, 삭제, 항목 값 추가 등의 다른 시나리오는 포함되지 않습니다.