應對手冊範例

每個 Playbook 都應包含一或多個範例。以下是使用者與 Playbook 之間的對話範例,包括對話和服務專員執行的動作。這些實際上是 LLM 的少量樣本提示範例

控制台提供介面,方便您輸入動作。

多語言代理程式

如果您希望代理程式處理多種語言,請在範例中使用各個語言。

輸入摘要和輸出摘要範例

除了輸入和輸出參數之外,Playbook 也支援接收輸入摘要並發出輸出摘要,以便與其他 Playbook 交換資訊。摘要可用於在 Playbook 之間傳遞抽象的背景資訊,而參數則可用於在 Playbook 之間傳遞結構化且定義良好的欄位。參數是流程和劇本集之間交換資料的唯一方式。

在範例中加入相關的輸入摘要,讓教戰手冊在執行階段根據輸入摘要調整動作。新增輸出摘要,其中包含示例對話的相關且準確詳細資料,以便向劇本檔顯示摘要的必要詳細資料。

狀態範例

在對話的特定時間點,Playbook 會處於下列其中一種狀態:

  • OK:應對手冊已順利達成目標,現在會將控制權轉移至父項應對手冊。
  • CANCELLED:使用者決定不執行指派給劇本的目標。控制權現在會轉移至父項藍圖。如果上層 Playbook 是 CX 流程,系統會在流程執行前偵測使用者輸入的意圖。
  • FAILED:由於發生錯誤 (例如工具傳回 500 錯誤),Playbook 無法繼續執行目標。工作階段會以失敗狀態結束。系統會在回覆中加入 EndInteraction 訊息。
  • ESCALATED:教戰手冊判斷無法達成目標,因此需要將情況提報給人工人員。工作階段會在升級狀態後結束。系統會在回覆中加入 EndInteraction 訊息。
  • PENDING:對話仍在應對手冊中進行。

頂層範例及其 Playbook 叫用應標示為與參照的 Playbook 相對應的狀態。

選取策略

選取策略設定會控制是否要在傳送至 LLM 的劇本指令中加入範例。可用的選項如下:

  • 動態選取:系統會根據示例與目前對話內容的關聯性,決定是否納入示例。如果提示接近符號限制,可以省略範例。

  • 一律選取:無論對話內容為何,都會一律納入範例。如果提示接近符號限制,可以省略範例。

  • 永不選取:系統一律不會在提示中加入範例。這個範例不會影響 Playbook 的效能。這項設定可用於暫時排除用於測試的範例。

新增動作

Playbook 中提供的範例包含一系列動作。這些動作的組合可能有所不同,但主要會描述使用者與劇本檔之間的互動,以及為了滿足使用者的查詢或要求而採取的動作。

有兩種方法可在範例中新增動作:

  • 如要手動新增動作,請按一下右側窗格底部的 + 按鈕,或是將游標懸停在現有動作上,然後按一下「新增動作」按鈕。您可以在建立新範例時點選「+ 範例」選項,或編輯現有範例時使用這些選項。
  • 如要根據現有的劇本指示自動產生動作,請在右側窗格底部的「輸入使用者輸入內容」欄位中輸入使用者輸入內容。您可以在建立或編輯範例時使用這個選項。或者,您也可以在右側的「預覽 Playbook」窗格中,在執行階段測試 Playbook。如要從「預覽應對手冊」窗格儲存動作至範例,請先從「預覽應對手冊」窗格左側的叫用清單中選取應對手冊叫用,然後按一下「儲存範例」

請務必檢查自動產生的動作是否正確,並視需要進行編輯。對於範例不多或沒有範例的 Playbook 來說,這點尤其重要。

這個 playbook 支援下列類型的動作:

應對手冊回應

對使用者查詢的 Playbook 回應。

使用者輸入內容

使用者查詢。

使用工具

