我在让电话智能体的轮替更自然时学到的经验

Reddit r/AI_Agents 工具

摘要

作者分享为电话语音机器人调优对话轮替(turn-taking)的经验:单靠 VAD 静音阈值不够,需结合 STT 的部分文本判断句子是否完整,再配合 TTS 延迟一起调试,才能让机器人响应更自然。

我在一个很窄的问题上花了不少时间!那就是:呼叫者说完话之后,智能体应该在什么时候开始说话。太快会打断对方,太慢又让人感觉电话那头像是没人。我首先尝试的是单独调 VAD(静音检测)阈值。这确实有一点效果,但并没有解决真正的问题。人们经常在句子中间停顿。单纯的静音计时器无法区分「我说完了」和「让我想想」。真正起作用的做法,是把 VAD 与对 STT(语音转文字)输出文本的检查结合起来。如果部分转写文本以不完整的内容结尾,比如结尾是一个连词,智能体就多等一会儿。即使音频已经安静下来,这个逻辑依然成立。而如果转写文本看起来是一个完整的想法,它就会更快地回应。事后看来这很明显,但我此前并没有看到有人写过。大多数教程都把轮替当成一个纯音频问题。其实不是。语言信号和静音信号同样重要!另一件我注意到的事是,TTS(文字转语音)延迟比大多数人想象的更重要。即使轮替逻辑做得很好,语音启动太慢也会被当成一个失误,而不是一个自然的停顿。所以轮替结束的逻辑和 TTS 这一步需要一起调优,不能分开单独调。无论你用的是基于 WebSocket 的 Deepgram 风格 STT 流程,还是其他厂商的方案,都是如此。很好奇这里是否还有人是自己实现轮替结束逻辑,而不是依赖厂商的默认方案,以及你们用了哪些信号来判断。
查看原文

相似文章

语音智能体不再听上去像电话客服的那一刻

Reddit r/AI_Agents

一位从业者反思语音智能体为何总是打断来电者,指出真正的元凶往往是 VAD 设置误读了背景噪声,而非 STT 延迟;调整静音阈值会改变智能体给人的拟人感。

Is there an uncanny valley for AI voices?

Reddit r/ArtificialInteligence

Bland团队探讨AI语音的恐怖谷效应,并开发能模拟人类不完美特质的TTS模型,以提升电话交互的自然感和人性化体验。

从零搭建 AI 语音智能体:真正耗费我们时间的环节

Reddit r/artificial

作者分享了构建生产级电话 AI 语音智能体的复盘,揭示大部分工程时间被电话基础设施、话轮检测、可观测性和故障处理所消耗,而非核心 LLM 行为。他们建议从一开始就使用 Vapi、Retell 或 Dasha 等托管平台,将工程精力集中在业务逻辑上。