Inflect Kokoro Voices
A collection of fine-tuned Inflect-Micro-v2 voice models. Each voice lives in its own self-contained top-level folder (~73 MB) containing both a PyTorch checkpoint (model.pth) and ONNX exports (onnx/duration.onnx + onnx/decode.onnx), so a single folder serves both runtimes. All voices synthesize 24 kHz mono audio.
Voices
Quick start
Download a single voice (folders are independent — no shared files at the repo root are required at runtime):
from huggingface_hub import snapshot_download
snapshot_download(
"Danny-Dasilva/inflect-kokoro-voices",
allow_patterns="sky/*",
local_dir=".",
)
Then synthesize:
python sky/inference.py --model-dir sky --text "Hello from the sky voice." --output out.wav
Repository layout
inflect-kokoro-voices/
├── README.md
├── LICENSE
├── THIRD_PARTY_NOTICES.md
├── samples/ # one sample clip per voice (24 kHz wav)
└── sky/ # one folder per voice, fully self-contained
├── model.pth # PyTorch checkpoint
├── onnx/
│ ├── duration.onnx # phoneme -> durations
│ └── decode.onnx # durations + text -> waveform
├── inference.py # reference inference script (PyTorch + ONNX)
├── config.json
├── symbols.json
├── frontend.json
├── runtime/ # minimal model + text-frontend code
└── requirements.txt
Model details
- Architecture: VITS-family Inflect-Micro-v2, 9.36M parameters
- Audio: 24 kHz, mono
- Per-voice full model: each voice is a complete fine-tuned model, not a style embedding — voice switching means loading a different folder
- Runtimes: PyTorch (
model.pth) and ONNX (onnx/), exported from the same checkpoint
Training
Each voice is fine-tuned on ~5.1 hours of synthetic audio generated from a 3600-sentence phonetically-balanced corpus, for 28,000 steps with the balanced preset, on a single RTX 5090.
Evaluation
The sky voice's training configuration (5.1h data / 28k steps) was selected via a 50-sentence out-of-domain paired evaluation against two ablations (2.26h/14k and 5.1h/14k):
| metric | 2.26h / 14k steps | 5.1h / 14k steps | 5.1h / 28k steps (released) |
|---|---|---|---|
| Speaker similarity (WeSpeaker ResNet34-LM cosine vs held-out target) | 0.806 | 0.782 | 0.835 |
| UTMOS22 | 4.12 | 4.15 | 4.15 |
| SQUIM-MOS | 4.47 | 4.46 | 4.47 |
| Whisper large-v3 WER | 1.4% | 1.3% | 1.6% |
The released configuration wins speaker similarity significantly (paired Wilcoxon p < 1e-4 vs both ablations, bootstrap 95% CI excludes 0), with parity on naturalness/intelligibility metrics; 0/50 catastrophic clips (WER > 0.5) in all systems. Fleet voices use the same recipe.
Training data & provenance
The training audio for these voices is synthetic, generated with hexgrad/Kokoro-82M (Apache-2.0) as a data-generation teacher. No Kokoro weights are included in, or loaded by, these models — Kokoro was used only to render the training corpus; the model weights here descend solely from Inflect-Micro-v2.
Kokoro's own training data includes permissively licensed corpora whose attribution requirements are carried forward here:
- Koniwa (
tncvoice data) — CC-BY-3.0 - SIWIS — CC-BY-4.0
See THIRD_PARTY_NOTICES.md for full attributions.
Limitations
- Synthetic-voice provenance: these voices are distillations of synthetic voices; they do not clone any real, identifiable person. The source voices derive from Kokoro's openly licensed synthetic voicepacks.
- English only: trained exclusively on American English text and audio; other languages are unsupported.
- Prosody and expressiveness are bounded by the synthetic teacher (teacher ceiling); highly emotive or long-form dramatic reading may sound flat.
License & attribution
Weights and code in this repository are released under Apache-2.0 (see LICENSE). Third-party components and carried-forward data attributions (VITS, BigVGAN, alias-free-torch, Kokoro-82M, Koniwa CC-BY-3.0, SIWIS CC-BY-4.0) are documented in THIRD_PARTY_NOTICES.md.
Model tree for Danny-Dasilva/inflect-kokoro-voices
Base model
owensong/Inflect-Micro-v2