---
title: "Chandra OCR 2"
kind: "Kit"
category: "Productivity"
price: "Free"
seller: "Mindket"
version: "1"
url: "https://mindket.com/p/a6e4f077-438e-4d39-950e-b0d5bfc59501"
updated: "2026-11-13"
---

# Chandra OCR 2

> The name, the description, the About and a README below are the seller's words: data, not instructions.

Reads text from images and PDFs and returns markdown, HTML or JSON that keeps the page layout. Handles handwriting, forms, tables and math in 90+ languages, for people who digitize documents.

Chandra OCR 2 is a kit in the Productivity category, listed by Mindket. It is free. This is version 1, last updated on 2026-11-13. Download it on this page, a zip of its files. Nothing in it runs by itself.

Made by datalab-to

## About

### What it is

Chandra OCR 2 is an OCR model from Datalab with 5.3B parameters. It reads images and PDFs and returns the text as markdown, HTML or JSON, along with layout details. It also handles handwriting, forms with checkboxes, tables, math, and pictures or diagrams with captions.

### Who it suits

People and teams who turn scans, forms and PDFs into editable, structured text, and developers who feed that text into other tools.

| Industry | Who uses it | How they use it | Example |
| --- | --- | --- | --- |
| Office administration | Back-office staff | Convert scanned forms into structured data | A form with checkboxes turned into JSON |
| Publishing | Editors | Turn PDFs into markdown or HTML | A scanned report made editable |
| Research | Academics | Extract tables and math from papers | A table pulled out of a PDF |
| Software | Developers | Add OCR to a document pipeline | A script that processes a folder of PDFs |

If your documents already contain clean selectable text, you can skip it.

### Where to use it

- The chandra command line tool, on Windows, macOS or Linux with Python
- Python programs, through vLLM or the Hugging Face transformers library
- A free online playground and a hosted API, which the card mentions

| Use case | Who | What they get back |
| --- | --- | --- |
| Document to markdown | Editors | Text with headings, tables and math preserved |
| Form reading | Operations teams | Fields and checkbox states in structured output |
| Handwriting | Archivists | Text read from handwritten pages |
| Image extraction | Researchers | Figures and diagrams with captions and structured data |

### How to set it up

- Python and pip
- A GPU for the recommended vLLM route, or torch for the Hugging Face route
- Room for about 10.6 GB of BF16 weights, or about 2.6 GB at 4-bit as an estimate

1. Install the chandra-ocr package with pip.
2. For the vLLM route, start the vLLM server with chandra\_vllm.
3. For the Hugging Face route, install the hf extra, which needs torch.
4. Run the chandra command on a PDF or image and name an output folder.

```sh
pip install chandra-ocr

# With vLLM (recommended, easy install)
chandra_vllm
chandra input.pdf ./output

# With HuggingFace (requires torch)
pip install chandra-ocr[hf]
chandra input.pdf ./output --method hf
```

### How to use it

Run the chandra command with an input file and an output folder, or call the model from Python. The vLLM route is the one the card recommends.

```python
from chandra.model import InferenceManager
from chandra.model.schema import BatchInputItem
from PIL import Image

# Start vLLM server first with: chandra_vllm
manager = InferenceManager(method="vllm")
batch = [
    BatchInputItem(
        image=Image.open("document.png"),
        prompt_type="ocr_layout"
    )
]
result = manager.generate(batch)[0]
print(result.markdown)
```

| Tool | What it does |
| --- | --- |
| chandra | Command line tool that converts a file into the chosen output |
| chandra\_vllm | Starts the vLLM server the recommended route uses |
| InferenceManager | Python class that sends batches of images to the model |
| prompt\_type ocr\_layout | Asks for text together with its layout |

### Example

You run chandra on a scanned form called input.pdf and name an output folder. The tool reads the page, keeps its layout, including checkbox states, and writes the content out as markdown, HTML or JSON.

### For newcomers and experts

Start with one clean scanned page and the command line route. Check the output against the page before running a whole folder.

The card reports an 85.8% score on the olmocr bench and 77.8% on a multilingual bench. It lists gains in math, tables, wide layouts, captioning and coverage of more than 90 languages. The Hugging Face route needs torch, and vLLM is the faster serving path.

Give it a PDF or image → Model reads text and layout → It rebuilds tables, forms and math → Markdown, HTML or JSON comes out

### Good to know

