Kuyil: Tiny Open Tamil TTS on One CPU

Introduction
Zhagaram Labs — a Tamil-first non-profit AI lab — just open-sourced Kuyil (குயில்), a tiny Tamil text-to-speech family. The Hugging Face cards zhagaramlabs/kuyil-20m, kuyil-5m, and kuyil-1.4m were created 2026-11-04T04:25Z. Code lives at github.com/zhagaramlabs/kuyil.
This is open generative TTS, not a quant of someone else’s Tamil checkpoint. The recipe is explicitly rebuilt from PiVo-1.4M (ArtRealmAI already covered the English PiVo drop) for Tamil script, Latin-script English words, and ₹/number reading.
What Shipped
- Vendor / product: Kuyil 1.4M / 5M / 20M — Zhagaram Labs
- Modality: generative text-to-speech (Tamil + Latin English / numbers)
- Open vs closed: weights CC BY 4.0 (credit Zhagaram Labs + IIT Madras IndicTTS); code Apache-2.0; keep PiVo/FARGAN notices in
pivo/ - Runnable today: clone the repo →
uv sync→hf download zhagaramlabs/kuyil-20m→synth.py - Concrete fact: on 125 held-out IndicTTS sentences, IndicConformer CER on Kuyil-20M speech is 2.9% — matching the original studio recordings; synthesis ~15× realtime (RTF 0.06–0.07) on one Apple-silicon CPU thread including the vocoder
- Voices: two IndicTTS studio speakers —
femaleandmale
Run It
git clone https://github.com/zhagaramlabs/kuyil && cd kuyil && uv sync
hf download zhagaramlabs/kuyil-20m --local-dir kuyil-20m
uv run python synth.py kuyil-20m "வணக்கம், நான் குயில்." --voice female --out hello.wavIn Python from the repo folder: speak, voices = synth.load("kuyil-20m") then speak(text, "female") returns 16 kHz NumPy audio. Swap the folder name for kuyil-5m or kuyil-1.4m if you want even smaller.
How It Was Built (Short)
- Stack: text encoder + duration predictor + causal decoder predicting 20 FARGAN features every 10 ms; PiVo’s FARGAN vocoder turns features into audio
- Data: IIT Madras IndicTTS Tamil (~24.8 h after trim; 9,022 train utterances ≤30 s) via the SPRINGLab mirror
- Frontend: Tamil letters → 74 phones; Latin English via CMUdict mapped to Tamil phones; numbers spoken the way people say them
- Training note: ~6.6 h on one H100 (epoch 21 lowest val loss); no PiVo-style adversarial refinement pass
All three sizes are “as intelligible as the recordings” by CER, so pick by taste and footprint — native listeners will hear the difference where a recognizer will not.
Limits and Responsibility
- Studio literary / read style only — conversational tone and Tanglish speech were not in training (Tanglish text is frontend-only)
- Naturalness has not been rated by native listeners yet
- These are real people’s IndicTTS voices — do not impersonate; mark synthetic speech where it matters; keep the CC BY attribution
Original Source
Conclusion
If you need offline Tamil TTS that fits phone / screen-reader / voice-agent budgets and you’re fine with literary studio voices plus CC BY credit, Kuyil is today’s open drop — start with kuyil-20m, then A/B the 5M and 1.4M cards on your device.
—Anabel ♡
