Ming-3.0-tts Logo

Ming-3.0-tts-tiny

7.9B-A1.3B multilingual MoE speech synthesis with paralinguistic and free-form control.

GitHub | Blog & Demos | ModelScope

This repository contains Ming-3.0-tts-tiny, the Ming-3.0-tts mixture-of-experts checkpoint built on Ling V3. Its Ling V3 backbone has 7.9B total parameters and activates about 1.3B parameters per token. The repository includes sharded weights, supporting model code, audio tokenizer, speaker encoder and text tokenizer.

Inference requires the Ming-3.0-tts GitHub repository. This Hugging Face repository is for checkpoint distribution and does not provide a standalone inference setup. Clone the GitHub repository and follow its README for the current dependencies, inference code and usage instructions. The CLI scripts and Python APIs referenced below are provided by the GitHub repository.

Model Details

Item Value
Architecture Mixture of Experts, Ling V3 backbone
Backbone parameters 7.9B total, about 1.3B active per token
Languages Chinese, English, German, Spanish, French, Korean, Japanese
Dialects Sichuanese, Cantonese
Python API ming_tiny.MingTinyTTS
CLI infer_tiny.py
Prompt protocol thinking_v1

Capabilities

  • Zero-shot voice cloning from a short reference clip
  • Voice Design from a natural-language speaker description
  • Free-form control of delivery and speaking style
  • 100+ built-in Chinese voices and five built-in English voices
  • Multilingual synthesis and Sichuanese/Cantonese dialect control
  • 14 inline tags for breath, cough, sigh, laughter, hesitation, surprise and question/confirmation sounds in Chinese or English
  • Explicit emotion, speed, pitch and volume control
  • Multi-speaker dialogue from a script and speaker references (podcast)

Ming-3.0-tts-tiny architecture

Quick Start

Installation

git clone https://github.com/inclusionAI/Ming-3.0-tts.git
cd Ming-3.0-tts
conda create -n ming-tiny python=3.10.15 -y
conda activate ming-tiny
pip install -r requirements-tiny.txt

Tiny uses a separate reference inference environment: Python 3.10.15, PyTorch and torchaudio 2.7.1+cu118 (CUDA 11.8 wheels), and transformers==4.46.3. Install the pinned dependencies from requirements-tiny.txt in a dedicated environment, as other dependency versions differ from 0.5B. We recommend using NVIDIA H800 for inference.

Download

pip install "huggingface_hub[cli]"
hf download inclusionAI/Ming-3.0-tts-tiny --local-dir Ming-3.0-tts-tiny

CLI Inference

python infer_tiny.py \
  --model_path inclusionAI/Ming-3.0-tts-tiny \
  --task dialect \
  --text "今日天气几好,我哋食完饭一齐去海边行下啦。" \
  --dialect 广粤话 \
  --prompt_wav data/wavs/10002287-00000094.wav \
  --output_path output/tiny.wav

Python API

Loading configures the release runtime (bf16, portable MoE loop, fp32 recurrent state) and checks the checkpoint against it; generate() defaults to cfg_scale=2.0, temperature=0, flow_steps=10, and sigma=0.25.

from ming_tiny import MingTinyTTS

tts = MingTinyTTS.from_pretrained("inclusionAI/Ming-3.0-tts-tiny", device="cuda:0")
tts.generate(
    task="seed",
    text="傍晚的风从山口吹过来,远处的云慢慢染成了金色。",
    prompt_wav="data/wavs/10002287-00000094.wav",
    prompt_text="在此奉劝大家别乱打美白针。",
    target_language="Chinese",          # English for English text
    output_path="outputs/seed.wav",
)

Supported Tasks

Each call selects one task and accepts the inputs listed below:

Task Reference audio Reference text target_language Controls
seed one required Chinese / English, required —
multilingual one required German / Spanish / French / Korean / Japanese —
paralinguistic one required Chinese / English inline tags in text
podcast one per speaker one per speaker, same order inferred from the text speaker_N: at the start of every line
basic one not accepted — speed, pitch, volume, all three
emotion one not accepted — emotion
dialect one not accepted — dialect: 川渝话 / 广粤话
freeform one not accepted — instruction
voice_design none — — style
ip none — — ip

Freeform always requires a reference clip and cannot be combined with voice design, a built-in voice, emotion, dialect or attribute controls. For podcast, start every dialogue line with speaker_N: and provide one reference audio clip and transcript per speaker, in speaker order. Repeat --prompt_wav and --prompt_text on the command line.

See the Tiny examples for a Podcast Python example and examples/one_click/ for scripts for every task. python infer_tiny.py --help lists the CLI arguments.

Verify the Checkpoint

