传统“ASR 语音转文字 → LLM 文本生成 → TTS 文本合成”的三段串行流水线,其端到端首字延迟普遍在 1.5 秒至 3 秒之间,造成极其生硬的“对讲机式”对话体验。以 **Gemini Live API** 与 **OpenAI Realtime API** 为代表的原生多模态音频流模型,将首字回声延迟直接压缩至 **300ms 以内**,并实现了真正自然的“随时插话打断(Barge-in)”全双工交互。本文深度剖析其架构设计。
01 全双工交互核心痛点:打断(Barge-in)与回声消除(AEC)
在全双工语音系统中,最棘手的问题在于:当 AI 正在通过扬声器说话时,用户的麦克风会拾取到 AI 自身的声音并再次回传给模型,导致 AI 被“自己打断”或陷入回声死锁。生产级方案必须在客户端同时部署两大关键模块:
- 硬件级声学回声消除(AEC):借助 Web Audio API 的
echoCancellation: true或客户端原生 DSP 算法剔除扬声器回流; - 轻量级本地端侧 VAD(Voice Activity Detection):部署轻量化 Silero-VAD 模型(仅 2MB),在本地以 30ms 音频帧窗口实时计算人声概率,一旦判定真实用户开始讲话,立即向 WebSocket 发送
interrupt信号截断服务端音频下发。