Wink Pings

1B MiniCPM-OCR and Baidu Unlimited v2 run side by side; demo pages don't count

OpenBMB has released MiniCPM-OCR, a 1B-parameter document parsing model, and Niels Rogge built a side-by-side comparison Space on Hugging Face. The demo looks good, but the comments have already brought up cursive misreads, rotated scans, cross-page tables, and per-category error rates.

OCR models are raining down again.

This time OpenBMB has released MiniCPM-OCR, a 1B-parameter model for document parsing. Niels Rogge posted about it on X and threw together a Hugging Face Space that puts MiniCPM-OCR and Baidu's Unlimited OCR v2 on the same page for comparison. The comparison link is at the end.

In the interface, you upload page images on the left—by drag-and-drop, paste, or click. The examples are a paper page with formulas and a report with tables. The two windows on the right run side by side. MiniCPM-OCR 1.0 first uses PP-DocumentLayoutV3 for layout detection, then has MiniCPM-OCR read each region. Unlimited-OCR-2 follows a different pipeline, parsing the whole page in one pass and outputting layout and text together; it calls Baidu's official Space. This comparison page lays the differences between the two technical approaches out in the open, so you don't have to guess from a single output screenshot.

Demo pages have inherent problems. In a reply, Jerry Liu pointed out that the test page is Shakespeare's Sonnet 66, whose text is public, so misreads jump out immediately. MiniCPM got the layout right but made errors on cursive words: "purest faith unhappily forsworn" was read as "proudest faith unhappily forward." Testing with known text is a smart move—errors can't hide. But the real error rates show up when you switch to handwriting, blurry scans, and tables spanning pages.

The follow-up questions in the comments are more informative than the demo page. Tina asked whether, with rotated scans and merged table cells, MiniCPM or Baidu would lose reading order first. suka left a line: every OCR model is SOTA until a table spans two pages. It sounds like a joke, but people who do document parsing know it's not a small problem. AI Engine Room asked whether they would test dirtier inputs, rotated scans, and cross-page tables. Keyless Bitcoin came right out and asked for the same page set with per-category error rates; otherwise it's just a demo. E1ev3n mentioned that they used to choose models based on clean demo pages, only to have them fall apart on scanned tables, so now they test dirty pages first. In a reply, Mauro S. posted their own UnlimitedOCR V2 engine, saying it is compatible with Apple M-series, has a Python wrapper and dynamic 4-bit quantization, and included the link.

All this feedback points to the same thing. The side-by-side Space is valuable: it turns comparison from verbal promotion into a reproducible page. But running one clean page side by side doesn't mean the models are reliable on real documents. 1B parameters is an attractive selling point; cost, deployment, and local running could all benefit. Baidu's Unlimited OCR v2 emphasizes single-pass whole-page parsing, with a shorter pipeline. Since the two sides invoke different paths, you need to factor those pipeline differences into any comparison.

Right now, the most useful thing isn't crowning anyone SOTA. Open the Space and run your dirtiest scans through it. Take a paper page with formulas, a table spanning two pages, a rotated invoice, and a report with merged cells—one of each. Check the output order, whether formulas fall apart, and whether table columns get jumbled. People in the comments have already listed the questions; now it's up to the comparison page to handle them.

Related links:

Original tweet: https://x.com/NielsRogge/status/2116908700132671583

Side-by-side comparison Space: https://huggingface.co/spaces/nielsr/MiniCPM-OCR-vs-Unlimited-OCR-2

Engine mentioned by Mauro S.: https://github.com/masc-it/unlimitedocr.c

发布时间: 2026-11-02 16:49