Skip to content
HN On Hacker News ↗

owensong/Inflect-Micro-v2 · Hugging Face

▲ 214 points 29 comments by nateb2022 4w ago HN discussion ↗

Pangram verdict · v3.3

We believe that this document is fully AI-generated

95 %

AI likelihood · overall

AI
0% human-written 100% AI-generated
SEGMENTS · HUMAN 0 of 5
SEGMENTS · AI 5 of 5
WORD COUNT 1,116
PEAK AI % 99% · §5
Analyzed
Jul 26
backend: pangram/v3.3
Segments scanned
5 windows
avg 223 words each
Distribution
0 / 100%
human / AI fraction
Verdict
AI
Pangram v3.3

Article text · 1,116 words · 5 segments analyzed

Human AI-generated
§1 AI · 98%

Inflect-Micro-v2 Complete local text-to-waveform speech synthesis under 10M parameters. Fixed-voice English TTS with deterministic seeds, long-text handling, and CPU or CUDA inference.

A note from Owen I built and funded Inflect v2 independently. If this release finds a real audience, I would like to continue the project with a broader v3, which might include things like more langauges, voices, and stability improvements. If the model is useful to you, leaving a like on Hugging Face genuinely helps more people discover it.

9,356,513 deployable parameters · 37.53 MB FP32 · 24 kHz mono output

Inflect v2 uses one public API across two sizes: Micro prioritizes quality below 10M parameters; Nano prioritizes footprint below 4M.

Explore this model card

Start here Technical detail

Listen Architecture

Evaluation Controls and long text

Choose Micro or Nano Data and adaptation

Run locally Exports and quantization

Package map Evaluation and raw protocol

Limitations Deployment guide

Listen

These are held-out text generations, not reconstructions of training audio. Each transcript is shown exactly as passed to the public frontend.

Test Exact transcript Generated audio

Conversational It wasn't until later that I realized what had actually happened.

Punctuation First, close the window; second, turn off the lamp; finally, lock the door.

Numbers The package weighs twelve point six kilograms and arrived on July twenty-first.

Names and places Gwendolyn photographed the eucalyptus trees outside Ljubljana.

Technical The system runs on three core components that all have to stay in sync.

Evaluation

No single metric captures TTS quality. Inflect v2 reports human preference, predicted naturalness, multi-ASR intelligibility, complete footprint, and runtime separately rather than compressing them into one unverifiable score.

§2 AI · 89%

Community preference ↑ UTMOS22 ↑ Two-ASR semantic WER ↓ Complete FP32 weights ↓ 4-thread CPU throughput ↑

66.2% 4.395 3.99% 37.53 MB 6.28× real-time

The headline row always refers to Inflect-Micro-v2. Detailed competitor results and protocol boundaries are kept visible below. Comparison set. Results include KittenTTS Nano, Piper Low, and Supertonic 3, established compact or local TTS baselines with larger deployable weight footprints than both Inflect releases. Weight sizes are compared at package level, and no single metric is treated as proof of overall superiority.

1. Human blind preference

Inflect-Micro-v2 recorded a 66.2% preference rate (21 wins · 10 losses · 3 ties) in the final anonymous community study. Systems were hidden, left/right order was randomized, and ties count as half a win. This is descriptive community evidence, not formal MOS.

2. Predicted naturalness versus footprint

The UTMOS22 run used 500 identical unseen prompts per voice. KittenTTS and Piper are equal-weight two-voice means; their observed voice ranges appear as whiskers. Supertonic 3-step is reported below the plotted range rather than flattening every other system. Inflect-Micro-v2: 4.395 UTMOS22, 95% bootstrap CI 4.381–4.408. UTMOS22 is a learned predictor, not human MOS.

3. Intelligibility on unseen text

The headline score is the equal-weight mean of Qwen3-ASR and Nemotron 3.5 corpus WER for every system. Whisper is excluded consistently from the headline because it produced insertion-heavy hallucinations on a subset of otherwise intelligible Supertonic 8-step clips. It is not deleted: the complete three-ASR evidence remains below.

§3 AI · 87%

Open the complete three-ASR audit

System / voice Qwen3-ASR ↓ Nemotron 3.5 ↓ Whisper large-v3 ↓

Inflect-Micro-v2 2.52% 5.45% 2.73%

Inflect-Nano-v2 2.79% 5.63% 2.65%