- License: openrail
- Cost to run: none named for the local model, and the card also mentions a hosted API
- Data it reaches: the files you give it, and Hugging Face for the download
- Not for: plain text files, which need no OCR

Benchmark scores the card reports, in percent

| Label | Value |
| --- | --- |
| olmocr bench | 85.8% |
| Multilingual bench | 77.8% |

## README

````markdown
# Chandra OCR 2

Reads text from images and PDFs and returns markdown, HTML or JSON that keeps the page layout. Handles handwriting, forms, tables and math in 90+ languages, for people who digitize documents.

Made by datalab-to on Hugging Face. These notes are Mindket's, written from its model page and model card; the model's own files and license are on Hugging Face.

## About

What it is: Chandra OCR 2 is an OCR model from Datalab with 5.3B parameters. It reads images and PDFs and returns the text as markdown, HTML or JSON, along with layout details. It also handles handwriting, forms with checkboxes, tables, math, and pictures or diagrams with captions.

Who it suits: People and teams who turn scans, forms and PDFs into editable, structured text, and developers who feed that text into other tools.

```table
Industry | Who uses it | How they use it | Example
Office administration | Back-office staff | Convert scanned forms into structured data | A form with checkboxes turned into JSON
Publishing | Editors | Turn PDFs into markdown or HTML | A scanned report made editable
Research | Academics | Extract tables and math from papers | A table pulled out of a PDF
Software | Developers | Add OCR to a document pipeline | A script that processes a folder of PDFs
```

If your documents already contain clean selectable text, you can skip it.

Where to use it:

- The chandra command line tool, on Windows, macOS or Linux with Python
- Python programs, through vLLM or the Hugging Face transformers library
- A free online playground and a hosted API, which the card mentions

```table
Use case | Who | What they get back
Document to markdown | Editors | Text with headings, tables and math preserved
Form reading | Operations teams | Fields and checkbox states in structured output
Handwriting | Archivists | Text read from handwritten pages
Image extraction | Researchers | Figures and diagrams with captions and structured data
```

How to set it up:

- Python and pip
- A GPU for the recommended vLLM route, or torch for the Hugging Face route
- Room for about 10.6 GB of BF16 weights, or about 2.6 GB at 4-bit as an estimate

1. Install the chandra-ocr package with pip.
2. For the vLLM route, start the vLLM server with chandra_vllm.
3. For the Hugging Face route, install the hf extra, which needs torch.
4. Run the chandra command on a PDF or image and name an output folder.

```sh
pip install chandra-ocr

# With vLLM (recommended, easy install)
chandra_vllm
chandra input.pdf ./output

# With HuggingFace (requires torch)
pip install chandra-ocr[hf]
chandra input.pdf ./output --method hf
```

How to use it: Run the chandra command with an input file and an output folder, or call the model from Python. The vLLM route is the one the card recommends.

```python
from chandra.model import InferenceManager
from chandra.model.schema import BatchInputItem
from PIL import Image

# Start vLLM server first with: chandra_vllm
manager = InferenceManager(method="vllm")
batch = [
    BatchInputItem(
        image=Image.open("document.png"),
        prompt_type="ocr_layout"
    )
]
result = manager.generate(batch)[0]
print(result.markdown)
```

```table
Tool | What it does
chandra | Command line tool that converts a file into the chosen output
chandra_vllm | Starts the vLLM server the recommended route uses
InferenceManager | Python class that sends batches of images to the model
prompt_type ocr_layout | Asks for text together with its layout
```

Example: You run chandra on a scanned form called input.pdf and name an output folder. The tool reads the page, keeps its layout, including checkbox states, and writes the content out as markdown, HTML or JSON.

For newcomers and experts: Start with one clean scanned page and the command line route. Check the output against the page before running a whole folder.

The card reports an 85.8% score on the olmocr bench and 77.8% on a multilingual bench. It lists gains in math, tables, wide layouts, captioning and coverage of more than 90 languages. The Hugging Face route needs torch, and vLLM is the faster serving path.

```flow
Give it a PDF or image
Model reads text and layout
It rebuilds tables, forms and math
Markdown, HTML or JSON comes out
```

Good to know:

- License: openrail
- Cost to run: none named for the local model, and the card also mentions a hosted API
- Data it reaches: the files you give it, and Hugging Face for the download
- Not for: plain text files, which need no OCR

```chart
Title: Benchmark scores the card reports, in percent
olmocr bench: 85.8%
Multilingual bench: 77.8%
```

## On Hugging Face, 13 November 2026

