A generated title card reading 'Ming-3.0-tts-tiny vs Breeze-TTS-2' with the subheadline 'MIT weights against a non-commercial licence', a left card reading 'Ming-3.0-tts-tiny / MIT / 7.9B total, 1.3B active / 9 languages', a right card reading 'Breeze-TTS-2 / non-commercial weights / 3B dense / 2 languages', and a divider badge reading 'the licence decides it'.
Engineering & Research

Ming-3.0-tts-tiny vs Breeze-TTS-2: MIT Weights Against a Non-Commercial Licence

Author

Gideon Frost

Date Published

Latest models · 20View all models →
Benchmarks: Artificial Analysis · updated daily
Back to all posts

Two open-weights speech models landed within a month of each other and they are not competing on the same axis. Ming-3.0-tts-tiny, from Ant Group's inclusionAI, is a 7.9B mixture-of-experts checkpoint that activates about 1.3B parameters per token, ships under MIT, and covers nine languages including two Chinese dialects. Breeze-TTS-2, from BreezeBlue, is a dense 3B model that covers English and Chinese only, publishes its code under Apache 2.0, and releases its weights under a research and non-commercial licence with a paid-hosted carve-out. The headline question — which sounds better — turns out to be the least decisive one, because the arena entry that looks like Ming's score belongs to a different checkpoint entirely, and the licence difference is the one that decides whether you can ship at all. The documented AI failures and agent incidents behind releases like this one are collected in the OrcaRouter AI Incident Archive where each entry carries its own sources, severity, confidence grade and disputed flag.

Neither vendor announced a general availability event in the usual sense, and both facts matter here. Breeze-TTS-2's weights went up on August 25, 2026, with voice-design and latency suites following on August 7. Ming-3.0-tts-tiny existed on Hugging Face from September 24 but only became runnable on October 19, when its inference code and task cookbook arrived on GitHub. So this is a comparison of two artefacts you have to host yourself, written before either has a hosted price to quote, and labelled accordingly throughout.

Start with the licence, because it ends the argument for some teams

The two licences are not variations on the same permission. They are different categories of permission.

• Ming-3.0-tts-tiny — MIT, for weights and code alike. You can use it commercially, modify it, redistribute it, and ship it in a closed product. Ant attaches a usage note asking you not to impersonate people without consent and to label synthetic audio; that is a request in the documentation, not a condition of the grant.

• Breeze-TTS-2 — Apache 2.0 for the source code, and a separate "BreezeBlue Research and Non-Commercial License" for the weights. Commercial use of hosted outputs requires a paid BreezeBlue subscription, and even then the subscription does not extend commercial rights to the open weights or to outputs you generate by self-hosting them.

Read that second bullet carefully, because the obvious interpretation is the wrong one. Paying BreezeBlue does not convert the weights into something you may run commercially; it licenses a hosted path. Self-hosting is non-commercial regardless of whether you subscribe. If your plan is "fine-tune the 3B model, put it behind our own endpoint, and bill for it," the licence closes that door and MIT leaves it open. For internal research, evaluation, or a prototype that will never take money, the distinction costs nothing.

A screenshot of the Hugging Face model page for BreezeBlue/Breeze-TTS-2, captured October 19 2026, showing 747 likes, the Text-to-Speech, Transformers, Safetensors and PyTorch tags, the English and Chinese language tags, the 'breezeblue-research-and-non-commercial-license' label, and card text stating that the source code is Apache 2.0 while the weights, derivative models and self-hosted outputs are for research and non-commercial use only, followed by release notes dated 2026.08.25 for the weights and PyTorch inference code and 2026.08.07 for the benchmark suites.

There is a second licence-adjacent difference that decides more deployments than either paragraph above. Ming's release ships a whole pipeline — backbone, diffusion head, audio tokenizer, speaker encoder and text tokenizer — as one set of weights. Breeze ships its code and weights with an inference path that has been packaged for several runtimes at once: the derivatives ecosystem around Breeze-TTS-2 includes MLX builds in 4-bit and 8-bit plus a full-precision port, GGUF quantisations, int8 and int4 conversions, an HQQ int4 build, a ROCm/RDNA4 BF16 build from October 18, a GPTQ int4 ROCm build from October 19, ComfyUI fine-tunes, and a Brazilian-Portuguese LoRA published October 6. Ming-3.0-tts-tiny has none of that, because it has had a usable inference path for less than a day.

