應對手冊參數

應對手冊會使用明確定義的參數,接受及發出情境資訊。參數會儲存對話資訊,例如使用者選項和動作結果。您可以在應對手冊和流程之間傳遞這些參數的值。

參數宣告

您可以定義輸入 (讀取) 參數和輸出 (寫入) 參數。

參數有名稱、說明和下列其中一種型別:

  • 字串
  • 數字
  • 布林值
  • 工具專屬參數類型

您也可以指定參數是否為清單。

輸入 (讀取) 參數

您可以為每個應對手冊定義「輸入參數」(也稱為「讀取參數」),讓應對手冊使用從流程和其他應對手冊傳遞的值。舉例來說,playbook 可能會接收使用者的偏好名稱做為參數,並用來向使用者表達感謝,或者接收訂單 ID 做為參數,並使用工具擷取訂單詳細資料。

輸入參數是依應對手冊定義,且應對手冊預設無法存取其他 Dialogflow CX 控制台參數類型。流程轉換至應對手冊時,如果目標應對手冊有同名的輸入參數,頁面和工作階段參數就會傳播至應對手冊。如要在轉換期間將資訊從流程傳遞至 Playbook,請定義 Playbook 輸入參數,並使用與轉換前工作階段或頁面參數相同的名稱。

建立範例,控制輸入參數值對動作的影響。 舉例來說,如果輸入參數會影響代理稱呼使用者的方式,請建立範例來定義參數值,然後在範例的話語動作中使用相同的值。詳情請參閱「傳遞參數」。

輸出 (寫入、傳回) 參數

您可以為每個應對手冊定義「輸出參數」(也稱為「寫入參數」和「傳回參數」),讓應對手冊發出資訊,供其他流程或應對手冊使用。舉例來說,Playbook 可能會向使用者收集訂單號碼,並透過輸出參數發出,或者 Playbook 可能會使用工具預訂航班,並透過輸出參數發出確認號碼。

建立範例,控管 playbook 如何決定各輸出參數的值。舉例來說,如果代表確認號碼的輸出參數值來自工具使用輸出內容,請建立工具輸出內容與教戰手冊輸出參數值相符的範例。

傳遞參數

與流程不同,Playbook 不支援使用特定語法插入參數值。而是依據指令和少量樣本提示範例,決定如何使用及判斷參數值。

例行程序應對手冊到流程

如要將參數從例行程序應對手冊傳遞至流程,請按照下列步驟操作:

  • 定義例行程序應對手冊的寫入參數,這些參數會在例行程序應對手冊完成後,成為工作階段參數。
  • 在流程中使用工作階段參數。
  • 在操作說明和範例中加入參數用法。

流程到例行程序應對手冊

如要將參數從流程傳遞至例行程序應對手冊,請按照下列步驟操作:

  • 寫入流程中的工作階段參數。
  • 為例行程序應對手冊定義讀取參數,並使用相同名稱。
  • 在操作說明和範例中加入參數用法。

工作應對手冊轉流程

如要將參數從工作 Playbook 傳遞至流程,請按照下列步驟操作:

  • 在流程設定中,定義同名的輸入參數。
  • 在操作說明和範例中加入參數用法。

流程轉工作應對手冊

如要將參數從流程傳遞至上層任務應對手冊,請按照下列步驟操作:

  • 在流程設定中,定義傳回參數。
  • 在操作說明和範例中加入參數用法。

如要將參數從流程傳遞至子任務應對手冊,請按照下列步驟操作:

  • 在工作應對手冊中定義工作輸入參數,名稱與流程中的工作階段參數相同。
  • 在操作說明和範例中加入參數用法。

例行程序應對手冊到工作應對手冊

如要將參數從例行程序應對手冊傳遞至任務應對手冊,請按照下列步驟操作:

  • 使用相同名稱定義工作應對手冊的輸入參數。
  • 在操作說明和範例中加入參數用法。

涉及工具的範例

假設某個代理專門用於銷售活動票券,並具備下列工作任務手冊:

  • 名為 Ticket ordering 的 playbook,會使用名為 Ticket sales API 的工具下單。
    • 這個 playbook 接受 number 類型的輸入參數,名為 event_id。
    • 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 都不同。
  • 加入 Ticket ordering 的 Playbook 叫用,將 event_id 參數設為與所選項目相同的實際 event_id。

除了新增範例,您也可以在操作說明、目標或工具詳細資料中,新增具體操作說明,解釋參數的使用方式。

例如,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。應對手冊會根據具有不同參數值的範例,推斷參數的使用方式。