python tools/preflight_tiny.py --model_path /path/to/Ming-3.0-tts-tiny

Serving with SGLang-Omni

SGLang-Omni serves this checkpoint on one GPU:

sgl-omni serve --model-path inclusionAI/Ming-3.0-tts-tiny

Synthesize speech through the OpenAI-compatible endpoint:

curl -X POST http://127.0.0.1:8000/v1/audio/speech \
  -H "Content-Type: application/json" \
  -d '{
    "model": "inclusionAI/Ming-3.0-tts-tiny",
    "input": "Get the trust fund to the bank early.",
    "response_format": "wav",
    "seed": 123
  }' \
  --output speech.wav

response_format accepts wav, mp3, flac, and pcm. For zero-shot voice cloning, pass ref_audio (a server-side path or a data: URL) together with ref_text, the transcript of the reference recording. See the SGLang-Omni cookbook for details.

Performance

Benchmark comparisons from the project README.

Bold and underline mark the best and second-best values among the listed open-source models; ties share a mark. Seed-TTS and NVbench-GT are unranked reference rows.

Zero-shot TTS (Seed-TTS testset)

Modelseed-tts-eval-zhseed-tts-eval-en
WER ↓SIM ↑WER ↓SIM ↑
Seed-TTS1.110%0.7962.240%0.762
GLM-TTS1.030%0.7612.230%0.672
Qwen3-TTS1.070%—1.390%—
Qwen3-TTS-12Hz-0.6B-Base0.920%—1.320%—
Qwen3-TTS-12Hz-1.7B-Base0.770%—1.240%—
CosyVoice3-0.5B1.160%0.7802.020%0.718
CosyVoice3-1.5B0.710%0.7751.450%0.695
F5-TTS1.560%0.7411.830%0.647
Ming-3.0-tts-0.5b0.800%0.7581.584%0.691
Ming-3.0-tts-tiny0.820%0.7811.666%0.728

Multilingual (MiniMax test set, selected languages)

Evaluated on the German, Spanish, French, Korean, and Japanese subsets of MiniMaxAI/TTS-Multilingual-Test-Set.

ModelGermanSpanishFrenchKoreanJapanese
WER ↓SIM ↑WER ↓SIM ↑WER ↓SIM ↑CER ↓SIM ↑CER ↓SIM ↑
dots.tts0.452%0.7982.593%0.83919.878%0.7894.837%0.8535.134%0.838
VoxCPM20.963%0.7901.324%0.8363.380%0.7613.547%0.8394.358%0.825
Fish Audio S21.045%0.7141.216%0.7483.636%0.6981.675%0.7613.427%0.755
FireRedTTS30.348%0.8251.086%0.8684.366%0.8071.644%0.8643.418%0.825
Ming-3.0-tts-0.5b0.365%0.7531.099%0.7634.264%0.6751.728%0.7933.765%0.765
Ming-3.0-tts-tiny0.325%0.7910.971%0.7973.470%0.7336.000%0.7973.427%0.780

Each open-source model was evaluated using its recommended inference settings under a unified ASR-based WER/CER evaluation protocol.

Paralinguistic Control (NVBench)

ModelSingleMulti
ChineseEnglishChineseEnglish
CERPCEROCERCERPCEROCERCERPCEROCERCERPCEROCER
NVbench-GT3.869.384.076.738.316.903.7923.715.077.2621.418.62
Orpheus-TTS11.3688.7713.919.0371.9210.6319.8384.8524.388.6871.4611.89
SMIIP-NV-CV28.8075.6411.3417.9256.8019.4710.6677.2014.7920.9354.4923.87
Emilia-NV-CV25.0540.006.6412.5055.3013.215.5448.748.0911.7160.2814.63
CosyVoice33.8557.695.867.8762.759.064.7561.948.266.3957.8410.69
NV-FlexiVoice6.9831.088.1511.8850.4313.218.2039.3710.399.6051.3213.76
NV-CV33.8027.694.908.3346.139.443.4430.044.846.7047.1310.10
Ming-3.0-tts-0.5b2.7022.803.207.6037.008.903.5036.608.107.9047.3010.40
Ming-3.0-tts-tiny2.8017.233.205.8632.957.054.4932.885.815.1246.137.68

Dialect Control