這是工具呼叫,用於取得履行使用者查詢所需的其他資訊。此動作應指定下列詳細資料:

  • Tool:應叫用的工具名稱。

  • 動作:應叫用的 OpenAPI 工具運算名稱。對於資料儲存庫工具函式工具,動作名稱與工具名稱相同。

  • 工具輸入內容:要納入工具呼叫的輸入內容。這些資訊通常來自先前與使用者的對話。

    對於開放式 API 工具POSTPUTPATCH 方法類型都需要 requestBody JSON。

    範例 Open API 工具 requestBody createPet 動作的輸入內容:

    {
      "id": 1,
      "name": "Luna"
    }
    

    對於資料儲存庫工具,範例 requestBody 中需要查詢,其他欄位則為選填。

    {
      "query": "Where is my nearest store?",
      "filter": "country: ANY(\"United States\")",
      "userMetadata": {
        "userCity": "San Fransisco",
      },
      "fallback": "We don't have any stores in your area."
    }
    
  • 工具輸出內容:工具叫用作業的回應。這是工具針對指定輸入內容傳回的有效 JSON 回應。對於開放式 API 工具,這也可能是字串錯誤 (例如「404 找不到」)。

    針對 listPets 動作的 Open API 工具輸出內容範例:

    {
      "pets": [
        {
          "id": 1,
          "name": "Luna"
        },
        {
          "id": 2,
          "name": "Charlie"
        }]
    }
    

    資料儲存工具輸出內容範例:

    {
      "answer": "Here's the address to your nearest store ...",
      "snippets": [
        {
          "title": "San Fransisco Downtown",
          "uri": "https://www.example.com/San_Fransisco_Downtown",
          "text": "Address for San Fransisco Downtown .."
        }
      ]
    }
    

為確保應對手冊具有安全防護機制,請一併提供範例,說明在工具叫用失敗時,應對手冊應如何回應。Open API 工具的叫用失敗可在工具輸出中以錯誤字串 (「找不到 404」) 表示。對於資料儲存庫工具,如果沒有摘要答案,可以使用 fallback 輸入內容來指定回應方式。

如果您希望資料儲存工具在劇本集回應中加入 URI,請新增含有您希望劇本集回應的 URI 的範例。如果這個 URI 來自資料儲存工具,則資料儲存工具的輸出內容應包含與劇本檔回應中的 URI 相符的 URI。請注意,fallback 無法用於此情況,因為這會停用 LLM 劇本書的功能,無法重新表達資料儲存工具的回覆,以便在劇本書回應中加入 URI。

包含工具使用動作的範例可能會變得冗長,並導致輸入符記限制消耗量增加。為確保符記使用效率,請確保工具輸出內容簡潔,且包含與劇本書目標相關的資訊。對於資料儲存工具,建議您從範例中移除程式碼片段,因為這些片段可能會導致輸入符記消耗量過高。

應對手冊叫用

應對手冊應在需要叫用其他工作手冊以執行使用者查詢時使用此動作。此動作應指定下列詳細資料:

  • Playbook:要叫用的 Playbook 名稱。
  • Playbook 叫用輸入摘要:前述對話中與要叫用的 Playbook 相關的部分摘要。
  • 輸入參數輸入參數,要傳遞至應對手冊。
  • Playbook 叫用作業輸出內容摘要:摘要說明應對手冊在完成目標後應產生的內容。
  • 輸出參數:Playbook 完成目標後產生的輸出參數

應對手冊轉換

應對手冊轉換動作是終端動作 (不應接著執行其他動作),表示例行應對手冊已決定退出並轉換至目標例行應對手冊。請注意,由於這項動作表示 playbook 已結束,請將 playbook 的輸出參數新增至範例的 playbook 輸出內容。

流程轉換

流程轉換動作是終端動作 (不應接續其他動作),表示例行應對手冊已決定退出並轉換至目標流程。請注意,由於這項動作表示 playbook 已結束,請將 playbook 的輸出參數新增至範例的 playbook 輸出內容。