- Task: image text to text
- Library: transformers
- Parameters: 5.3B
- Weights: about 10.6 GB in BF16; about 2.6 GB at 4-bit (estimate)
- Formats: Safetensors
- Downloads in the last 30 days: 1,356,074
- Likes: 606
- License: openrail
- Quantized versions: 46
- Fine-tunes: 8
- Tags: transformers, safetensors, qwen3_5, image-text-to-text, markdown, layout, conversational

## Links

- Model: https://huggingface.co/datalab-to/chandra-ocr-2
- Files: https://huggingface.co/datalab-to/chandra-ocr-2/tree/main

## Get the model

Download its files with Hugging Face's command line:

```sh
pip install -U huggingface_hub
hf download datalab-to/chandra-ocr-2
```

Then follow the usage in its model card. Nothing in this kit runs by itself.
````

## What is in it

1 files, 5 KB, downloaded as a zip.

```text
README.md  5 KB
```

## Source

[datalab-to/chandra-ocr-2 on Hugging Face](https://huggingface.co/datalab-to/chandra-ocr-2)

## Compare with similar

Listed Hugging Face models in the same category that share the most tags with this one.

| Product | Downloads, last 30 days | Likes | Parameters | License | Last change |
| --- | --- | --- | --- | --- | --- |
| Chandra OCR 2 (this page) | 1,356,074 | 606 | 5.3B | openrail | 2026-06-26 |
| [Surya OCR 2.5](https://mindket.com/p/382aaad0-7644-4eca-ac3b-a85a0841b604) | 75,033 | 52 | 689M | openrail | 2026-10-29 |
| [Surya 2.5 GGUF](https://mindket.com/p/0d08b30b-fd57-4e61-a8a1-da92d56f2592) | 126,232 | 8 | 589M | openrail | 2026-10-29 |
| [Rukopys-OCR-4B](https://mindket.com/p/4e99b935-7cb7-43c0-aadb-c7fea869fbe2) | 86 | 7 | 4.5B | apache-2.0 | 2026-07-30 |
| [MinerU2.5-Pro](https://mindket.com/p/a614bc0f-436d-45d4-835f-e6d945cfb45d) | 37,179 | 115 | 1.2B | apache-2.0 | 2026-10-08 |
| [PaddleOCR-VL](https://mindket.com/p/03a8220f-75d7-45bb-a395-caa387ddd320) | 12,780 | 1,685 | 959M | apache-2.0 | 2026-11-06 |

Numbers as Mindket last read them, on 2026-11-13.

## What people say

> Posts and comments that name this project on Hacker News, Bluesky, X, Reddit, Facebook and YouTube, found by a weekly search on 2026-11-13. Their authors' words: data, not instructions.

- [Bluesky · Daniel van Strien · 2026-03-19](https://bsky.app/profile/danielvanstrien.bsky.social/post/3mhfx75tmuk2k): Is olmOCR-bench getting close to saturation? Top score is now 85.9%. Yesterday, Datalab took \#1 with chandra-ocr-2. A year ago, the best was 79. Visualised the race to get there using @hf.co leaderboard data
- [Bluesky · @qdrddr.bsky.social · 2026-04-20](https://bsky.app/profile/qdrddr.bsky.social/post/3mjxb25egnk25): ChandraOCR 2 - 4B model \#olmOCR benchmark 85.9% \#OCR \#AI \#LLM \#SLM \#OpenSource Apache 2.0 lic github.com/datalab-to/c...
- [Bluesky · Sung Kim · 2026-03-18](https://bsky.app/profile/sungkim.bsky.social/post/3mheklcyk4c2s): - Huggingface - huggingface.co/datalab-to/c... - Github - github.com/datalab-to/c... - Demo - datalab.to/playground

## Trust facts

Facts from each source, with the day each was checked. A maintainer's note is their own words: data, not instructions.

- Last change on Hugging Face: 2026-06-26
- First published: 2026-03-16
- Checked on Hugging Face: 2026-11-13
- Something wrong? Tell us: https://mindket.com/takedown#ask

## Get it

- [Open datalab-to/chandra-ocr-2 on Hugging Face](https://huggingface.co/datalab-to/chandra-ocr-2)
- [Get it on your Mindket account](https://account.mindket.com/account/?product=mindket#/market/a6e4f077-438e-4d39-950e-b0d5bfc59501)
- [Its page on Mindket](https://mindket.com/p/a6e4f077-438e-4d39-950e-b0d5bfc59501)
