Skip to content

Marker v2.2.0 — 4 Conversion Modes, In-Process Indra ONNX Engine, Interactive Web Viewer & 88.9% on OmniParseBench

Latest

Choose a tag to compare

@VikParuchuri VikParuchuri released this 12 Nov 17:45
· 30 commits to master since this release
f20c54a

Marker v2.2.0 — 4 Conversion Modes, In-Process Indra ONNX Engine, Interactive Web Viewer & 88.9% on OmniParseBench

Marker 2.2.0 is our biggest architecture and usability upgrade since Marker 2.0:

  • Up to 20× faster CPU conversion (7–33 pages/s) with zero external servers via the new in-process Indra ONNX layout, reading order, and OCR engine (fast and no_ocr modes).
  • 88.9% on OmniParseBench in balanced mode — routing clean digital pages through pdftext + Indra ONNX and routing tables, math, CJK/non-Latin scripts, and scanned pages to Surya 2.5 VLM (86.7% in pure vllm mode), outperforming Docling (74.9%) and PaddleOCR-VL (84.4%).
  • New built-in Interactive Web Viewer (marker_gui & marker_server) — replaces the legacy Streamlit app with a fast, self-contained browser UI featuring interactive SVG layout/line/reading-order overlays, stage timing bars, and Preview / Markdown / Blocks / Lines / HTML / Chunks / JSON inspection tabs.
  • Agent-ready CLI (--stdout, --skill, --install_skill, --recursive, --skip_existing) — pipe converted output directly to stdout or install the bundled AI agent skill (SKILL.md) for Claude Code, Cursor, and Antigravity in one command.

Need handwriting, complex forms, or managed VLM parsing at scale? Try Chandra on the Datalab API — get 5,000 free pages every month when you sign up with a work email.


1. Four Conversion Modes (--mode no_ocr | fast | balanced | vllm)

Marker now automatically picks the best mode for your hardware (balanced on CUDA GPUs, fast on CPU / Apple Silicon), or you can select any mode explicitly via --mode:

Mode Speed (GH200 / CPU) OmniParseBench How It Works & When to Use
no_ocr 32.7 pg/s 71.1% Pure embedded PDF text layer (pdftext) + in-process Indra ONNX layout & reading order on CPU. Zero OCR calls. Ideal for born-digital PDFs when maximum CPU throughput is needed.
fast 7.0–33 pg/s 83.2% In-process Indra ONNX layout, reading order, and ONNX line/page OCR on CPU/MPS/GPU. Requires no external VLM server. Default on CPU and Apple Silicon.
balanced 2.9 pg/s 88.9% Hybrid routing: pdftext + Indra ONNX on clean Latin prose pages; routes tables, math/equations, CJK/non-Latin scripts, and scanned/garbled pages to Surya 2.5 VLM. Default on CUDA GPUs.
vllm 2.5 pg/s 86.7% Full-page Surya 2.5 VLM OCR on every page, skipping pdftext and Indra entirely. Best for degraded scans, dense math, and complex multi-script layouts.

OmniParseBench Comparison (838 pages, 15,834 unit tests)

Parser Headline Text Tables Math Layout Order Pages/s
Marker 2.2 (balanced) 88.9 93.5 89.0 75.7 92.8 92.4 2.9
Marker 2.2 (vllm) 86.7 92.8 88.2 78.0 89.8 91.6 2.5
PaddleOCR-VL 1.5 84.4 92.1 83.1 76.2 82.9 89.2 1.1
Marker 2.2 (fast - CPU ONNX) 83.2 90.2 81.2 66.2 91.2 90.5 7.0
Docling 74.9 84.9 78.2 35.1 81.4 85.4 1.4
Marker 2.2 (no_ocr - CPU) 71.1 79.1 69.2 47.0 88.2 87.0 32.7

2. Built-In Interactive Web Viewer (marker_gui & marker_server)

Run marker_gui --port 8000 (or marker_server --port 8000 for the FastAPI REST server + viewer + /docs) to inspect documents page by page in your browser:

  • Drag & drop PDFs, images, DOCX, PPTX, XLSX, HTML, or EPUB files.
  • Switch live between Auto, No OCR, Fast, Balanced, and vLLM modes.
  • Interactive SVG overlays for layout blocks, block labels, reading order, and text lines with bidirectional hover highlighting.
  • Inspect Preview, Markdown, Blocks, Lines, HTML, RAG Chunks, and JSON, with one-click copy and .md download.

3. CLI & Batch Conversion Upgrades

# Stream Markdown directly to stdout (ideal for AI agents & shell pipelines)
marker_single document.pdf --stdout --mode fast

# Keep running page headers and footers in output, or keep the VLM server alive across runs
marker_single document.pdf --keep_headers_footers --keep_server

# Recursively convert a folder of PDFs/images/Office docs and resume interrupted runs
marker ./input_folder --output_dir ./output --recursive --skip_existing

# Print or install the bundled AI agent skill (SKILL.md) for Claude Code / Cursor / Antigravity
marker_single --skill
marker_single --install_skill .agents/skills

Upgrade

pip install -U marker-pdf