Jina-OCR-v1: Faster Document Parsing on Low-Budget GPU Jina AI released jina-ocr-v1, a 3.4B-parameter document parser with roughly 570M active decoder parameters per token, scoring 91.14 on OmniDocBench v1.6 and 83.4 on olmOCR-Bench at 2.57 pages per second — the highest page throughput among the fourteen systems measured. The model builds on DeepSeek-OCR's compressed-vision encoder and mixture-of-experts decoder and adds a FastMTP draft head that applies one dense block recursively for K = 3 prediction steps, nearly doubling decoding speed on an NVIDIA L4 while keeping decoding lossless. Post-training under dense verifiable rewards adds 7.4 points on olmOCR-Bench and improves every OmniDocBench column. We release jina-ocr-v1 https://jina.ai/models/jina-ocr-v1 , a 3.4B-parameter document parser with about 570M active decoder parameters per token. It scores 91.14 on OmniDocBench v1.6 and 83.4 on olmOCR-Bench , and at 2.57 pages per second it has the highest page throughput of the fourteen systems we measured. On an NVIDIA L4 its speculative decoding head nearly doubles decoding speed while keeping decoding lossless. The model builds on the compressed-vision encoder and mixture-of-experts decoder of DeepSeek-OCR and adds two things. A FastMTP draft head applies one block recursively for three prediction steps, so draft parameters do not grow with depth. Post-training runs under dense verifiable rewards, where every check is deterministic code against a reference and every check is graded. Against that backbone, post-training adds 7.4 points on olmOCR-Bench and improves every OmniDocBench column. tag model-and-training Model and training tag Long outputs are what make document parsing expensive to decode. DeepSeek-OCR removed most of that cost with a compressed vision encoder and a compact mixture-of-experts decoder, and jina-ocr-v1 https://jina.ai/models/jina-ocr-v1 inherits both and targets the autoregressive bottleneck that remains. OCR output is near-deterministic and locally structured, which makes it a favorable workload for speculative decoding. The usual construction attaches one draft head per prediction depth, so draft parameters grow with how far ahead the model looks. FastMTP uses a single dense block applied recursively for K = 3 steps. The verifier checks each proposal greedily and accepts the longest prefix on which draft and verifier agree, so the committed sequence equals the greedy sequence of the verifier and speculation changes only how long the output takes. | Component | Specification | |---|---| | Vision encoder | DeepEncoder ~380M : SAM 80M → 16x conv → CLIP-L 300M | | Vision tokens | 256 @ 1024x1024 Base ; 256+100n, n ≤ 9 Gundam, ≤ 1,156/page | | Decoder | DeepSeek-3B-MoE: 12 layers, d = 1280, 64 routed + 2 shared, top-6 | | Active / total params | ~570M / ~3B decoder ; < 1B / ~3.4B whole model | | Vocabulary | 129,280 | | Position limit | 32,768 RoPE, θ = 10