Model or dataset
RVC-Boss/GPT-SoVITS avatar
RVC-Boss/GPT-SoVITS

GPT-SoVITS: Few-Shot Voice Cloning with a Minute of Audio

GPT-SoVITS is a few-shot voice cloning and TTS WebUI that fine-tunes a speaker's voice from one minute of audio and supports zero-shot synthesis from a five-second sample.

61,784 stars6,651 forksPythonMIT

At a glance

What is it?
GPT-SoVITS is an open-source toolkit for few-shot text-to-speech and voice conversion. It promises usable voice cloning from a one-minute sample, with a WebUI that handles dataset prep. The trade-offs are real: GPU requirements, macOS quality limits, and a fast-moving codebase.
Who is it for?
Adopt GPT-SoVITS if you have a CUDA GPU, need cross-lingual few-shot cloning from a minute of audio, and can tolerate a fast-moving codebase with occasional breaking changes. Skip it if you rely on Apple silicon for training, since the docs warn of significantly lower quality.
Can I use it commercially?
Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
Is it still maintained?
Yes. The repository last received commits 29 days ago.
What is it written in?
Mainly Python, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on September 14, 2026, and from our analysis. They are not legal advice.

DEEP OPEN-SOURCE ANALYSIS

The Core Problem: Voice Cloning Without a Corpus

Most TTS systems demand hours of studio-quality speech. GPT-SoVITS attacks that constraint directly. The README claims zero-shot synthesis from a 5-second vocal sample and few-shot fine-tuning from a single minute of data. That is a specific promise, and it changes who can use the tool. The target user is not a large lab with a data pipeline. It is a hobbyist, a content creator, or a small studio that wants a specific voice without recording hundreds of sentences. The project also supports cross-lingual inference, meaning you can train on Mandarin and synthesize English, Japanese, Korean, or Cantonese. That is a meaningful feature because it removes the need for matched training data in every target language.

How It Works: Two Models and a WebUI Pipeline

The architecture is visible in the naming. GPT-SoVITS combines a GPT-style autoregressive model with a SoVITS (VITS variant) model. The GPT part handles the language and prosody, the SoVITS part handles the acoustic features. The README does not detail the internal data flow, but the workflow is clear from the feature list. You start with a raw audio file. The WebUI includes tools for voice accompaniment separation, automatic training set segmentation, and multilingual ASR via Fun-ASR-Nano, SenseVoice, or classic FunASR. Those tools produce a labeled dataset. Then you train or fine-tune the GPT and SoVITS models. The zero-shot path skips fine-tuning entirely, using a 5-second sample at inference time. The few-shot path fine-tunes with that one minute of data. The result is a model that can speak in the target voice, in multiple languages, with an inference speed measured in RTF (real-time factor). The README lists RTF values like 0.028 on a 4060Ti and 0.014 on a 4090, but those are the project's own numbers, not independent benchmarks.

Getting It Running: Installers and Docker

Installation is scripted for each major OS. On Windows, you can download an integrated package and double-click go-webui.bat. Or you can use conda and PowerShell: conda create -n GPTSoVits python=3.10, conda activate GPTSoVits, then pwsh -F install.ps1 --Device <CU126|CU128|CPU> --Source <HF|HF-Mirror|ModelScope>. The Linux path uses bash install.sh with the same device and source flags, plus ROCM as an option for AMD GPUs. macOS installs with --device <MPS|CPU>, but the README warns that GPU-trained models on Macs are significantly lower quality, so they use CPUs instead. Manual install is possible: pip install -r extra-req.txt --no-deps, then pip install -r requirements.txt, plus FFmpeg. Docker is also supported via docker-compose, with services like GPT-SoVITS-CU126-Lite. The Lite images exclude ASR and UVR5 models, which are downloaded on demand. You must set the is_half environment variable to true for GPUs that support fp16, and you may need to raise shm_size to 16g on Docker Desktop.

The WebUI Tools: Dataset Prep as a Feature

The WebUI is not just a text-to-speech playground. It is a dataset preparation suite. That is unusual for a TTS project, and it is a major part of the appeal. Beginners often fail at the data stage, not the model stage. GPT-SoVITS bundles voice separation, segmentation, ASR transcription, and text labeling into one interface. The README lists these as integrated tools, which means you can go from a raw recording to a ready-to-train dataset without leaving the browser. This lowers the barrier to entry significantly. However, it also means the WebUI has many moving parts. If you already have a clean, transcribed dataset, these tools are bloat. You can skip them and train directly, but the project's design clearly assumes you need them. The trade-off is a steeper learning curve for the interface itself.

Where It Fails: Hardware, macOS, and CPU Limits

The documentation is honest about several failure points. On macOS, training with GPUs produces significantly lower quality, so the project defaults to CPU. That is a hard limitation for Mac users who want quality. CPU inference is possible, and the README cites an RTF of 0.526 on an M4 CPU, which is about 20x slower than a 4090. For real-time use, that is borderline. The Docker setup warns that shared memory size can cause unexpected behavior on Windows, and you may need to increase shm_size. The project also notes that the codebase develops rapidly and Docker images lag behind, so you may need to pull the latest code and build locally. These are not hypothetical issues; they are stated in the README. If you lack a CUDA GPU, you are either stuck with slow CPU inference or lower-quality Mac training. For production deployment, that is a serious constraint.

Alternatives: Voice Conversion vs. End-to-End TTS

GPT-SoVITS is not the only player in few-shot TTS. A common alternative is an end-to-end model like XTTS or Tortoise, which also claim zero-shot cloning from a short sample. The key difference is architectural. XTTS and Tortoise are single-model systems that directly predict speech from text and a reference audio. GPT-SoVITS is a two-stage system: a GPT for language modeling, then a SoVITS vocoder. That split allows fine-tuning only the GPT or only the SoVITS, which can be more efficient with tiny datasets. However, it also means more components to install and maintain. Another alternative is a pure voice conversion tool, like RVC (Retrieval-based Voice Conversion), which changes the timbre of existing speech without text input. GPT-SoVITS does both TTS and VC, but its VC capabilities are secondary. If you only need to convert a voice, RVC is simpler. If you need text-to-speech in a cloned voice, GPT-SoVITS offers a unified pipeline.

Maintenance and License: MIT with a Fast-Paced Release Cycle

The project is MIT-licensed, which is permissive for commercial use, but that is not legal advice. The repository shows a recent release cadence: 20250606v2pro, 20250422v4, 20250228v3. That means multiple releases per quarter. The README itself warns that the codebase develops rapidly and Docker images lag behind. For a production user, that is a double-edged sword. You get new features and fixes, but you also face frequent breaking changes. The changelog is linked in the README, so you can track changes, but you must budget time for upgrades. The project also has a CPU-optimized fork, GPT-SoVITS-CPUFast, which suggests the main branch is not tuned for CPU. If you plan to deploy on CPU-only servers, you should evaluate that fork or accept slower inference. The maintenance cost is real, and it is not hidden.

Editorial conclusion

Adopt GPT-SoVITS if you have a CUDA GPU, need cross-lingual few-shot cloning from a minute of audio, and can tolerate a fast-moving codebase with occasional breaking changes. Skip it if you rely on Apple silicon for training, since the docs warn of significantly lower quality. Before committing, verify your GPU's VRAM, test the WebUI workflow with a short sample, and read the changelog for the latest version. The project's speed figures on 4060Ti and 4090 are promising, but your mileage depends on hardware and dataset quality.

Official sources

  1. Official README
  2. Project repository
  3. Release notes
Community notes

Community notes