← 返回日报
🌐 机器翻译 · DeepSeek · HF Blog

Reachy Mini goes fully local


好的,这是您要求的英文文章的中文翻译,已按照要求保留原文结构、Markdown 格式、技术术语和代码块。


Reachy Mini 实现完全本地化

回到文章

Reachy Mini 实现完全本地化 发布于 2026 年 5 月 27 日 在 GitHub 上更新 点赞 10 +4

Amir Mahla A-Mahla 关注 Andres Marafioti andito 关注

快速开始 本地运行 LLM 设置语音到语音 将 Reachy Mini 连接到语音到语音 深入探讨 为什么要运行你自己的语音到语音服务器? 我们的推荐默认配置:VAD, STT, TTS 选择你的 LLM 在笔记本上运行引擎,在机器人上运行应用 总结

在组装好你的 Reachy Mini 后,你需要安装对话应用并开始与它交谈。直到现在,你都必须将音频发送到服务器。但这种情况已经改变了。今天,我们将带你了解如何在本地运行整个技术栈。这个技术栈由我们的语音到语音(speech-to-speech)库驱动,它是一个级联的 VAD → STT → LLM → TTS 管道,并暴露了一个兼容 Realtime API 的 /v1/realtime WebSocket。一旦你启动了后端,就可以从 UI 界面将机器人指向它。

在当今的开源领域,级联架构是最灵活的选择,并且如果组件选择得当,它们也是最快的。我们会推荐我们最喜欢的组件,但级联架构的重点在于你可以自由替换它们。新的模型每周都会发布。

TL;DR 为你的 Reachy Mini 部署一个本地语音后端。我们使用我们的语音到语音(speech-to-speech)库,采用级联架构。推荐配置:使用 Gemma 4 的 llama.cpp、Silero VAD、Parakeet-TDT STT、Qwen3-TTS。

快速开始

这篇博客将指导你如何完全在本地运行与 Reachy Mini 的对话。无需云端,无需 API 密钥,没有数据离开你的机器。以下是展示此过程的视频:

本地运行 LLM

为了运行 LLM,我们将使用 Hugging Face 的 llama.cpp。如果你需要安装它,最简单的方法是 brew install llama.cppwinget install llama.cpp,如需更多帮助,请查阅文档。

首先,我们将运行:

llama-server -hf ggml-org/gemma-4-E4B-it-GGUF -np 2 -c 65536 -fa on --swa-full

完成!第一次运行时会下载模型,后续启动会很快。

这些标志是什么意思?

我们首先简单地安装这个库:

uv pip install speech-to-speech

然后,在另一个终端中运行 LLM 的同时,我们可以简单地运行:

speech-to-speech --responses_api_base_url "http://127.0.0.1:8080" --responses_api_api_key "" --mode local

然后你就可以通过终端开始与模型对话了!第一次运行时需要下载 Parakeet 和 Qwen3TTS,但后续启动会很快。以下视频展示了本地对话模式:

现在,在你尝试了 --mode local 模式之后,你可以不带该选项再次运行命令,以便为机器人提供语音到语音服务。

将 Reachy Mini 连接到语音到语音

一旦你运行了 llama.cpp 和 speech-to-speech,你就可以通过桌面应用启动机器人,并启动对话应用。在对话应用的 UI 中,你需要通过在 HF 后端点击“编辑连接”来选择本地模式。以下视频展示了如何操作:

这样就完成了。你可以开始与你的机器人对话了。

管道的每个阶段都是一种权衡:有速度更快但质量较低的 TTS 模型,也有速度较慢但质量更高的 STT 模型。我们针对多语言进行了优化,而你可能希望针对单一语言进行优化。博客的其余部分将介绍如何进行定制。

深入探讨

为什么要运行你自己的语音到语音服务器?

托管的实时后端很方便,但运行你自己的引擎可以解锁三个优势:

speech-to-speech 仓库通过一个单一的 CLI 为你提供了所有这些功能。它会在 /v1/realtime 启动一个 WebSocket 服务器,该服务器使用 Reachy Mini 已经知道如何通信的相同协议。

我们的推荐默认配置:VAD, STT, TTS

一个级联语音管道有四个阶段:VAD、STT、LLM 和 TTS。对于其中三个,我们选择了可靠的默认配置,以便你可以专注于 LLM:

| 阶段 | 选择 | 原因 | | :--- | :--- | :--- | | VAD | Silero VAD v5 | 体积小、准确、可在 CPU 上运行。是开源语音代理领域事实上的默认选择。 | | STT | Parakeet-TDT | 支持流式处理、速度非常快、英语质量出色。 | | TTS | Qwen3-TTS | 富有表现力、低延迟、支持多语言、支持自定义语音。 |

我们对这些选择有明确的倾向,如果你有自己的偏好,可以随意替换它们。

选择你的 LLM

LLM 是对系统延迟和整体性能影响最大的层级。我们支持两种选择:在本地运行模型(llama.cpp、MLX、Transformers、vLLM),或使用支持 Responses API 的服务器(OpenAI、Gemini、HF Inference Endpoints、llama.cpp、vLLM 等)。

Responses API:将大脑与语音循环解耦

系统的主要瓶颈是 LLM 推理延迟。为了解决这个问题,我们支持通过 Responses API 协议暴露的外部推理引擎。因此,speech-to-speech 引擎支持第二种模式,即只要 LLM 能使用 Responses API 协议进行通信,它就可以运行在独立的进程中。你可以在一个终端启动你的模型服务器,在另一个终端启动语音循环,两者通过 HTTP 进行通信。

选项 1:在一个终端运行 llama.cpp,在另一个终端运行 speech-to-speech

终端 1:llama.cpp 服务器:

llama-server -hf ggml-org/gemma-4-E4B-it-GGUF -np 2 -c 65536 -fa on --swa-full

终端 2:speech-to-speech 客户端:

speech-to-speech \
    --mode realtime \
    --stt parakeet-tdt \
    --tts
📖 阅读原文 →