The footprint difference is roughly an order of magnitude

This is where "tiny" stops meaning small. The name describes active parameters per token, not the memory you need.

• Ming-3.0-tts-tiny — 8,980,964,372 parameters in BF16 plus 40,096 in F32 by Hugging Face's own metadata, about 18 GB of repository storage, and an H800 recommended in the vendor's environment notes. You pay the memory of a 7.9B model and get the latency of a 1.3B one, which is a good trade for batch synthesis on rented hardware and a poor one for anything with a 12 GB card in it.

• Breeze-TTS-2 — 3B parameters dense, about 7.7 GiB of GPU memory in eager mode and about 14.4 GiB with --fast-all enabled. BreezeBlue recommends 12 GB or 24 GB depending on which path you take, and documents that its Docker defaults target H100/Hopper sm90 while A100 owners need to set FLASH_ATTN_CUDA_ARCHS=80.

• Ming's concurrency model — a Python entry point per task with fixed defaults: guidance scale 2.0, zero temperature, ten flow steps, sigma 0.25, seed 1234. vLLM-Omni support is on the roadmap and unchecked, so there is no high-throughput serving path today.

• Breeze's concurrency model — a single-concurrency HTTP streaming API returning mono 24 kHz signed 16-bit little-endian PCM, with a claimed time-to-first-audio under 40 milliseconds on a warmed H100 and a real-time factor of 0.32, which is roughly 3.1 times faster than real time.

That last pair is the honest summary of the trade. Breeze is engineered for streaming latency on one request at a time; Ming is engineered for throughput per unit of compute on sparse activation, and has not published a serving stack. If your product is a live voice agent, those are not equivalent starting points. If your product is a nightly batch of narration, the concurrency model matters much less than the licence and the memory bill.

A generated two-column scoreboard titled 'Ming-3.0-tts-tiny vs Breeze-TTS-2 - the scoreboard'. The Ming column reads 'Parameters: 7.9B total, 1.3B active', 'Memory: H800, about 18 GB', 'Languages: 7 plus 2 dialects', 'Licence: MIT', 'Podcast: yes' and 'Independent Elo: none yet'; the Breeze column reads 'Parameters: 3B dense', 'Memory: about 7.7 GiB eager', 'Languages: English and Chinese', 'Licence: non-commercial weights', 'Podcast: no' and 'Independent Elo: 1,019 controlled', with a footer reading 'Arena figures per Artificial Analysis; Ming figures per Ant's own harness.'

Language coverage is not close, and the gap runs one way

Breeze-TTS-2 supports English and Chinese. Its card says so without hedging, and it also documents inline vocal events in both languages — (laugh) and (sigh) in English, [笑] and [叹气] in Chinese — plus cloning from a reference clip with its exact transcript and a voice-direction control.

Ming-3.0-tts-tiny covers Chinese, English, German, Spanish, French, Korean and Japanese, with Sichuanese and Cantonese when given a dialect reference clip. It adds free-form style control, voice design from a natural-language description, 100-plus built-in Chinese voices and five English ones, and 14 inline paralinguistic tags. It also does multi-speaker podcast generation, which Breeze does not attempt.

The catch is in Ant's own multilingual table, and it is the first thing to read before assuming that nine beats two. On Korean, Ming-3.0-tts-tiny posts 6.000% character error rate, sixth of the eight systems Ant benchmarked, against 1.728% for Ant's own 0.5B sibling. On French it is second on error rate but its speaker similarity of 0.733 does not place in the top three, a limitation the card states itself. German (0.325%) and Spanish (0.971%) are firsts in that table. So the honest read is: five of Ming's seven languages are credible, Korean is not yet, and the dialect support is unique but unverified outside Ant's harness. Breeze, by contrast, claims nothing it does not cover — two languages, and every result in its card is about those two.

The arena numbers, and why they are not a head-to-head

Breeze-TTS-2 has an independent score. Ming-3.0-tts-tiny does not, and the entry that looks like one belongs to a different model.

• Breeze-TTS-2 on Artificial Analysis, read from the live boards on October 19, 2026 — 1,220 Elo on Provider Voice, where each model uses its own native voice cast, and 1,019 on Controlled Voice, where every model clones the same eight reference voices.

