Skip to content
Wetel
Go back

为什么你的AI代理需要能打断你

想想你最后一次用对讲机和打电话的经历。

用对讲机时,一次只能有一个人发送信号。你按下按钮,说完你的话,说”完毕”,然后松开。如果你在对方说话中途突然想到异议——那没办法。你得等着轮到你。

今天的大多数语音AI代理就是按照对讲机的方式构建的。即使你已经说了”等等,不对,我是指下周二”,代理仍然会把整个预设的句子说完。它说话的时候听不到你。对代理来说,你的打断要么完全丢失,要么被排队等待——在它说完你想阻止它说的那句话之后才回应。

电话就不是这样工作的。你可以打断别人的话。他们停止说话。对话实时改变路线。这不是个”锦上添花”的功能——这是让对话感觉像真正的对话,而不是两个人轮流独白的关键。

为什么这是个真正的难题,而不是小问题

对讲机模式很容易构建:播放完整的音频响应,然后重新开始监听。电话模式要求代理在说话的整个过程中保持监听,并且在检测到真实语音的一刻立即中断自己正在进行的响应——同时不丢失对话的上下文。

sequenceDiagram
    participant 客户
    participant 代理
    participant 工作流

    客户->>代理: "我想预约一个时间段——"
    代理-->>客户: "好的!什么时间对你来说——"
    客户->>代理: "——等等,算了,取消"
    Note over 代理: 检测到语音中断。<br/>立即停止播放。
    代理->>工作流: 中断当前步骤
    工作流-->>代理: 重新评估:取消分支
    代理->>客户: "没问题——还有其他我能帮忙的吗?"

那个”Note over 代理”的步骤才是真正的问题所在。代理必须:

  1. 在播放自己的音频时,实时区分真实语音和背景噪音。
  2. 立即停止自己的音频输出——不是在下一句话的边界,不是在缓冲区刷新之后。
  3. 告诉驱动对话的工作流引擎”那个步骤没有完成,这是实际发生的情况”,这样代理接下来说的话才是基于现实的,而不是基于假设它能把话说完的脚本。

如果你跳过这三个步骤中的任何一个,你得到的看起来像演示中的打断功能,但一旦真实客户在代理列举清单时打断它,或者两个人在嘈杂环境中都在麦克风附近说话,它就会崩溃。

如果你在评估平台,这意味着什么

让任何向你推销语音AI平台的人实际演示一下打断他们自己的代理中途说话的情况,要实时演示,不要放精心制作的演示视频。问一下打断之后对话状态会发生什么——代理能记得它在说什么吗,还是只会道歉后重新开始?“能处理打断”和”从根本上为打断而构建”之间的差距只有在你实际推敲时才会显现。

这是那种从规格表上看不出来,但一旦真正用一下就在前三十秒内明显的决定。


Share this post:

Next Post
Why your AI agent needs to interrupt you back