응답

인텐트에는 인텐트가 일치된 후 응답을 반환할 수 있는 기본 제공 응답 핸들러가 있습니다. 이 기능은 정적 응답만 지원하지만 이러한 응답에서 매개변수 참조를 사용하여 어느 정도 동적으로 만들 수 있습니다. 이는 최종 사용자가 제공한 정보를 요약하는 데 유용합니다. 예를 들어 인텐트 응답은 다음과 비슷할 수 있습니다. 'Okay, I booked a room for you on $date(네, $date에 객실을 예약했습니다)'.

일부 경우에는 이것만 있으면 됩니다. 코드에서 작업을 실행하거나 동적 응답을 작성해야 하는 경우 아래 동적 응답 옵션 중 하나를 사용해야 합니다. 일반적으로 에이전트는 정적 응답과 동적 응답을 혼합하여 사용합니다.

여러 유형의 응답을 제공할 수 있습니다. 기본 응답 유형은 텍스트 응답입니다. 다른 유형의 응답을 사용할 수 있으며(이미지, 오디오, 합성된 음성 등) 그중 일부는 특정 플랫폼 전용입니다.

인텐트에 두 개 이상의 응답 변형을 정의하는 경우 에이전트는 무작위로 응답을 선택합니다. 에이전트가 자연스러운 대화를 할 수 있도록 여러 개의 응답 변형을 추가해야 합니다.

에이전트를 빌드할 때 각 인텐트에 대한 응답 데이터를 제공해야 합니다. API 또는 fulfillment를 사용하여 Dialogflow와 상호작용하는 경우 두 메서드 모두 동적으로 응답을 생성할 수 있으므로 엄밀히 말하자면 응답 데이터를 제공할 필요는 없습니다. 그러나 테스트를 위해 시뮬레이터를 사용하거나 간단한 응답이 있는 인 텐트를 정의하려는 경우 응답 데이터를 제공해야 합니다.

일반적으로 인텐트 응답은 다른 인텐트와 일치하는 표현을 제공하도록 최종 사용자를 유도해야 합니다. 또한 응답은 구체적인 데이터를 제공하도록 최종 사용자를 안내해야 합니다. 예를 들어 'Where were you born?'과 같이 여러 의미로 해석될 수 있는 질문보다 'What city were you born in?'과 같은 질문이 더 낫습니다.

이 데이터를 찾을 수 있는 위치

에이전트를 빌드할 때는 Dialogflow 콘솔을 사용하는 것이 가장 일반적입니다(문서 보기, 콘솔 열기). 아래의 안내는 콘솔 사용에 중점을 둡니다. 인텐트 응답 데이터에 액세스하려면 다음 안내를 따르세요.

  1. Dialogflow 콘솔로 이동합니다.
  2. 에이전트를 선택합니다.
  3. 왼쪽 사이드바 메뉴에서 인텐트를 선택합니다.
  4. 인텐트를 선택합니다.
  5. 응답 섹션까지 아래로 스크롤합니다.

콘솔 대신 API를 사용하여 에이전트를 빌드하는 경우 인텐트 참조를 확인하세요. API 필드 이름은 콘솔 필드 이름과 유사합니다. 아래 안내에서 콘솔과 API의 중요한 차이점을 볼 수 있습니다.

응답 플랫폼

각 응답은 기본 플랫폼(API에서 PLATFORM_UNSPECIFIED) 또는 특정 통합 플랫폼에 대해 정의됩니다. 통합을 사용하지 않는 경우 모든 응답에서 기본 플랫폼을 사용할 수 있습니다. 통합을 사용하는 경우 각 통합은 고유 응답을 갖거나 기본 응답을 사용하도록 구성될 수 있습니다.

플랫폼별 응답에 대한 자세한 내용은 리치 메시지를 참조하세요.

기본 제공 응답 만들기

기본 제공 응답을 만들려면 다음 안내를 따르세요.

  1. 기본 또는 특정 플랫폼을 선택합니다.
  2. 원하는 유형의 응답(예: 텍스트 응답)이 목록에 없는 경우 응답 추가를 클릭하고 응답 유형을 선택합니다.
  3. 응답에 대한 필수 정보를 입력합니다.
  4. 저장을 클릭합니다.

fulfillment를 사용한 동적 응답

다음은 fulfillment를 사용한 동적 응답의 처리 흐름입니다.

  1. Dialogflow는 일반적으로 통합 앱을 통해 최종 사용자와 상호작용합니다.
  2. fulfillment가 사용 설정된 인텐트가 일치하면 Dialogflow는 기본 제공 인텐트 응답을 기반으로 일치된 인텐트, 작업, 매개변수, 응답 메시지에 대한 정보가 포함된 웹훅 요청을 서비스로 보냅니다.
  3. 서비스는 데이터베이스 읽기/쓰기 또는 기타 서비스 호출과 같은 필요한 작업을 수행합니다.
  4. 서비스는 제공된 응답 메시지를 사용하거나 수정된 응답 메시지를 생성하여 응답 메시지를 만듭니다.
  5. 서비스가 Dialogflow에 응답 메시지가 포함된 웹훅 응답을 보냅니다.
  6. Dialogflow는 응답 메시지를 최종 사용자에게 전달합니다.

API를 사용한 동적 응답

다음은 API를 사용한 동적 응답의 처리 흐름입니다.

  1. 서비스는 일반적으로 커스텀 앱을 통해 최종 사용자와 상호작용하고 사용자의 표현을 받습니다.
  2. 서비스가 Dialogflow에 인텐트 감지 요청을 보냅니다(세션 detectIntent 메서드 참조).
  3. Dialogflow는 기본 제공 인텐트 응답을 기반으로 일치된 인텐트, 작업, 매개변수, 응답 메시지에 대한 정보가 포함된 인텐트 감지 응답을 서비스로 보냅니다.
  4. 서비스는 데이터베이스 읽기/쓰기 또는 기타 서비스 호출과 같은 필요한 작업을 수행합니다.
  5. 서비스는 제공된 응답 메시지를 사용하거나 수정된 응답 메시지를 생성하여 응답 메시지를 만듭니다.
  6. 서비스는 응답 메시지로 최종 사용자에게 응답합니다.

특수문자

일부 특수문자는 응답에서 이스케이프 처리해야 합니다.

응답에 달러 기호($) 또는 번호 기호(#)를 사용하려면 기호 바로 뒤에 오는 내용을 중괄호({})로 묶어야 합니다. 예를 들면 다음과 같습니다.

  • ${100}$100로 확인됩니다.
  • ${$number}$100로 확인됩니다. 여기서 $number는 값이 100인 매개변수 참조입니다.
  • #{hello}#hello로 확인됩니다.

응답에서 중괄호({})를 사용하려면 이중 중괄호를 사용합니다. 예를 들면 다음과 같습니다.

  • {{hello}}{hello}로 확인됩니다.

빈 매개변수 값 처리

인텐트에 빈 값으로 확인될 수 있는 매개변수가 있는 경우 해당 매개변수를 사용하지 않는 응답 변형을 하나 이상 제공해야 합니다.

예를 들어 인텐트에 2개의 매개변수가 있는 경우(p1p2) 둘 중 하나 또는 둘 모두 비어 있을 수 있으므로 4개 이상의 응답 변형을 제공해야 합니다.

  • 알겠습니다. $p1과 $p2를 말씀하셨습니다.
  • 알겠습니다. $p1이라고 하셨습니다.
  • 알겠습니다. $p2라고 하셨습니다.
  • 알겠습니다.
이 페이지가 도움이 되었나요? 평가를 부탁드립니다.

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

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