改进的轮次结束模型将语音 AI 中断减少 39%
我们很高兴发布我们基于 Transformer的轮次结束检测模型的新版本 v0.4.1-intl,该版本在准确性和响应速度方面实现了突破。本次更新侧重于检测结构化输入(structured inputs)的语音完成情况,并更好地推广到多种语言。
最新的 MultilingualModel 已部署到在LiveKit Cloud上运行的代理(agents)中,并可在 Agents Python 1.3.0 和 Agents JS 1.0.19 中使用。
轮次结束检测的挑战
轮次结束检测是语音AI中最具挑战性的问题之一。人类在对话中自然地通过以下三个主要线索来完成这项任务:
- 语义内容(Semantic content):所说词语的含义
- 上下文(Context):更广泛的对话历史,包括对方刚才所说的话
- 韵律(Prosody):语调、停顿和节奏等表达元素
忽略任何这些线索都可能导致中断或尴尬的沉默。
对于语音AI代理,这需要对实时音频流进行处理,然后对生成的音频或文本进行分析。为了达到人类水平的性能,模型必须整合内容、上下文和表达线索。
在LiveKit,我们基于Transformer的模型使用LLM骨干来有效地结合内容和上下文。这一基础使得 v0.4.1-intl 中的改进成为可能。
主要改进:减少中断和多语言语音AI增益
基准测试表明,与 v0.3.0-intl 相比,v0.4.1-intl 的误报中断相对减少了39.23%,且响应延迟没有增加。这些改进在所有测试语言中均成立,如下所示(错误率定义为固定真阳性率99.3%时的假阳性率)。
| 语言 | v0.3.0 错误率 | v0.4.1 错误率 | 相对改进 |
|---|---|---|---|
| 中文 | 18.70% | 13.40% | 28.34% |
| 荷兰语 | 26.10% | 11.90% | 54.33% |
| 英语 | 16.60% | 13.00% | 21.69% |
| 法语 | 16.80% | 11.10% | 33.93% |
| 德语 | 23.40% | 12.20% | 47.86% |
| 印地语 | 5.40% | 3.70% | 31.48% |
| 印度尼西亚语 | 17.00% | 10.60% | 37.65% |
| 意大利语 | 20.10% | 14.90% | 25.87% |
| 日语 | 19.70% | 11.20% | 43.15% |
| 韩语 | 7.90% | 5.50% | 30.38% |
| 葡萄牙语 | 23.30% | 12.60% | 45.97% |
| 俄语 | 19.50% | 12.00% | 38.46% |
| 西班牙语 | 21.50% | 14.00% | 33.88% |
| 土耳其语 | 25.40% | 12.70% | 50.0% |
| 所有语言 | 18.66% | 11.34% | 39.23% |
总体上39.23%的相对改进反映了训练策略、数据集组成和预处理方面的改进。特别是,这些变化增强了对结构化输入(如电子邮件、地址、电话号码和信用卡详细信息)的处理,最大限度地减少了过早中断。
随着此次发布,我们将弃用 EnglishModel。最新的 MultilingualModel 不仅在大多数情况下超过了旧版英语模型的性能,同时在所有支持的语言中提供了稳定准确性。未来,我们建议对英语和非英语用例都使用多语言模型,这样您的语音代理就可以从一个单一、性能最佳的模型中受益,无论您的用户身在何处。
处理结构化数据
考虑一个常见的语音AI场景,例如从用户那里收集信息。代理提示:“您的电话号码是多少?”用户背诵数字,可能伴随着犹豫或修正。与具有清晰语法结尾或韵律信号的自然语音不同,结构化数据缺乏明显的停顿——语调保持平稳,没有上升或下降来表示完成。
如果没有强大的上下文感知能力,模型可能会不完整地捕获信息,迫使用户重复。v0.4.1-intl通过推断代理提示中预期的格式来解决这个问题:
- 美国电话号码通常由10位数字组成
- 电子邮件遵循
user at domain dot com这样的模式 - 地址通常包括街道地址、城市、州和邮政编码
LLM骨干使模型能够等待格式完成,而较小的纯音频模型缺乏语义深度,难以处理这些细微差别。
下面的比较说明了对于一个口述的电话号码的这种情况。v0.3.0-intl 在每个数字后过早地检测到结束,而 v0.4.1-intl则保持到整个序列完成。

要亲自查看差异,请在Hugging Face上试用我们的可视化工具。
这些功能源于扩展的训练数据集,其中包含了真实的呼叫中心转录和强调结构化数据(如地址、电子邮件、电话号码和信用卡)的合成对话。
适应现实世界的变异性
由于模型处理来自语音转文本(STT)系统的文本输出,不同提供商之间的一致性差异可能会影响性能。一个STT引擎可能将“forty two”转录为单词,而另一个则输出“42”作为数字。使用一种风格进行训练而部署另一种风格会导致准确性下降。
为了处理这种情况,我们改变了训练数据中常见的STT输出格式。这确保了在不同环境中进行一致的预测,而不会增加运行时开销。
在这种鲁棒性的基础上,该模型显示出强大的多语言泛化能力。尽管结构化数据增强仅添加到英语训练集中,但在其他语言中的性能也有所提高——例如,在西班牙语或法语中检测电话号码时,准确性下降极小。这种迁移源于Qwen2.5基础模型,该模型经过多语言语料库的预训练,编码了全球格式(例如国际地址)的知识,并减少了对特定语言数据集的需求。
实现效率:模型蒸馏
我们选择了Qwen2.5-0.5B-Instruct作为基础模型,因为它在轮次检测方面表现强劲,同时支持低延迟CPU推理。
然而,较大的模型提供了更好的跨语言泛化能力。为了平衡这一点,我们训练了一个70亿参数的Qwen2.5-7B-Instruct作为教师模型,并将其知识蒸馏到0.5B学生模型中。由此产生的模型以较小模型的效率提供了更高的多语言准确性。
下图跟踪了训练期间的评估AUC。蒸馏模型(橙色)的表现优于基线0.5B模型(绿色),并在大约1,500步后接近教师模型(蓝色)的性能。

可观测性集成
LiveKit Agents现在包含了对轮次结束模型的内置可观测性。
当您启用代理可观测性时,每个轮次检测决策都会记录模型所看到的精确输入。
在会话回放视图中,单击 eou_detection 跟踪并查看产生预测的完整上下文。这使得调试生产问题变得简单明了。

展望未来
我们目前的模型依赖于转录文本,尚未包含原始音频特征(如停顿或重音)。未来的迭代将通过多模态架构整合这些特征,将韵律直接融合到预测中以实现更精确的检测。
随着我们不断完善这些工具,我们的目标是使语音AI交互更加自然和人性化。这项持续进行的工作将为下一代对话式AI提供动力,为开发人员和用户带来更直观、更高效的体验。
准备好使用最新的轮次检测模型进行构建了吗?从语音AI快速入门开始或注册LiveKit Cloud。