• The Ming row on the same boards — 1,188 Provider and 1,069 Controlled — is linked to Ming-3.0-tts-0.5B, the dense half-billion-backbone sibling, not to the tiny checkpoint. Ant's GitHub README reproduces these figures in its results section without that distinction. It is worth being explicit: there is no independent Elo for Ming-3.0-tts-tiny, no measured characters-per-second figure, and no third-party word error rate.

A screenshot of the Artificial Analysis Controlled Voice arena leaderboard, captured October 19 2026, where every model clones the same eight reference voices, listing models by Elo with confidence ranges, sample counts, release dates and API pricing: HeyGen Voice 1,199, Qwen-Audio-3.1-TTS-Plus 1,186, Eleven v4 Turbo and Eleven v4 at 1,158, Sonic 3.6 at 1,151, Realtime TTS-2 at 1,147, Ming-3.0-tts at 1,069 with no listed price, Fish Audio Drama 3 Preview at 1,059 and Breeze-TTS-2 at 1,019 at $34.0 per million characters.

• The project page's own leaderboard quotes Breeze at 1,222 Provider and 1,018 Controlled, a two-point difference from the live board in each direction. That is what a board looks like when it is still accumulating votes; cite the live figures and note the rounding if you are comparing documents.

• On the controlled board the ordering of open-weights systems is Ming-3.0-tts-0.5B at 1,069, Fish Audio Drama 3 Preview at 1,059, Breeze-TTS-2 at 1,019. On the provider board Breeze leads that group at 1,220, with Ming-3.0-tts-0.5B at 1,188. So the small Ming model wins when the voice is held constant and loses when each system brings its own cast — which says something about BreezeBlue's voice recordings and very little about the architecture.

None of that transfers to the tiny checkpoint in either direction. A reader could reasonably infer that a 7.9B mixture-of-experts model with a better Chinese speaker-similarity score than its 0.5B sibling would score higher on the controlled board. That inference is untested, it is not a number, and this piece will not present it as one.

What each is actually for

Strip away the spec lists and the two models are solving different problems.

Breeze-TTS-2 is a deployment-first release. Two languages, a dense 3B footprint that fits a 12 GB card in eager mode, a streaming API with a documented latency path, a container that targets datacentre Hopper but can be rebuilt for A100, and an ecosystem of quantised and runtime-specific ports that appeared within eight weeks of the weights. Its download count — 14,636 in the last month, with 747 likes and 17 Spaces — is what adoption looks like when a model is easy to run. Its constraint is the licence: research and non-commercial weights, with a paid hosted path that does not buy you commercial self-hosting rights.

Ming-3.0-tts-tiny is a capability-first release. Nine languages, dialect control, voice design, a 14-tag paralinguistic system, multi-speaker podcast generation, and the best cloned-voice score in its own family at 0.781 Chinese speaker similarity. Its constraint is everything around the capability: an 18 GB download, sparse activation that needs real GPU memory, a serving story that is a roadmap checkbox, no independent benchmark, and no announcement. Twenty downloads and three likes on Hugging Face, five stars on GitHub, and twelve documentation commits in a single afternoon tell you the vendor is still writing the manual.

If you need to ship a bilingual voice feature this quarter on hardware you already own, Breeze-TTS-2 with a commercial arrangement is the shorter path, and the licence is the thing to negotiate rather than the maths. If you need German, Spanish, Japanese, Cantonese or a podcast format, Breeze cannot help you and Ming is the only open-weights option with a published table — provided you can absorb the memory and accept that Korean is not ready.

OrcaRouter does not route either of these models, and this piece should not be read as suggesting otherwise. What sits in the catalogue is the text half of the pipeline these voices plug into: more than 200 models behind one key, at provider list price with no markup added, so a vendor price change is live on our side the same day rather than on a refresh cycle. When you are comparing two self-hosted checkpoints and neither has a hosted rate, the only recurring bill you can actually control is the model that writes the script, and that is the part worth routing rather than renting a GPU for.

The verdict that survives the evidence is narrower than the Elo gap suggests. On a like-for-like commercial deployment, the MIT licence decides it before a single benchmark is read. On latency-sensitive bilingual work, Breeze's engineering decides it before the licence is. And on the question most readers came for — does the bigger model sound better — the honest answer is that nobody has measured it, that the arena row everyone will cite is the wrong checkpoint, and that the first person to run both on the same reference audio will produce the only number worth quoting.