작업 및 매개변수

이 페이지에서는 인텐트의 작업매개변수 설정을 설명하고, 런타임 시 인텐트가 일치할 때 이러한 설정이 사용되는 방법을 설명합니다.

콘솔(일반적)을 사용하여 에이전트를 빌드할 때 인텐트 데이터에서 이러한 설정에 액세스할 수 있습니다. API(일반적이지 않음)를 사용하여 에이전트를 빌드하는 경우에는 인텐트 참조를 확인하세요.

작업 및 매개변수 필드의 스크린샷

작업

작업 필드는 서비스의 로직을 실행하는 데 도움이 되는 간단한 편의 필드입니다.

에이전트를 빌드할 때 이 필드를 유용하다고 생각하는 텍스트로 설정할 수 있습니다.

런타임 시 인텐트가 일치할 때 Dialogflow는 fulfillment 웹훅 요청 또는 API 상호작용 응답에 작업 값을 제공합니다. 서비스의 특정 로직을 트리거하는 데 사용할 수 있습니다.

매개변수

런타임 시 인텐트가 일치할 때 Dialogflow는 최종 사용자 발화에서 추출된 값을 매개변수로 제공합니다. 원시 최종 사용자 입력과 달리 매개변수는 일부 로직을 수행하거나 응답을 생성할 때 손쉽게 사용할 수 있는 구조화된 데이터입니다.

에이전트를 빌드할 때 학습 문구의 텍스트를 주석 처리하고 관련 매개변수를 구성하여 데이터 추출 방식을 제어할 수 있습니다.

다음 목록은 매개변수 구성 필드를 보여줍니다. 'Tuesday(화요일)'가 주석 처리된 경우 'book a room on Tuesday(화요일에 객실 예약)'이라는 학습 문구에 대한 예가 표시되어 있습니다.

  • 필수: 매개변수가 있어야만 인텐트가 완성되는 경우 이 체크박스를 선택하세요. 아래의 필수 매개변수를 사용하여 슬롯 채우기 섹션을 참조하세요.
  • 매개변수 이름: 매개변수를 식별하는 이름입니다. 예: date.
  • 개체: 매개변수와 관련된 개체 유형입니다. 예: @sys.date.
  • : 매개변수 값은 런타임에 설정된 추출 값을 참조하는 데 사용되는 식별자입니다. 아래에서 응답에 매개변수 값 사용 섹션을 참조하세요. 예: $date.
  • 목록: 추출된 값이 목록으로 반환되어야 하는 경우 이 체크박스를 선택하세요. 아래의 목록 매개변수 섹션을 참조하세요.
  • 프롬프트: 이 매개변수가 제공되지 않은 경우 에이전트가 최종 사용자에게 묻는 질문입니다. 이 필드는 필수 필드가 선택된 경우에만 사용됩니다. 아래의 필수 매개변수를 사용하여 슬롯 채우기 섹션을 참조하세요.
  • 기본값: 최종 사용자가 매개변수 값을 제공하지 않을 경우 매개변수에 사용되는 기본값입니다. 콘솔을 사용하여 기본값을 변경하려면 매개변수 행으로 마우스를 가져가서 오른쪽에 있는 메뉴를 클릭해야 합니다.

콘솔을 사용하여 에이전트를 빌드할 때는 기존 개체와 일치하는 텍스트가 포함된 학습 문구를 추가하면 매개변수가 자동으로 생성됩니다. 이렇게 자동으로 생성된 매개변수를 필요에 따라 수정할 수 있습니다.

API를 사용하여 에이전트를 빌드할 때는 학습 문구를 주석 처리하고 매개변수를 수동으로 구성해야 합니다. 인텐트 참조에서 TrainingPhraseParameter 유형을 확인하세요. Part.alias 필드는 학습 문구 주석을 특정 매개변수와 연결합니다.

런타임 시 인텐트가 일치할 때 Dialogflow는 fulfillment 웹훅 요청 또는 API 상호작용 응답에 매개변수 데이터를 제공합니다. 이는 관련 매개변수 유형으로 확인된 추출 값에 매개변수 이름을 매핑한 형태로 제공됩니다.

에이전트를 빌드할 때 추출된 값을 응답에 포함할 수 있습니다. 아래에서 응답에 매개변수 값 사용을 참조하세요.

목록 매개변수

콘솔을 사용하여 에이전트를 빌드할 때 목록 옵션을 선택하면 매개변수가 목록으로 구성됩니다. 목록에는 여러 요소가 포함될 수 있습니다. 예를 들어 생산 주문 에이전트는 최종 사용자로부터 다음과 같은 발화를 기대할 수 있습니다.

  • 'I want apples'
  • 'I want apples and oranges'
  • 'I want apples, oranges, and bananas'

응답에 매개변수 값 사용

매개변수 값 필드는 런타임 시 발화에서 추출된 값을 참조하는 식별자입니다. 변수 이름과 유사합니다.

에이전트를 빌드할 때 매개변수 값을 사용하여 응답에서 추출된 값을 참조할 수 있습니다. 이는 최종 사용자가 제공한 정보를 요약하는 데 유용합니다. 예를 들어 인텐트 응답은 다음과 비슷할 수 있습니다. 'Okay, I booked a room for you on $date(네, $date에 객실을 예약했습니다)'.

