根據預設,劇本會使用 LLM 控制對話、採取行動及回覆使用者。如要更明確地控管代理程式的行為,可以使用流程或條件動作,本指南會說明這些功能。
條件動作是應對手冊的選用設定。 您可以設定對話觸發條件,叫用特定動作,例如以特定訊息回覆、呼叫外部工具、叫用其他劇本,或執行任何其他指定動作。
觸發條件
您可以定義觸發條件,做為判斷是否適用條件式動作的第一步。以下說明觸發條件類型,以及每種類型的特定觸發條件:
- 生命週期階段
- 應對手冊開始: 首次啟動應對手冊時觸發。
- LLM 決定下一個動作前: 每次 LLM 預測下一個動作前都會觸發。
- LLM 執行下一個動作前: 每次 LLM 執行動作前都會觸發。
- 活動
- 自訂事件
- 使用者未輸入任何內容
條件
觸發條件發生後,第二步是評估任何選用的條件。條件的提供方式與流程路徑使用的條件語法相同。
如未提供任何條件,系統只會使用觸發條件來啟動動作。
您可以使用下列語法參照參數和上一個/下一個動作:
- 工作階段參數
$session.params.PARAMETER_NAME
- 應對手冊輸入參數
$playbook.input.INPUT_FIELD_NAME
- 最後一個動作 (先前執行的動作)
$last-action.name
$last-action.input.INPUT_FIELD_NAME
$last-action.output.OUTPUT_FIELD_NAME
$last-action.status
- 後續動作 (LLM 預測的後續動作)
$next-action.name
$next-action.input.INPUT_FIELD_NAME
您也可以使用系統函式。
範例:
$session.params.current_user = null
$last-action.name = "query_order"
$last-action.name = "query_order" AND $last-action.status != SUCCESS
$last-action.name = "query_order" AND $last-action.output.orders = null
動作
觸發條件和選用條件評估完成後,您可以設定要執行的下列動作:
- 提供給使用者的回應:
文字、條件式回應、自訂酬載和預錄音訊。
提供文字時,您可以插入
[pause]
、[pauseShort]
或[pause long]
,在代理程式語音中插入暫停。 範例:How can I help you today? [pause long] I can help with...
。 - 覆寫下一個 LLM 動作: 工具使用、劇本叫用、劇本完成、流程叫用、 劇本轉換、流程轉換。
- 變更語音設定: 模型名稱、無語音逾時、端點偵測敏感度、適應。
- 啟用插話功能
- 允許取消部分回覆的播放作業
- 傳送通話助理簡訊
- 啟用 DTMF:請參閱電話整合的 DTMF