Skip to content

Installation ​

Requirements ​

  • Linux, macOS (Apple Silicon or Intel) or Windows 10/11
  • git
  • Python 3.10+, or uv (recommended). uv downloads the right Python by itself.

To install uv:

bash
# Linux / macOS
curl -LsSf https://astral.sh/uv/install.sh | sh
powershell
# Windows (PowerShell)
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

Quick installation ​

Linux / macOS ​

bash
git clone https://github.com/fakerybakery/openvoicelab && cd openvoicelab
./scripts/setup.sh
./scripts/run.sh

Windows ​

cmd
git clone https://github.com/fakerybakery/openvoicelab && cd openvoicelab
scripts\setup.bat
scripts\run.bat

Then open http://localhost:7860.

The setup script creates a venv/ folder containing the app. It installs the right PyTorch build for your machine (CUDA, ROCm or CPU) automatically.

Models are installed separately

Setup installs only the app, not the models. Each model family gets its own Python environment the first time you load it, or when you install it from the Models tab. This keeps models with conflicting dependencies from breaking each other. The first load of a model takes a few minutes, while its environment is installed and its weights are downloaded.

Manual installation ​

bash
git clone https://github.com/fakerybakery/openvoicelab && cd openvoicelab
uv venv --python 3.12 venv
uv pip install --python venv/bin/python --torch-backend=auto -e .
venv/bin/openvoicelab

On Windows, use venv\Scripts\python.exe and venv\Scripts\openvoicelab.exe.

Installing models ahead of time ​

You can install model environments up front instead of on first load, for example on a server:

bash
venv/bin/openvoicelab install kokoro qwen3_tts   # or: install all
venv/bin/openvoicelab models                     # list models and their status

Or open the Models tab, choose a model family and click Install.

Launch options ​

bash
./scripts/run.sh --port 8080         # different port
./scripts/run.sh --host 0.0.0.0      # reachable from other devices on your network
./scripts/run.sh --share             # temporary public Gradio link

The same options work with run.bat and with openvoicelab ui.

WARNING

--host 0.0.0.0 and --share let anyone who can reach the address use your GPU and see your voice library. TensorBoard (on the Training tab) only works on the machine running OpenVoiceLab.

Where things are stored ​

OpenVoiceLab writes everything into one folder: the directory you run it from, or the folder set in the OVL_HOME environment variable.

FolderContents
envs/One Python environment per installed model
voices/Your voice library (audio clips plus .txt transcripts)
outputs/Generated audio
data/Datasets built on the Data tab
training_runs/Fine-tuning runs and LoRA adapters
logs/App log

Model weights go in the regular Hugging Face cache (~/.cache/huggingface). To use gated models, log in with hf auth login.

Updating ​

bash
./scripts/update.sh    # scripts\update.bat on Windows

This pulls the latest code and updates the app. When a model's pinned requirements change, its environment is refreshed automatically the next time you load it.

GPU notes ​

  • NVIDIA: install a recent driver. PyTorch ships its own CUDA runtime, so you don't need the CUDA toolkit. If the footer of the app doesn't list your GPU, see Troubleshooting.
  • Apple Silicon: models run on MPS automatically. Some models fall back to CPU because it's faster or more reliable there. The Models tab notes which ones.
  • CPU only: everything works, but large models are slow. Kitten TTS, Pocket TTS and Kokoro are fast on CPU.

Next steps ​

👉 Quick Start: generate your first clip

Released under the BSD-3-Clause License.