Downloads · 30 days
0
mikv39/gpt-sovits-onnx-custom
gpt-sovits-onnx-custom is a text-to-speech model from mikv39. Use it when you need text read aloud. The card lists the license as apache-2.0.
This model bundle is designed specifically for gpt-sovits-onnx-rs, a Rust and ONNX Runtime inference project for GPT-SoVITS on desktop and Android. Use this bundle with that project. Its exported graphs, interfaces an…
Downloads · 30 days
0
Access
Public
Updated Oct 4, 2026
Repo size
2.3 GB
Likes
0
Public
Click a slice to open those files.
.onnx2.3 GB · 100%
From the Hugging Face model README
This model bundle is designed specifically for gpt-sovits-onnx-rs, a Rust and ONNX Runtime inference project for GPT-SoVITS on desktop and Android. Use this bundle with that project. Its exported graphs, interfaces and file layout are adapted to the project's loader and preprocessing pipeline. It is not a drop-in model for the original GPT-SoVITS PyTorch application or other ONNX loaders.
The v2Pro quality preset is exported from the official GPT-SoVITS pretrained weights:
s1v3.ckptv2Pro/s2Gv2Pro.pthThis folder contains one quality preset, rather than separate quantized and unquantized subfolders. It supports CPU inference on desktop and Android through the Rust inference project. Output audio is 32 kHz mono. Model file size is not an estimate of runtime memory usage or latency.
Only constant MatMul weights in BERT and G2PW use INT8 weight-only
quantization (MatMulNBits, bits=8, block_size=32, accuracy_level=1).
Their activations remain FP32. The semantic encoders/decoders, waveform decoder,
SSL model, speaker encoder and English G2P models remain FP32.
| File | Purpose | Precision | Size (MiB) |
|---|---|---|---|
bert.onnx | Chinese text features | INT8 MatMul weights; FP32 activations | 383.19 |
g2pW.onnx | Chinese polyphonic disambiguation | INT8 MatMul weights; FP32 activations | 372.97 |
g2p_en/encoder_model.onnx | English G2P encoder | FP32 | 6.33 |
g2p_en/decoder_model.onnx | English G2P decoder | FP32 | 9.54 |
ssl.onnx | Reference audio features | FP32 | 360.14 |
sv.onnx | Reference speaker embedding; required by v2Pro | FP32 | 174.16 |
t2s_encoder.onnx | Text-to-semantic encoder | FP32 | 7.51 |
t2s_fs_decoder.onnx | First-step semantic decoder | FP32 | 304.14 |
t2s_s_decoder.onnx | Subsequent-step semantic decoder | FP32 | 300.68 |
vits.onnx | v2Pro waveform decoder | FP32 | 250.49 |
Total ONNX size: 2.12 GiB. Sizes exclude this README and any user-provided reference audio.
The core filenames have no export prefix: vits.onnx,
t2s_encoder.onnx, t2s_fs_decoder.onnx and t2s_s_decoder.onnx.
Keep the g2p_en/ subdirectory intact. sv.onnx is required for the v2Pro
reference speaker embedding.
Download this folder with all its files, preserving the directory structure.
Pass the downloaded folder itself as --model-path; do not select an individual
ONNX file. If this folder is published at the repository root, the repository
root is the model directory.
Use the current gpt-sovits-onnx-rs loader and conversion scripts, which support
the filenames listed above. This is an ONNX inference bundle for that project,
not a checkpoint directory for the original PyTorch application. No additional
model manifest or Git revision matching is required.
No reference audio or transcript is included. Supply your own clean, low-noise reference WAV and its accurate, matching transcript. The reference influences the generated voice and audio quality.
For the Rust demo, place your chosen WAV in the model directory as ref.wav.
Replace every placeholder below with your own path or text:
cargo run --release --example gpt_sovits_demo -- \
--model-path "/path/to/downloaded/model-directory" \
--ref-text "<accurate transcript of your reference WAV>" \
--text "<text to synthesize>" \
--output output.wav
Run the command from the gpt-sovits-onnx-rs checkout. Applications using the
Rust API can provide a separate reference WAV path and matching transcript to
process_reference_sync; the reference does not need to be stored beside the
models in that case.
Sampling defaults are provided by the inference library. No sampling JSON is
required; CLI options or an optional infer_params.json can override them.
The VITS semantic, text and reference length masks use dynamic input lengths. Keep this corrected graph when repackaging the bundle; re-exporting with an older converter may freeze those lengths and degrade long utterances.
The quality preset keeps speech generation in FP32 while reducing the size of the text preprocessing models. Quantization can still change results relative to the original models. Compare with the same reference audio, transcript, text and sampling settings on the intended device; no universal latency or quality guarantee is implied.
The conversion bundle retains the repository's Apache-2.0 declaration. The official GPT-SoVITS model card declares MIT for the base models. Included auxiliary models retain their respective upstream licenses and attribution requirements; the conversion declaration does not replace those terms.
See the GPT-SoVITS project and the Rust inference and conversion project for model sources, conversion steps and inference instructions.