입력 및 출력 컨텍스트

컨텍스트를 사용하면 인텐트가 일치하기 위해 필요한 대화의 특정 상태를 정의하여 대화 흐름을 제어할 수 있습니다. 일반적으로 Dialogflow는 학습 문구가 최종 사용자 표현과 근접하게 유사하면 인텐트를 일치시킵니다. 그러나 인텐트에 컨텍스트를 적용하면 Dialogflow는 컨텍스트가 활성인 경우에만 그 인텐트를 일치 대상으로 고려합니다.

컨텍스트를 활성화하거나 비활성화할 수 있도록 허용하고 대화의 흐름을 제어할 수 있는 컨텍스트 유형은 두 가지입니다.

  • 입력 컨텍스트: 입력 컨텍스트는 인텐트에 적용되는 경우 최종 사용자 표현이 근접하게 일치하고 컨텍스트가 활성인 경우에만 인텐트를 일치시키도록 Dialogflow에 지시합니다.
  • 출력 컨텍스트: 출력 컨텍스트는 인텐트에 적용되는 경우 컨텍스트가 이미 활성 상태가 아니면 컨텍스트를 활성화하거나, 인텐트가 일치되어 있으면 컨텍스트를 유지하도록 Dialogflow에 지시합니다.

컨텍스트는 다음과 같은 사용 사례에 유용합니다.

  • 인텐트 일치 순서를 제어할 때
  • 학습 문구가 동일한 인텐트에 서로 다른 결과를 생성할 때

예를 들어 두 개의 인텐트에 '사진을 보여줘'라는 학습 문구가 있지만 하나는 개 사진을, 다른 하나는 고양이 사진을 보여준다고 가정해 보겠습니다. 사용자의 선호도에 따라 일치되는 인텐트를 제어하고자 합니다. 따라서 또 다른 인텐트가 사용자에게 개와 고양이 중 어느 동물을 더 선호하는지 묻고, '개를 좋아함' 또는 '고양이를 좋아함' 출력 컨텍스트를 활성화합니다. 각 '사진을 보여줘' 인텐트에는 Dialogflow가 개 또는 고양이에 대한 사용자의 선호도에 따라 예상되는 인텐트를 일치시키기 위한 해당되는 입력 컨텍스트가 있습니다.

출력 컨텍스트

인텐트에 출력 컨텍스트를 적용하면 Dialogflow는 이 컨텍스트가 활성 상태가 아닌 경우 컨텍스트를 활성화하고, 이미 활성 상태이면 컨텍스트를 갱신합니다.

  • 인텐트에 여러 개의 출력 컨텍스트를 적용하면 인텐트 일치를 더 세밀하게 제어할 수 있습니다.
  • 출력 컨텍스트의 수명을 조정하여 컨텍스트가 활성으로 유지되는 대화 차례의 수를 설정할 수 있습니다.

또한 사용자로부터 캡처한 정보를 미래의 응답에 전달하려는 경우에도 컨텍스트를 사용할 수 있습니다. 예를 들어 사용자가 개와 고양이 중 어느 동물을 더 좋아하는지 질문을 받은 경우 이 캡처된 개체의 매개변수 값을 출력 컨텍스트에 전달할 수 있습니다.

수명

기본적으로 출력 컨텍스트는 5번의 요청 후에 또는 해당 인텐트가 일치되고 20분 후에 만료됩니다. 다른 인텐트에 동일한 출력 컨텍스트가 포함된 경우 컨텍스트는 카운터와 시계를 5개 요청과 20분으로 재설정합니다. 후속 조치 인텐트의 컨텍스트 기본 수명은 요청 2개입니다.

'고양이를 좋아함' 컨텍스트의 수명이 2이고 관련 출력에 의해 컨텍스트의 수명이 재설정되지 않는 경우, 다음 예시와 같이 에이전트는 두 번의 대화 차례 동안만 '고양이를 좋아함'을 관찰할 수 있습니다.

  • '고양이를 좋아하세요?' - 이 인텐트에 컨텍스트가 연결됩니다.
  • '예, 좋아해요.' - 컨텍스트가 설정되고 활성화됩니다.
  • '고양이 사진을 보시겠어요?' - 차례 1.
  • '좋아요!' - 차례 1.
  • '고양이 사진입니다.' - 차례 2이고 컨텍스트가 삭제됩니다.

하나 이상의 출력 컨텍스트 추가

인텐트에 출력 컨텍스트를 추가하려면 다음 안내를 따르세요.

  1. 왼쪽 메뉴에서 인텐트를 클릭합니다.
  2. 인텐트를 클릭합니다.
  3. 컨텍스트 섹션 아래의 출력 컨텍스트 추가 텍스트 필드를 클릭합니다.
  4. 컨텍스트 이름을 입력하고 Enter/Return 키를 누릅니다.

  5. 선택적으로 수명 원을 클릭하고 컨텍스트의 수명을 변경합니다.

    저장하기 전에 여러 개의 출력 컨텍스트를 인텐트에 추가할 수 있습니다.

  6. 저장을 클릭합니다.

입력 컨텍스트

인텐트에 추가된 입력 컨텍스트는 컨텍스트가 활성 상태일 때 해당 인텐트가 일치될 가능성을 높입니다.

인텐트는 사용자가 정의된 학습 구문과 비슷하게 응답하는 경우 일치되지만 세션에 연결되는 컨텍스트는 인텐트 일치를 강제할 수 있습니다.

인텐트 일치 및 컨텍스트

인텐트 일치는 컨텍스트와 관련하여 다음 세 가지 규칙을 따릅니다.

  1. 컨텍스트가 없는 쿼리는 모든 인텐트와 일치할 수 있습니다.
  2. 그 수에 관계없이 컨텍스트가 있는 쿼리는 입력 컨텍스트가 없는 모든 인텐트와 일치할 수 있습니다.
  3. 하나 이상의 컨텍스트가 활성인 경우 인텐트의 입력 컨텍스트는 일치되는 활성 컨텍스트의 하위 집합(하나 이상)이어야 합니다.

예를 들어 컨텍스트 'A', 'B', 'C'가 활성인 경우 'A', 'B', 'D' 입력 컨텍스트가 있는 인텐트는 컨텍스트 'D'가 활성이 아니므로 일치되지 않습니다.

입력 컨텍스트 추가

인텐트에 입력 컨텍스트를 추가하려면 다음 단계를 따르세요.

  1. 왼쪽 메뉴에서 인텐트를 클릭합니다.
  2. 인텐트를 클릭합니다.
  3. 컨텍스트 섹션 아래의 입력 컨텍스트 추가 텍스트 필드를 클릭합니다.
  4. 입력을 시작하면 기존 입력 컨텍스트가 나열됩니다. 일치시킬 컨텍스트를 클릭합니다.

  5. 저장을 클릭합니다.

이 페이지가 도움이 되었나요? 평가를 부탁드립니다.

다음에 대한 의견 보내기...

Dialogflow 문서
도움이 필요하시나요? 지원 페이지를 방문하세요.