🌏 中文版
Model Info
| Field | Value |
|---|---|
| Model ID | baidu/Unlimited-OCR-2 |
| Vendor | Baidu |
| Parameters | 3.34B total (active parameters undisclosed; 12-layer MoE decoder routing each token to 6-of-64 experts plus 2 shared experts, an architecture carried over from DeepSeek-OCR's DeepSeek3B-MoE-A570M) |
| Context Window | 131,072 tokens |
| Input price (USD/1M tokens) | Not available (open weights plus Baidu Cloud docs only — no official hosted API pricing) |
| Output price (USD/1M tokens) | Not available (same as above) |
| Open source | Yes (MIT License) |
| Release date | 2026-10-27 |
| Official announcement | Baidu Inc. on X: Unlimited OCR 2 is here |
| Hugging Face | baidu/Unlimited-OCR-2 |
| Family | Unlimited-OCR (predecessor Unlimited-OCR 1.0 shipped 2026-06-22, built to push DeepSeek-OCR's long-document parsing further; this generation's core advance is SR-SWA) |
Highlights
- SR-SWA (Sparse Reference Sliding Window Attention): compresses cross-page text-visual attention into a fixed 512-token working reference set (a 128-token local window plus top-16 selection over 32-token blocks), keeping per-step decoding latency and memory footprint nearly flat regardless of how many pages a document has
- Scores 77.1 on MarathonDocBench (hundred-page documents), more than double the next-best model Kimi-K3 at 33.7; that's only 7.5 points below its own 84.6 on MPDocBench (dozens of pages)
- Against its own predecessor, Unlimited-OCR 1.0: on the same MarathonDocBench test, the predecessor scored 0.0 while this generation scores 77.1 — the earlier model collapsed outright on hundred-page documents; this one is the first to actually hold up as documents get longer
- 3.34B parameters (SAM ViT-B + CLIP-L encoder, 12-layer MoE decoder), runs on a single NVIDIA A800-80GB with BF16 weights around 6.7GB, and costs just 273 image tokens per page in multi-page mode
Benchmark Results
| Benchmark | Score | Predecessor (Unlimited-OCR 1.0) | Best competitor |
|---|---|---|---|
| MPDocBench (dozens of pages, overall) | 84.6 | 61.9 | Qwen3.8-Max 78.3 |
| MarathonDocBench (hundreds of pages, overall) | 77.1 | 0.0 | Kimi-K3 33.7 |
| Text extraction (MarathonDocBench sub-score) | 89.6 | Sub-score not disclosed | Not disclosed |
| Tables (MarathonDocBench sub-score) | 74.8 | Sub-score not disclosed | Not disclosed |
| Heading hierarchy (MarathonDocBench sub-score, the model's weakest category) | 48.2 | Sub-score not disclosed | Not disclosed |
⚠️ All figures are Baidu's own self-reported results, published only as a leaderboard chart image on the model card (transcribed here by third-party coverage, not a data table). MarathonDocBench is a benchmark Baidu built itself; the dataset isn't publicly released, and no other team has independently reproduced these numbers yet.
Source: Baidu's official leaderboard chart (2026-10-27, all self-reported scores; MarathonDocBench is a Baidu-built benchmark with no public release yet). Conversion: baseline y=300, plot top y=60, domain 0–100 points, k=(300−60)÷100=2.4 (2.4 units per point), bar top y=300−score×2.4.
vs. Predecessor and Competitors
Against predecessor Unlimited-OCR 1.0, MPDocBench only improved by 22.7 points (61.9 → 84.6), but MarathonDocBench jumped from 0.0 straight to 77.1. That gap says a lot: the predecessor's infer_multi could already feed an entire document into one request, but it never actually solved the computational complexity of long-sequence attention, so it fell apart past some page count. SR-SWA's fixed-size reference set is what actually fixes the bottleneck — not a bigger context window or a multi-page inference interface.
Against Qwen3.8-Max, currently the runner-up on MPDocBench, the two are nearly tied on short documents (84.6 vs. 78.3, a 6.3-point gap). But move to the hundred-page MarathonDocBench and Qwen3.8-Max crashes from 78.3 to 22.9 — a 55.4-point drop — while Unlimited OCR 2 loses only 7.5 points. A high score on a short-document benchmark doesn't guarantee stability on long documents; what actually determines long-document parsing quality is whether the attention mechanism was designed for extreme sequence lengths, not how many parameters a model stacks or how large a context window it advertises.
On licensing, Unlimited OCR 2 sits in the same open-weight camp as DeepSeek-OCR-2 (Apache 2.0) and PaddleOCR-VL-1.6 (Apache 2.0): weights, code, and the technical report are all released under MIT, with no separate paid API product line.
What This Means for Agent Development
- If you're building agents that process long documents (clause-by-clause contract comparison, annual financial-report archiving, RAG indexing for entire books): Unlimited OCR 2's pitch is "no chunking first" —
infer_multiingests a whole document in one request and preserves cross-page table, heading, and paragraph structure, which especially helps downstream tasks that need the full document structure (auto-generated tables of contents, precisely locating a cited passage) rather than page-by-page isolated text - If you're running a document-parsing pipeline and want to self-host inference: 3.34B parameters on a single A800-80GB with roughly 6.7GB of BF16 weights means a mid-tier GPU is enough, so you don't need to call an external OCR API — a realistic option for data that can't leave your premises (finance, healthcare documents)
- If your task needs high accuracy on heading or chapter structure (auto-generating a table of contents or chapter summaries): note that heading hierarchy is the model's weakest sub-score (only 48.2 on hundred-page documents) — that part still needs human review or extra post-processing, not full automation
- Not a fit: scenarios that need an official hosted API with SLA guarantees — Baidu currently only offers open weights and Baidu Cloud documentation, not a standard managed API like OpenAI's or Anthropic's, so you'll need to evaluate your own deployment and operations cost
Today's Insight
I used to assume "long-document OCR" mainly meant chunking and stitching, or just brute-forcing it with a bigger context window. Unlimited OCR 2's MarathonDocBench result breaks that assumption: the predecessor used the exact same "ingest every page at once" strategy (infer_multi), and its score collapsed to zero anyway. Only switching to a mechanism like SR-SWA — one that compresses attention into a fixed-size reference set — kept parsing quality from falling apart as page count grew. The reminder: the bottleneck in long-sequence tasks is often not "is the context window big enough," but whether the attention mechanism's own computational complexity has actually been solved.
References
- Baidu: Unlimited-OCR-2 model card (Hugging Face)
- Baidu: Unlimited-OCR source code on GitHub
- Baidu Inc. on X: Unlimited OCR 2 is here
- MarkTechPost: Baidu Open-Sources Unlimited OCR 2 for Hundred-Page Document Parsing
- explainX: Unlimited-OCR-2 — Baidu's 3B MIT OCR Model, How to Run It
- AlphaSignal: Baidu Open-Sources Unlimited OCR 2 to Parse Hundreds of Pages Without Breaking