Self-hosting

OXR-1.0: The 1.3B Document Parser Topping Three Benchmarks — Deployment Facts and License Strings Before You Ship It

·

Verdict: OXR-1.0 is the most interesting small document parser of the month — a 1.3B model trained from scratch that ranks #1 on olmOCR-Bench, OmniDocBench, and DocParsingBench, with an RSI (recursive self-improvement) post-training loop that needs no new human labels. But before you wire it into production, read past the leaderboard: the license is not plain Apache-2.0 (three strings attached: a $2M funding/revenue threshold, a mandatory attribution clause for hosted services, and a ban on running a competing document-parsing API), the official README says 24GB VRAM to get started — not the "runs on your RTX 3060" you may have read elsewhere, a 12GB card won't cut it — and official vLLM support doesn't exist yet (you need SoMark's out-of-tree plugin). For RAG pipelines and internal tools below the license thresholds, it's a genuinely strong pick. If your product is an OCR API, read Section 3 of the license first.

Last checked 2026-10-30. Weights went live around Oct 5; the repo (SoMarkAI/OXR) now sits at ~2.5K stars and benchmark numbers below are team-reported with reproduction instructions open-sourced in docs/benchmark.md. A 1.3B model doing this well deserves scrutiny, not hype — here are the facts that matter for a deployment decision.

First, why people care. Document parsing is the unglamorous bottleneck of every agent stack: your RAG pipeline is only as good as what you feed it, and double-column papers, handwritten formulas, cross-page tables, and chemical structures still wreck most tools. OXR handles 13 element types — tables, formulas, code blocks, images, chemical equations, footnotes, headers, stamps — and outputs Markdown or JSON with layout analysis. Two architecture choices stand out: reading order moved into the main model (which is content-aware, so ordering accuracy went up), and the layout-analysis module is fully pluggable — swap in your own model for古籍 or medical forms and keep OXR's recognition backend.

The training story is the part that got attention: a three-stage RSI loop. Stage one has the model parse unlabeled real documents, then a general VLM grades outputs into Correct / Wrong / Uncertain — keeping the Uncertain bucket is the quiet know-how here, since forcing a hesitant judge into a binary label poisons the next training round. Multiple rollout samples per document catch low-confidence guesses, and harmless image perturbations (slight scaling, compression, blur) flag inputs where the model's disagreement explodes. Stage two clusters failure reasons via SigLIP2 embeddings — a financial report and a chemistry lab sheet that both die on the same merged-cell structure become one targeted data direction. Stage three generates training data that anchors real layouts with the specific structural weakness injected. No new human labels anywhere in the loop.

The deployment facts

  • VRAM: 24GB on a single GPU to get started (low-concurrency testing), 48GB+ recommended for long documents or higher concurrency. Both numbers come straight from the official README. Note the gap with some coverage claiming a 12GB RTX 3060 runs it at full strength — the README's own floor is 24GB, so don't plan a 3060 deployment around a secondhand claim.
  • Inference: official vLLM releases don't support OXR yet. SoMark ships an out-of-tree plugin plus a loading script in the HF weights folder — no recompilation, works with the official vLLM Docker image or CLI (pinned: vllm 0.25.1, transformers 5.13.1). Transformers and a Docker path also exist.
  • Speed: team-reported fastest among open-source parsers on RTX PRO 6000; per QbitAI's report, 100 pages end-to-end in 101 seconds on that card. Benchmarks are self-run but the full evaluation pipeline is open for reproduction.
  • No-GPU option: SoMark runs a free hosted API (free-oxr.somark.cn) with no registration or key — fine for prototyping, subject to their capacity, and remember it's exactly the service the license's Section 3 exists to protect.

The license strings (read before you ship)

The LICENSE file opens with "Apache License, Version 2.0, subject to the additional terms below" — and the additional terms take precedence. Three of them:

  1. $2M thresholds. Free commercial use only while your consolidated funding and annual revenue each stay under USD 2,000,000. Cross the line and you need a separate commercial license — this is the classic startup-guillotine clause, generous at the bottom, priced at the top.
  2. Attribution for hosted services. If you serve OXR to third parties online, you must prominently identify SoMark OXR in your UI or public docs.
  3. No competing hosted API. You may not operate a hosted service whose principal functionality is document parsing, OCR, layout analysis, or content extraction as a substitute for SoMark's own hosted offering — paid or free, including via resellers or white-label. Internal tools and product-embedded parsing are fine; becoming someone else's OCR endpoint is not, without written authorization.

Compare this with Baidu's Unlimited OCR 2 (MIT, no strings, but tuned for long-doc KV efficiency at 3B/500M-active scale) — for once, the choice isn't "which is better" but "which restrictions fit your business." OXR wins on the three leaderboards and pluggability; the Baidu release wins on license cleanliness and long-document economics.

Honest limits: all three #1 rankings are from the team's own benchmark suite (reproduction code is open, which is more than most teams offer, but independent replication is still pending); the model is 25 days old in the wild; and the vLLM plugin dependency means your inference stack tracks a third party's update cadence. The RSI story is genuinely novel in this domain, and the Uncertain-bucket design shows real engineering maturity — but a self-improving loop is only as honest as its grader, and the grader here is another VLM.

Who should pick it up today: teams building RAG over messy real-world PDFs, internal document-to-Markdown tools, and agents that need structured context from scans — under the $2M line, with 24GB+ cards, accepting the attribution duty. Who should wait: anyone building a commercial parsing API (Section 3 blocks you outright), anyone on 12GB consumer cards hoping the 3060 rumor is true, and anyone who needs official vLLM mainline support rather than a plugin.

Sources: SoMarkAI/OXR repo and its LICENSE / README files (license terms, VRAM floors, vLLM plugin details, benchmark claims — via GitHub API, repo at 2,556 stars, created 2026-10-05); SoMark official site (commercial engine specs, free API); QbitAI 2026-10-30 feature (RTX PRO 6000 100-page/101-second run, press-time star count — transcribed, not independently verified). The "RTX 3060 runs it" claim circulating in Chinese coverage contradicts the official 24GB README floor and is flagged as such above.