KittenTTS Nano · Bruno 2.15% 3.96% 2.17%

KittenTTS Nano · Hugo 2.39% 3.80% 2.11%

Piper Low · Danny 2.62% 5.60% 2.55%

Piper Low · Ryan 2.81% 5.51% 2.87%

Supertonic 3 · M2 · 3-step 3.03% 6.04% 3.22%

Supertonic 3 · M2 · 8-step 2.05% 3.56% 8.08%

For Inflect-Micro-v2, the individual results are 2.52% Qwen3-ASR, 5.45% Nemotron 3.5, and 2.73% Whisper large-v3. The former three-model mean, 3.57%, is retained only as a descriptive audit value and is not used as the headline score.

Open evaluator robustness and error-category diagnostics

These views are diagnostics, not additional leaderboards. They show where the recognizers disagree and which prompt categories still produce recoverable transcription errors.

4. CPU runtime

Both Inflect releases synthesize comfortably faster than real time on CPU. The managed reference run used a Hugging Face CPU Upgrade instance (8 vCPU, 32 GB RAM) with four framework threads, end-to-end text-to-waveform timing, and 100 fixed Modern400 prompts. Three complete passes were recorded; the first cache-building pass was excluded and the table pools passes two and three.

§4 AI · 83%

Release Steady-state RTF ↓ Audio / wall time ↑

Inflect-Micro-v2 0.1593 6.28×

Inflect-Nano-v2 0.0933 10.72×

These are package-level results from the public PyTorch runtime, not a claim that Inflect is the fastest compact TTS system. Hardware, frontend behavior, framework, compilation, and thread policy all affect small-model measurements.

Open directional compact-system speed context

The same managed CPU and four-thread policy were used for a shorter comparator pass: the identical 50-prompt prefix, repeated twice. KittenTTS and Piper are equal-work pooled across their two tested voices.

System Audio / wall time ↑

Piper Low 31.37×

KittenTTS Nano 13.33×

Inflect-Nano-v2 10.72×

Supertonic 3 · 3-step 10.15×

Inflect-Micro-v2 6.28×

Supertonic 3 · 8-step 4.37×

Because Inflect uses the larger 100-prompt steady-state run while comparator rows use the shorter 50-prompt confirmation pass, this table is deployment context rather than a perfectly matched speed leaderboard. Several comparators also use optimized ONNX runtimes, while the published Inflect benchmark above uses the canonical PyTorch runtime. The separately released Inflect ONNX path has not been substituted into those benchmark numbers.

5. Complete weight footprint

Voice variants sharing the same weights are merged. Inflect totals include the integrated waveform decoder.

Open the frozen evaluation protocol

Modern400 uses 400 identical unseen English prompts per system: 200 fixed modern/stress prompts plus 200 deterministic FLEURS en_us test prompts. Exact-text exclusion was checked against 87,362 training transcripts. All ASR inputs are resampled to 16 kHz and scored with the same disclosed English normalizer.

§5 AI · 99%

UTMOS22 uses tarepan/SpeechMOS v1.2.0 on a separate 500-prompt generation set. Headline intervals use 10,000 bootstrap samples. The Modern400 corpus SHA-256 is b7504ce2dce44a2da82770a6a5dfd2a034fe17e2113980f8a69663ade417a34c. Prompts, hypotheses, compressed row-level reports, and summaries ship under evaluation/final/. Runtime is evaluated separately because framework, thread policy, compilation, and host load can dominate small-model comparisons.

Choose the right Inflect

Inflect-Nano-v2 Inflect-Micro-v2

Complete parameters 3,966,721 9,356,513

FP32 weights 15.97 MB 37.53 MB

Positioning Smallest practical footprint Strongest Inflect v2 quality

24 kHz waveform decoder Included Included

Python API and frontend Same Same

Inflect-Micro-v2 is the quality-focused member of the family. Both models use the same public API and complete text-to-waveform packaging.

Run locally

Install

python -m pip install --upgrade huggingface_hub hf download owensong/Inflect-Micro-v2 --local-dir Inflect-Micro-v2 cd Inflect-Micro-v2 python -m pip install -r requirements.txt

This uses the Hub's version-aware downloader and retrieves the complete repository. A Git clone also works, but hf download is the recommended path for ordinary model installation.

Python

from inference import InflectTTS

tts = InflectTTS(".", device="cpu") tts.save( "A small voice can still have something meaningful to say.",