Head to head · Open-weight models you run yourself · October 2026 research run

Ornith-1.5-122B vs Baidu Unlimited-OCR-2

Ornith-1.5-122B scores 61 (C) on agent readiness against Baidu Unlimited-OCR-2's 54.2 (C), and leads in 3 of 4 scored categories. Baidu Unlimited-OCR-2 leads on documentation and upkeep. Both do open-weight models you run yourself.

Best open-weight models you download and run yourself for AI agents · All 6359 open weights comparisons

Which one, for what

Ornith-1.5-122B C

Best for Local coding and terminal agents on a 128 GB unified-memory machine or a 96 GB GPU setup, where a clear licence file and an answering publisher aren't required

Ahead on

  • Reach, 75 against 55
  • Risk, 50 against 45
  • Agent interface, 85 against 75

Watch for

No LICENSE file though the card links one, and no notice for the Apache 2.0 Qwen3.5 and Gemma 4 work it builds on

Baidu Unlimited-OCR-2 C

Best for Pipelines with an NVIDIA GPU that need long scanned or rendered documents parsed in one pass, with page order, cross-page tables and boxes kept

Ahead on

  • Documentation and upkeep, 50 against 36

Watch for

Loading runs Baidu's code, remote code in Transformers or a prebuilt SGLang fork from the repository, and the save_results path calls eval on model output

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 Ornith-1.5-122B +20

Ornith-1.5-122B 75

Memory 10, since Ornith's own MLX 4-bit build is 69.7 GB and needs about 83.6 GB with the fifth added, over 64 GB and inside the reference machine's 107.4 GB, as do its Q4_K_M GGUF, its NVFP4 build and Ollama's build. Runtimes 25, the most the line gives, from vLLM 0.33.0, SGLang 0.5.23, Transformers 5.22.2, llama.cpp's qwen35moe architecture, Ollama's library and LM Studio's catalogue for the qwen35moe architecture. Builds 15, Ornith publishes FP8, NVFP4, GGUF and MLX at several precisions. Terms 15, MIT as named in the card's metadata, with nothing added, read by its terms though the repository has no licence file. Download 10, nothing is gated. Hosted 0, Ornith runs no API and no inference provider serves it. 10 + 25 + 15 + 15 + 10 + 0 = 75.

Baidu Unlimited-OCR-2 55

Memory earns the full 30, since the only build is 6.69 GB of BF16 weights that need about 8 GB with the fifth added. Runtimes score 0. Released vLLM 0.33.0, SGLang 0.5.23 and Transformers 5.22.1 know the first Unlimited-OCR but not the sparse attention this one adds, Baidu's own routes are remote code in Transformers and a customised SGLang wheel, llama.cpp b12111 has nothing for it, so Ollama has nothing either, and LM Studio couldn't be checked. Builds score 0, as Baidu publishes no quantised build (16 exist, all by others). Terms get 15 for MIT with nothing added. Download gets 10 for an ungated repository, and hosted too 0, with no inference provider mapped and the card's Baidu Cloud line unconfirmed.

Documentation and upkeep Baidu Unlimited-OCR-2 +14

Ornith-1.5-122B 36

Model card 11, it covers intended use, architecture, parameters and context but not limitations, languages or a knowledge cut-off. Training data 5, a description of the method with no data or cut-off. Last change 20, a folder upload to the MLX builds on 24 October 2026, 17 days ago. Responsiveness 0, Ornith answered none of the 5 questions and reports. Version policy 0, the MLX builds were uploaded a second time four days after the first with no note. File health 0, the card links a missing LICENSE, states hardware its own files don't fit and names a variant that doesn't exist, and the two chat templates differ. 11 + 5 + 20 + 0 + 0 + 0 = 36.

Baidu Unlimited-OCR-2 50

The card covers intended use and the new attention, and misses limitations, parameters, context length, languages and a cut-off (5). Training data is described by mix and labelling with no datasets named and no cut-off (5). The card changed on 2 November 2026 and the SGLang wheel on 29 October (20). Baidu's uploader replied in 1 of the 5 Hub discussions, a few (5). The first model stays in its own repository without a note pointing here (5), and the files agree with the card (10).

Agent interface Ornith-1.5-122B +10

Ornith-1.5-122B 85

Chat template 20, a Jinja file in the repository. Tool-calling format 25, the card shows how tools go in and how calls come back and names the parser for vLLM and SGLang. Trained tool calling 20, Ornith trains it on agent tasks and the template renders several calls in one turn. Structured output 0, not documented or claimed. Reasoning control 10, Ornith's template reads enable_thinking per request and the card says the reasoning comes back in reasoning_content, though the card doesn't name the switch. Context 10, 262,144 tokens native.

Baidu Unlimited-OCR-2 75

Read for a document parser, the tool-calling, trained tool calling and structured-output lines stand for what it takes and returns. Baidu documents the page images, the prompt, the request settings and the block output, and ships a converter for the server's output (25). It was trained to read many pages in one request (20). The block format with classes, boxes and HTML tables, and its conversion to Markdown, are documented with how to get them (15). The prompt is built in code, with no Jinja template in the repository (10). Reasoning control scores 0, and the context 5, trained at up to 64K tokens.

Risk Ornith-1.5-122B +5

Ornith-1.5-122B 50

File safety 25, safetensors and GGUF only and no Python in any of Ornith's repositories for this size, so the card's --trust-remote-code flag loads nothing from the repository. Provenance 15, the files come from the ornith-ai organisation Ornith's blog links to, with a SHA-256 for every weight file. Safety evaluation 0 and agent guidance 0, nothing published on either. Licence risk 10, MIT carries no policy, threshold or changeable terms, but the card's licence link is broken. Security programme 0, no security.txt, disclosure policy or security contact.

