A specialized OCR model still beats newer general ones
The team behind DharmaOCR makes a plain argument backed by numbers: for a narrow document task, a small specialized model still beats newer general ones. On its Brazilian Portuguese benchmark, DharmaOCR scores 0.925, against 0.798 for Mistral OCR4 and 0.759 for Unlimited-OCR, both of which shipped later and with more resources behind them.
The method has two stages. Supervised fine-tuning concentrates the model's capacity on Brazilian Portuguese vocabulary and structure instead of spreading it across many languages. Then Direct Preference Optimization, or DPO, trains against the quality of the whole output rather than token by token. That second step targets a specific failure mode: when a scan is blurry or low quality, general OCR models tend to drift into repetitive or disconnected text, and DPO teaches the model to stay coherent instead. The point is not that scale is useless but that on a bounded task, concentrating training on the domain and optimizing for full-output quality buys accuracy a broader, newer model does not automatically match. The write-up is here.
Why it matters
If you are choosing a model to read documents in a specific language or format, do not assume the newest frontier OCR model wins. A smaller model trained on your domain, with DPO to keep it coherent on bad scans, can be both cheaper and more reliable, so benchmark on your own documents before deciding.