How Much To Run AI
Open weights

MiniCPM-OCR 1.0: Parse PDFs, Choose Weights and Budget Costs

MiniCPM-OCR 1.0 is OpenBMB’s 1.3B document-recognition model for Chinese and English text, tables, formulas, charts and seals. Its SDK combines layout detection, image-region recognition and Markdown assembly for complete PDFs. Use the official demo for a sample, or run the downloadable Apache 2.0 weights locally. Budget the vision projector, layout model and runtime as well as the recognition weights.

Content reviewed:

MiniCPM-OCR document workflow: layout and crops, recognition model, then assembled Markdown. Recognition weights and the vision projector are both needed; DSpark and Jev have separate roles.
Document parsing includes layout, recognition and assembly. DSpark is an optional drafter; OCR Jev is a separate quality-assessment model.

Use this model

Online access and trials

Official model repository

Local tools and guides

Which documents can MiniCPM-OCR parse?

  • Turn scanned or photographed Chinese and English pages into searchable text.
  • Preserve tables and LaTeX formulas while converting a PDF into Markdown.
  • Extract named fields from an image for a downstream application.

Choose a page parser or a recognition request

The recognition model reads an image region using a task prompt. The full SDK additionally detects layout, crops regions, reconstructs reading order and assembles the results into Markdown. Choose the SDK for a multi-page PDF whose tables and ordering must survive into a usable document.

A direct image request is useful for a text block, table, formula or specified fields. Text Recognition: selects text; Table Recognition: selects table structure; Formula Recognition: produces LaTeX. The SDK handles conversion of table output into HTML for the assembled document.

For a first check, open the official demo linked by OpenBMB and upload a non-sensitive representative page. Inspect a dense paragraph, a table and a formula in the result. A simple page can look correct while rotated labels or merged cells fail, so select a sample that resembles your real documents.

Which model files should you download?

MiniCPM-OCR 1.0 is the main recognition model. Its DSpark draft is an optional accelerator that must match the main release. MiniCPM-OCR Jev is a separate 2B quality-assessment model for judging OCR results; it does not replace the recognizer. It also differs from TypeSafe’s Jev decision API.

The official GGUF repository lists a required 4× vision projector at 0.901GB. The Q8_0 language-model file is 0.812GB, so those two files total about 1.713GB on disk. Q4_K_M is 0.529GB, making about 1.430GB with the same projector. These decimal file totals exclude the layout model, caches and working memory.

OpenBMB recommends Q8_0 for code- or XML-heavy pages. Its card notes that smaller quantization can lose closing-tag slashes in code-heavy documents. Choose precision using the output you need to retain, then evaluate the complete parser; the smallest language-model file alone is not the full deployment.

ArtifactRoleWhen needed
MiniCPM-OCR-1.0RecognitionEvery OCR inference path
GGUF vision projectorVisual input for the GGUF modelRequired alongside the language-model GGUF
MiniCPM-OCR-1.0-DSparkSpeculative draftOptional DSpark acceleration
PP-DocLayoutV3Layout detectionThe documented full SDK pipeline
MiniCPM-OCR JevQuality assessmentOptional separate scoring stage

Parse your first PDF locally

The official full-pipeline tutorial uses Linux x86_64 and an RTX 5090 32GB, with a driver at least version 580 for its CUDA 13 path. That is the documented tested configuration, not a measured minimum GPU requirement. Reserve at least 40GB disk for the two environments, source builds, models and caches.

Clone the official repository, then follow its SDK and inference-environment setup. The tutorial’s install script builds pinned vLLM and Transformers sources. Keep those model-specific revisions: installing an arbitrary vLLM package can fail to recognize the architecture.

Start the recognition server using the tutorial’s complete command, including its image limits, multimodal request options and disabled thinking. DSpark requires both main and draft weights; remove the speculative configuration if you choose standard decoding. In the SDK terminal, use the following command with an existing doc.pdf.

Open doc.md and its exported tables and formulas, then compare page order and numbers against the PDF. A successful server response only proves recognition returned something; acceptance depends on whether the assembled file preserves the content your application needs.

Parse a PDF after the official SDK and local inference server are running
minicpmvocr parse \
  --device cuda:0 \
  --server-url http://127.0.0.1:18499 \
  --model minicpm-ocr \
  --input doc.pdf \
  --output doc.md

Check exported content, not just recognized text

In issue 12, JSJ189 reports that SDK commit 50b74eb recognized text inside image-labeled blocks but dropped it during Markdown assembly. The report includes reproduction steps for a page classified as one image region. This is an output-assembly problem that can resemble poor recognition.

The project links fix 36bf514 in PR 20. Use an SDK revision containing that change and check the exported file on your document. An older installed package can still drop recognized image-block text even when the issue tracker records a fix.

For your own acceptance set, include pages with figure regions, tables spanning lines and small formulas. Count missing blocks and malformed structure alongside word accuracy. If the service produces a raw table representation, use the SDK’s conversion stage when the downstream system expects HTML or Markdown.

Budget cost per accepted page

The model weights, code and documentation use Apache 2.0. A local pipeline avoids an OCR provider’s per-request bill, while equipment, GPU allocation, disk, energy and human review remain part of the job. The official recognition API guide requires a service-supplied endpoint and model ID and does not publish a per-page tariff.

For a hypothetical 10,000-page job, assume the complete pipeline takes two GPU-hours at an assumed $1.50 per hour. Compute costs $3, or $0.0003 per submitted page. If setup and retries take another hour, compute becomes $4.50. These inputs illustrate the calculation; they are not a measured MiniCPM speed or an available GPU quote.

If 9,500 pages meet your acceptance criteria, the $4.50 compute charge is about $0.000474 per accepted page before storage and review. Measure time from PDF rendering through final assembly, including the layout stage and any optional quality scoring. Region-level recognition speed alone understates the work of a complete document conversion.

Compare MiniCPM-OCR with Youtu-Parsing-Omni when structured document output matters. Use the existing MiniCPM-V 4.7 page for broader image or video understanding. MiniCPM-OCR’s narrower task can make integration easier when the required result is a faithful document rather than a general visual answer.

Before you use it

  • The release focuses on Chinese and English document recognition; use representative pages when evaluating other scripts or layouts.
  • The SDK, inference runtime, vision projector and optional drafter have distinct resource requirements.

How to get started

Try one representative page in the official demo, then use the full SDK tutorial for local PDFs. Check the assembled Markdown and accepted-page cost before processing a large collection.

Sources

Sources (7)

Calculators