Guide
GPT-SoVITS on Mac: Zero-Shot Cloning and Fine-Tuning
What GPT-SoVITS is, how zero-shot cloning differs from few-shot fine-tuning, what the macOS install needs, and when a Mac app is the simpler path.
Free plan with Kokoro voices, 3,000 characters a day · 3-day Pro trial, then $49 once
Direct answer: GPT-SoVITS is an open source, research-grade voice cloning and text-to-speech WebUI from the RVC-Boss project. It can speak text in a voice from a five-second sample (zero-shot; the inference WebUI's own label asks for a 3 to 10 second reference) or improve similarity by fine-tuning on about a minute of audio (few-shot). It runs on an Apple Silicon Mac through Conda with an MPS or CPU build, and its source code is MIT licensed. Murmur does not run GPT-SoVITS. If you want a one-click path on a Mac instead of a Python WebUI, this guide also shows the shipped models that clone from a short reference.
Most people arrive here after watching a demo and assuming GPT-SoVITS is a finished app. It is not. It is a Gradio WebUI you install and run yourself, with separate tabs for dataset preparation, training, and inference. That makes it genuinely powerful for someone who wants to train a voice model, and awkward for someone who just wants to type text and hear it in a voice they own. This guide covers both sides: what GPT-SoVITS does, where the setup effort actually goes, and what a no-training alternative looks like on a Mac.
What GPT-SoVITS actually is
The project describes itself in its README as a few-shot voice conversion and text-to-speech WebUI. Two ideas sit at its center. Zero-shot TTS takes a short vocal sample, the README says five seconds, and generates speech in that voice immediately without training. Few-shot TTS fine-tunes the model on a small dataset, the README names about one minute, for better voice similarity and realism. Cross-lingual inference lets you generate in a language that differs from the training set; the README lists English, Japanese, Korean, Cantonese, and Chinese.
The WebUI also bundles dataset tooling. The README names voice and accompaniment separation (UVR5), automatic training set segmentation, Chinese ASR, and text labeling. Those are the steps you would otherwise script by hand, which is why the project is often described as a full pipeline rather than a single inference demo. It is built on PyTorch and presented through Gradio, so the whole thing lives in a browser tab that talks to a local Python process.
Zero-shot cloning versus few-shot fine-tuning
People often blur two different jobs, and the README names them separately. One is zero-shot cloning, where you hand the pretrained model a reference clip and it copies the timbre. The other is fine-tuning, where you assemble a small dataset and train a model for a single voice. The README presents both, and choosing between them matters more than any slider in the interface.
| Approach | Reference audio | What gets trained | Typical effort |
|---|---|---|---|
| Zero-shot | About five seconds, per the README | Nothing; the base model is used directly | Fast, but similarity depends on how clean the sample is |
| Few-shot fine-tune | About one minute, per the README | A GPT and SoVITS model for the target voice | Longer: dataset prep, ASR, proofreading, then training |
Zero-shot is the lighter path on a Mac because it needs no training loop. Fine-tuning is where the project earns its reputation for similarity, and also where the hours go: you prepare clips, run ASR, correct the transcripts, then train. The README frames fine-tuning as the way to improve similarity for a specific speaker, so if that is not your goal you may not need the training tab at all.
The training workflow, in the README's own steps
The README maps the path through the WebUI in a short sequence, and path auto-filling is now supported so the interface can fill in directories for you.
- Fill in the audio path for your recordings.
- Slice the audio into small chunks.
- Denoise, which the README marks optional.
- Run ASR to transcribe the clips.
- Proofread the ASR transcriptions.
- Move to the next tab and fine-tune the model.
Your clips have to be described in a plain text list file. The README gives the format as the vocal path, the speaker name, the language, and the transcript text, separated by pipe characters. The language field uses short codes: zh for Chinese, ja for Japanese, en for English, ko for Korean, and yue for Cantonese. A wrong transcript here is worse than a short dataset, because the model learns the pairing you gave it.
Installing GPT-SoVITS on a Mac
The README treats macOS as a supported target but not the primary one. It says plainly that models trained with GPUs on Macs come out with significantly lower quality than on other devices, so the project temporarily uses CPUs instead. That is the most important sentence on the page for a Mac user. You are not getting the same fine-tuning experience as someone on a recent NVIDIA card, and the project says so itself.
The documented install is Conda plus a shell script. Create a Python 3.10 environment, activate it, then run install.sh with a device flag and a model source, choosing MPS or CPU for the device. Python 3.10 to 3.12 appears in the project badges, and the README's tested environment table lists Apple silicon with Python 3.9 and 3.11. The README's manual install route also needs FFmpeg, which on macOS is a single Homebrew command: brew install ffmpeg. The install.sh script installs FFmpeg into its own conda environment, so check which route you are following. After that, the installer can fetch the pretrained models from Hugging Face or a mirror, and you launch the interface with python webui.py.
The trained-model warning is worth repeating in different words. If your reason for using GPT-SoVITS is the best possible clone, read the README's Mac note before you plan to train: it says models trained with GPUs on Macs come out at significantly lower quality, so it uses CPUs for training on macOS instead. If your reason is to try the pipeline, learn how zero-shot cloning behaves, or run inference locally without sending audio anywhere, the CPU route is documented and works.
What can go wrong
- Disk: the pipeline downloads pretrained models, G2PW, UVR5 weights, and ASR models from Hugging Face or ModelScope. Budget the space before you start.
- Python and PyTorch: use the documented Conda environment. The changelog records past breakage from version drift in NumPy, Numba, librosa, pydantic, and PyTorch-Lightning.
- Mac acceleration: the README uses CPU for Mac training because GPU-trained models came out lower quality, and a changelog entry moved Mac inference from MPS to CPU for speed. Expect CPU timings, not GPU timings.
- FFmpeg: the README's manual route lists it as a prerequisite, so a missing FFmpeg is the first thing to check when audio loading or slicing fails. Install it with Homebrew as the README says.
- Interface expectations: this is a research WebUI, so tabs, formats, and parameters change between versions. Read the changelog when something moves.
License, languages, and what to check
The repository ships an MIT license, Copyright 2024 RVC-Boss, which I read in the project's LICENSE file. MIT is permissive for the code: you can use, modify, and redistribute it. Two things sit outside that single line. First, the README credits third party projects and models, and the main weights on Hugging Face are labelled MIT, so read the model card and the credits for each specific component you use if you plan to ship something. Second, a license on code says nothing about the rights to a voice you clone. Keep those questions separate.
Language support is also narrower than the feature list suggests. Zero-shot and few-shot are about cloning, and cross-lingual inference in the README names five languages: English, Japanese, Korean, Cantonese, and Chinese. If you need a language outside that set, check the current README and model cards rather than assuming it is covered.
Should you run it yourself?
The honest answer is that GPT-SoVITS is a strong choice for one kind of person and the wrong tool for another. This table is a starting point, not a rule.
| Your situation | DIY GPT-SoVITS | A Mac voice app path |
|---|---|---|
| You want to train and keep your own voice model | Good fit: MIT code, full control, training pipeline included | Not the same job; the app clones from a reference without training |
| You need a clone without training anything | Possible with zero-shot, quality varies with the sample | Shipped models clone from a short reference, and some also ask for a transcript of it |
| You have an Apple Silicon Mac and little Python experience | Expect Conda, PyTorch, and an MPS or CPU setup | Install the app and download a model from inside it |
| You need a clear licensing story for commercial work | MIT code, but check weights and sample rights separately | Free plan, $49 one-time, a 3-day Pro trial, and a 7-day refund |
| You need Windows, Linux, or a browser app | Also runs on Windows and Linux; this is its strength | Murmur is a native macOS app only |
The no-training path: cloning from a short reference on a Mac
If you do not want to train anything, the practical question becomes what a Mac app can do with a short reference clip. Murmur ships several models that clone from a reference without a training loop. Chatterbox Turbo clones in English from a reference and supports inline reaction tags. Chatterbox Multilingual clones across its supported languages. Qwen3-TTS Base clones from a short reference and also offers preset speakers. Fish Audio S2 Pro clones with expression tags. OmniVoice is built for zero-shot cloning across a wide language list. You pick a model, supply a clip (some models also ask for a transcript of it), and generate; there is no dataset step.
Reference lengths differ by model, so read the prompt in the app. As a guide, the app's built-in guidance asks for more than five seconds for Chatterbox Turbo, and around three to ten seconds for Qwen3-TTS Base and OmniVoice, with Fish Audio S2 Pro happiest in the ten to thirty second range. Every cloning model other than the bundled Kokoro needs at least 16GB of unified memory, so an 8GB Mac should stay on Kokoro. If you only have a few seconds of clean speech and want a result today, that is the trade you are making against the GPT-SoVITS training route.
For a wider look at the app options, see the comparison of local AI voice cloning apps for Mac. If you are collecting a sample for the first time, cloning your voice from ten seconds covers the recording conditions that matter more than model choice. And if you want the broader decision, a local voice studio versus DIY open source lays out when a Python pipeline is worth the effort. If memory is the constraint, running local TTS on a 16GB Mac explains what fits.
Consent and rights
Wherever you clone a voice, the rule is the same: only clone voices you own or have written permission to use. GPT-SoVITS can copy a voice from a few seconds of audio, which makes it easy to do the wrong thing by accident. Use your own recordings, a voice actor who agreed in writing, or a synthetic voice you are licensed to use. Do not use a real person's voice or a copyrighted character's voice without the right to do so.
If you plan to publish or sell the result, read the model and sample terms, not just the code license. The open source model license checklist and the guide to commercial licenses for local TTS models both walk through that. For handling a personal sample safely, the private voice cloning guide is a good next read.
Frequently asked questions
Sources
- GPT-SoVITS README (RVC-Boss), features, macOS install, dataset formatAccessed 2026-10-19
- GPT-SoVITS LICENSE file (MIT, Copyright 2024 RVC-Boss)Accessed 2026-10-19
- GPT-SoVITS English changelog (Mac CPU training, VRAM notes)Accessed 2026-10-19
Clone your own voice on your Mac without training a model
Murmur is a local voice studio for Apple Silicon and Intel Macs running macOS 15 or later. Clone from a short reference with shipped models, or use the bundled Kokoro voice on the free plan. The website edition costs $49 one-time, with a free plan and a 3-day Pro trial, and a 7-day refund policy.
macOS 15+ · Apple Silicon and Intel Macs · Windows beta · 7-day refund policy