加载中…
加载中…
kokoro_5s.mlmodelc/weights/weight.bin 325 MBG2PDecoder.mlmodelc/weights/weight.bin 828 kBG2PEncoder.mlmodelc/weights/weight.bin 694.6 kBG2PDecoder.mlmodelc/coremldata.bin 0.5 kBkokoro_5s.mlmodelc/coremldata.bin 0.5 kBG2PEncoder.mlmodelc/coremldata.bin 0.4 kBG2PDecoder.mlmodelc/analytics/coremldata.bin 0.2 kBG2PEncoder.mlmodelc/analytics/coremldata.bin 0.2 kBkokoro_5s.mlmodelc/analytics/coremldata.bin 0.2 kBEnd-to-end CoreML export of hexgrad/Kokoro-82M at FP16, optimized for Apple Neural Engine. Requires iOS 18+ / macOS 15+.
A single kokoro_5s.mlmodelc runs the full pipeline (BERT → duration
prediction → fixed-shape alignment → prosody → decoder) in one CoreML
call. G2P (grapheme-to-phoneme) is a separate pair of CoreML models.
Looking for a smaller variant? See aufklarer/Kokoro-82M-CoreML-INT8 —
INT8 k-means palettized, 83 MB vs 325 MB here, with log-spec distance
0.42 vs this FP16 reference on a validation utterance.
| Parameter | Value |
|---|---|
| Parameters | 82M |
| Precision | FP16 |
| Max audio length | 5 s (200 frames @ 40 fps) |
| Sample rate | 24 kHz |
| Style dimension | 256 |
| Max phonemes per pass | 128 |
| File | Size | Description |
|---|---|---|
kokoro_5s.mlmodelc |
325 MB | Pre-compiled E2E model (pre-compiled, loads directly on-device) |
G2PEncoder.mlmodelc |
0.7 MB | Grapheme-to-phoneme encoder |
G2PDecoder.mlmodelc |
0.8 MB | Grapheme-to-phoneme decoder |
voices/ |
0.5 MB | 54 preset voice embeddings (10 languages) |
vocab_index.json |
4 KB | Phoneme vocabulary |
g2p_vocab.json |
4 KB | G2P vocabulary |
us_gold.json, us_silver.json |
6 MB | English pronunciation dictionaries |
pipeline_config.json |
4 KB | Swift pipeline config |
54 preset voices across 10 languages: English (US/UK), Spanish, French, Hindi, Italian, Japanese, Korean, Portuguese, Chinese.
Add speech-swift to Package.swift:
.package(url: "https://github.com/soniqo/speech-swift", branch: "main")
Then synthesize:
import KokoroTTS
let tts = try await KokoroTTSModel.fromPretrained(
modelId: "aufklarer/Kokoro-82M-CoreML"
)
let audio = try await tts.synthesize(
"Hello world, this is a Kokoro test.",
voice: "af_heart"
)
CLI:
swift run audio kokoro "Hello world" --voice af_heart --output out.wav