페이지

Dialogflow CX 대화(세션)를 상태 머신으로 설명하고 시각화할 수 있습니다. CX 세션의 상태는 페이지로 표시됩니다.

흐름에 대해 여러 페이지를 정의하면 조합된 페이지에서 흐름이 설계된 주제에 대한 완전한 대화를 처리할 수 있습니다. 특정 시점에 정확히 하나의 페이지는 현재 페이지이고, 현재 페이지는 활성 페이지로 간주되며, 해당 페이지와 연결된 흐름은 활성으로 간주됩니다. 모든 흐름에는 특수한 시작 페이지가 있습니다. 처음에 흐름이 활성화되면 시작 페이지가 현재 페이지가 됩니다. 각 대화 차례에서 현재 페이지는 동일하게 유지되거나 다른 페이지로 전환됩니다.

페이지가 나타내는 대화 상태와 관련된 정보를 최종 사용자로부터 수집하도록 각 페이지를 구성합니다. 예를 들어 아래의 다이어그램에서 피자 배달 에이전트의 음식 주문 흐름을 위한 파란색 페이지를 만들 수 있습니다. 다이어그램의 시작 노드는 음식 주문 흐름의 시작 페이지를 나타냅니다. 흐름이 완료되면 확인 흐름으로 전환됩니다.

다중 흐름 다이어그램 예시

페이지의 수명 주기

페이지가 활성화되면 에이전트는 입력 fulfillment, 양식 사전 작성, 상태 핸들러 평가, 양식 매개변수 프롬프트, 최종 사용자에게 응답 메시지 전송, 페이지 변경 또는 반복 루프를 포함하는 여러 단계를 따릅니다.

페이지 수명주기 다이어그램

이 프로세스의 세부정보는 다음과 같습니다.

  1. 페이지에 항목 fulfillment가 있으면 호출됩니다. fulfillment가 제공하는 모든 정적 응답은 응답 큐에 추가됩니다.

    부분 응답이 사용 설정된 경우 Dialogflow는 응답 큐를 삭제하고 대기 중인 모든 메시지를 스트리밍 API 호출자의 부분 응답으로 전송합니다.

    fulfillment에 웹훅이 있으면 웹훅이 호출되어 큐에 응답을 추가할 수 있습니다. 이러한 추가 응답은 응답 큐의 즉각적인 플러시를 트리거하지 않습니다.

  2. 페이지에 양식 매개변수가 있는 경우 다음과 같이 사전 작성될 수 있습니다.

  3. 상태 핸들러가 범위 이내인 경우 핸들러 평가 순서 규칙에 따라 핸들러가 평가됩니다. 여기에는 이전 루프 반복에서 호출된 경로, 이벤트 핸들러 또는 재요청 핸들러가 포함될 수 있습니다. 상태 핸들러가 호출되면 다음 중 하나 또는 둘 모두가 발생할 수 있습니다.

    • 핸들러에 fulfillment가 있으면 호출됩니다. fulfillment가 제공하는 모든 정적 응답은 응답 큐에 추가됩니다. 부분 응답 및 웹훅도 사용 설정된 경우 실행됩니다.
    • 핸들러에 타겟 흐름 또는 페이지가 있는 경우 세션이 타겟으로 전환되고 페이지가 비활성 상태가 됩니다.
  4. 다음 조건이 모두 충족되면 양식 매개변수 프롬프트가 응답 큐에 추가됩니다.

    • 페이지에 양식이 있습니다.
    • 채워야 할 필수 양식 매개변수가 있습니다.
    • 3단계에서 재요청 핸들러를 따르지 않았습니다.
    • 부분 응답 및 웹훅은 사용 설정된 경우 실행됩니다.
  5. 남은 응답 큐 메시지는 최종 사용자에게 전송되고 에이전트는 최종 사용자 입력을 기다립니다.

  6. 최종 사용자 입력이 프롬프트가 표시된 양식 매개변수를 제공하면 매개변수를 작성합니다. 3단계로 진행합니다.

페이지 수명 주기 탐색

시뮬레이터 실행 단계 뷰어를 사용하면 특정 대화 차례의 단계 간에 전환하고 각 단계에서 관련 에이전트 빌더 요소에 집중할 수 있습니다. 다음 예시에서 최종 사용자 입력 'I would like to rent a car'는 5가지 실행 및 전환 단계를 트리거합니다.

  1. 실행 단계 뷰어가 첫 번째 단계의 대화 시작 페이지로 이동합니다. 이 경우에는 기본 시작 페이지입니다. 페이지 실행 1단계

  2. 인텐트 car_rental.reservation_create에 대한 전환 경로가 트리거됩니다. 실행 단계 뷰어는 이 경로를 포커스로 가져오며 여기서 전환 대상이 Pickup Location 페이지임을 알 수 있습니다. 페이지 실행 2단계

  3. 에이전트가 Pickup Location 페이지로 이동합니다. 페이지 실행 3단계

  4. 에이전트가 Pickup Location 페이지의 항목 fulfillment를 평가합니다. fulfillment가 비어 있으므로 아무 것도 실행되지 않습니다. 페이지 실행 4단계

  5. 에이전트에서 필요한 양식 매개변수 pickup_location를 수집하려고 하며 이 매개변수의 초기 프롬프트 fulfillment 메시지가 최종 사용자에게 표시됩니다. 페이지 실행 5단계

마지막 발화를 실행 취소하고 다른 전환을 시도하여 다른 페이지 전환을 테스트할 수도 있습니다.

발화 실행 취소

페이지 만들기

페이지를 만들려면 다음 단계를 따르세요.

