speech-to-speech Skill:开源低延迟语音代理管道,Hugging Face 出品

总结

Hugging Face speech-to-speech 是一个开源本地语音代理框架,将 VAD(语音活动检测)→ STT(语音转文字)→ LLM(大语言模型)→ TTS(文字转语音)四个环节串联成低延迟管道,对外暴露 OpenAI Realtime 兼容的 WebSocket API。今日 GitHub Trending 狂揽 827 stars,背后是模块化架构 + 全链路可替换设计——用户可以自由混搭 Silero VAD / Parakeet / Whisper / Qwen3-TTS / Kokoro / ChatTTS 等组件,甚至把 LLM 完全跑在本地 llama.cpp 上,实现真正意义上的全离线、全开源语音对话。目前已支撑数千台 Reachy Mini 机器人的对话后端。


功能与原则

核心能力: 开源语音代理全栈管道,支持实时语音对话(realtime)、本地直接对话(local)、自定义 WebSocket / TCP 传输层。

设计原则:
全链路模块化:每个环节(VAD / STT / LLM / TTS)均有多个可插拔后端,不绑定供应商
OpenAI Realtime 兼容:用标准 WebSocket 协议暴露 /v1/realtime 端,任何兼容客户端均可接入
本地优先:LLM 可完全跑在本地(llama.cpp / mlx-lm),TTS 可用 Qwen3-TTS GGML / Kokoro / ChatTTS,无需云端
跨平台:Linux(CUDA/CPU)、macOS(Apple Silicon MLX)、均自动解析依赖


认可度

  • GitHub Star:8,003(截至 2026-07-30)
  • 今日新增:827 stars(GitHub Trending 当日排名靠前)
  • 生产验证:已作为数千台 Reachy Mini 机器人的生产对话后端
  • Trending:2026-07-30 GitHub Trending 榜,827 stars/day

链接

GitHub:https://github.com/huggingface/speech-to-speech


原作者

Hugging Face(GitHub: @huggingface

Hugging Face 是 AI 开源社区的核心推动者,主导 Transformers 库、Diffusers、Inference Providers 等基础设施,GitHub 全球 star 数排名前十。本项目由 Hugging Face 官方团队维护。


介绍

speech-to-speech 是一个低延迟、全模块化的语音代理管道:VAD 检测语音边界 → STT 将语音转文字 → LLM 生成回复(流式输出文本和工具调用)→ TTS 将回复合成语音并推送回客户端。全链路通过队列在独立线程中运行,延迟低、吞吐高。

该项目开箱支持 OpenAI Realtime 兼容 WebSocket API(ws://localhost:8765/v1/realtime),任何支持该协议的上层应用均可无缝接入。同时提供 local 模式,直接调用本机麦克风和扬声器,无需编写任何客户端代码。最特别的是 LLM 插槽完全兼容 OpenAI 协议——既可以指向 OpenAI / Anthropic 等托管服务,也可以指向本地 vLLM / llama.cpp 服务器,实现真正的全本地化部署。

安装仅需一行 pip install speech-to-speech,默认使用 Parakeet TDT 做语音识别、GPT-5.4-mini 做对话(通过 OpenAI Responses API)、Qwen3-TTS 做语音合成,CUDA 用户开箱即用,Apple Silicon 用户通过 --local_mac_optimal_settings 一键切换 MLX 推理路径。


特点

  • 四阶段模块化管道:VAD → STT → LLM → TTS,每阶段均可替换后端,不锁定供应商
  • OpenAI Realtime 协议兼容:标准 WebSocket 接口,现有语音应用无需改造即可接入
  • 全本地部署支持:LLM 可跑在本地 llama.cpp / vLLM / mlx-lm,TTS 可选 Qwen3-TTS GGML / Kokoro / ChatTTS / Pocket / MMS,零云依赖
  • 多传输模式:realtime(标准 WebSocket)、local(麦克风直连)、websocket(裸 PCM)、socket(TCP),覆盖从开发调试到生产部署全场景
  • 跨平台自动解析:Linux CUDA/CPU、macOS Apple Silicon MLX,依赖通过 pyproject.toml platform markers 自动选择,无需手动配置
  • 多语言 STT/TTS:内置 Silero VAD(多语言)、Parakeet、Whisper(多语言)、ChatTTS、Kokoro-82M、MMS 等,覆盖 100+ 语言

使用方法

安装:

pip install speech-to-speech

快速启动(使用 OpenAI API):

export OPENAI_API_KEY=sk-...
speech-to-speech

服务启动在 ws://localhost:8765/v1/realtime,用客户端连接即可语音对话。

本地模式(macOS Apple Silicon):

speech-to-speech --local_mac_optimal_settings

自动使用 MPS 设备 + Parakeet STT + MLX LM + Qwen3-TTS,无需任何配置。

完全本地 LLM(llama.cpp):

# 启动本地 Gemma4
llama-server -hf ggml-org/gemma-4-E4B-it-GGUF -np 2 -c 65536 -fa on --swa-full

# 启动 speech-to-speech 指向本地服务
speech-to-speech 
  --model_name "ggml-org/gemma-4-E4B-it-GGUF" 
  --responses_api_base_url "http://127.0.0.1:8080/v1" 
  --responses_api_api_key ""

安装额外后端:

pip install "speech-to-speech[kokoro]"    # Kokoro-82M TTS
pip install "speech-to-speech[chattts]"  # ChatTTS
pip install "speech-to-speech[faster-whisper]"  # Faster Whisper STT
pip install "speech-to-speech[pocket]"   # Pocket TTS

使用场景与人群

适用场景:
– 语音机器人 / 对话智能体开发(本地部署版)
– 具身智能设备对话后端(已有 Reachy Mini 机器人生产验证)
– 隐私敏感场景:语音数据不能上云的医疗、法律、金融对话
– 跨平台语音应用开发(统一接口对接多端)
– AI 语音模型评测(模块化设计方便替换单一组件)

目标用户:
– AI 应用开发者(尤其是语音/具身智能方向)
– 机器人工程师(需要低延迟本地语音 pipeline)
– 隐私安全意识强的企业(数据不离本地)
– 开源 AI 爱好者(Hugging Face 生态深度用户)


输入与输出案例

案例 1:标准实时语音对话

输入(麦克风语音):「请用三句话解释量子计算」

输出(语音):「量子计算是一种利用量子力学原理进行信息处理的技术。它使用量子比特替代传统比特,能够同时表示多种状态。量子计算机在解决特定问题上比经典计算机快得多。」

案例 2:本地模式对话(无互联网)

输入(本地麦克风,LLM 和 TTS 全部跑在本地 MacBook M3 上):「帮我写一个 Python 斐波那契函数」

输出(本地扬声器语音播报):「当然,这是一个递归实现:def fib(n): if n <= 1: return n; return fib(n-1) + fib(n-2)。注意,对于大 n 值建议使用迭代版本以避免栈溢出。」


Star 历史(GitHub)

时间 Stars
2026-07-30 8,003(今日新增 827)

GitHub: https://github.com/huggingface/speech-to-speech

评论区

0 条评论

登录后可评论。

Skill超级捕获手 10 阅读