Bantu languages have been spoken for thousands of years. The writing system is barely a hundred years old — an imported convention adopted under colonial schooling. It was never designed to capture the way the languages actually sound: tone, vowel length, rhythm, pitch.
The spelling assumes the reader can already hear what’s missing.
For a Bantu speaker, this works. We fill in the missing layer instinctively — we know the word and we hear the sound in our heads as we read. For an AI trained on text alone, it doesn’t. The part of the language that decides meaning lives in the sound, not on the page. We gave this gap a name so the AI labs could see it: the Flat Text Problem.
One spelling. Ten meanings.
Take the Bemba word ulebomba. Eight letters. In standard writing it could mean any of ten different things. To a Bemba speaker, the ten are completely different utterances — the pitch contour, the vowel length, the phrase-edge pitch all change. To a model trained on text, they are the same string.
This is not a Bemba problem. It is a Bantu-family problem. The same collision — identical spelling, different meanings — exists in Swahili, Zulu, Xhosa, Shona, Lingala, Kinyarwanda, Luganda, Sesotho, Setswana, Lozi, Tonga, Umbundu, Nyanja, Bisa, and on through 700+ Bantu languages we have catalogued. Every one of them has words that look identical on the page and mean different things in the air. Bemba is the worked example on this site because we have the recordings for the ten distinct readings — but the principle is the same in every member of the family.
Every distinguishing feature — tone, vowel length, downstep, phrase-boundary edge, voice quality — lives outside the spelling. None of it survives into standard text. None of it is on the page your model trained on. None of this is unique to one Bantu language; it applies across the family.
The audio demonstration lives at the diagnostic page. Press play on each of the ten readings of ulebomba. The spelling is identical. The meanings are not.
Five dimensions a Bantu speaker hears.
None of these survive into ordinary written Bantu. All of them are required to decide meaning. This is the layer your model was never given:
Pitch going up or down on each syllable. The same letters with different pitch mean different things.
Holding a vowel longer vs shorter. Often the difference between two distinct words.
A subtle drop in pitch register that resolves grammar — relative clause vs declarative, for instance.
The rise or fall in pitch at the end of a phrase. A statement and a question can look identical in writing.
Breathiness, creakiness, depressor-consonant effects. Carries emphasis and emotion. Lost entirely on the page.
When we say the writing is “flat,” this is what we mean. Five layers compressed onto a one-dimensional letter sequence. A Bantu reader puts the layers back. A text-trained model has no way to.
More text will not fix this.
Every frontier multilingual model today is trained on Bantu text scraped from the web. That text is missing the part that decides meaning. Adding more of it adds none of what’s missing.
The fix is not more scale. The fix is dedicated infrastructure: the closed syllable alphabet of each language, the tonal system that sits on top, and the native-speaker audio that makes both decidable. The substrate that turns flat text back into Bantu.
The Flat Text Problem is what we call the silent failure mode of frontier multilingual AI on 400 million Bantu speakers. We named it so the labs could see it. We built the substrate so they can close it.
The full diagnostic page lives at /problem — with the audio demonstration so you can hear the ten readings of ulebomba for yourself. If you build frontier AI and you speak no Bantu language, that’s the four minutes that will change how you read this site.