---
title: "Reachy Mini goes fully local"
description: "Reachy Mini’s conversation app can now run its speech stack locally instead of sending audio to a server, avoiding cloud, API keys, and data leaving the machine. The tutorial uses speech-to-speech as a cascaded VAD → STT → LLM → TTS pipeline exposed through a Realtime API-compatible /v1/realtime WebSocket, with Silero VAD v5, Parakeet-TDT 0.6B v3, Qwen3-TTS, and a selectable LLM backend. It shows llama.cpp serving Gemma 4 E4B with parallel slots, 64k context, flash attention, and full sliding-window attention, then covers vLLM, MLX, Transformers, hosted Responses API endpoints, and network connection to a wireless robot. Once the backend and app are connected, conversations run through the local loop, while individual stages can be exchanged to trade latency, quality, language coverage, and hardware choices."
---

# Reachy Mini goes fully local

[Hugging Face](https://yomu.fyi/company/hugging-face) · Amir Mahla, Andres Marafioti · May 27, 2026

**Type:** Tutorial

## Summary

Reachy Mini’s conversation app can now run its speech stack locally instead of sending audio to a server, avoiding cloud, API keys, and data leaving the machine. The tutorial uses speech-to-speech as a cascaded VAD → STT → LLM → TTS pipeline exposed through a Realtime API-compatible /v1/realtime WebSocket, with Silero VAD v5, Parakeet-TDT 0.6B v3, Qwen3-TTS, and a selectable LLM backend. It shows llama.cpp serving Gemma 4 E4B with parallel slots, 64k context, flash attention, and full sliding-window attention, then covers vLLM, MLX, Transformers, hosted Responses API endpoints, and network connection to a wireless robot. Once the backend and app are connected, conversations run through the local loop, while individual stages can be exchanged to trade latency, quality, language coverage, and hardware choices.

## Context

Until this change, Reachy Mini users had to send audio to a server. The local setup is presented as a way to avoid cloud services, API keys, and audio or other data leaving the machine.

## Approach / What changed

Install the speech-to-speech library, run an LLM through llama.cpp or another supported backend, and connect the conversation app to the resulting local Realtime API-compatible WebSocket. The cascade uses Silero VAD v5, Parakeet-TDT 0.6B v3 for speech-to-text, Qwen3-TTS, and a replaceable LLM backend.

## Takeaways

- The local pipeline keeps audio on hardware controlled by the user and avoids per-minute or per-token API costs.
- The speech-to-speech server exposes /v1/realtime over WebSocket, allowing Reachy Mini to use the same protocol with local or external Responses API-compatible LLM servers.
- For vLLM, automatic tool choice, a model-specific tool-call parser, and disabled thinking are required or recommended for reliable, natural-feeling conversations; speculative decoding is optional and can reduce latency.

**Tags:** [LLMs](https://yomu.fyi/topic/llm), [Machine Learning](https://yomu.fyi/topic/machine-learning), [Open Source](https://yomu.fyi/topic/open-source), [Performance](https://yomu.fyi/topic/performance), [Privacy](https://yomu.fyi/topic/privacy)

- Source: [Hugging Face](https://huggingface.co/blog/local-reachy-mini-conversation)
- Source URL: https://huggingface.co/blog/local-reachy-mini-conversation
- Ingested by Yomu: 2026-08-29T01:49:27.569Z

[Read original post](https://huggingface.co/blog/local-reachy-mini-conversation)
