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

面壁 MiniCPM-OCR 1.0 发布 DSpark 投机解码草稿模型,端到端效率提升 55%

openbmb/MiniCPM-OCR-1.0-DSpark

AI 导读

面壁发布 MiniCPM-OCR 1.0 的 DSpark 投机解码草稿头,需与 1.3B 主模型配套使用,端到端处理效率提升 55%。该草稿模型参数量 296,837,889、5 层、每次前向预测 15 个 token,吞吐量约为 PaddleOCR-VL-1.6 的 1.49 倍、MinerU2.5 Pro 的 3.62 倍。

正文 · 原文

This repository hosts the DSpark draft (speculative decoding) head for MiniCPM-OCR 1.0. It is a draft model, not a standalone OCR model — it must be paired with the matching main checkpoint.

DSpark speeds up decoding with a small draft model that proposes tokens the main model then verifies in one pass. With this head, MiniCPM-OCR 1.0 improves end-to-end processing efficiency by 55%; throughput reaches about 1.49× PaddleOCR-VL-1.6 and 3.62× MinerU2.5 Pro.

Specification

Property Value
Target model MiniCPM-OCR 1.0 (1.3B)
Draft parameters 296,837,889
Draft layers 5
Draft tokens per forward pass 15
Target hidden-state layers [3, 7, 11, 15, 19]
Checkpoint precision BF16
Input vocabulary 248,100
Draft output vocabulary 114,688

The output LM head and the Markov output rows are cropped to 114,688 tokens. The checkpoint keeps its d2t offset mapping and the full input vocabulary; local-to-target.json holds the corresponding absolute target token IDs.

Note on d2t: in this checkpoint the tensor is delta-encoded (target_id - draft_id). It must be converted to absolute IDs (d2t[i] + i) before use — the GGUF build already does this, and local-to-target.json is the ground truth to verify against.

Usage with vLLM

vllm serve openbmb/MiniCPM-OCR-1.0 \
  --served-model-name MiniCPM-OCR \
  --trust-remote-code \
  --max-model-len 40960 \
  --max-num-batched-tokens 40960 \
  --max-num-seqs 1 \
  --trust-request-mm-kwargs \
  --mm-processor-kwargs '{"downsample_mode":"4x","max_slice_nums":9}' \
  --speculative-config '{"method":"dspark",
                         "model":"openbmb/MiniCPM-OCR-1.0-DSpark",
                         "num_speculative_tokens":15,
                         "enable_adaptive_verification":false}' \
  --default-chat-template-kwargs '{"enable_thinking":false}'

Selection and tuning: DSpark acceleration.

Files

File Notes
model.safetensors 64 tensors — 5 draft layers, fc projector, lm_head, Markov heads, confidence head, d2t
config.json architectures: ["Qwen3DSparkModel"], dflash_config with target layer ids and Markov rank
local-to-target.json 114,688 absolute target token IDs, the reference for d2t
export-audit.json export-time audit: weight/mapping hashes and vocabulary coverage

Related checkpoints

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

DSpark requires a matching main and draft model from the same release; do not pair this draft with a different main checkpoint.

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