The stripped page
Open any large Arabic corpus and you will find the same quiet violence: a preprocessing step, usually one regular expression long, that deletes every short vowel, every shadda, every tanwin. The justification is consistency. Writers mark their text unevenly, so the pipeline levels the field by taking everyone's marks away.
The consistency is real; so is the loss. كتب arrives at the model carrying at least three words at once, and the model is left to guess which one from context, in every sentence, forever. We did not simplify the language. We moved the cost from the page to the parameters.
What the marks encode
Diacritics are not pronunciation trivia. They carry voice: كَتَبَ he wrote versus كُتِبَ it was written, active and passive folded into two vowels. They carry number and category: كُتُب books. They carry case, which is to say, they carry who did what to whom. A short vowel in Arabic can be the difference between a subject and an object, a statement and its inversion.
Call that noise and you have declared syntax itself to be noise. The honest name for tashkeel is compressed meaning: the language's own annotation layer, drawn at almost zero cost in ink, discarded at real cost in ambiguity.
Notes from the cleaning room
When we built Sadeed, the surprise was not the modeling; it was the mop. Fully diacritized text is rare, and the diacritized text that exists is inconsistent in ways no regex anticipates: partial marking, contradictory conventions, classical texts marked to one standard and modern ones to another, and errors introduced by earlier tools laundered into training data as ground truth.
So the work became curation before it became training: filtering for texts whose marks a reviewer would actually defend, normalizing conventions without erasing distinctions, and refusing quantity when it disagreed with quality. A small model finetuned on that cleaned corpus ended up competitive with proprietary systems many times its size. The lesson was not that small is magic. The lesson was that in a marks-starved language, the dataset is the model.
Restoration as a signal
Here is the part I find genuinely elegant. Because the marks encode syntax and semantics, teaching a model to put them back is teaching it grammar by another name, and the supervision comes free: any diacritized sentence is its own labeled example, no annotator required. Strip the marks, ask the model to restore them, grade it against the original.
That makes diacritization more than an end task for Quranic display or text-to-speech. It is a cheap auxiliary objective for Arabic language modeling in general, a way of spending unlabeled-looking data as if it were labeled. The pipeline habit deletes exactly the supervision the field keeps saying it lacks.
Why the benchmarks lied
We intended to evaluate Sadeed on the existing benchmarks and move on. We could not, in good conscience. The public evaluations skewed heavily toward classical and religious text, so systems tuned to one register inherited unearned scores; test material overlapped with common training sources, rewarding memorization; and single aggregate error rates hid the difference between missing an ordinary vowel and inverting a case ending that flips the sentence's meaning.
So SadeedDiac-25 exists: a benchmark spanning registers and difficulty levels, built to be defensible sentence by sentence. Releasing it mattered as much as releasing the model, because a capability that cannot be honestly measured cannot be honestly claimed. That is the house rule at Misraj, and this was the paper where it earned its keep.
The ledger, again
Four things to demand of any diacritizer
- Scores by register: classical, modern standard, and informal, not one blended number.
- An unseen-text protocol: what guarantees the test set was never training data.
- An error taxonomy: case-ending mistakes separated from lexical-vowel mistakes.
- Latency and cost at your deployment size, not the vendor's demo size.
In the border essay I argued that noise is what we call signal we have decided not to pay for. Tashkeel is the cleanest case I know. The marks were always there, holding grammar in trust, and we spent a decade deleting them in the name of hygiene.
The window in front of my desk looks out on water that reads differently at fajr and at dusk, same sea, different marks. The language works the same way. Keep the marks.
Sara Chrouf
@misc{chrouf2026diacritics,
author = {Chrouf, Sara},
title = {Diacritics Are Signal, Not Noise},
year = {2026},
url = {https://sarachrouf.com/journal/diacritics-are-signal}
}