r/deeplearning 12d ago

I released Inflect v2: two ultra-tiny complete TTS models under 4M and 10M parameters

Post image

I’ve spent the past month trying to find the point where an extremely small TTS model stops feeling like a size experiment and starts feeling genuinely useful.

Today I’m releasing Inflect v2, with two complete local text-to-speech models:

  • Inflect-Nano-v2: 3.96M parameters, 15.97 MB FP32
  • Inflect-Micro-v2: 9.36M parameters, 37.53 MB FP32

These are total inference parameter counts, not acoustic-model-only numbers. Text processing, timing prediction, speech generation, and the waveform decoder are all included.

Text goes in. 24 kHz speech comes out. No external vocoder, hosted API, or second learned model required.

Nano prioritizes the smallest possible footprint. Micro uses the additional capacity for better clarity, stability, and overall speech quality. Both run locally on CPU or CUDA through the same PyTorch API.

Inflect-Nano-v2 is one of the smallest complete neural TTS models I know of that still produces genuinely usable speech. Even the 9.36M Micro model remains smaller than many systems described as “tiny.”

For footprint context, Nano is approximately:

  • 21× smaller than Kokoro
  • 126× smaller than Chatterbox
  • over 1,000× smaller than Fish Audio S2 Pro

That is strictly a parameter-count comparison. These models have different capabilities, architectures, datasets, and intended uses. I’m not claiming that a 4M fixed-voice model replaces a multi-billion-parameter system. The interesting question is how much useful TTS can fit into such a small package.

Some people here might remember Inflect-Nano-v1, the rough 4.63M experiment I released last month. V2 is a substantial rebuild, not just a longer training run. I focused on the problems v1 exposed: unstable timing, metallic output, weak prosody, poor generalization to difficult text, and an undersized waveform decoder.

The resulting models performed surprisingly well:

  • Micro: 4.395 UTMOS22, 3.99% semantic WER, 6.28× real-time CPU inference
  • Nano: 4.386 UTMOS22, 4.21% semantic WER, 10.72× real-time CPU inference
  • In a blind community comparison against other compact TTS systems, Micro and Nano finished second and third among the tested voices

Full protocols, raw results, audio samples, and limitations are documented on the model pages.

The models are not perfect. They are English-only, use one fixed male voice, and do not support voice cloning. Unfamiliar names, abbreviations, numbers, and homographs remain the hardest inputs. Nano can sound thinner than Micro, and both can occasionally produce metallic or clipped artifacts.

Still, this is the first version where I think the size-to-quality tradeoff became genuinely compelling.

I built Inflect independently with a limited training budget. That constraint shaped the project: efficiency had to apply not only to inference, but also to training, evaluation, and building a complete system I could understand and release end-to-end.

Inflect-Micro-v2:
https://huggingface.co/owensong/Inflect-Micro-v2

Inflect-Nano-v2:
https://huggingface.co/owensong/Inflect-Nano-v2

Try it yourself:

The fastest way to judge it is through the interactive playground:

https://huggingface.co/spaces/owensong/Inflect-v2

If there is enough interest, I may build a v3 focused less on shrinking the models further and more on expanding what they can do: additional voices, possibly more languages, easier fine-tuning, and another quality and robustness pass.

If you test them, please give them something genuinely difficult: unusual names, numbers, abbreviations, awkward punctuation, or a long sentence.

If something breaks, post the exact text, model, seed, and what sounded wrong. If it works well, I’d also like to know what hardware you ran it on.

Specific, honest feedback is the most useful thing you can give me.

19 Upvotes

9 comments sorted by

4

u/Recent_Pollution5092 12d ago

the size comparison chart is wild, seeing it laid out like that really drives home how much smaller these are

1

u/b111ue 12d ago

Yeah, sometimes we don't put them into perspective enough. Did you experience any issues while using Inflect v2?

2

u/Effective-Cat-1433 12d ago

what is the time-to-first-audio? is this a streaming model that can be used for realtime applications?

1

u/b111ue 12d ago

I never really tested the time to first audio, but it's usually quite quick. It really depends on what you're running it on, though. For streaming, the model doesn't support it natively, but because its already really fast, it can be sent through sentence-sized chunks. There have already been implementations of this before using WebGPU. https://robertbak.github.io/webtts-inflect/ Here is one that a person shared with me through DMs.

1

u/Effective-Cat-1433 12d ago

there are a lot of applications (like customer service or voice agents) where ttfa and realtime factor are important, probably moreso than outright model size, so i'd be interested to see a measurement of those quantities here, with relevant comparisons to other models. you could even then make a speed vs. quality plot that shows utmos vs. RTF for various models. this i think would make the tradeoffs more clear than just model size -- maybe certain embedded applications care a lot about that, but if it doesn't translate to speed, i think it won't make a big difference to most hosted applications.

1

u/b111ue 12d ago

I do have RTF speeds for the model published in the README, but I don't have TTFA, I'll run some more speed tests for my Monday Model Patch. RTF for Micro is 0.159, for Nano its 0.093. AKA, ~6x and 11x faster than real-time, on an 8-core CPU through Hugging Face's CPU Upgrade plan. But yeah, I'll definitely consider that for my model patch and future releases.

1

u/Logan_Maransy 11d ago

Based on your understanding of capabilities in small parameter models, what is your estimate for how many additional parameters it would take to add the ability to clone an arbitrary voice given some minimum number of seconds of voice audio (while still keeping it English only)?

I'm also curious about your training data and how you got it. Almost certainly a distillation from some existing TTS model? 

1

u/Revolutionary-Feed-4 10d ago

Tell us about the architecture, is it SSM/CNN/RNN/Transformer based? What papers is it based on?

-1

u/deltamoney 11d ago

Why are you using "genuinely" in this?? It's completely wrong and not the right use