Repository navigation
Marker v2.2.0 — 4 Conversion Modes, In-Process Indra ONNX Engine, Interactive Web Viewer & 88.9% on OmniParseBench
LatestMarker 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 (fastandno_ocrmodes). - 88.9% on OmniParseBench in
balancedmode — routing clean digital pages throughpdftext+ Indra ONNX and routing tables, math, CJK/non-Latin scripts, and scanned pages to Surya 2.5 VLM (86.7%in purevllmmode), 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, andPreview/Markdown/Blocks/Lines/HTML/Chunks/JSONinspection tabs. - Agent-ready CLI (
--stdout,--skill,--install_skill,--recursive,--skip_existing) — pipe converted output directly tostdoutor 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, orEPUBfiles. - Switch live between
Auto,No OCR,Fast,Balanced, andvLLMmodes. - 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
.mddownload.
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/skillsUpgrade
pip install -U marker-pdf