voice_audio_multi/model_specs/moss_tts_v15.json
Fabio c36510c21e
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
Initial import: audio.cpp with Orange Pi documentation
2026-11-04 19:05:22 +01:00

250 lines
6.8 KiB
JSON

{
"schema_version": 1,
"family": "moss_tts_v15",
"display_name": "MOSS-TTS-v1.5",
"description": "8B delay-pattern MOSS-TTS: zero-shot voice cloning from a short reference, 24 kHz, with an explicit duration budget.",
"category": "community",
"status": "experimental",
"tasks": [
"tts",
"clone"
],
"modes": [
"offline"
],
"languages": [
"en",
"zh"
],
"capabilities": {
"tts": [
"speaker_reference",
"style_control",
"long_form"
],
"clone": [
"speaker_reference"
]
},
"runtime": {
"tags": [
"gguf"
]
},
"sources": [
{
"format": "gguf",
"roots": {
"model": ".",
"weights": "$gguf"
},
"files": {
"config": "model:config.json",
"tokenizer_json": "model:tokenizer.json",
"tokenizer_config": "model:tokenizer_config.json",
"tokenizer_merges": "model:merges.txt",
"audio_tokenizer_config": "model:audio_tokenizer/config.json"
},
"tensors": {
"model_weights": {
"source": "weights:",
"prefix": "model_weights"
},
"audio_tokenizer_weights": {
"source": "weights:",
"prefix": "audio_tokenizer_weights"
}
}
},
{
"format": "safetensors",
"roots": {
"model": ".",
"audio_tokenizer": "audio_tokenizer"
},
"files": {
"config": "model:config.json",
"tokenizer_json": "model:tokenizer.json",
"tokenizer_config": "model:tokenizer_config.json",
"tokenizer_merges": "model:merges.txt",
"audio_tokenizer_config": "audio_tokenizer:config.json"
},
"tensors": {
"model_weights": "model:model.safetensors.index.json",
"audio_tokenizer_weights": "audio_tokenizer:model.safetensors.index.json"
}
}
],
"options": {
"request": [
{
"name": "min_frames",
"type": "int",
"required": false,
"default": 0,
"description": "Minimum generated audio frames per text chunk; nonpositive values derive a text-length-based floor. Separate from duration_frames conditioning."
},
{
"name": "max_frames",
"type": "int",
"required": false,
"default": 0,
"description": "Generated audio-frame ceiling per text chunk; nonpositive values derive a text-length-based ceiling. Runtime raises it to at least the effective min_frames plus the number of codebooks."
},
{
"name": "instruct",
"type": "string",
"required": false,
"description": "Voice description. Followed only loosely on this checkpoint; a reference recording is far more reliable."
},
{
"name": "duration_frames",
"type": "int",
"required": false,
"description": "Duration budget in codec frames at 12.5 a second, the model's own '- Tokens:' field. Nonpositive values disable duration conditioning."
},
{
"name": "language",
"type": "string",
"required": false,
"description": "Full language name; the model does not understand codes like 'en'."
},
{
"name": "seed",
"type": "int",
"required": false,
"description": "Reproduces a take exactly; default 0. Parsed as signed 32-bit integer then converted to uint32; negative values wrap.",
"default": 0
},
{
"name": "text_temperature",
"type": "float",
"required": false,
"default": 1.5,
"description": "Text-token sampling temperature. Must be finite and positive when sampling."
},
{
"name": "temperature",
"type": "float",
"required": false,
"description": "Audio sampling temperature; default 1.5. Must be finite and positive when sampling.",
"default": 1.5
},
{
"name": "top_p",
"type": "float",
"required": false,
"description": "Audio nucleus sampling cutoff; default 0.6.",
"default": 0.6
},
{
"name": "top_k",
"type": "int",
"required": false,
"description": "Audio top-k; default 50.",
"default": 50
},
{
"name": "repetition_penalty",
"type": "float",
"required": false,
"description": "Audio repetition penalty; default 1.1. Must be finite and positive when history is nonempty.",
"default": 1.1
},
{
"name": "text_chunk_size",
"type": "int",
"description": "Maximum Unicode codepoints per long-form text chunk; default 200.",
"required": false,
"min": 1,
"default": 200
},
{
"name": "text_chunk_mode",
"type": "enum",
"description": "Text chunking policy; word_budget also accepts default.",
"values": [
"word_budget",
"tag_aware",
"japanese",
"endline"
],
"required": false,
"default": "word_budget"
}
],
"session": [
{
"name": "weight_type",
"type": "enum",
"values": [
"native",
"f32",
"bf16",
"q8_0"
],
"required": false,
"default": "native",
"description": "Backbone and head weight storage; default native, which keeps a GGUF package's own type. Forcing bf16 dequantises a quantised package and costs the VRAM the quantisation was meant to save. f16 is rejected: this backbone produces NaN in it."
}
],
"load": []
},
"ui": {
"tags": [
"TTS",
"Clone",
"GGUF"
],
"docs": [
"docs/models/moss_tts_v15.md",
"docs/tts.md",
"docs/gguf.md"
],
"recommended_package": "moss_tts_v15_q8_0_codec_f16"
},
"packages": [
{
"id": "moss_tts_v15_q8_0_codec_f16",
"display_name": "MOSS-TTS-v1.5 Q8_0 GGUF",
"default": true,
"format": "gguf",
"precision": "q8_0",
"target_directory": "MOSS-TTS-v1.5-GGUF",
"files": [
"moss_tts_v15_q8_0_codec_f16.gguf"
]
},
{
"id": "moss_tts_v15_q4_k_codec_f16",
"display_name": "MOSS-TTS-v1.5 Q4_K GGUF",
"default": false,
"format": "gguf",
"precision": "q4_k",
"target_directory": "MOSS-TTS-v1.5-GGUF",
"files": [
"moss_tts_v15_q4_k_codec_f16.gguf"
]
},
{
"id": "moss_tts_v15_bf16_codec_f16",
"display_name": "MOSS-TTS-v1.5 BF16 GGUF",
"default": false,
"format": "gguf",
"precision": "bf16",
"target_directory": "MOSS-TTS-v1.5-GGUF",
"files": [
"moss_tts_v15_bf16_codec_f16.gguf"
]
}
],
"package_defaults": {
"download": {
"kind": "huggingface_snapshot",
"repo": "christopherthompson81/MOSS-TTS-v1.5-GGUF",
"revision": "main",
"gated": false
}
},
"dependencies": []
}