kokoro-kmp-models / catalog.template.json
Shusek00's picture
Correct recommended revision for prebuilt frontends v2.1.1
d0ad239 verified
Raw
History Blame Contribute Delete
13.4 kB
{
"$schema": "schema/kokoro-catalog.schema.json",
"schemaVersion": 2,
"catalogVersion": "2.1.1",
"distribution": {
"provider": "huggingface",
"repository": "Shusek00/kokoro-kmp-models",
"artifactResolution": "relative-to-catalog",
"recommendedRevision": "v2.1.1",
"downloadStrategy": "selected-voice-only"
},
"license": "Apache-2.0",
"modelFamily": "kokoro-82m",
"provenance": {
"$artifact": {
"path": "sources/upstream-assets.json",
"mediaType": "application/json"
}
},
"audio": {
"sampleRateHz": 24000,
"channels": 1,
"sampleType": "float32"
},
"runtime": {
"engine": "onnxruntime",
"opset": 17,
"batchSize": 1,
"maxPhonemeCodePoints": 510,
"durationToSamplesFactor": 600,
"inputs": [
{ "name": "input_ids", "type": "int64", "shape": [1, "sequence_length"] },
{ "name": "style", "type": "float32", "shape": [1, 256] },
{ "name": "speed", "type": "float32", "shape": [1] }
],
"outputs": [
{ "name": "waveform", "type": "float32", "shape": ["num_samples"] },
{ "name": "duration", "type": "int64", "shape": ["sequence_length"] }
],
"tokenEncoding": {
"bosTokenId": 0,
"eosTokenId": 0,
"vocabularyField": "vocab"
},
"voiceStyle": {
"format": "raw-float32-le",
"shape": [510, 256],
"rowSelection": "phoneme_code_point_count_minus_one"
}
},
"tokenizers": [
{
"id": "kokoro-v1.0",
"artifact": {
"$artifact": {
"path": "runtime/kokoro-v1.0-config.json",
"mediaType": "application/json"
}
}
},
{
"id": "kokoro-v1.1-zh",
"artifact": {
"$artifact": {
"path": "runtime/kokoro-v1.1-zh-config.json",
"mediaType": "application/json"
}
}
}
],
"models": [
{
"id": "kokoro-v1.0-fp32",
"format": "onnx",
"precision": "fp32",
"tokenizerId": "kokoro-v1.0",
"source": {
"repository": "hexgrad/Kokoro-82M",
"revision": "f3ff3571791e39611d31c381e3a41a3af07b4987",
"checkpoint": "kokoro-v1_0.pth",
"license": "Apache-2.0"
},
"artifact": {
"$artifact": {
"path": "models/standard/kokoro-v1.0-fp32.onnx",
"mediaType": "application/onnx"
}
},
"validation": {
"$artifact": {
"path": "models/standard/kokoro-v1.0-fp32.validation.json",
"mediaType": "application/json"
}
}
},
{
"id": "kokoro-v1.1-zh-fp32",
"format": "onnx",
"precision": "fp32",
"tokenizerId": "kokoro-v1.1-zh",
"source": {
"repository": "hexgrad/Kokoro-82M-v1.1-zh",
"revision": "01e7505bd6a7a2ac4975463114c3a7650a9f7218",
"checkpoint": "kokoro-v1_1-zh.pth",
"license": "Apache-2.0"
},
"artifact": {
"$artifact": {
"path": "models/zh/kokoro-v1.1-zh-fp32.onnx",
"mediaType": "application/onnx"
}
},
"validation": {
"$artifact": {
"path": "models/zh/kokoro-v1.1-zh-fp32.validation.json",
"mediaType": "application/json"
}
}
},
{
"id": "kokoro-pl-fp32",
"format": "onnx",
"precision": "fp32",
"tokenizerId": "kokoro-v1.0",
"source": {
"repository": "software-mansion/react-native-executorch-kokoro",
"revision": "3744b57964eab7df6e8c48f0b84badb29e14df07",
"checkpoint": "finetunes/kokoro_polish_converted.pth",
"license": "Apache-2.0"
},
"artifact": {
"$artifact": {
"path": "models/pl/kokoro-pl-fp32.onnx",
"mediaType": "application/onnx"
}
},
"validation": {
"$artifact": {
"path": "models/pl/kokoro-pl-fp32.validation.json",
"mediaType": "application/json"
}
}
},
{
"id": "kokoro-de-fp32",
"format": "onnx",
"precision": "fp32",
"tokenizerId": "kokoro-v1.0",
"source": {
"repository": "software-mansion/react-native-executorch-kokoro",
"revision": "3744b57964eab7df6e8c48f0b84badb29e14df07",
"checkpoint": "finetunes/kokoro_german_converted.pth",
"license": "Apache-2.0"
},
"artifact": {
"$artifact": {
"path": "models/de/kokoro-de-fp32.onnx",
"mediaType": "application/onnx"
}
},
"validation": {
"$artifact": {
"path": "models/de/kokoro-de-fp32.validation.json",
"mediaType": "application/json"
}
}
}
],
"languages": [
{
"id": "en-us",
"locale": "en-US",
"displayName": "English (United States)",
"nativeName": "English (United States)",
"defaultVoiceId": "af_heart",
"textFrontend": {
"status": "bundled",
"engine": "phonemis-protophone",
"language": "en-us",
"license": "MIT",
"sourceRevision": "71eb1ce33bd586d38cbac037843b8539d7829c3b",
"phonemeInputSupported": true,
"artifacts": [
{
"role": "neural-model",
"artifact": { "$artifact": { "path": "phonemizers/en-us/phonemizer_en_us.onnx", "mediaType": "application/onnx" } }
},
{
"role": "lexicon",
"artifact": { "$artifact": { "path": "phonemizers/en-us/lexicon_full.json", "mediaType": "application/json" } }
},
{
"role": "tagger",
"artifact": { "$artifact": { "path": "phonemizers/en-us/tagger.json", "mediaType": "application/json" } }
}
]
},
"$includeUpstreamVoices": true,
"voices": []
},
{
"id": "en-gb",
"locale": "en-GB",
"displayName": "English (United Kingdom)",
"nativeName": "English (United Kingdom)",
"defaultVoiceId": "bf_emma",
"textFrontend": {
"status": "bundled",
"engine": "phonemis-protophone",
"language": "en-gb",
"license": "MIT",
"sourceRevision": "71eb1ce33bd586d38cbac037843b8539d7829c3b",
"phonemeInputSupported": true,
"artifacts": [
{
"role": "neural-model",
"artifact": { "$artifact": { "path": "phonemizers/en-gb/phonemizer_en_gb.onnx", "mediaType": "application/onnx" } }
},
{
"role": "lexicon",
"artifact": { "$artifact": { "path": "phonemizers/en-gb/lexicon_full.json", "mediaType": "application/json" } }
},
{
"role": "tagger",
"artifact": { "$artifact": { "path": "phonemizers/en-gb/tagger.json", "mediaType": "application/json" } }
}
]
},
"$includeUpstreamVoices": true,
"voices": []
},
{
"id": "es",
"locale": "es-ES",
"displayName": "Spanish",
"nativeName": "español",
"defaultVoiceId": "ef_dora",
"textFrontend": {
"status": "bundled",
"engine": "phonemis-protophone",
"language": "es",
"license": "MIT",
"sourceRevision": "71eb1ce33bd586d38cbac037843b8539d7829c3b",
"phonemeInputSupported": true,
"artifacts": [
{
"role": "neural-model",
"artifact": { "$artifact": { "path": "phonemizers/es/phonemizer_es.onnx", "mediaType": "application/onnx" } }
}
]
},
"$includeUpstreamVoices": true,
"voices": []
},
{
"id": "fr",
"locale": "fr-FR",
"displayName": "French",
"nativeName": "français",
"defaultVoiceId": "ff_siwis",
"textFrontend": {
"status": "bundled",
"engine": "phonemis-protophone",
"language": "fr",
"license": "MIT",
"sourceRevision": "71eb1ce33bd586d38cbac037843b8539d7829c3b",
"phonemeInputSupported": true,
"artifacts": [
{
"role": "neural-model",
"artifact": { "$artifact": { "path": "phonemizers/fr/phonemizer_fr.onnx", "mediaType": "application/onnx" } }
}
]
},
"$includeUpstreamVoices": true,
"voices": []
},
{
"id": "hi",
"locale": "hi-IN",
"displayName": "Hindi",
"nativeName": "हिन्दी",
"defaultVoiceId": "hf_alpha",
"textFrontend": {
"status": "bundled",
"engine": "phonemis-protophone",
"language": "hi",
"license": "MIT",
"sourceRevision": "71eb1ce33bd586d38cbac037843b8539d7829c3b",
"phonemeInputSupported": true,
"artifacts": [
{
"role": "neural-model",
"artifact": { "$artifact": { "path": "phonemizers/hi/phonemizer_hi.onnx", "mediaType": "application/onnx" } }
}
]
},
"$includeUpstreamVoices": true,
"voices": []
},
{
"id": "it",
"locale": "it-IT",
"displayName": "Italian",
"nativeName": "italiano",
"defaultVoiceId": "if_sara",
"textFrontend": {
"status": "bundled",
"engine": "phonemis-protophone",
"language": "it",
"license": "MIT",
"sourceRevision": "71eb1ce33bd586d38cbac037843b8539d7829c3b",
"phonemeInputSupported": true,
"artifacts": [
{
"role": "neural-model",
"artifact": { "$artifact": { "path": "phonemizers/it/phonemizer_it.onnx", "mediaType": "application/onnx" } }
}
]
},
"$includeUpstreamVoices": true,
"voices": []
},
{
"id": "ja",
"locale": "ja-JP",
"displayName": "Japanese",
"nativeName": "日本語",
"defaultVoiceId": "jf_alpha",
"textFrontend": {
"status": "external-required",
"recommendedEngine": "misaki[ja]",
"language": "ja",
"phonemeInputSupported": true,
"note": "The model and voices are bundled; a portable Japanese text frontend is not yet bundled for Kotlin Multiplatform."
},
"$includeUpstreamVoices": true,
"voices": []
},
{
"id": "pt-br",
"locale": "pt-BR",
"displayName": "Portuguese (Brazil)",
"nativeName": "português (Brasil)",
"defaultVoiceId": "pf_dora",
"textFrontend": {
"status": "bundled",
"engine": "phonemis-protophone",
"language": "pt",
"license": "MIT",
"sourceRevision": "71eb1ce33bd586d38cbac037843b8539d7829c3b",
"phonemeInputSupported": true,
"artifacts": [
{
"role": "neural-model",
"artifact": { "$artifact": { "path": "phonemizers/pt-br/phonemizer_pt.onnx", "mediaType": "application/onnx" } }
}
]
},
"$includeUpstreamVoices": true,
"voices": []
},
{
"id": "zh",
"locale": "zh-CN",
"displayName": "Mandarin Chinese",
"nativeName": "普通话",
"defaultVoiceId": "zf_001",
"textFrontend": {
"status": "external-required",
"recommendedEngine": "misaki[zh]",
"language": "zh",
"phonemeInputSupported": true,
"note": "Both Kokoro model variants and all Mandarin voices are bundled; a portable Mandarin text frontend is not yet bundled for Kotlin Multiplatform."
},
"$includeUpstreamVoices": true,
"voices": []
},
{
"id": "pl",
"locale": "pl-PL",
"displayName": "Polish",
"nativeName": "polski",
"defaultVoiceId": "pm_mateusz",
"textFrontend": {
"status": "bundled",
"engine": "phonemis-protophone",
"language": "pl",
"license": "MIT",
"sourceRevision": "71eb1ce33bd586d38cbac037843b8539d7829c3b",
"phonemeInputSupported": true,
"artifacts": [
{
"role": "neural-model",
"artifact": { "$artifact": { "path": "phonemizers/pl/phonemizer_pl.onnx", "mediaType": "application/onnx" } }
}
]
},
"voices": [
{
"id": "pm_mateusz",
"displayName": "Mateusz",
"gender": "male",
"modelId": "kokoro-pl-fp32",
"artifact": {
"$artifact": {
"path": "voices/pl/pm_mateusz.bin",
"mediaType": "application/octet-stream"
}
}
}
]
},
{
"id": "de",
"locale": "de-DE",
"displayName": "German",
"nativeName": "Deutsch",
"defaultVoiceId": "df_anna",
"textFrontend": {
"status": "bundled",
"engine": "phonemis-protophone",
"language": "de",
"license": "MIT",
"sourceRevision": "71eb1ce33bd586d38cbac037843b8539d7829c3b",
"phonemeInputSupported": true,
"artifacts": [
{
"role": "neural-model",
"artifact": { "$artifact": { "path": "phonemizers/de/phonemizer_de.onnx", "mediaType": "application/onnx" } }
}
]
},
"voices": [
{
"id": "df_anna",
"displayName": "Anna",
"gender": "female",
"modelId": "kokoro-de-fp32",
"artifact": {
"$artifact": {
"path": "voices/de/df_anna.bin",
"mediaType": "application/octet-stream"
}
}
}
]
}
]
}