Console

  1. Dialogflow CX 콘솔을 엽니다.
  2. GCP 프로젝트를 선택합니다.
  3. 에이전트를 선택합니다.
  4. 흐름 섹션에서 페이지의 흐름을 선택합니다.
  5. 페이지 섹션에서 추가 버튼을 클릭합니다.
  6. 페이지의 표시 이름을 입력합니다.
  7. 페이지 표시 이름 옆의 설정 버튼을 클릭합니다.
  8. 수정을 선택합니다.
  9. 표시되는 페이지 수정 패널의 필드에 값을 입력합니다.
  10. 저장을 클릭합니다.

API

Page 유형은 create 메서드를 참조하세요.

페이지 참조의 프로토콜 및 버전 선택:

프로토콜 V3 V3beta1
REST 페이지 리소스 페이지 리소스
RPC 페이지 인터페이스 페이지 인터페이스
C++ PagesClient 사용 불가능
C# PagesClient 사용 불가능
Go PagesClient 사용 불가능
자바 PagesClient PagesClient
Node.js PagesClient PagesClient
PHP 사용 불가능 사용 불가능
Python PagesClient PagesClient
Ruby 사용 불가능 해당 사항 없음

페이지 데이터

페이지의 데이터에 액세스하려면 다음 단계를 따르세요.

Console

  1. Dialogflow CX 콘솔을 엽니다.
  2. 에이전트의 GCP 프로젝트를 선택합니다.
  3. 에이전트를 선택합니다.
  4. Flows(흐름) 섹션에서 흐름을 클릭합니다.
  5. 흐름 페이지는 페이지 섹션에 입력됩니다.
  6. 페이지 표시 이름 옆의 설정 버튼을 클릭합니다.
  7. 수정을 선택합니다.
  8. 표시되는 페이지 수정 패널의 필드에 값을 입력합니다.
  9. 저장을 클릭하여 변경사항을 저장합니다.

API

Page 유형은 getpatch/update 메서드를 참조하세요.

페이지 참조의 프로토콜 및 버전 선택:

프로토콜 V3 V3beta1
REST 페이지 리소스 페이지 리소스
RPC 페이지 인터페이스 페이지 인터페이스
C++ PagesClient 사용 불가능
C# PagesClient 사용 불가능
Go PagesClient 사용 불가능
자바 PagesClient PagesClient
Node.js PagesClient PagesClient
PHP 사용 불가능 사용 불가능
Python PagesClient PagesClient
Ruby 사용 불가능 해당 사항 없음

다음 데이터는 페이지와 연결되어 있습니다.

  • 표시 이름: 사람이 읽을 수 있는 페이지 이름입니다.
  • 항목 fulfillment(항목 대화상자라고도 함): 페이지가 처음 활성화될 때 호출할 fulfillment입니다.
  • 매개변수: 최종 사용자의 구조화된 입력을 캡처하는 페이지 양식의 매개변수 값입니다.
  • 경로: 이러한 상태 핸들러는 페이지가 활성 상태일 때 호출될 수 있습니다. 자세한 내용은 페이지 수준 핸들러 경로를 참조하세요.
  • 경로 그룹: 페이지가 활성화되면 이러한 그룹 내 경로가 호출될 수 있습니다. 자세한 내용은 경로 그룹을 참조하세요.
  • 이벤트 핸들러: 페이지가 활성 상태일 때 이러한 이벤트 핸들러가 호출될 수 있습니다. 자세한 내용은 페이지 수준 이벤트 핸들러를 참조하세요.

페이지 설정

다음 설정을 페이지에 사용할 수 있습니다.

페이지 설정에 액세스하려면 다음 안내를 따르세요.

Console

  1. Dialogflow CX 콘솔을 엽니다.
  2. GCP 프로젝트를 선택합니다.
  3. 에이전트를 선택합니다.
  4. 페이지 섹션에서 페이지 위로 마우스를 가져갑니다.
  5. 옵션 버튼을 클릭합니다.
  6. 페이지 설정을 선택합니다.
  7. 설정을 찾아보거나 수정합니다.
  8. 저장을 클릭하여 변경사항을 저장합니다.

API

Page 유형은 getpatch/update 메서드를 참조하세요.

페이지 참조의 프로토콜 및 버전 선택:

프로토콜 V3 V3beta1
REST 페이지 리소스 페이지 리소스
RPC 페이지 인터페이스 페이지 인터페이스
C++ PagesClient 사용 불가능
C# PagesClient 사용 불가능
Go PagesClient 사용 불가능
자바 PagesClient PagesClient
Node.js PagesClient PagesClient
PHP 사용 불가능 사용 불가능
Python PagesClient PagesClient
Ruby 사용 불가능 해당 사항 없음

페이지 삭제

페이지를 삭제하려면 다음 단계를 따르세요.

Console

  1. Dialogflow CX 콘솔을 엽니다.
  2. GCP 프로젝트를 선택합니다.
  3. 에이전트를 선택합니다.
  4. 흐름 섹션에서 페이지의 흐름을 선택합니다.
  5. 페이지 섹션에서 페이지 표시 이름 옆의 설정 버튼을 클릭합니다.
  6. 삭제를 선택합니다.

API

Page 유형은 delete 메서드를 참조하세요.

페이지 참조의 프로토콜 및 버전 선택:

프로토콜 V3 V3beta1
REST 페이지 리소스 페이지 리소스
RPC 페이지 인터페이스 페이지 인터페이스
C++ PagesClient 사용 불가능
C# PagesClient 사용 불가능
Go PagesClient 사용 불가능
자바 PagesClient PagesClient
Node.js PagesClient PagesClient
PHP 사용 불가능 사용 불가능
Python PagesClient PagesClient
Ruby 사용 불가능 해당 사항 없음