跳到正文
面壁 MiniCPM 模型发布·· 8 小时前AI 评分40

面壁 MiniCPM-OCR 1.0 发布 GGUF 版本,支持 llama.cpp 部署

openbmb/MiniCPM-OCR-1.0-gguf

AI 导读

面壁智能发布 MiniCPM-OCR 1.0 的 GGUF 构建版本,供 llama.cpp 使用。该模型为 1.3B 参数,可将中英文文档与 PDF 解析为文本、表格、公式、图表和印章,并支持关键信息抽取。GGUF 提供 F16 至 Q4_0 多档量化,Q4_K_M 为推荐的最小档位,视觉投影器仅 4× 下采样一种。

正文 · 原文

This repository hosts the GGUF build of MiniCPM-OCR 1.0 for llama.cpp. For the original weights, the full model card, and benchmarks, see the base repository.

MiniCPM-OCR 1.0 (1.3B) parses documents into text, tables, formulas, charts, and seals, and supports key information extraction, for Chinese and English documents and PDFs.

Files

Every tier needs the vision projector as well — --model takes the LLM GGUF, --mmproj takes the projector:

File Size Notes
mmproj-model-f16-4x.gguf 0.901 GB vision projector, 4× downsample — required
MiniCPM-OCR-1_0-F16.gguf 1.516 GB reference, no quantization
MiniCPM-OCR-1_0-Q8_0.gguf 0.812 GB near-lossless
MiniCPM-OCR-1_0-Q6_K.gguf 0.630 GB good quality/size balance
MiniCPM-OCR-1_0-Q5_K_M.gguf 0.578 GB smaller, still strong
MiniCPM-OCR-1_0-Q5_K_S.gguf 0.563 GB
MiniCPM-OCR-1_0-Q5_1.gguf 0.595 GB
MiniCPM-OCR-1_0-Q5_0.gguf 0.563 GB
MiniCPM-OCR-1_0-Q4_K_M.gguf 0.529 GB smallest recommended
MiniCPM-OCR-1_0-Q4_K_S.gguf 0.505 GB
MiniCPM-OCR-1_0-Q4_1.gguf 0.532 GB
MiniCPM-OCR-1_0-Q4_0.gguf 0.501 GB

The projector is 4× only; there is no 16× variant for this model.

Which tier

Tier Table / dense text / XML
F16 baseline
Q8_0 lossless / ≈lossless — recommended balance
Q4_K_M lossless on tables, small degradation on dense text; closing-tag slashes may drop in code-heavy documents

Prefer Q8_0 for code- or XML-heavy pages.

Usage

llama-server \
  --model ./MiniCPM-OCR-1_0-Q8_0.gguf \
  --mmproj ./mmproj-model-f16-4x.gguf \
  --host 0.0.0.0 --port 18499 \
  --ctx-size 40960 \
  --n-gpu-layers 999

--n-gpu-layers 999 offloads everything to GPU; use 0 for CPU-only.

llama-mtmd-cli \
  -m ./MiniCPM-OCR-1_0-Q8_0.gguf \
  --mmproj ./mmproj-model-f16-4x.gguf \
  --image page.png -p "Text Recognition:" \
  --jinja -ngl 99 -c 8192 --temp 0

Thinking is already disabled inside the embedded chat template — no extra flag is needed, and enable_thinking cannot turn it back on. (If you convert the weights yourself instead of using these files, start the server with --chat-template-kwargs '{"enable_thinking": false}'.)

Prompts

Region Prompt
Text block / paragraph / title / page Text Recognition:
Table Table Recognition:
Display formula Formula Recognition:

SDK with a llama.cpp backend

minicpmvocr parse --config sdk/minicpmvocr/configs/minicpmvocr.yaml \
  --backend llamacpp --server-url http://127.0.0.1:18499 \
  --model minicpm-ocr \
  --set layout.device=cuda:0 \
  --set pipeline.queue_mode=serial \
  --set pipeline.max_workers=1 \
  --input doc.pdf --output doc.md

llama-server handles one request at a time by default, so keep queue_mode=serial and max_workers=1.

Performance

Single RTX 5090 (32 GB), F16 weights: model + projector load ≈2.3 s; one table crop (1,312 prompt / 265 output tokens) ≈1.0 s; VRAM ≈26 GB at --ctx-size 40960. CPU-only (48 threads): one table image end-to-end (layout + recognition + assembly) ≈21 s.

Build llama.cpp and further options: llama.cpp deployment guide.

Related checkpoints

Format HF Mirror ModelScope
BF16 (original) 🤗 ModelScope
GGUF (llama.cpp) (this repo) 🤗 ModelScope
AWQ W4A16 🤗 ModelScope
GPTQ W4A16 🤗 ModelScope
DSpark draft (BF16) 🤗 ModelScope
DSpark draft (GGUF) 🤗 ModelScope

Speculative decoding works in llama.cpp with the DSpark draft GGUF via --spec-type draft-dspark.

FAQ

Installation, model downloads, GPU memory, input formats, and unexpected outputs: FAQ.

License

Model weights, code, and documentation are released under the Apache License 2.0.

来源:面壁 MiniCPM 模型发布 · hf-mirror.com