Languages
646 languages
The model card lists 646 language codes; a few are shown here. Boubou answers in English.
Source: k2-fsa/OmniVoice
OmniVoice from k2-fsa, a zero-shot voice for more than 600 languages that can design a voice from attributes or clone one from a short clip. Its weights are for non-commercial use.
npx boubou@beta run omnivoice:0.6b
Talk on this Mac. It needs Node.js 18 or later; Get started walks you through.
Talk on this Linux PC. It needs an NVIDIA GPU, and the first run also downloads a 3.62 GB engine that every pipeline voice shares; Get started walks you through.
npx boubou@beta serve omnivoice:0.6b
Talk from a phone on the same Wi-Fi, or connect a robot or app. The model still runs on this Mac. Phones and robots walks you through.
Talk from a phone on the same Wi-Fi, or connect a robot or app. The model still runs on this PC. Phones and robots walks you through.
This version runs on Apple Silicon Macs only. On Linux, choose omnivoice:0.6b.
Apple Silicon Mac
Linux PC with an NVIDIA GPU
Memory needs are estimates. Boubou checks the machine before it downloads anything, and smaller machines still need testing.
Everything the model can speak, as its own card or files list it. Black marks what Boubou uses.
Languages
The model card lists 646 language codes; a few are shown here. Boubou answers in English.
Source: k2-fsa/OmniVoice
Voices
OmniVoice has no preset speakers. It designs a voice from attributes such as gender, age, pitch and accent, or clones one from a short reference clip. Without either it picks a new voice for every sentence, so Boubou ships one designed voice, a young American man, and uses it for every reply.
Source: k2-fsa/OmniVoice
Silero + Smart Turn v3.2
--vad sileroParakeet TDT 0.6B v3
speech to textQwen3.5-4B · 4-bit
--llm_backend mlx-lmomnivoice · Fixed voice
--tts omnivoiceBoubou owns the microphone and speakers. Apple voice processing on a Mac, or WebRTC AEC3 on Linux, cancels echo, so you can talk over a reply. Boubou drops the queued audio and cancels the generation.
Boubou maintains one Hugging Face speech-to-speech 1.1.0 pipeline and pins every model in it. Add an upstream option after the model to replace one part.
Change the language model to any MLX model on Hugging Face
npx boubou@beta run omnivoice:0.6b --model_name mlx-community/Llama-3.2-3B-Instruct-4bit
Change speech recognition to Whisper
npx boubou@beta run omnivoice:0.6b --stt mlx-audio-whisper
Options work with serve too. Boubou does not check the models you name: they download from Hugging Face into your own Hugging Face cache. API modules send audio or text to the server you configure. These two examples are for a Mac: on Linux the pipeline stays offline, so options must name local paths.
--vadHears when you start and stop talking. Smart Turn v3.2 then decides whether a pause ends your turn.
Not in Boubou’s runtime yet: firered
--sttWrites down what you said. Parakeet is the default; Whisper versions detect the language.
Not in Boubou’s runtime yet: faster-whisper, whisper-mlx, parakeet-unified, nemotron-streaming, orukeet, paraformer, sense-voice
--llm_backendWrites the reply. Boubou runs pinned 4-bit Qwen3.5 models with mlx-lm; --model_name picks another one.
--ttsSpeaks the reply while it is still being written. Every pipeline voice in the library is one of these.
CC BY-NC: non-commercial use only. Read the license. Weights keep their own licenses; check them before commercial use.