應對手冊最佳做法

下列最佳做法有助於建構強大的代理程式。

以自然語言輸入應對手冊名稱

劇本名稱應清楚、具描述性,且以自然英文呈現。這有助於提升 AI Generator 在執行階段的效能。舉例來說,「Customer Help Center Playbook」會優於「company_specialist」。

所有名稱長度不得超過 64 個字元,包括英文字母和空格。

簡潔的目標

目標應簡要說明劇本的用途。

提供高品質的指示

指令應符合下列條件:

  • 反映解決使用者問題的逐步方法
  • 簡潔的自然語言句子,說明高階指令
  • 簡單明瞭,並具體說明工具的使用情境

每個劇本至少一個範例

每個劇本至少要有一個範例,但建議至少要有四個。範例應包含正常路徑情境。

如果範例不足,Playbook 可能會導致無法預測的行為。如果劇本未回應或行為不如預期,可能是因為範例遺失或定義不當。請嘗試改善範例或新增範例。

指令和範例的精確度

雖然清楚詳盡的指令有助於提升準確度,但真正決定劇本行為準確度的,是範例的品質和數量。換句話說,請花更多時間撰寫詳盡的範例,而不是精確的指令。

範例中的參考工具

如果劇本的設計是使用工具提供回覆,請參考與這類要求對應的範例中的工具。

工具結構定義 operationId 欄位

為工具定義結構定義時,operationId 值非常重要。教戰手冊中的操作說明會參照這個值。 這個欄位的命名建議如下:

  • 只能使用英文字母、數字和底線。
  • 所有架構中描述的 operationId 不得重複。
  • 必須是反映所提供功能的有意義名稱。

工具結構定義驗證

請驗證工具結構定義。 您可以使用 Swagger 編輯器檢查 openAPI 3.0 架構語法。

處理空白工具結果

如果劇本依賴工具提供回應,工具結果空白可能會導致劇本行為無法預測。有時,Playbook AI 生成器會在回覆中提供錯誤資訊,而非工具結果。為避免發生這種情況,您可以新增具體指示,確保應對手冊 AI 生成器不會自行嘗試回答問題。

在某些情況下,劇本回覆必須以工具結果或提供的資料為依據,並避免僅根據劇本 AI 生成器的知識生成回覆。

以下是減少幻覺的指令範例:

  • 「你必須使用這項工具回答所有使用者問題」
  • 「如果工具未傳回任何資料,請回覆您不知道使用者查詢的答案」
  • 「如果工具沒有傳回任何資料,請勿自行捏造答案」

使用 Gemini 生成結構定義

Gemini 可以為你生成結構定義。舉例來說,您可以嘗試「請為 Google 日曆建立 OpenAPI 3.0 架構範例」。

專注模式應對手冊

避免建立過大且複雜的劇本。每本應對手冊都應完成明確的特定工作。 如果劇本很複雜,建議將其拆分成較小的子劇本。

避免迴圈和遞迴

在指令中連結代理程式時,請勿建立迴圈或遞迴。如果您嘗試將路徑導向直接或間接呼叫目前劇本的祖先劇本,就會發生迴圈。

為範例提供轉送資訊

如果劇本應導向另一個劇本,請在範例中提供這項資訊。這是從「輸入和輸出」範例部分提供的範例,請參閱「輸出資訊結尾範例」一節。

舉例來說,這個欄位的最後一句話可以是「如需進一步查詢,請重新導向至預設劇本。」。

使用 Conversational Agents (Dialogflow CX) Messenger JavaScript 函式進行個人化設定

使用 Conversational Agents (Dialogflow CX) Messenger 時,下列函式有助於將使用者個人化資訊從網頁介面傳送至劇本:

規劃成效

生成式功能通常需要幾秒鐘,甚至幾十秒才能生成回覆。雖然應對手冊可提升對話的自然度,但管理回覆時間至關重要,才能維持良好的使用者體驗。以下是幾項有助於提升成效的策略:

  • 平衡生成功能使用量

    請仔細權衡執行多項生成功能所需的時間,以及這些功能為對話帶來的價值。如果這些功能對達成使用者目標的貢獻不大,請避免過度使用。

  • 盡量減少生成式功能輸入內容

    請盡量收集及處理 AI 產生器生成實用回覆所需的最低資訊量。這樣做可大幅縮短處理時間。

  • 使用脈絡快取功能

    如果您透過工具使用 Gemini,且有大量初始脈絡,請使用 Vertex AI 脈絡快取探索快取資訊,避免重複要求相同資料。實作固定回覆,加快回覆速度:

    如果應用程式不需要動態的專屬內容,不妨考慮將常用回覆儲存在 Firebase 等傳統資料庫。由於這些固定回覆是預先定義且隨時可用,因此回覆速度比需要即時計算答案的生成式功能快得多。

  • 指示 AI 生成器產生簡潔的應對手冊回覆

    如果是文字輸入和輸出,AI 生成器回覆時間會受到所用模型和輸出長度影響。簡短的回應可大幅提升效能。雖然輸入內容長度也是影響因素,但輸出內容長度的影響較大。