Two small open OCR models land days apart, with very different licenses
Within a few days of each other in late October, two teams that already run popular open document-AI projects shipped OCR models small enough to fit on one consumer graphics card. OpenBMB, which announced the release jointly with the Chinese AI startup ModelBest, put out MiniCPM-OCR 1.0, a 1.3-billion-parameter document parser, plus a 2-billion-parameter companion called Jev that grades OCR output instead of producing it. Datalab, the company behind the Surya OCR toolkit, shipped Surya 2.5, a 689-million-parameter vision-language model. Both are now drawing a burst of developer attention on Hugging Face. For anyone building a product on them, though, the most important difference is the license. MiniCPM-OCR is Apache 2.0 from code to weights. Surya 2.5's weights are free only for research, personal use and startups below $5 million in funding or revenue.
What actually shipped
MiniCPM-OCR 1.0 is the first OCR-focused model in the MiniCPM line. It is trained on top of MiniCPM-V 4.6 and pairs a SigLIP vision encoder with a Qwen3.5 language model. It targets Chinese and English documents, including text, tables, formulas, charts, seals and key-field extraction, and the developers say it holds up on scanned, photographed, curved and tilted pages without pre-correcting the image. All of the headline numbers are self-reported: 93.68 on Real5-OmniDocBench, 54.7 on OCRBench v2 and 82.7 overall on olmOCR-Bench. On throughput, OpenBMB reports about 1.2 pages per second on an RTX 5090 processing one image at a time, and says that with its DSpark speculative-decoding add-on it reaches roughly 1.49 times the throughput of PaddleOCR-VL-1.6 and 3.62 times that of MinerU2.5 Pro. The release came with support for vLLM, SGLang, llama.cpp and Ollama, along with GGUF, AWQ and GPTQ quantized builds. The card is loose with its own figures: its header lists the model at 1B parameters while the body says 1.3B, and its metadata records 93.75 on Real5-OmniDocBench, not the 93.68 in the highlights.
Surya 2.5 takes a different approach. A single small vision-language model handles layout analysis, OCR of full pages or individual blocks, and table recognition. Tables come out as HTML and math as LaTeX, while text-line detection and OCR-error detection are left to separate, smaller models. Datalab's numbers, also self-reported, show steady gains over Surya 2 rather than a leap: 85.9 versus 83.3 on OmniParseBench, an open benchmark Datalab built itself; 83.7 versus 82.8 on olmOCR-bench; and 74.9% versus 74.5% on an internal set covering 91 languages. The bigger change is speed. Datalab reports 6.19 pages per second on an H100 at 96 DPI, against 2.28 for Surya 2; at the 192 DPI setting it uses for its benchmarks, the figures are 4.52 and 2.24. It says the new model writes about a third as many tokens per page. It also lists its own limits. Surya 2.5 is built for documents, not photos or natural scenes, and it no longer outputs table row and column geometry, so users who need that have to keep a Surya 2 checkpoint.
A model that checks the other model's work
The more novel piece of the OpenBMB release is Jev. It reads nothing on its own. Given a page image and some OCR engine's output, it gives each text, formula and table region a quality score between 0 and 1. In the pipeline OpenBMB describes, high-scoring regions pass straight through, low-scoring ones go to a human reviewer, and when several OCR engines are run on the same page, Jev picks the best result. This targets a real weakness of document AI. OCR mistakes are usually silent: a dropped digit in a financial table looks just like a correct one, and in retrieval or agent pipelines the error travels downstream unnoticed.
OpenBMB reports an AUROC of 93.6 for Jev on JevOCRBench, compared with 90.1 for JEV-35B-A3B, a 35-billion-parameter judge, and 93.8 for Qwen3.5-397B-A17B, a model roughly 200 times larger. AUROC measures how well a score separates good outputs from bad ones; 50 is a coin flip and 100 is perfect. The team also says Jev stays between 91.9 and 93.4 when judging output from four different parsers, GLM-OCR, PaddleOCR-VL-1.6, Xiaomi-OCR-0 and MiniCPM-OCR 1.0 itself, which supports its claim to be engine-agnostic. Some skepticism is warranted. The benchmark comes from the same team, no third-party evaluation exists yet, and the official press release says only that Jev's judgment accuracy is usually associated with far larger models, without giving figures. OpenBMB does publish a reproduction guide, so outside testing is possible.
Same benchmark, different fine print
The one public benchmark both teams report is olmOCR-bench, and they land a point apart: 82.7 for MiniCPM-OCR and 83.7 for Surya 2.5. Each team ran its own evaluation under its own settings, and Surya's card compares only against Surya 2, so that gap is not a real head-to-head result. The two are close enough on that test that cost, language coverage and licensing will decide most choices.
Licensing is where they split. OpenBMB's repository says the whole project, including code, documentation and weights, is under Apache 2.0, which permits commercial use with no revenue test. Datalab releases Surya's code under Apache 2.0 but puts the weights under a modified AI Pubs Open Rail-M license. That license is free for research, personal use and startups under the $5 million funding-or-revenue line, and anyone above it needs a commercial license from Datalab. The terms fit Datalab's business: its model card points users to a paid managed platform and to a pricing page for broader commercial licensing of the weights. They also mean a fast-growing startup that builds on Surya 2.5 has to recheck its status after each funding round, and a legal team reviewing open models will treat the two very differently. Calling both models "open" hides that difference. AI Weekly's coverage of Surya 2.5 framed the release as pricing pressure on closed document-AI APIs, and that pressure works differently depending on the license.
Reading the download spike
This week's momentum is real but starts from small numbers. Both models' monthly download counts were still in the thousands to low tens of thousands on Wednesday, and their pages showed 417 likes for MiniCPM-OCR and 34 for Surya 2.5. At that scale, large day-over-day percentage jumps mean developers are trying the models, not that anyone has put them into production. Community activity is building faster around MiniCPM-OCR: its page lists seven quantized variants, six fine-tunes and a set of Spaces, including one that compares it directly against Baidu's Unlimited-OCR-2.
Three things are worth watching. The first is whether anyone runs MiniCPM-OCR, Surya 2.5 and their peers through olmOCR-bench under one shared setup, which would settle the near-tie on the leaderboard. The second is whether Jev's engine-agnostic scores hold up on messy real documents its authors did not choose. The third is whether Datalab's $5 million threshold costs it developers now that a permissively licensed model of similar size is a download away. Which small OCR models companies can actually ship is turning into a question about licenses as much as accuracy.