플레이북은 명시적으로 정의된 파라미터를 사용하여 컨텍스트 정보를 허용하고 내보냅니다. 파라미터는 사용자 선택 및 작업 결과와 같은 대화 정보를 저장합니다. 플레이북과 흐름 간에 이러한 파라미터 값을 전달할 수 있습니다.
매개변수 선언
입력 (읽기) 매개변수와 출력 (쓰기) 매개변수를 정의할 수 있습니다.
파라미터에는 이름, 설명, 다음 유형 중 하나가 포함됩니다.
- 문자열
- 숫자
- 불리언
- 도구별 매개변수 유형
매개변수가 목록인지도 지정할 수 있습니다.
입력 (읽기) 매개변수
각 플레이북에 대해 플레이북이 흐름 및 다른 플레이북에서 전달된 값을 사용할 수 있도록 하는 읽기 파라미터라고도 하는 입력 파라미터를 정의할 수 있습니다. 예를 들어 플레이북에서 사용자가 원하는 이름을 파라미터로 수신하여 사용자에게 개인적인 감사 인사를 전하는 데 이를 사용할 수 있습니다. 또는 플레이북에서 주문 식별자를 파라미터로 수신하여 도구로 주문 세부정보를 가져오는 데 사용할 수 있습니다.
입력 매개변수는 플레이북별로 정의되며 플레이북은 기본적으로 다른 Dialogflow CX 콘솔 매개변수 유형에 액세스할 수 없습니다. 흐름이 플레이북으로 전환되면 대상 플레이북에 동일한 이름의 입력 파라미터가 있는 경우 페이지 및 세션 파라미터가 플레이북에 전파됩니다. 전환 중에 흐름에서 플레이북으로 정보를 전달하려면 전환 전에 존재하는 세션 또는 페이지 파라미터와 동일한 이름으로 플레이북 입력 파라미터를 정의합니다.
입력 파라미터 값이 작업에 미치는 영향을 제어하는 예시를 만듭니다. 예를 들어 에이전트가 사용자를 참조하는 방식에 입력 매개변수가 영향을 미쳐야 하는 경우 매개변수 값을 정의하는 예시를 만들고 예시 내의 발화 작업에 동일한 값을 사용합니다. 자세한 내용은 매개변수 전달을 참조하세요.
출력 (쓰기, 반환) 매개변수
각 플레이북에 대해 출력 매개변수(쓰기 매개변수 및 반환 매개변수라고도 함)를 정의할 수 있습니다. 이를 통해 플레이북은 다른 흐름 또는 플레이북에서 사용할 정보를 내보낼 수 있습니다. 예를 들어 플레이북에서 사용자로부터 주문 번호를 수집하여 출력 매개변수를 통해 내보낼 수 있습니다. 또는 플레이북에서 도구를 사용하여 출력 매개변수를 통해 항공편을 예약하고 확인 번호를 내보낼 수 있습니다.
플레이북이 각 출력 파라미터의 값을 결정하는 방법을 제어하는 예시를 만듭니다. 예를 들어 확인 번호를 나타내는 출력 매개변수가 도구 사용 출력에서 값을 도출하는 경우 도구 출력이 플레이북 출력 매개변수의 값과 일치하는 예시를 만듭니다.
매개변수 전달
흐름과 달리 플레이북은 특정 구문을 사용한 파라미터 삽입을 지원하지 않습니다. 대신 플레이북은 지침 및 퓨샷 프롬프트 예시를 사용하여 파라미터 값을 사용하고 결정하는 방법을 결정합니다.
루틴 플레이북에서 흐름으로
루틴 플레이북에서 흐름으로 파라미터를 전달하려면 다음 안내를 따르세요.
- 루틴 플레이북의 쓰기 파라미터를 정의합니다. 이 파라미터는 루틴 플레이북이 완료되면 세션 파라미터가 됩니다.
- 흐름에서 세션 파라미터를 사용합니다.
- 안내 및 예시에 파라미터 사용을 포함합니다.
루틴 플레이북으로 이동
흐름에서 루틴 플레이북으로 파라미터를 전달하려면 다음 안내를 따르세요.
- 흐름에서 세션 파라미터를 작성합니다.
- 루틴 플레이북의 읽기 파라미터를 동일한 이름으로 정의합니다.
- 안내 및 예시에 파라미터 사용을 포함합니다.
태스크 플레이북을 플로우로 전환
태스크 플레이북에서 흐름으로 파라미터를 전달하려면 다음 안내를 따르세요.
- 흐름 설정에서 동일한 이름의 입력 매개변수를 정의합니다.
- 안내 및 예시에 파라미터 사용을 포함합니다.
태스크 플레이북으로 이동
흐름에서 상위 태스크 플레이북으로 파라미터를 전달하려면 다음 안내를 따르세요.
- 흐름 설정에서 반환 매개변수를 정의합니다.
- 안내 및 예시에 파라미터 사용을 포함합니다.
흐름에서 하위 태스크 플레이북으로 파라미터를 전달하려면 다음 안내를 따르세요.
- 흐름의 세션 파라미터와 동일한 이름을 공유하는 태스크 플레이북에서 태스크 입력 파라미터를 정의합니다.
- 안내 및 예시에 파라미터 사용을 포함합니다.
루틴 플레이북에서 태스크 플레이북으로
루틴 플레이북에서 태스크 플레이북으로 파라미터를 전달하려면 다음 안내를 따르세요.
- 동일한 이름을 사용하여 작업 플레이북의 입력 파라미터를 정의합니다.
- 안내 및 예시에 파라미터 사용을 포함합니다.
도구 관련 샘플
에이전트가 다음 태스크 플레이북을 사용하는 이벤트 티켓 판매용으로 설계되었다고 가정해 보세요.
Ticket ordering이라는 플레이북은Ticket sales API라는 도구를 사용하여 주문합니다.- 이 플레이북은 이름이
event_id인number유형의 입력 매개변수를 허용합니다. Ticket sales API도구에는event_id가 포함된 요청이 필요합니다.
- 이 플레이북은 이름이
Event selection이라는 플레이북에서는 사용자의 이벤트 선택을 도운 후 티켓을 구매할 수 있도록 매개변수event_id를 사용하여Ticket ordering으로 라우팅합니다.
이 예시에서 event_id가 Event selection에서 Ticket ordering으로, 그리고 Ticket ordering에서 Ticket sales API로 안정적으로 전달되기 위해서는 여러 예시가 필요합니다.
Ticket ordering 플레이북에는 다음과 같은 여러 예시가 포함되어야 합니다.
- 예시마다 다른 현실적인 값으로 입력 매개변수
event_id를 지정합니다. - 입력 매개변수에 지정된 것과 동일한 현실적인
event_id값을 포함하는 요청 본문에 도구 사용 작업을 포함합니다.
Event selection 플레이북에는 다음과 같은 여러 예시가 포함되어야 합니다.
- 현실적인
event_id가 있는 이벤트가 선택된 사용자 발화를 포함합니다. 각 예시에는 다른 ID가 있습니다. - 선택에 따라 결정된 것과 동일한 현실적인
event_id로event_id매개변수를 설정하는Ticket ordering의 플레이북 호출을 포함합니다.
예시 추가 외에 지침, 목표 또는 도구 세부정보에 매개변수 사용 방법을 설명하는 구체적인 지침을 추가합니다.
예를 들어 Ticket ordering 플레이북에는 다음 지침이 포함될 수 있습니다.
- Use parameter event_id to send a buy_tickets request with ${TOOL: Ticket sales API}
설명된 예시와 지침을 통해 Event selection 플레이북은 사용자의 선택에 따라 event_id를 올바르게 결정하고 이를 event_id라는 입력 매개변수로 Ticket ordering 플레이북에 전달합니다. 그런 다음 Ticket ordering은 요청 본문에서 동일한 event_id를 Ticket sales API에 전달합니다. Playbook은 매개변수 사용 방법을 추론하는 데 도움이 되는 고유한 파라미터 값을 가진 예시를 사용합니다.