Supported Models
OpenVoiceLab supports 10 model families. Each one installs into its own environment the first time you load it, or from the Models tab. The Models tab also shows each model's checkpoints, download sizes, tips and install status.
Overview
| Model | Cloning | Presets | Voice design | Multi-speaker | Languages | License |
|---|---|---|---|---|---|---|
| VibeVoice | ✓ | Realtime | 4 | English, Chinese | MIT | |
| Qwen3-TTS | Base | CustomVoice | VoiceDesign | 4 | 10 | Apache-2.0 |
| VoxCPM | ✓ | VoxCPM2 | 30 | Apache-2.0 | ||
| Chatterbox | ✓ | 4 | 23 | MIT | ||
| OmniVoice | ✓ | ✓ | 600+ | ⚠️ CC-BY-NC-4.0 | ||
| Echo-TTS | ✓ | English | ⚠️ CC-BY-NC-SA-4.0 | |||
| MOSS-TTS | ✓ | VoiceGenerator | TTSD (5) | 31 | Apache-2.0 | |
| Kitten TTS | ✓ | English | Apache-2.0 | |||
| Pocket TTS | ✓ | ✓ | 4 | 7 | CC-BY-4.0 | |
| Kokoro | ✓ | 7 | Apache-2.0 |
Licenses
⚠️ marks non-commercial licenses. Check a model's license before using its output commercially. Echo-TTS's license also covers the audio it generates.
Multi-speaker scripts work natively in VibeVoice and MOSS-TTSD. For Qwen3-TTS, Chatterbox and Pocket TTS, OpenVoiceLab generates each line with that speaker's voice and joins the lines together.
Which model should I use?
- Fastest, runs anywhere: Kokoro, Kitten TTS or Pocket TTS, all of which run well on CPU
- Best zero-shot cloning: VoxCPM2, MOSS-TTS v1.5, Echo-TTS (English) or Qwen3-TTS Base
- Describe a voice instead of cloning one: Qwen3-TTS VoiceDesign, VoxCPM2, OmniVoice or MOSS VoiceGenerator
- Long podcasts and dialogue: VibeVoice 1.5B (up to 90 minutes, 4 speakers) or MOSS-TTSD (5 speakers)
- Non-English: VoxCPM2 (30 languages), MOSS-TTS (31), Chatterbox Multilingual (23) or OmniVoice (600+)
- Emotion and laughs: Chatterbox Turbo (
[laugh],[sigh]tags), OmniVoice ([laughter]) or Qwen3-TTS 1.7B CustomVoice (style instructions) - Low memory: Chatterbox Nano or MOSS-TTS Nano
- Fine-tuning: VibeVoice
VibeVoice
Long-form, expressive, multi-speaker podcast-style TTS with zero-shot cloning. This is the model you can fine-tune with LoRA in OpenVoiceLab.
| Checkpoint | Size | Notes |
|---|---|---|
vibevoice/VibeVoice-1.5B | 5.4 GB | Up to 90 minutes, 4 speakers |
vibevoice/VibeVoice-7B | 18.7 GB | Best quality, needs about 20 GB memory |
microsoft/VibeVoice-Realtime-0.5B | 2.0 GB | Fast, single speaker, preset voices |
Tips: Write scripts as Speaker 1: ... lines with one voice per speaker. Clean 10-30 second reference clips work best, and no transcript is needed. Without a voice, the model picks a random one. The CFG scale setting (default 1.3) controls how closely the output follows the voice and text. VibeVoice sometimes adds background music; regenerating with a different seed usually fixes it.
Qwen3-TTS
Expressive multilingual TTS from Qwen. What it can do depends on the checkpoint:
| Checkpoint | What it does |
|---|---|
Qwen/Qwen3-TTS-12Hz-0.6B-CustomVoice | 9 premium preset voices |
Qwen/Qwen3-TTS-12Hz-1.7B-CustomVoice | Preset voices plus style instructions |
Qwen/Qwen3-TTS-12Hz-1.7B-VoiceDesign | Voice design from a description |
Qwen/Qwen3-TTS-12Hz-0.6B-Base, 1.7B-Base | 3-second voice cloning |
Tips:
- CustomVoice: every preset speaks every language. In Chinese, Dylan and Eric speak in Beijing and Sichuan dialects. On 1.7B, add a style instruction such as "Very happy".
- VoiceDesign: describe the voice you want.
- Base: use a clip and its transcript. Without the transcript, only the speaker's timbre is copied.
VoxCPM
Tokenizer-free 48 kHz TTS with expressive cloning and voice design.
| Checkpoint | Size | Notes |
|---|---|---|
openbmb/VoxCPM2 | 2B | 48 kHz, 30 languages, voice design |
openbmb/VoxCPM1.5 | 0.8B | 44.1 kHz, English/Chinese, needs a transcript |
openbmb/VoxCPM-0.5B | 0.6B | 16 kHz, English/Chinese, needs a transcript |
Tips: No language setting is needed; just type text in any supported language. VoxCPM2 clones from the clip alone, and adding the clip's transcript gives higher-fidelity continuation cloning. Voice design and style instructions work only on VoxCPM2 and vary between runs, so try a few seeds.
Chatterbox
Resemble AI's zero-shot cloning TTS, with emotion exaggeration control.
| Checkpoint | Size | Notes |
|---|---|---|
ResembleAI/chatterbox-turbo | 3.0 GB | English, fast, paralinguistic tags |
| Multilingual V3 | 3.2 GB | 23 languages |
ResembleAI/chatterbox | 3.2 GB | Original English model, exaggeration + CFG control |
ResembleAI/chatterbox-nano | 1.9 GB | English, smallest and fastest |
| Multilingual V2 | 3.2 GB | Legacy 23-language model |
Tips: Use a clean 5-10 second reference clip; Turbo and Nano need at least 5 seconds. Turbo and Nano understand tags such as [laugh], [chuckle], [cough] and [sigh]. For dramatic speech, try exaggeration around 0.7 with CFG around 0.3. Output is watermarked (Resemble Perth).
OmniVoice
Fast diffusion-LM TTS for 600+ languages, with zero-shot cloning and attribute-based voice design. License: CC-BY-NC-4.0 (non-commercial).
Tips: Use a 3-10 second reference clip in the same language as the text. If there's no transcript, the clip is transcribed automatically. Voice design accepts only comma-separated attributes:
- male or female
- age: child, teenager, young adult, middle-aged, elderly
- pitch: very low to very high
- whisper
- accent: american, british, australian, indian, ...
For example: female, low pitch, british accent. Inline tags such as [laughter] and [sigh] are supported.
Echo-TTS
Expressive 44.1 kHz diffusion TTS with strong zero-shot cloning from a short clip; no transcript needed. License: CC-BY-NC-SA-4.0 (non-commercial, and the license applies to outputs too).
Tips: English only. Clips of about 10 seconds work well, and clips of up to 5 minutes are used in full. Without a reference you get a random voice. Commas act as pauses.
MOSS-TTS
The OpenMOSS TTS family.
| Checkpoint | Size | Notes |
|---|---|---|
OpenMOSS-Team/MOSS-TTS-Local-Transformer-v1.5 | 17.6 GB | 4B, 48 kHz stereo, cloning + plain TTS, 31 languages |
OpenMOSS-Team/MOSS-TTS-v1.5 | 24 GB | 8B flagship, best cloning quality |
OpenMOSS-Team/MOSS-TTSD-v1.0 | 24 GB | 8B dialogue model, up to 5 speakers |
OpenMOSS-Team/MOSS-VoiceGenerator | 11 GB | 1.7B voice design |
OpenMOSS-Team/MOSS-TTS-Nano | 0.3 GB | 0.1B, tiny and fast, cloning |
Tips:
- Cloning: only a clip is needed, no transcript, except for TTSD (see below).
- Language: set it for best results.
- TTSD: write
Speaker 1: ...lines. Every clip needs its transcript, and speakers without a clip get a random voice. - VoiceGenerator: describe the voice, for example "warm, slow elderly male narrator".
- Pauses (v1.5): insert them with
[pause 1.5s]. - Apple Silicon: Nano runs on CPU by default, where it's faster.
Kitten TTS
Ultra-light (15-80M) ONNX TTS with 8 English preset voices. Very fast on CPU; no GPU needed.
Checkpoints: Mini 0.8 (80M, best quality), Micro 0.8 (40M), Nano 0.8 (15M) and Nano 0.8 int8 (25 MB download).
Voices: Bella, Luna, Rosie and Kiki (female); Jasper, Bruno, Hugo and Leo (male). Kitten always runs on CPU, so the device setting is ignored.
Pocket TTS
Kyutai's small streaming TTS, which runs faster than real time on CPU. It has preset voices and zero-shot cloning.
There is one checkpoint per language: English, French, German, Spanish, Italian, Portuguese and Dutch. Each comes in a fast 110M version and a higher-quality 24-layer 340M version.
Tips: Preset voices work out of the box. Voice cloning needs the gated kyutai/pocket-tts weights: accept the terms at huggingface.co/kyutai/pocket-tts, then run hf auth login. Pocket TTS runs on CPU on Apple Silicon.
Kokoro
A tiny (82M), fast preset-voice model that runs comfortably on CPU. No voice cloning.
Languages: English (US), English (UK), Spanish, French, Hindi, Italian and Portuguese (BR).
Tips: Voice names start with a language and gender code: af_ = American female, bm_ = British male, ff_ = French female, and so on.
Custom checkpoints
The Checkpoint box on the Generate tab also accepts any Hugging Face repo id or local folder that a backend understands, such as a community fine-tune. For local folders, enter the full path.
Adding a model
Each model family has two parts: a small spec in ovl/backends/catalog/ (checkpoints, capabilities, parameters, pinned requirements) and an implementation in ovl/backends/impl/ (a Backend class with load() and generate()). See ovl/backends/impl/kokoro.py for a minimal example. Pull requests are welcome!