项目简介
speech-to-speech 是 Hugging Face 推出的开源语音对话系统,旨在让开发者用纯开源模型在本地构建低延迟的语音智能体。项目采用经典的 VAD → STT → LLM → TTS 四级级联架构,通过 OpenAI Realtime 兼容的 WebSocket API 对外暴露服务,目前已获 9,400+ Star,Apache 2.0 协议开源。
核心亮点
全模块可替换是该项目最大的设计哲学。VAD(语音活动检测)、STT(语音转文字)、LLM(大语言模型)、TTS(文字转语音)四个环节各自独立,每个环节都提供多个后端实现,通过 CLI 参数即可灵活切换。无论你想用 Whisper 还是 Paraformer 做语音识别,用 OpenAI API 还是本地 llama.cpp 跑大模型,用 Kokoro 还是 ChatTTS 合成语音,都能自由组合。
LLM 部署方式极其灵活:支持托管 API(OpenAI、HF Inference Providers、OpenRouter)、自托管服务器(vLLM、llama.cpp),以及本地进程直接加载(Transformers、mlx-lm)。这意味着从纯云端到完全离线的部署方案都能覆盖。
默认技术栈
| 组件 | 默认后端 | 可选后端 |
|---|---|---|
| VAD | Silero VAD v5 | — |
| STT | Parakeet TDT | Whisper / Faster Whisper / Lightning Whisper MLX / Paraformer |
| LLM | OpenAI Responses API | Transformers / mlx-lm / Chat Completions 兼容接口 |
| TTS | Qwen3-TTS | Kokoro-82M / Pocket TTS / ChatTTS / MMS TTS |
快速上手
安装和启动极其简洁:
|
|
启动后即可在 ws://localhost:8765/v1/realtime 获得一个兼容 OpenAI Realtime 协议的 WebSocket 端点,任何兼容该协议的客户端都能直接接入对话。
四种运行模式
项目支持四种部署模式以适应不同场景:
- realtime(默认):WebSocket + OpenAI Realtime 协议,适合集成到现有应用
- local:直接调用本地麦克风和扬声器进行语音对话
- websocket:原始 PCM 音频流传输,适合自定义前端
- socket:TCP 传输模式
macOS 用户可以通过 --local_mac_optimal_settings 一键启用 MPS 加速的本地优化配置,项目还提供了 Docker Compose 方案(含 llama.cpp + Gemma 4)实现一键部署。
生产级验证
该项目已在生产环境中支撑数千台 Reachy Mini 机器人的对话后端,证明了其在真实场景下的可靠性和低延迟表现。Realtime API 实现了完整的打断处理、实时转录回传和工具调用事件,具备真正的生产可用性。
小结
speech-to-speech 的价值在于把语音对话系统从"调参炼丹"变成了"搭积木组合"——每个环节都可以独立选型和替换,同时又保持了低延迟的生产级品质。无论是想做本地语音助手、机器人对话系统,还是研究语音交互流水线,这都是目前开源生态中最值得关注的项目之一。