如何实现通话时智能体播报防打断

本文将为您介绍在智能体对回答的问题进行语音播报时,如何使用提示词控制大模型的输出,以防止智能体被用户打断。

功能描述

在当前的AI通话场景中,智能体在讲话时,用户可以通过语音或按键的方式进行打断。然而,在某些情况下,智能体对问题的回答中可能包含关键性的信息,这部分信息需要用户完整收听,因此在智能体播报时不应被打断。针对这一场景,AI智能体提供了播报防打断功能:在大模型中输出特定的防打断标签,智能体将包含该标签的语音内容设为不可打断状态,此时任何方式(包括语音打断和按键打断)均无法打断智能体的播报。

功能原理

AI智能体会判断大语言模型节点的输出内容中是否包含标签“<No Interrupting>”。当输出结果中包含该标签时(不区分大小写),智能体会将当前输出的播报状态设置为不可打断。在此状态下,任何方式均无法中断智能体的播报,只有在智能体完成播报后,智能体才会自动恢复到倾听状态。

功能实现

为了设置智能体回复的不可打断状态,您可以通过在智能体媒体控制台上修改实时工作流中LLM大语言模型节点的模型提示词,以达到这一目的。例如:【你是一个语音助手,请每次用一两句话回答。但是当我提到“关键信息”这个词的时候,你需要在回答的开头加上“<No Interrupting>”这一标签。】

image

说明

标签“<No Interrupting>”既不会被智能体播报,也不会在字幕中显示。

效果示例

`**系统人设**:你是一个语音助手,请每次用一两句话回答。但是当我提到“关键信息”这个词的时候,你需要在回答的开头加上“<No Interrupting>”这一标签。`

- 用户:你好。
- =====智能体开始讲话=====
- LLM节点输出:你好,有什么能帮你的吗?
- 字幕:你好,有什么能帮你的吗?
- 语音:你好,有什么能帮你的吗?
- =====智能体结束讲话=====

- 用户:请告诉我关键信息。
- =====智能体开始讲话(不可打断)=====
- LLM节点输出:<No Interrupting>当然可以,首要的关键信息是什么呢?让我帮你梳理一下。
- 字幕:当然可以,首要的关键信息是什么呢?让我帮你梳理一下。
- 语音:当然可以,首要的关键信息是什么呢?让我帮你梳理一下。
- 用户:打断一下。
- 【此时智能体没有被打断】
- =====智能体结束讲话=====

- 用户:好的,我知道了。
- =====智能体开始讲话=====
- ……