FAQ
General
What is OpenVoiceLab?
A local web app for running, comparing and fine-tuning open text-to-speech models. It supports 10 model families with preset voices, voice cloning, voice design and multi-speaker dialogue. It also covers dataset building and VibeVoice LoRA fine-tuning.
Is it free?
Yes. OpenVoiceLab is open source under the BSD-3-Clause license. The models have their own licenses. Most are permissive (MIT, Apache-2.0, CC-BY-4.0), but OmniVoice and Echo-TTS are non-commercial. See Supported Models.
Does anything get sent to the cloud?
No. Everything runs on your machine. The only network traffic is downloading packages and model weights, and Gradio analytics are turned off. If you start with --share, Gradio creates a public tunnel to your app.
Do I need a GPU?
Not for the small models: Kokoro, Kitten TTS and Pocket TTS are fast on CPU. Larger models work best on an NVIDIA GPU or an Apple Silicon Mac. Fine-tuning needs an NVIDIA GPU with 16 GB+ VRAM.
Does it work on Mac?
Yes. On Apple Silicon, models run on MPS, and a few run on CPU where that's faster. Fine-tuning isn't practical on a Mac.
Can I run it on a cloud GPU or a server?
Yes. Install it as usual and start it with --host 0.0.0.0, or with --share for a public link. You can preinstall models with openvoicelab install all.
Models
Which model should I use?
See Which model should I use?. In short: Kokoro and Pocket TTS for speed; VoxCPM2, MOSS-TTS, Echo-TTS or Qwen3-TTS Base for cloning; VibeVoice for long dialogue.
Why does each model have its own environment?
TTS models often pin conflicting versions of transformers, torch and other libraries. With an isolated environment per model, every model works with exactly what it was built for, and installing a new model can't break an old one. Each loaded model also runs in its own process, so unloading it frees all of its memory.
How much disk space do models take?
Environments share packages through hard links, so large libraries like PyTorch are stored only once. Weights range from 25 MB (Kitten Nano int8) to 24 GB (MOSS-TTS 8B). Remove on the Models tab deletes a model's environment. Weights live in the Hugging Face cache (~/.cache/huggingface): list them with hf cache ls and delete them with hf cache rm.
Can I use a checkpoint that isn't in the list?
Yes. Paste a Hugging Face repo id or local path into Checkpoint. It has to be a checkpoint the model family's code can load, such as a fine-tune of a supported model.
Will you add model X?
Probably! Open an issue or ask on Discord. Adding a model takes a small spec plus a Backend class; see Adding a model.
Voices
How long should a reference clip be?
5-20 seconds of clean speech from one speaker. Chatterbox Turbo and Nano need more than 5 seconds. Echo-TTS can use up to 5 minutes.
Do I need to type the transcript?
No. When a model needs a transcript and you haven't given one, OpenVoiceLab transcribes the clip with Whisper. For the best quality, check the transcript in the Voices tab.
Can I make a dialogue with several voices?
Yes, with VibeVoice, MOSS-TTSD, Qwen3-TTS, Chatterbox or Pocket TTS. Set Speakers, give each speaker a voice, and write Speaker 1: ... lines. See Multi-speaker dialogue.
Can I control emotion?
Several models support it:
- Instructions: Qwen3-TTS 1.7B CustomVoice and VoxCPM2 take style instructions such as "Very happy".
- Exaggeration: Chatterbox has an exaggeration setting.
- Tags: Chatterbox Turbo and Nano and OmniVoice understand tags such as
[laugh]and[sigh].
With other models, the reference clip's emotion carries over.
Fine-tuning
Which models can I fine-tune?
VibeVoice (1.5B and 7B), with LoRA.
How much audio do I need?
At least 30 minutes of clean, single-speaker audio; 1-3 hours is better.
Should I fine-tune or just clone?
Try cloning first. Modern zero-shot models are very good. Fine-tune when you have a lot of audio of one voice and need consistent quality over long content.
Where is my trained model?
In training_runs/run_<timestamp>/checkpoints/lora/. Pick it under LoRA adapter on the Generate tab.
Can I resume training?
Not yet. You can stop a run early, and the checkpoint saved so far stays usable.
Project
Is it production-ready?
It's in beta. Core features work, but expect rough edges, and please report them on GitHub.
Can I contribute?
Yes. Pull requests are welcome on GitHub, especially new model backends. These docs live at openvoicelab/openvoicelab.github.io.