Some checks failed
Linux Build / Linux cpu (push) Has been cancelled
Linux Build / Linux cpu-clang (push) Has been cancelled
Linux Build / Linux vulkan (push) Has been cancelled
mac-build / macOS CPU (push) Has been cancelled
Nix Build / Nix (cpu) (push) Has been cancelled
Nix Build / Nix (vulkan) (push) Has been cancelled
windows-build / Windows CPU (push) Has been cancelled
373 lines
10 KiB
JSON
373 lines
10 KiB
JSON
{
|
|
"schema_version": 1,
|
|
"family": "sanotts",
|
|
"display_name": "sanoTTS Nano",
|
|
"description": "Very small multilingual text-to-speech across fourteen languages. Two graphs: the nano lineage (duration student, contextual acoustic student to mel-100, noise-fed ConvNeXt-1D decoder with an iSTFT head; voices heart 2.27M and heart-nano 294k, English, 24 kHz) and the deterministic piperlite lineage (duration student, acoustic student to a 192-channel latent, optionally through a calibration adapter, then a 3-stage ConvTranspose1d decoder with dilated residual banks; voices amy, hfc and kristin for English, vi, id, cs, de, es, fr, it, pt, ro, ru, tr, ne and hi at 1.1-1.8M parameters, 22.05 kHz). Uses an external eSpeak-ng phonemizer.",
|
|
"category": "tts",
|
|
"status": "community",
|
|
"tasks": [
|
|
"tts"
|
|
],
|
|
"modes": [
|
|
"offline"
|
|
],
|
|
"languages": [
|
|
"en",
|
|
"vi",
|
|
"id",
|
|
"cs",
|
|
"de",
|
|
"es",
|
|
"fr",
|
|
"it",
|
|
"pt",
|
|
"ro",
|
|
"ru",
|
|
"tr",
|
|
"ne",
|
|
"hi"
|
|
],
|
|
"runtime": {
|
|
"tags": [
|
|
"gguf"
|
|
]
|
|
},
|
|
"capabilities": {
|
|
"tts": [
|
|
"long_form"
|
|
]
|
|
},
|
|
"options": {
|
|
"request": [
|
|
{
|
|
"name": "speed",
|
|
"type": "float",
|
|
"description": "Speech speed multiplier; larger is faster. Its reciprocal scales the voice's tuned length scale before the per-token clamp.",
|
|
"required": false,
|
|
"min": 0.5,
|
|
"max": 2.0,
|
|
"default": 1.0
|
|
},
|
|
{
|
|
"name": "seed",
|
|
"type": "int",
|
|
"description": "Decoder noise seed. The decoder is noise-fed, so a given seed picks one of many valid renderings; 0 derives it from the text as sha256(text)[:8], which is what the reference implementations do. Piperlite voices are deterministic and ignore the seed.",
|
|
"required": false,
|
|
"min": 0,
|
|
"default": 0
|
|
},
|
|
{
|
|
"name": "text_chunk_mode",
|
|
"type": "enum",
|
|
"description": "Long-form text chunking mode.",
|
|
"values": [
|
|
"word_budget"
|
|
],
|
|
"required": false,
|
|
"default": "word_budget"
|
|
},
|
|
{
|
|
"name": "text_chunk_size",
|
|
"type": "int",
|
|
"description": "Maximum Unicode codepoints per long-form text chunk; default 280.",
|
|
"required": false,
|
|
"min": 1,
|
|
"default": 280
|
|
}
|
|
],
|
|
"session": [
|
|
{
|
|
"name": "espeak_library_path",
|
|
"type": "path",
|
|
"description": "Optional explicit path to the eSpeak-ng shared library.",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "espeak_data_path",
|
|
"type": "path",
|
|
"description": "Optional explicit path to the directory containing espeak-ng-data.",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "exec_plan",
|
|
"type": "string",
|
|
"description": "JSON object of component execution plans. Component: decoder. Each plan accepts impl, backend, artifacts, and params. impl is default/ggml/neon; no artifacts or params are used. Default retains automatic NEON selection on supported Nano-lineage AArch64 CPU sessions. GGML supports the session backend; explicit NEON requires a Nano-lineage model, AArch64 NEON, and a CPU session.",
|
|
"required": false,
|
|
"default": "{}"
|
|
}
|
|
],
|
|
"load": []
|
|
},
|
|
"package_defaults": {
|
|
"download": {
|
|
"kind": "huggingface_snapshot",
|
|
"repo": "ampixa/sanoTTS",
|
|
"revision": "main",
|
|
"gated": false
|
|
}
|
|
},
|
|
"packages": [
|
|
{
|
|
"id": "sanotts_heart_nano_orig",
|
|
"display_name": "sanoTTS heart-nano 294k FP32 GGUF",
|
|
"default": true,
|
|
"format": "gguf",
|
|
"precision": "orig",
|
|
"target_directory": "sanoTTS-heart-nano-GGUF",
|
|
"files": [
|
|
"gguf/heart-nano-f32.gguf",
|
|
"gguf/config.json"
|
|
],
|
|
"strip_prefix": "gguf"
|
|
},
|
|
{
|
|
"id": "sanotts_heart_orig",
|
|
"display_name": "sanoTTS heart 2.27M FP32 GGUF",
|
|
"default": false,
|
|
"format": "gguf",
|
|
"precision": "orig",
|
|
"target_directory": "sanoTTS-heart-GGUF",
|
|
"files": [
|
|
"gguf/heart/heart-f32.gguf",
|
|
"gguf/heart/config.json"
|
|
],
|
|
"strip_prefix": "gguf/heart"
|
|
},
|
|
{
|
|
"id": "sanotts_amy_orig",
|
|
"display_name": "sanoTTS amy 1.46M FP32 GGUF (English, piperlite)",
|
|
"default": false,
|
|
"format": "gguf",
|
|
"precision": "orig",
|
|
"target_directory": "sanoTTS-amy-GGUF",
|
|
"files": [
|
|
"gguf/amy/amy-f32.gguf",
|
|
"gguf/amy/config.json"
|
|
],
|
|
"strip_prefix": "gguf/amy"
|
|
},
|
|
{
|
|
"id": "sanotts_hfc_orig",
|
|
"display_name": "sanoTTS hfc 1.83M FP32 GGUF (English, piperlite)",
|
|
"default": false,
|
|
"format": "gguf",
|
|
"precision": "orig",
|
|
"target_directory": "sanoTTS-hfc-GGUF",
|
|
"files": [
|
|
"gguf/hfc/hfc-f32.gguf",
|
|
"gguf/hfc/config.json"
|
|
],
|
|
"strip_prefix": "gguf/hfc"
|
|
},
|
|
{
|
|
"id": "sanotts_kristin_orig",
|
|
"display_name": "sanoTTS kristin 1.40M FP32 GGUF (English, piperlite)",
|
|
"default": false,
|
|
"format": "gguf",
|
|
"precision": "orig",
|
|
"target_directory": "sanoTTS-kristin-GGUF",
|
|
"files": [
|
|
"gguf/kristin/kristin-f32.gguf",
|
|
"gguf/kristin/config.json"
|
|
],
|
|
"strip_prefix": "gguf/kristin"
|
|
},
|
|
{
|
|
"id": "sanotts_vi_orig",
|
|
"display_name": "sanoTTS vi 1.57M FP32 GGUF (Vietnamese, piperlite)",
|
|
"default": false,
|
|
"format": "gguf",
|
|
"precision": "orig",
|
|
"target_directory": "sanoTTS-vi-GGUF",
|
|
"files": [
|
|
"gguf/vi/vi-f32.gguf",
|
|
"gguf/vi/config.json"
|
|
],
|
|
"strip_prefix": "gguf/vi"
|
|
},
|
|
{
|
|
"id": "sanotts_id_orig",
|
|
"display_name": "sanoTTS id 1.56M FP32 GGUF (Indonesian, piperlite)",
|
|
"default": false,
|
|
"format": "gguf",
|
|
"precision": "orig",
|
|
"target_directory": "sanoTTS-id-GGUF",
|
|
"files": [
|
|
"gguf/id/id-f32.gguf",
|
|
"gguf/id/config.json"
|
|
],
|
|
"strip_prefix": "gguf/id"
|
|
},
|
|
{
|
|
"id": "sanotts_cs_orig",
|
|
"display_name": "sanoTTS cs 1.57M FP32 GGUF (Czech, piperlite)",
|
|
"default": false,
|
|
"format": "gguf",
|
|
"precision": "orig",
|
|
"target_directory": "sanoTTS-cs-GGUF",
|
|
"files": [
|
|
"gguf/cs/cs-f32.gguf",
|
|
"gguf/cs/config.json"
|
|
],
|
|
"strip_prefix": "gguf/cs"
|
|
},
|
|
{
|
|
"id": "sanotts_de_orig",
|
|
"display_name": "sanoTTS de 1.57M FP32 GGUF (German, piperlite)",
|
|
"default": false,
|
|
"format": "gguf",
|
|
"precision": "orig",
|
|
"target_directory": "sanoTTS-de-GGUF",
|
|
"files": [
|
|
"gguf/de/de-f32.gguf",
|
|
"gguf/de/config.json"
|
|
],
|
|
"strip_prefix": "gguf/de"
|
|
},
|
|
{
|
|
"id": "sanotts_es_orig",
|
|
"display_name": "sanoTTS es 1.56M FP32 GGUF (Spanish, piperlite)",
|
|
"default": false,
|
|
"format": "gguf",
|
|
"precision": "orig",
|
|
"target_directory": "sanoTTS-es-GGUF",
|
|
"files": [
|
|
"gguf/es/es-f32.gguf",
|
|
"gguf/es/config.json"
|
|
],
|
|
"strip_prefix": "gguf/es"
|
|
},
|
|
{
|
|
"id": "sanotts_fr_orig",
|
|
"display_name": "sanoTTS fr 1.57M FP32 GGUF (French, piperlite)",
|
|
"default": false,
|
|
"format": "gguf",
|
|
"precision": "orig",
|
|
"target_directory": "sanoTTS-fr-GGUF",
|
|
"files": [
|
|
"gguf/fr/fr-f32.gguf",
|
|
"gguf/fr/config.json"
|
|
],
|
|
"strip_prefix": "gguf/fr"
|
|
},
|
|
{
|
|
"id": "sanotts_it_orig",
|
|
"display_name": "sanoTTS it 1.57M FP32 GGUF (Italian, piperlite)",
|
|
"default": false,
|
|
"format": "gguf",
|
|
"precision": "orig",
|
|
"target_directory": "sanoTTS-it-GGUF",
|
|
"files": [
|
|
"gguf/it/it-f32.gguf",
|
|
"gguf/it/config.json"
|
|
],
|
|
"strip_prefix": "gguf/it"
|
|
},
|
|
{
|
|
"id": "sanotts_pt_orig",
|
|
"display_name": "sanoTTS pt 1.57M FP32 GGUF (Portuguese (Brazil), piperlite)",
|
|
"default": false,
|
|
"format": "gguf",
|
|
"precision": "orig",
|
|
"target_directory": "sanoTTS-pt-GGUF",
|
|
"files": [
|
|
"gguf/pt/pt-f32.gguf",
|
|
"gguf/pt/config.json"
|
|
],
|
|
"strip_prefix": "gguf/pt"
|
|
},
|
|
{
|
|
"id": "sanotts_ro_orig",
|
|
"display_name": "sanoTTS ro 1.57M FP32 GGUF (Romanian, piperlite)",
|
|
"default": false,
|
|
"format": "gguf",
|
|
"precision": "orig",
|
|
"target_directory": "sanoTTS-ro-GGUF",
|
|
"files": [
|
|
"gguf/ro/ro-f32.gguf",
|
|
"gguf/ro/config.json"
|
|
],
|
|
"strip_prefix": "gguf/ro"
|
|
},
|
|
{
|
|
"id": "sanotts_ru_orig",
|
|
"display_name": "sanoTTS ru 1.57M FP32 GGUF (Russian, piperlite)",
|
|
"default": false,
|
|
"format": "gguf",
|
|
"precision": "orig",
|
|
"target_directory": "sanoTTS-ru-GGUF",
|
|
"files": [
|
|
"gguf/ru/ru-f32.gguf",
|
|
"gguf/ru/config.json"
|
|
],
|
|
"strip_prefix": "gguf/ru"
|
|
},
|
|
{
|
|
"id": "sanotts_tr_orig",
|
|
"display_name": "sanoTTS tr 1.56M FP32 GGUF (Turkish, piperlite)",
|
|
"default": false,
|
|
"format": "gguf",
|
|
"precision": "orig",
|
|
"target_directory": "sanoTTS-tr-GGUF",
|
|
"files": [
|
|
"gguf/tr/tr-f32.gguf",
|
|
"gguf/tr/config.json"
|
|
],
|
|
"strip_prefix": "gguf/tr"
|
|
},
|
|
{
|
|
"id": "sanotts_ne_orig",
|
|
"display_name": "sanoTTS ne 1.47M FP32 GGUF (Nepali, piperlite)",
|
|
"default": false,
|
|
"format": "gguf",
|
|
"precision": "orig",
|
|
"target_directory": "sanoTTS-ne-GGUF",
|
|
"files": [
|
|
"gguf/ne/ne-f32.gguf",
|
|
"gguf/ne/config.json"
|
|
],
|
|
"strip_prefix": "gguf/ne"
|
|
},
|
|
{
|
|
"id": "sanotts_hi_orig",
|
|
"display_name": "sanoTTS hi 1.50M FP32 GGUF (Hindi, piperlite)",
|
|
"default": false,
|
|
"format": "gguf",
|
|
"precision": "orig",
|
|
"target_directory": "sanoTTS-hi-GGUF",
|
|
"files": [
|
|
"gguf/hi/hi-f32.gguf",
|
|
"gguf/hi/config.json"
|
|
],
|
|
"strip_prefix": "gguf/hi"
|
|
}
|
|
],
|
|
"dependencies": [],
|
|
"ui": {
|
|
"recommended_package": "sanotts_heart_nano_orig",
|
|
"tags": [
|
|
"TTS",
|
|
"GGUF"
|
|
],
|
|
"docs": [
|
|
"docs/tts.md",
|
|
"docs/models/sanotts.md",
|
|
"docs/gguf.md"
|
|
]
|
|
},
|
|
"sources": [
|
|
{
|
|
"format": "gguf",
|
|
"roots": {
|
|
"model": ".",
|
|
"weights": "$gguf"
|
|
},
|
|
"files": {
|
|
"config": "model:config.json"
|
|
},
|
|
"tensors": {
|
|
"weights": "weights:"
|
|
}
|
|
}
|
|
]
|
|
}
|