Views
No views yet
Exported and maintained by WaveKat as part of the wavekat-tts voice pipeline.
1pip install -r requirements.txt
2
3# FP32
4python generate_clone_onnx.py \
5 --ref-audio ref.wav --ref-text "Transcript of the reference audio." \
6 --text "New text to synthesize in the cloned voice." \
7 -o output_fp32.wav
8
9# INT4 (~4x smaller, faster)
10python generate_clone_onnx.py --variant int4 \
11 --ref-audio ref.wav --ref-text "Transcript of the reference audio." \
12 --text "New text to synthesize in the cloned voice." \
13 -o output_int4.wavRef audio --> [Speaker Encoder] ECAPA-TDNN → 1024-d speaker embedding
\-> [Tokenizer Encoder] Mimi encoder → 16-group ref codes (12 Hz)
Text + Ref text + Speaker embed + Ref codes
|
v (ICL prefill)
[Talker LM] 28 layers, 1024 hidden
predicts codebook group 0
|
v
[Code Predictor] 5 layers, 1024 hidden
predicts groups 1-15
|
v
[Vocoder] single forward pass
concat(ref_codes, gen_codes) → 24 kHz waveform → trim ref portion| Model | Description | Precision |
|---|---|---|
speaker_encoder.onnx | ECAPA-TDNN: mel → 1024-d speaker embedding | FP32 only |
tokenizer_encoder.onnx | Mimi encoder: audio → 16-group codec codes | FP32 only |
talker_prefill.onnx | Full sequence prefill with KV cache output | FP32 / INT4 |
talker_decode.onnx | Single-step decode with KV cache | FP32 / INT4 |
code_predictor.onnx | Predict codebook groups 1-15 | FP32 / INT4 |
vocoder.onnx | Codes to 24 kHz waveform | FP32 / INT4 |
Speaker encoder and tokenizer encoder are always FP32 — they run once per request and are small.
.
├── config.json # Model config (dimensions, token IDs, language map)
├── speaker_encoder.onnx # ECAPA-TDNN speaker encoder (FP32)
├── tokenizer_encoder.onnx # Mimi speech tokenizer encoder (FP32)
├── tokenizer/ # Text tokenizer (vocab, merges)
├── embeddings/ # Pre-extracted embedding weights (.npy)
├── fp32/ # FP32 ONNX models
│ ├── talker_prefill.onnx
│ ├── talker_decode.onnx
│ ├── code_predictor.onnx
│ └── vocoder.onnx
├── int4/ # INT4 weight-only quantized models
│ ├── talker_prefill.onnx
│ ├── talker_decode.onnx
│ ├── code_predictor.onnx
│ └── vocoder.onnx
├── generate_clone_onnx.py # Reference ONNX-only voice clone script
└── requirements.txt # Inference dependencies1cd tools/qwen3-tts-onnx
2pip install -r requirements.txt
3
4# Export FP32, quantize INT4, and package for HF
5make clone-all