Building the best tiny voice in the world
Natural, expressive speech, empathetic where it is needed, from a model small enough to run on the cheapest phones and very small devices, with no cloud and no connection. That is the aim; this page is the training towards it as it happens, with every number's source and every listening test's size beside it.
Trilavi, as it speaks today Its teacher, which takes eight steps where Trilavi takes one
Each dot is 70 ms of sound, placed by its 144 numbers, seen from the three directions in which they vary most. Where the two trails run together, the two voices' numbers agree there. Both are machine voices.
a two-minute walk through the page, for anyone new to how models learn
Watch it think
A scan of the thinker as it speaks. Each row is one of its layers; each column is 70 ms of the sentence. Press play: the sound plays, a line sweeps across, and you see the word it is reading, which layers rise furthest above their own usual level, and the sound it makes.
Darker means a layer is further above its own usual level at that moment, on one scale for every layer. In each stage, the last two rows read the text and keep the voice. Point at any square for its layer and moment; tap to go there.
Where it looks in the sentence
Each row is a moment, from top to bottom; the dark cells are the letters it is looking at. Stage 1's gaze walks along the sentence in order; the later stages mostly rest on the end-of-sentence mark. The teacher learnt that from examples; the cut keeps it.
The same thinker in 3D
Each ring is a layer of neurons; the four layers furthest above their own usual level glow as it speaks. Drag to turn it; click in, then scroll, to zoom.
Its size is a choice, not a fixed number, and it shrinks on purpose: 64M numbers in round six, 37M now, and 1.9M in the tier being sized for a $5 chip. Each version keeps the voice in fewer neurons.
Why Trilavi
The road to the chip
What Trilavi has found
New methods, measurements and ways of working that the work has turned up. Each names the closest published work, says how new it is and how far it has been shown, and is dated. A new one appears here once its sources are checked. Trilavi was called Kalarav until 4 November 2026.
How it is judged
Every claim about Trilavi is checked against one scorecard: 26 measurements, nine kinds of sentence, and the other small voices, measured on the same sentences. Pick a device to see its targets. Where a number is measured today it is shown, live; where it is not, it says so.
Learn from it
Hear it learn to speak
The same sentence at every saved checkpoint, from the first round to now. Drag to go back in time and press play; under it, what a speech recogniser heard.
The model
Versions
Where it will speak
Fifteen real uses, each found with its sources: the places where a voice must live on the device itself, because the network is weak, costly or private, and every device must be cheap.
What it saves
A cloud voice bills every word by the character, and needs a connection to say it. A voice on the device has nothing to bill. Here is what a cloud voice would cost for each use, from public list prices: for most of these people it is the price of a voice they do not have today, not a bill they pay.
How Trilavi learns to speak
Trilavi is Neelverse Lab's own voice, small enough to speak in real time on an entry-level 2 GB device. It learns from a big "teacher" voice (Supertone's Supertonic 3) by distillation: a small student watches the teacher's work until it can do the same job in one quick step instead of eight slow ones. Everything on this page is live from the PC that trains it. Hover or tap anything to see what it is.
How a voice is made
The yellow box is the part being trained now. The teacher's thinker (dashed) is only used while teaching; on the phone, Trilavi's own thinker replaces it.
For 28,428 sentences in six languages (51 hours), the teacher turned random noise into finished speech in 8 careful steps. Each result was saved.
The student gets the same noise and text and must produce the same speech in one step. First it learnt the answers directly (phase A).
Copying answers makes speech dull, an average. So two helper models judge how the teacher's speech sounds in general against how the student's does, and push the student towards the teacher's (phase B, now).
When the scores are good, it is tested blind against the teacher and round six. Only then is it released.
One training step, as it happens
The loop that teaches Trilavi, about 35 times a minute (fewer while clips are being scored). The dot walks through one step; the numbers are the latest step's.
Is it close to the teacher?
Liveliness and the gap are scored on 287 held-out sentences; the two clarity panels on two clips per language (F1 and M1), read by Whisper small. Every 1,000 or 2,000 steps, for every run so far, on one step axis. Yellow is the run training now (the latest one when none is), charcoal is round six; pick any run in the table to raise its line.
Liveliness (teacher = 1; 287 held-out sentences)
Gap from the teacher's 8-step speech (lower is closer; 287 held-out sentences)
English: words a listener misses, two clips (lower is clearer)
Hindi: letters a listener misses, two clips (lower is clearer; the judge's own floor is 10.1-11.1%)
Right now
Waiting for the first update from the training PC.
The training PC
The graphics card's plan
The cloud machines
Work that runs side by side on Kaggle's free cards and on Modal, read the same way as the training PC: what each session does, its cards, how long it has run, and what has come home.
Each job's latest lines
Inside the thinker
Every neuron of the small thinker, as of its latest save, sound coming in on the left, going out on the right.
- Each dot is a neuron; each disc of dots is a layer.
- Strong-coloured dots fired strongly on a test sentence.
- Lines are the strongest links into the next layer.
- The wave running left to right is speech passing through.
- Layers pulse when training is changing them.
How far each part moved, stage by stage: the stage strip.
Where it learns, stage by stage
Every part of the small thinker in its stage, sized by how many numbers it holds. In each, a line of how far training moved it, every 50 steps (each step up the box is ten times more); in each stage's header, how hard that stage is being taught. The bar under a part shows how much it moves now; yellow marks the part moving most. Hover a part.
The losses, and the full record
The losses, live
Every part, every 50 steps: the full record as one map
What it hears and says
One held-out sentence, looked at inside the thinker every 500 steps.
Which letters each moment of sound listens to
Activity of every layer over time
Where the judges disagree: the push
Show the student's and the teacher's raw numbers (the latents)
The student's latent
The teacher's latent
Difference
Speech as a path
Lively speech moves: from one 70 ms moment to the next its 144 numbers change a lot. Here is how far the student (yellow, training now) and the teacher (charcoal) travel over the test sentence. The shaded gap is the liveliness still missing.
See the two paths in 3D
- Each point is 70 ms of speech (its 144 numbers, seen from the 3 directions where they vary most).
- Close paths = similar speech.
- A smaller, smoother student path = flatter, averaged speech: what training is fixing.
Hear and see
The same sentence from the teacher, round six and the small student, as sound and as a picture of the sound (a spectrogram: time to the right, pitch upwards, brightness is loudness). Press play and watch the line follow; press another version while one plays to hear it from the same moment. Under each, what a speech recogniser heard.
The voices' style space
Each voice is 12,800 numbers. Seen from the three directions where the ten voices differ most, women and men separate, and Trilavi's F1 and M1 sit among them.
- Violet: women's voices; aqua: men's.
- Close together = sound alike; a thin line joins each voice to the one most like it.
- The dashed line runs from the women's voices to the men's.
A voice is its numbers
Each print is one voice's 12,800 numbers, shrunk to 320 squares: gold where a number sits above the voices' usual value, violet where it sits below. Pick two to compare.
Listen
The latest checkpoint
The blind listening tests, with the answers
The technical side
How much work one second of speech takes, and how big the voice is, part by part: the teacher, the voice heard on this page, and today's voice in plain C on the phone, against what an entry-level 2015-class Android device (4 × Cortex-A53, 2 GB) does and the size goal.
Work per second of speech (multiply-adds, G = a thousand million)
Size in 8 bits
Measured on the entry-level device
Every part in a table, and how cost grows
What it learns from
The computing it took
The maths, in plain words
Each idea in one line, with today's number. Open one for an everyday comparison and the formula (hover any symbol). Then the step-by-step recipes the computer follows.
The recipes (algorithms)
Research map
Every road tried since 29 October. Each box is one attempt; a line means it grew out of the box on its left. Hover a box to trace its road back to the start, click it for its story, or replay how it all unfolded.
What is left
How each decision was made
Every fork in the road so far: the question, the options on the table, what was chosen and why, what it would cost if it were wrong, and how it turned out. Open any one to see the evidence.
Journal
Glossary
The people backing the open lab
Paid Sponsors pay Neelverse Lab, any amount, to keep this work public, and choose what it pays for. Names appear after a quick check; amounts never do.