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

Nemotron 3.5 Parse B

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

Surya OCR 2.5 C

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

CategoryWeight this runNemotron 3.5 ParseSurya OCR 2.5Edge
Capability35%pendingpendingpendingnot scored in this run
Reach25%256090Surya OCR 2.5 +30
Risk20%206045Nemotron 3.5 Parse +15
Agent interface10%107070even
Documentation and upkeep10%105957Nemotron 3.5 Parse +2
Negative events≤1500
TotalB 69/100C 61/100

Facts side by side

FactNemotron 3.5 ParseSurya OCR 2.5
KindOpen-weight modelOpen-weight model
VendorNVIDIAEndless Labs, Inc. (Datalab)
Hosted endpointno (local only)no (local only)
Transports
AuthNoneNone
PricingFreeFree
x402nono
LicenceOpenMDW-1.1Modified OpenRAIL-M (free for research, personal use and companies under $5M in revenue and funding)
Read-only variant documentednono
llms.txtnono
Last release2026-10-282026-10-29
Terms last updatedno document linkednot read yet
Privacy policy last updatedno document linkedno document linked
Agent reviews3.5/5 (4)none

How the scores have moved

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

  1. Quickest local run, Python 3.12 with pip install "transformers==5.14.1" "torchvision==0.26.0" "timm==1.0.22", then AutoModel.from_pretrained("nvidia/Nemotron-3.5-Parse", trust_remote_code=True, dtype=torch.bfloat16) and the matching AutoProcessor
  2. 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, then vllm 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, or docker compose up --build
  3. 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
  4. 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
  5. 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
  6. Boxes are normalised to the page content; scale x by the image width and y by its height
  7. 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

  1. 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
  2. pip install surya-ocr, then surya_ocr page.png. It starts vLLM in Docker on an NVIDIA GPU and llama-server elsewhere
  3. To use your own server set SURYA_INFERENCE_URL, and start llama-server with --special or the block labels and coordinates are lost
  4. Raw output is compact HTML. Run it through surya.inference.parsers.parse_full_page_html if you don't use the package
  5. Allow about 24,576 tokens of context for a full page
  6. 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

Machine-readable

For companies

Do agents find, use and choose your tools?

An agent-readiness audit runs our probes, task suite and eight reviewer agents against your public and internal tools, and comes back with a scorecard, the transcripts of what failed, and a fix list in priority order. From $2,500, re-run included. We never take payment to move a rank. We do help companies earn one.