How to run GPT-SoVITS on a cloud GPU
Rent a GPU on Deploy, then open a terminal in JupyterLab or over SSH. Install GPT-SoVITS from the official repository, run the Linux install.sh block, open webui.py, and copy logs, the SoVITS_weights* and GPT_weights* directories, and any audio you download before you destroy the instance. Destroying the instance deletes its disk.
The commands below are copied from the upstream files named in each step. They were not run on a CloudGPU instance for this page. Anything this page adds around them is marked.
Use a reference clip you have the right to clone. The README does not add a permission line. The repository license and the model card license field are MIT. A MIT license for the code is not a grant to clone someone else’s voice.
Other voice installs on the same kind of instance: how to train an RVC voice model with Applio, how to run IndexTTS2, how to run Fish Speech, how to run CosyVoice, how to run F5-TTS, how to run Kokoro TTS, and how to run Chatterbox TTS.
What the README and the model card say about memory
The GPT-SoVITS README and the lj1995/GPT-SoVITS model card publish no GB figure (read 2026-11-12). The v2Pro notes say “Slightly higher VRAM usage than v2”. This page does not treat that sentence as a GB figure. The README’s RTF sentence stays in the README. The model API reported gated: false, pipeline_tag: text-to-speech, and license mit.
GET /v1/public/compute-capabilities does not list GPUs. It returns feature flags. The memory column is vram_gb from gpu-prices.json, updated_at 2026-11-12T12:59:08.958Z. GET /v1/public/gpu-catalog the same day (generated_at 2026-11-12T12:59:08.060Z) listed the same names and the same vram_gb values, plus Ascend 910B, which is not in gpu-prices.json and is not listed here. There is no upstream GB cutoff to match these values against. Which listing you can start is on Deploy. This page does not say which listings are available.
| Catalog name | vram_gb |
|---|---|
| RTX 2080 | 8 |
| RTX 3080 | 10 |
| RTX 2080 Ti | 11 |
| RTX 3080 Ti | 12 |
| V100 16G | 16 |
| A30 | 24 |
| RTX 3090 | 24 |
| RTX 4090 | 24 |
| RTX 4090D | 24 |
| RTX 4080 SUPER 32G | 32 |
| RTX 5090 | 32 |
| RTX 5090D | 32 |
| V100 32G | 32 |
| A100 40G | 40 |
| A800 40G | 40 |
| A40 | 48 |
| RTX 4090 48G | 48 |
| RTX 4090D 48G | 48 |
| RTX A6000 | 48 |
| NVIDIA RTX PRO 5000 72G | 72 |
| RTX PRO 5000 72G | 72 |
| A100 80G | 80 |
| A800 80G | 80 |
| H800 | 80 |
| RTX 6000D | 83 |
| H20 96G | 96 |
| RTX PRO 6000 96G | 96 |
| RTX PRO 6000 Max-Q | 96 |
Install
On Deploy, choose Raw GPU. The Linux block uses Python 3.10. If conda is not on PATH, use how to set up a conda environment on a cloud GPU. This page did not check whether the Raw GPU image already has conda.
The README install block does not print a clone. This page adds the clone of the repository that README is in:
git clone https://github.com/RVC-Boss/GPT-SoVITS.git
cd GPT-SoVITS
Copied from the Linux section. The angle brackets are the README’s placeholders.
conda create -n GPTSoVits python=3.10
conda activate GPTSoVits
bash install.sh --device <CU126|CU128|ROCM|CPU> --source <HF|HF-Mirror|ModelScope> [--download-uvr5]
The tested-environments table lists Python 3.10 with PyTorch 2.5.1 on CUDA 12.4, Python 3.11 with PyTorch 2.5.1 on CUDA 12.4, Python 3.11 with PyTorch 2.7.0 on CUDA 12.8, Python 3.9 with PyTorch 2.8.0dev on CUDA 12.8, and Python 3.12 with PyTorch 2.7.1 on CUDA 11.8 and on CUDA 12.8. The Linux block above is Python 3.10. install.sh (read 2026-11-12) installs PyTorch from https://download.pytorch.org/whl/cu128 when --device is CU128, and from https://download.pytorch.org/whl/cu126 when --device is CU126. It does not pin a torch version in those two lines. Neither was run. How to install a specific PyTorch CUDA version is the wheel index.
The README’s “Install Manually” section, for Ubuntu, copied. These two lines are not inside the install.sh block:
sudo apt install ffmpeg
sudo apt install libsox-dev
The same manual section also prints pip install -r extra-req.txt --no-deps and pip install -r requirements.txt. This page follows install.sh.
Pretrained weights and the WebUI
The README says: if install.sh runs successfully, you may skip download steps 1, 2, and 3. Step 1, copied: download pretrained models from lj1995/GPT-SoVITS and place them in GPT_SoVITS/pretrained_models. How to download a Hugging Face model is the manual hf download reference. cloudgpu-net is not in the GPT-SoVITS README. The download speed guide says to leave it off during pip, then turn it on for a weight download.
Steps 2 through 5 (G2PW, UVR5, and the extra ASR downloads) stay in the README. The v3 note names a vocoder folder this page does not copy. The V5 notes tell you to clone https://github.com/RVC-Boss/GPT-SoVITS/tree/cuda_graph_accel_v5 and to place gsv-v5-pretrained under GPT_SoVITS/pretrained_models. That is a different branch from the main clone above. This page follows the main Linux block.
The dataset line the README prints is vocal_path|speaker_name|language|text. The finetune list is: fill in the audio path, slice the audio, denoise (optional), ASR, proofread the transcriptions, then go to the next tab and finetune.
WebUI
Copied from “Open WebUI”:
python webui.py
config.py (read 2026-11-12) sets webui_port_main = 9874, webui_port_infer_tts = 9872, webui_port_uvr5 = 9873, and webui_port_subfix = 9871. webui.py launches with server_name="0.0.0.0" and server_port=webui_port_main. is_share defaults from the environment variable is_share, default "False". The README command does not set that variable. exp_root = "logs".
On your own computer, for the main WebUI port. This line is added by this page:
ssh -N -L 9874:127.0.0.1:9874 -p <ssh-port> <ssh-user>@<ssh-host>
Then open http://localhost:9874. How to use SSH port forwarding is the forwarding reference. This page did not open the WebUI.
Copied from “Open Inference WebUI”:
python GPT_SoVITS/inference_webui.py
GPT_SoVITS/inference_webui.py sets infer_ttswebui from the environment, default 9872, and launches with server_name="0.0.0.0" on that port. The Gradio output is an audio component. This page did not find a default wav path in that launch. The README also says you can run python webui.py and open the inference tab 1-GPT-SoVITS-TTS/1C-inference.
The GPT-SoVITS README does not document a ComfyUI route. This page does not add one. How to choose a rental GPU for ComfyUI and how to run FLUX.1-dev in ComfyUI are separate installs.
When it fails
CUDA out of memory. The README and the model card publish no GB cutoff. The v2Pro notes say slightly higher VRAM usage than v2, without a number. Then use how to fix CUDA out of memory on a cloud GPU.
“CUDA error: no kernel image is available” on an RTX 5090. Catalog RTX 5090 and RTX 5090D are 32 GB. That is the catalog value, not a GPT-SoVITS requirement. install.sh --device CU126 uses the cu126 wheel index. The RTX 5090 guide says a cu126 wheel has no sm_120 code and that the card needs a PyTorch build for CUDA 12.8 or newer. CU128 is the other CUDA choice in the README placeholder. This page did not run install.sh and did not re-test it on an RTX 5090.
Save the files, then destroy
config.py sets exp_root to logs. The same file lists SoVITS_weight_root as SoVITS_weights, SoVITS_weights_v2, SoVITS_weights_v3, SoVITS_weights_v4, SoVITS_weights_v5dev, SoVITS_weights_v5turbo, SoVITS_weights_v2Pro, and SoVITS_weights_v2ProPlus, and GPT_weight_root as GPT_weights with the same suffixes. webui.py sets save_weight_dir from SoVITS_weight_version2root[version] and train.half_weights_save_dir from GPT_weight_version2root[version]. Those directories are separate from logs. The training labels say the weight files are in SoVITS_weights/ and GPT_weights/. Copy logs, every directory in those two lists, and any audio you download from the WebUI before you destroy the instance. Save your work before you destroy a cloud GPU is the checklist. The terms say data on local instance storage is permanently deleted when the instance is destroyed. The billing rule is on the pricing page. Prices are not copied here. This page did not run a training job.
Frequently asked questions
How much VRAM does GPT-SoVITS publish?
The RVC-Boss/GPT-SoVITS README and the lj1995/GPT-SoVITS model card publish no GB figure (read 2026-11-12). The v2Pro notes say slightly higher VRAM usage than v2. This page does not treat that sentence as a GB figure. gpu-prices.json lists vram_gb for the rental catalog, and this page does not mark any of those values as enough or not enough for GPT-SoVITS. Which listing you can start is on https://cloudgpu.app/deploy.
How do I open the GPT-SoVITS WebUI on a rented GPU?
The README Linux block creates a conda environment named GPTSoVits with Python 3.10 and runs bash install.sh with a device placeholder of CU126, CU128, ROCM, or CPU. python webui.py is the WebUI command. config.py sets webui_port_main to 9874, and webui.py launches on 0.0.0.0 at that port. The inference command is python GPT_SoVITS/inference_webui.py, which defaults to port 9872. These commands were not run for this page. Use a reference clip you have the right to clone. The repository license is MIT.
Does the official GPT-SoVITS repository document ComfyUI?
The GPT-SoVITS README does not document ComfyUI. It documents python webui.py and python GPT_SoVITS/inference_webui.py. The V5 notes tell you to clone the cuda_graph_accel_v5 branch. This page follows the main branch install block.
Will the GPT-SoVITS files stay after the instance is destroyed?
No. config.py sets exp_root to logs, and lists SoVITS_weight_root and GPT_weight_root as the SoVITS_weights and GPT_weights directories, including the v2, v3, v4, v5dev, v5turbo, v2Pro, and v2ProPlus suffixes. webui.py sets save_weight_dir from SoVITS_weight_version2root and half_weights_save_dir from GPT_weight_version2root. Those weight directories are separate from logs. The inference WebUI returns audio in the Gradio component. Copy logs, those weight directories, and any audio you download from the UI before you destroy the instance. The terms say data on local instance storage is permanently deleted when the instance is destroyed. The billing rule is on https://cloudgpu.app/pricing.
Sources (read 2026-11-12, Asia/Shanghai)
- GPT-SoVITS README (Linux
install.shblock, pretrained step 1,python webui.py, inference WebUI, v2Pro VRAM sentence, V5 branch): https://github.com/RVC-Boss/GPT-SoVITS - install.sh (
CU128uses the cu128 wheel index,CU126uses the cu126 wheel index, no torch pin on those lines): https://github.com/RVC-Boss/GPT-SoVITS/blob/main/install.sh - config.py (
webui_port_main = 9874,exp_root = "logs",SoVITS_weight_root,GPT_weight_root): https://github.com/RVC-Boss/GPT-SoVITS/blob/main/config.py - webui.py (
server_name="0.0.0.0",server_port=webui_port_main,save_weight_dir,half_weights_save_dir): https://github.com/RVC-Boss/GPT-SoVITS/blob/main/webui.py - GPT_SoVITS/inference_webui.py (default port 9872,
server_name="0.0.0.0"): https://github.com/RVC-Boss/GPT-SoVITS/blob/main/GPT_SoVITS/inference_webui.py - lj1995/GPT-SoVITS model card (API
gated: false,license: mit, no GB figure): https://huggingface.co/lj1995/GPT-SoVITS - Public GPU memory: https://cloudgpu.app/gpu-prices.json and https://cloudgpu.app/v1/public/gpu-catalog.
GET /v1/public/compute-capabilitiesreturned feature flags and no GPU list.
Cards you can start are on the Deploy page. Prices are on https://cloudgpu.app/pricing and are not repeated here.
Last updated: 2026-11-12 (Asia/Shanghai).