语音 AI 技术栈

构建语音助手需要三个组件:语音转文字(STT)、用于推理的 LLM 和文字转语音(TTS)。

语音转文字选项

  • Whisper (OpenAI):高准确率,99 种语言,开源。
  • Deepgram:实时流式,低延迟,对话 AI。
  • AssemblyAI:适合会议转录,支持说话人分离。

文字转语音选项

  • ElevenLabs:最自然的声音,声音克隆,情感范围。
  • OpenAI TTS:质量好,API 简单,6 种声音。
  • Coqui TTS:开源,可自托管,声音克隆。

架构模式

### 简单管道

1. 录音 → STT → 文字

2. 文字发送到 LLM → 回复

3. 回复发送到 TTS → 播放音频

### 流式管道(更低延迟)

1. 实时流式音频块到 STT。

2. 部分转录到达时预热 LLM。

3. 流式 LLM 回复 token 到 TTS。

延迟优化

  • 每个阶段使用流式传输。
  • 目标:用户停止说话到 AI 开始回复 < 1 秒。

大多数生产级语音助手遵循流水线:语音转文字(STT)→ LLM 处理 → 文字转语音(TTS)。关键设计决策是每个阶段是流式还是缓冲完整响应。流式处理可大幅降低感知延迟——用户在 500ms 内听到第一个词,而不是等待 3–5 秒的完整响应。

延迟预算

好的语音助手应在 1–2 秒内端到端响应。典型预算:STT 增加 200–500ms,LLM 首 token 延迟增加 300–800ms,TTS 增加 200–400ms。要保持在 2 秒以内,使用快速 STT(Whisper large-v3-turbo 或 Deepgram Nova-2)、低延迟 LLM(GPT-5-mini 或 Claude Haiku)和流式 TTS(ElevenLabs 或 PlayHT)。

常见坑

  • 回声和打断:没有适当的回声消除,助手会听到自己并循环。使用专用回声消除库。
  • 静音检测:判断用户何时停止说话比想象中难。Silero VAD 等语音活动检测模型效果好但需要针对环境调优。
  • 口音和方言偏差:大多数 STT 模型在非标准口音上表现较差。用多样化说话者测试。