ModelWSC-Eval-TTS-easyWSC-Eval-TTS-hardWSYue-TTS-eval-BaseWSYue-TTS-eval-Coverage
CER ↓SIM ↑ACC ↑CER ↓SIM ↑ACC ↑CER ↓SIM ↑ACC ↑CER ↓SIM ↑ACC ↑
Qwen3-TTS4.13%——7.35%————————
CosyVoice3-0.5B3.17%0.69676.05%4.07%0.72381.41%8.36%0.61191.70%8.95%0.65895.80%
CosyVoice3-1.5B + DiffRO-EMO7.14%0.703—9.06%0.601—14.38%0.812—13.74%0.826—
CosyVoice2-WSC4.28%0.728—8.87%0.626———————
CosyVoice2-WSC-SFT4.08%0.788—7.22%0.680———————
CosyVoice2-Yue——————10.33%0.821—9.49%0.834—
Sparks-TTS10.83%0.677—12.52%0.545—27.79%0.762—24.25%0.781—
Ming-3.0-tts-0.5b2.27%0.68980.68%3.35%0.69187.64%6.15%0.58698.00%8.15%0.62295.27%
Ming-3.0-tts-tiny2.53%0.72186.09%3.11%0.73888.94%7.40%0.60592.90%8.67%0.65395.16%

Emotion Control (CV3)

ModelAverageText-RelatedText-Unrelated
HappySadAngryHappySadAngry
CosyVoice3-0.5B66.33%92%70%72%64%42%58%
CosyVoice3-1.5B63.00%86%64%72%64%44%48%
CosyVoice3-1.5B + DiffRO-EMO77.67%98%68%84%98%50%68%
F5-TTS64.67%92%52%72%80%28%64%
Sparks-TTS55.33%80%56%50%50%60%36%
Ming-3.0-tts-0.5b72.33%96%76%94%52%36%80%
Ming-3.0-tts-tiny74.00%98%82%90%60%36%78%

Emotion Control (CV3N, hard emotion control)

ModelAverageText-RelatedText-Unrelated
HappySadAngryHappySadAngry
CosyVoice3-0.5B40.00%68%30%78%14%4%46%
Ming-3.0-tts-0.5b37.33%70%36%70%14%4%30%
Ming-3.0-tts-tiny30.67%60%40%44%18%10%12%

Voice Design (InstructTTSEval-ZH)

ModelAverageAPSDSDRP
Qwen3-TTS77.13%85.20%81.10%65.10%
Mimo-Audio-7B-Instruct70.50%75.70%74.30%61.50%
VoiceSculptor67.30%75.70%64.70%61.50%
VoxInstruct47.47%47.50%52.30%42.60%
Ming-3.0-tts-0.5b72.29%78.54%77.28%61.06%
Ming-3.0-tts-tiny75.37%85.10%79.90%61.10%

Basic Attribute Control

ModelSpeedVolumePitchAverageWER ↓SIM ↑
CosyVoice3-0.5B100.00%97.67%65.33%87.67%1.210%0.580
Ming-3.0-tts-0.5b99.00%95.00%86.00%93.30%0.317%0.712
Ming-3.0-tts-tiny93.00%93.00%78.70%88.23%0.274%0.742

Podcast

ModelCER ↓cpSIM ↑UTMOS ↑
FireRedTTS23.34%0.5121.90
SoulX-Podcast2.20%0.5992.09
VibeVoice-1.5B12.87%0.4551.74
MOSS-TTSD8.62%0.4211.70
ZipVoice-Dia3.39%0.5532.24
MoonCast27.43%0.4411.76
Ming-3.0-tts-tiny2.03%0.5612.12

Limitations

  • Korean CER (6.000%) is the clearest multilingual content-accuracy gap for this checkpoint.
  • Speaker similarity remains weaker than content accuracy on several multilingual and dialect evaluations.
  • NVBench Multi trails Single on several metrics; stability with multiple paralinguistic events in one sentence is still improving.
  • Emotion control is harder when the words carry no emotional signal.
  • Pitch is less accurate than speed and volume, and open-ended Voice Design does not yet match the strongest evaluated system.
  • Podcast audio quality remains a limitation: UTMOS is 2.12, below ZipVoice-Dia's 2.24 and the historical Ming-omni-tts-0.5B score of 2.25.

Usage Disclaimer

  • Voice cloning and built-in character voices are provided for research and legitimate creative use. Do not use them to impersonate a real person without consent, to deceive, or for any illegal purpose.
  • Label synthetic speech as synthetic where it could be mistaken for a real recording.
  • The authors accept no liability for misuse. If you find abuse of this project, please report it to us.

Acknowledgements

  • Ling V3 for the mixture-of-experts backbone
  • CAM++ for speaker embedding extraction
  • Ming-omni-tts, the previous generation, whose audio tokenizer this release builds on

License

Released under the MIT license.

Downloads last month
20
Safetensors
Model size
9B params
Tensor type
BF16
·
F32
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for inclusionAI/Ming-3.0-tts-tiny

Finetunes
2 models
Quantizations
2 models

Spaces using inclusionAI/Ming-3.0-tts-tiny 2

Collection including inclusionAI/Ming-3.0-tts-tiny