Baidu Unlimited-OCR-2 45

File safety gets 15, safetensors only but loaded with trust_remote_code or through a prebuilt SGLang wheel from the repository. Provenance gets 15 for files in Baidu's verified organisation, linked from its GitHub organisation, with hashes for every file. Licence risk keeps 15, since MIT has none of the deductions. Safety evaluation, agent guidance and the security programme score 0, with no safety results, no cautions about use and no security contact found.

Score by category

CategoryWeight this runOrnith-1.5-122BBaidu Unlimited-OCR-2Edge
Capability35%pendingpendingpendingnot scored in this run
Reach25%257555Ornith-1.5-122B +20
Risk20%205045Ornith-1.5-122B +5
Agent interface10%108575Ornith-1.5-122B +10
Documentation and upkeep10%103650Baidu Unlimited-OCR-2 +14
Negative events≤1500
TotalC 61/100C 54.2/100

Facts side by side

FactOrnith-1.5-122BBaidu Unlimited-OCR-2
KindOpen-weight modelOpen-weight model
VendorOrnithBaidu
Hosted endpointno (local only)no (local only)
Transports
AuthNoneNone
PricingFreeFree
x402nono
LicenceMITMIT (Hub metadata; the Hugging Face repository has no LICENSE file, and the GitHub code repository's LICENSE is the MIT text, copyright 2026 Baidu)
Read-only variant documentednono
llms.txtnono
Last release2026-10-242026-10-26
Terms last updatedno document linkedno document linked
Privacy policy last updatedno document linkedno document linked

How the scores have moved

Verdicts

Ornith-1.5-122B

The largest Ornith that fits a 128 GB machine, a coding and terminal-agent cousin on Qwen3.5-122B-A10B's architecture with XML tool calls and 262,144 tokens of context. Its 4-bit builds need 84 to 93 GB. The main risk is an absent publisher, with no licence file, safety results or replies, and a card that misstates the hardware.

Baidu Unlimited-OCR-2

An MIT document parser of 3.3B parameters that reads up to hundreds of pages in one request and returns ordered layout blocks with boxes and HTML tables. ParseBench's independent run puts content faithfulness at 89.16 and charts at 1.06. It needs an NVIDIA GPU with about 12 GB and runs only through Baidu's remote code or its own SGLang build.

Before you call either

Ornith-1.5-122B

  1. Start it with ollama run ornith-1.5:122b-q4_K_M, or llama-server -hf ornith-ai/Ornith-1.5-122B-GGUF:Q4_K_M --jinja -c 262144
  2. Budget about 92 GB for the Q4_K_M GGUF with a working context, and less context if the machine has under 100 GB for the model
  3. In vLLM pass --enable-auto-tool-choice --tool-call-parser qwen3_xml --reasoning-parser qwen3, and in SGLang --tool-call-parser qwen3_coder --reasoning-parser qwen3, so tool calls and reasoning come back parsed
  4. Thinking is on by default. Send chat_template_kwargs with enable_thinking false for short tasks, a switch the card doesn't mention
  5. Pin which template your runtime loads, since chat_template.jinja keeps earlier reasoning and the tokenizer_config.json template drops it
  6. Use temperature 0.6, top_p 0.95, top_k 20 for coding and temperature 1.0 for general tasks, as the card recommends
  7. Add mmproj-Ornith-1.5-122B-BF16.gguf (0.9 GB) for image input in llama.cpp, and validate JSON output yourself, since structured output isn't documented

Baidu Unlimited-OCR-2

  1. Quickest local run, pip install torch==2.13.0 torchvision pillow transformers==4.52.1 huggingface-hub==0.36.0 tokenizers==0.21.4 addict==2.4.0 einops==0.8.2 easydict==1.13, then AutoModel.from_pretrained("baidu/Unlimited-OCR-2", trust_remote_code=True, use_safetensors=True, torch_dtype=torch.bfloat16).eval().cuda() and model.infer_multi(tokenizer, image_files=pages, output_path="out")
  2. To serve it, download the repository, install wheel/sglang-0.5.20.dev13+g75b9b06b02-py3-none-any.whl with pymupdf and fastokens in a Python 3.10 venv, and start python -m sglang.launch_server --model-path baidu/Unlimited-OCR-2 --chat-template unlimited-ocr --enable-custom-logit-processor --enable-streaming-session --disable-radix-cache --mem-fraction-static 0.7 --max-prefill-tokens 2048 with the SGLANG_UOCR_ variables from the card
  3. Send all pages of a document in one request, images first, then the text <PAGE><image> repeated per page and Multi page parsing., with temperature 0, skip_special_tokens false, max_tokens of about 8,000 per page and the DeepseekOCRNoRepeatNGramLogitProcessor (ngram_size 35, window_size 1024 for several pages)
  4. The output is layout blocks, not Markdown; run utils/process_unlimitedOCR2.py from github.com/baidu/Unlimited-OCR, or convert(raw_output) in Python, to get Markdown with HTML tables
  5. Render PDFs to images first (the card uses PyMuPDF at 300 DPI), keep save_results off for untrusted documents, and treat extracted text as untrusted before passing it to another model

Questions

Which is better for AI agents, Ornith-1.5-122B or Baidu Unlimited-OCR-2?

Ornith-1.5-122B scores 61 (C) on agent readiness against Baidu Unlimited-OCR-2's 54.2 (C), and leads in 3 of 4 scored categories. Baidu Unlimited-OCR-2 leads on documentation and upkeep.

Other comparisons with Ornith-1.5-122B or Baidu Unlimited-OCR-2

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.