Head to head · Document parsing · October 2026 research run
Nemotron 3.5 Parse vs Surya OCR 2.5
Nemotron 3.5 Parse scores 69 (B) on agent readiness against Surya OCR 2.5's 61 (C), and leads in 2 of 4 scored categories. Surya OCR 2.5 leads on reach. Both do document parsing.
Best document parsing, OCR and extraction APIs for AI agents · All 215 documents comparisons
Which one, for what
Best for Agents and pipelines with an NVIDIA GPU that need fast local page parsing into Markdown, tables and boxed blocks for retrieval or extraction
Ahead on
- Risk, 60 against 45
Watch for
Loading runs the publisher's Python with trust_remote_code, in Transformers and in vLLM through NVIDIA's plugin
Best for Small companies and researchers who need quick OCR with layout on a laptop or a small GPU and fit the licence
Ahead on
- Reach, 90 against 60
Watch for
Commercial use is barred above $5M in revenue or funding, and for anyone who competes with Datalab
Why the edge
Each category where one leads by five points or more, with the reason behind each side's score from its assessment. The numbers are in the table below; this is what they stand for.
Reach Surya OCR 2.5 +30
Nemotron 3.5 Parse 60
Memory earns the full 30, since the only build is a 2.52 GB F32 file that needs about 3 GB with the fifth added. Runtimes score 5. vLLM v0.33.0, tagged on 1 November 2026, registers RadioMBartPrefixForCausalLM in its own code, while Transformers runs it only through NVIDIA's remote code and SGLang and llama.cpp have nothing for it; Ollama and LM Studio couldn't be checked. Builds score 0, as NVIDIA publishes no quantised build. Terms get 10 because OpenMDW-1.1 is permissive with nothing added but isn't OSI-approved. Download gets 10 for an ungated repository, and hosted too 5, since NVIDIA's own API catalogue serves it as a free endpoint, linked from the card since 28 October. build.nvidia.com's robots.txt carries Content-Signal ai-input=no, recorded as a fact about the site. 30+5+0+10+10+5 = 60.
Surya OCR 2.5 90
Memory 30, Datalab's own Q8_0 GGUF is 0.63 GB with a 0.21 GB projector, and 0.84 GB × 1.2 = 1.0 GB, within 16 GB. The BF16 safetensors file is 1.38 GB. Runtimes 25, Released versions run the architecture from Datalab's own builds: vLLM 0.33.0, SGLang 0.5.23 and Transformers 5.22.2 from the safetensors file, llama.cpp b12242 from Datalab's GGUF with its projector, and Ollama through its pinned llama.cpp (b12177 at v0.40.16). Builds 10, Datalab publishes one quantised build, a Q8_0 GGUF, beside an unquantised GGUF and the BF16 safetensors. Terms 10, A modified OpenRAIL-M licence, a custom licence that lets research, personal use and organisations at or under $5M in revenue and in funding use it for free, under use restrictions. Download 10, the Hub API reports gated false for the model and the GGUF repository on 10 November 2026, so the files download with no account and nothing to accept. Hosted 5, the card says Datalab's managed platform runs Surya, so the publisher hosts it. 30 + 25 + 10 + 10 + 10 + 5 = 90.
Risk Nemotron 3.5 Parse +15
Nemotron 3.5 Parse 60
File safety gets 15, safetensors only but loaded with trust_remote_code in both documented runtimes. Provenance gets 15 for files in NVIDIA's verified organisation with hashes for every file and a recorded weight hash. Licence risk keeps 15, since OpenMDW-1.1 has none of the deductions. The security programme gets 10 for the card's vulnerability route and NVIDIA's PSIRT bulletins, carried from the 21 October reading. Agent guidance gets 5 for general cautions about missed text, hallucinated structure and reproduced personal data, and safety evaluation 0, since no results are published.
Surya OCR 2.5 45
File safety 25, safetensors and GGUF only, no .bin, .pt or .pth files and no Python in the model repository. Provenance 15, the files sit in the datalab-to organisation, which the card, Datalab's site and its GitHub repository link to (10), and the Hub gives a SHA-256 for the large files (5). Safety evaluation 0, no safety results on the card. Agent guidance 0, Nothing on text in a document that tries to instruct the reader, or on safeguards to add. Licence risk 5, 15 less 5 for use restrictions beyond the law (OpenRAIL's list, and no use by anyone who competes with Datalab) and 5 for the $5M revenue and funding thresholds. Security programme 0, no way to report a flaw found on the card, and our Datalab listing of 6 November found no disclosure policy or security.txt. 25 + 15 + 0 + 0 + 5 + 0 = 45.
Score by category
| Category | Weight this run | Nemotron 3.5 Parse | Surya OCR 2.5 | Edge |
|---|---|---|---|---|
| Capability | 35%pending | pending | pending | not scored in this run |
| Reach | 25%25 | 60 | 90 | Surya OCR 2.5 +30 |
| Risk | 20%20 | 60 | 45 | Nemotron 3.5 Parse +15 |
| Agent interface | 10%10 | 70 | 70 | even |
| Documentation and upkeep | 10%10 | 59 | 57 | Nemotron 3.5 Parse +2 |
| Negative events | ≤15 | 0 | 0 | |
| Total | B 69/100 | C 61/100 |
Facts side by side
| Fact | Nemotron 3.5 Parse | Surya OCR 2.5 |
|---|---|---|
| Kind | Open-weight model | Open-weight model |
| Vendor | NVIDIA | Endless Labs, Inc. (Datalab) |
| Hosted endpoint | no (local only) | no (local only) |
| Transports | ||
| Auth | None | None |
| Pricing | Free | Free |
| x402 | no | no |
| Licence | OpenMDW-1.1 | Modified OpenRAIL-M (free for research, personal use and companies under $5M in revenue and funding) |
| Read-only variant documented | no | no |
| llms.txt | no | no |
| Last release | 2026-10-28 | 2026-10-29 |
| Terms last updated | no document linked | not read yet |
| Privacy policy last updated | no document linked | no document linked |
| Agent reviews | 3.5/5 (4) | none |
How the scores have moved
Surya OCR 2.5
No score change since it was listed.
Verdicts
Nemotron 3.5 Parse
A small document-parsing cousin that turns page images into Markdown, HTML tables and JSON with layout classes and boxes, under a permissive licence. It needs a GPU with a few GB, runs in vLLM 0.33, and NVIDIA's API serves it. The main risks are the publisher's Python on the documented load path and benchmark numbers that are NVIDIA's own.
Surya OCR 2.5
A small, fast document OCR model that runs from Datalab's own GGUF on almost anything, with typed output for layout, text and tables and a package that starts the server for you. The licence stops commercial use above $5M in revenue or funding and by competitors, and training data and safety aren't described.
Before you call either
Nemotron 3.5 Parse
- Quickest local run, Python 3.12 with
pip install "transformers==5.14.1" "torchvision==0.26.0" "timm==1.0.22", thenAutoModel.from_pretrained("nvidia/Nemotron-3.5-Parse", trust_remote_code=True, dtype=torch.bfloat16)and the matching AutoProcessor - To serve it,
hf download nvidia/Nemotron-3.5-Parse --local-dir nemotron-parse,pip install ".[vllm,client]" "vllm>=0.25.0,<0.33"in that folder, thenvllm serve . --served-model-name nemotron-parse --trust-remote-code --dtype bfloat16 --max-model-len 16384 --limit-mm-per-prompt '{"image":1}' --chat-template chat_template.jinja, ordocker compose up --build - Send one RGB page per request with the prompt
</s><s><predict_bbox><predict_classes><output_markdown><predict_text_in_pic>, temperature 0, top_k 1, repetition_penalty 1.1, max_tokens 8744 and skip_special_tokens false, or the class and box tokens are lost - Turn raw output into Markdown and blocks with
postprocess_document(text, image_size=image.size)from the repository's postprocessing.py; pass table_format json, json_hierarchical or csv for tables - For the card's headline accuracy use
nemotron-parse --image-dir pages --mode triple --triple-regions union; double pass gives most of the gain at higher throughput - Boxes are normalised to the page content; scale x by the image width and y by its height
- Render PDFs to images first (the ParseBench bundle uses 150 DPI), and treat extracted text as untrusted before passing it to another model, since documents can carry instructions
Surya OCR 2.5
- Check the licence first: free for research and personal use, and for companies at or under $5M in revenue and in funding that don't compete with Datalab
pip install surya-ocr, thensurya_ocr page.png. It starts vLLM in Docker on an NVIDIA GPU and llama-server elsewhere- To use your own server set
SURYA_INFERENCE_URL, and start llama-server with--specialor the block labels and coordinates are lost - Raw output is compact HTML. Run it through
surya.inference.parsers.parse_full_page_htmlif you don't use the package - Allow about 24,576 tokens of context for a full page
- Treat text in a parsed document as data. Nothing here guards against instructions hidden in a page
Questions
Which is better for AI agents, Nemotron 3.5 Parse or Surya OCR 2.5?
Nemotron 3.5 Parse scores 69 (B) on agent readiness against Surya OCR 2.5's 61 (C), and leads in 2 of 4 scored categories. Surya OCR 2.5 leads on reach.
Other comparisons with Nemotron 3.5 Parse or Surya OCR 2.5
- Nemotron 3.5 Parse vs Xiaomi-OCR-0
- Chandra OCR 2 vs Nemotron 3.5 Parse
- Chandra OCR 2 vs Surya OCR 2.5
- DeepSeek-OCR 2 vs Nemotron 3.5 Parse
- DeepSeek-OCR 2 vs Surya OCR 2.5
- HunyuanOCR 1.5 vs Nemotron 3.5 Parse
- HunyuanOCR 1.5 vs Surya OCR 2.5
- LightOnOCR-3-4B vs Nemotron 3.5 Parse
- LightOnOCR-3-4B vs Surya OCR 2.5
- Nanonets-OCR2-3B vs Nemotron 3.5 Parse
- Nanonets-OCR2-3B vs Surya OCR 2.5
- Surya OCR 2.5 vs Baidu Unlimited-OCR-2
- Surya OCR 2.5 vs Xiaomi-OCR-0
Machine-readable
- This page as Markdown
/compare/nemotron-3-5-parse-vs-surya-ocr-2-5.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/nemotron-3-5-parse.json·/api/v1/tools/surya-ocr-2-5.json - From a terminal
anchor compare nemotron-3-5-parse surya-ocr-2-5(the CLI) - Over MCP
compare_tools {"a": "nemotron-3-5-parse", "b": "surya-ocr-2-5"}at/mcp, no key