kyutai-labs/unmute
Make text LLMs listen and speak
What it solves
Unmute enables standard text-based Large Language Models (LLMs) to engage in real-time voice conversations. It bridges the gap between text LLMs and spoken interaction by integrating high-performance speech-to-text (STT) and text-to-speech (TTS) models, reducing the latency typically associated with voice interfaces.
How it works
Unmute acts as an orchestration layer that wraps a text LLM with specialized audio models:
- Speech-to-Text: Transcribes user audio input in real time via a websocket connection.
- LLM Processing: Once the STT detects the user has finished speaking, the transcribed text is sent to an LLM (such as Gemma 3 or models via OpenRouter/vLLM) to generate a text response.
- Text-to-Speech: The LLM's text output is streamed into a TTS engine, which converts it back into audio and forwards it to the user.
Who it’s for
- Developers looking to add low-latency voice capabilities to their existing text LLMs.
- Researchers experimenting with real-time audio-text-audio pipelines.
- Self-hosters who want a private, voice-enabled AI assistant using open-source models.
Highlights
- Low Latency: Optimized STT and TTS components to ensure fluid conversation.
- LLM Agnostic: Works with any OpenAI-compatible LLM server (vLLM, Ollama, OpenRouter).
- Flexible Deployment: Supports Docker Compose for easy setup, Dockerless for manual control, and Docker Swarm for scaling.
- Customizable Voices: Allows users to change characters and voices via a configuration file.
Related
- Project
- Project
- Project
- Project
- Project