默认情况下,Playbook 会使用 LLM 来控制对话、采取行动和回答最终用户。如果您需要更明确地控制智能体的行为,可以使用流或根据条件触发的操作,本指南对此进行了介绍。
根据条件触发的操作是 playbook 的可选配置。您可以设置对话触发器和条件,以调用特定操作,例如使用特定消息进行回复、调用外部工具、调用其他 playbook 或执行任何其他指定操作。
触发器
您可以定义触发器,这是确定根据条件触发的操作是否适用的第一步。下面介绍了触发器类型以及每种类型的具体触发器:
- 生命周期阶段
- Playbook 启动:在 Playbook 首次启动时触发。
- 在 LLM 决定其下一个操作之前:每次在 LLM 预测下一个操作之前触发。
- 在 LLM 执行下一个操作之前:每次在 LLM 执行操作之前触发。
- 活动
- 自定义事件
- 用户未输入内容
条件
触发器发生后,第二步是评估任何可选提供的条件。条件是使用流路由所用的相同条件语法提供的。
如果未提供任何条件,系统将仅使用触发器来启动操作。
您可以使用以下语法来引用参数和上一个/下一个操作:
- 会话参数
$session.params.PARAMETER_NAME
- Playbook 输入参数
$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 操作:工具使用、playbook 调用、playbook 完成、流调用、playbook 转换、流转换。
- 更改语音设置:模型名称、无语音超时、端点检测器灵敏度、自适应。
- 启用插话功能
- 允许取消只答完一部分的回答的播放
- 发送 Call Companion 短信
- 启用 DTMF:请参阅用于电话集成的 DTMF