추출된 값의 원본 참조

특정 개체와 일치하는 텍스트는 처리하기에 더 편리한 텍스트로 변환되는 경우가 많습니다. 예를 들어 최종 사용자 발화의 'apples'라는 단어는 과일 개체에 해당하는 'apple'로 추출될 수 있습니다.

추출된 값을 최종 사용자가 입력한 그대로 참조하려면 매개변수 값에 .original을 추가합니다. 예를 들어 날짜 매개변수의 추출된 값을 그대로 사용하려면 $date.original로 참조하면 됩니다.

복합 개체에서 추출된 값 참조

복합 개체는 다른 하위 개체를 참조하는 개체입니다.

매개변수 하위 개체의 추출된 값을 참조하려면 매개변수 값에 .<sub-entity name>을 추가합니다. 예를 들어 매개변수 값이 '$move'이고 하위 개체 이름이 'direction'이면 추출된 값을 $move.direction으로 참조할 수 있습니다.

컨텍스트에서 추출된 값 참조

컨텍스트는 매개변수에서 추출된 값의 임시 스토리지 역할을 할 수 있습니다. 활성 컨텍스트에서 추출된 값을 참조하려면 #context_name.parameter_name과 같이 컨텍스트 이름, 매개변수 이름을 차례로 지정합니다.

이벤트 매개변수 참조

이벤트 매개변수를 참조하려면 #event_name.parameter_name 형식을 사용합니다.

필수 매개변수를 사용하여 슬롯 채우기

에이전트를 빌드할 때 매개변수를 필수 항목으로 표시할 수 있습니다. 최종 사용자가 이러한 각 필수 매개변수에 데이터를 지정해야만 인텐트가 완성됩니다.

필수 매개변수 필드의 스크린샷

런타임 시 인텐트가 일치할 때 최종 사용자가 각 필수 매개변수에 대한 데이터를 제공하지 않으면 Dialogflow 에이전트가 최종 사용자로부터 정보를 계속 수집합니다. 이러한 프로세스를 슬롯 채우기라고 합니다.

슬롯 채우기용 웹훅이 사용 설정되지 않은 경우, Dialogflow는 최종 사용자로부터 필요한 모든 데이터를 수집한 후에 fulfillment 웹훅 요청을 전송합니다.

Dialogflow는 최종 사용자로부터 필요한 모든 데이터를 수집할 때까지 API 상호작용 응답을 보내지 않습니다.

에이전트를 빌드할 때 에이전트가 최종 사용자로부터 매개변수 데이터를 가져오는 데 사용할 프롬프트를 제공해야 합니다. 또한 에이전트가 항상 같은 질문을 하지 않도록 프롬프트 변형을 제공할 수도 있습니다.

매개변수 프롬프트의 스크린샷

예를 들어 의류 매장 에이전트에 다음에 대한 필수 매개변수가 있는 인텐트가 있다고 가정해 보겠습니다.

  • clothing type(의류 유형)
  • quantity(수량)
  • size(사이즈)
  • color(색상)

완성된 인텐트는 다음과 유사할 것입니다.

사용자: I'd like to buy a t-shirt.(티셔츠를 사고 싶습니다.)
에이전트: How many do you want?(몇 벌이 필요하신가요?)
사용자: 3(3벌이요.)
에이전트: What color would you like?(어떤 색상을 원하세요?)
사용자: Black(검은색이요.)
에이전트: What size?(사이즈는요?)
사용자: Medium(미디엄이요.)
에이전트: Got it, that was three black t-shirts in medium(알겠습니다. 검은색 미디엄 사이즈 티셔츠 3벌이군요.)

최종 사용자가 단일 발화에서 2개 이상의 매개변수에 대한 데이터를 제공하면 Dialogflow는 제공된 데이터를 수집하고, 누락된 데이터를 계속 질문합니다. 예를 들어 최종 사용자가 'I'd like to buy three black t-shirts(검은색 티셔츠 세 벌을 사고 싶습니다)'라고 말하면 Dialogflow는 사용자에게 사이즈를 물어봅니다.

매개변수 정렬

에이전트를 빌드할 때 매개변수를 정렬할 수 있으며, 그러면 에이전트가 누락된 데이터를 묻는 순서가 결정됩니다.

콘솔에서 에이전트를 빌드할 때는 매개변수에 마우스를 가져가면 오른쪽에 재정렬 아이콘이 표시됩니다. 이 아이콘을 드래그하여 목록에서 매개변수의 위치를 변경할 수 있습니다.

프롬프트에서 추출된 값 참조

에이전트를 빌드할 때 프롬프트에서 추출된 값을 참조할 수 있습니다. 단, 프롬프트 전 필수 매개변수에서 추출된 값이어야 합니다. 예를 들어 'color' 매개변수가 'size' 매개변수보다 앞에 있다면 'size' 매개변수에 How many $color t-shirts would you like to buy?와 같은 프롬프트를 사용할 수 있습니다.

슬롯 채우기 취소

최종 사용자가 'Cancel(취소)', 'Stop it(멈춰)', 'That's enough(그만해)' 등과 같은 종료 문구를 말하면 에이전트는 'Okay, cancelled(네, 취소되었습니다)'로 응답하고 슬롯 채우기 컨텍스트를 지웁니다.

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

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

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