docparser-models

Every model file DocParser (a Rust document-parsing engine: Triton serving + an in-process ONNX Runtime backend) loads, flat, one commit per deployment. The checkout's models/MANIFEST.toml pins a commit and maps each file to its place in the Triton model repository; scripts/fetch-models.sh downloads and verifies them against MANIFEST.txt here (sha256 per file). Nothing is trained here: the files are PaddlePaddle's own ONNX exports and scripted derivations of them, all Apache-2.0.

Each file is named <official PaddlePaddle model name>_<part>, so the name says which published checkpoint it came from.

File What Provenance Licence
PP-DocLayoutV3_fp32.onnx PP-DocLayoutV3 (RT-DETR-L, 25 classes + reading order), FP32 bit-identical copy of PaddlePaddle/PP-DocLayoutV3_onnx inference.onnx @ 46bbdf18 (sha256 45bf7175…) Apache-2.0
PP-DocLayoutV3_fp16_batchable.onnx the same, output reshaped to [B,300,7] and converted to FP16 (GridSample / NMS kept FP32) for Triton batching on TensorRT scripts/models/batchable_layout.py + convert_fp16.py over the file above (onnx 1.21, onnxconverter-common 1.16) Apache-2.0
PP-OCRv6_medium_det.onnx PP-OCRv6 text detection, medium tier (OCR_DET_MODEL=medium) bit-identical copy of PaddlePaddle/PP-OCRv6_medium_det_onnx inference.onnx @ 61323801 (eb13b44b…) Apache-2.0
PP-OCRv6_small_det.onnx PP-OCRv6 text detection, small tier — the tier served by default (OCR_DET_MODEL) bit-identical copy of PaddlePaddle/PP-OCRv6_small_det_onnx inference.onnx @ 28fe5895 (d73e0058…) Apache-2.0
PP-OCRv6_tiny_det.onnx PP-OCRv6 text detection, tiny tier (0.43 M parameters) bit-identical copy of PaddlePaddle/PP-OCRv6_tiny_det_onnx inference.onnx @ 2ba1506c (193bab7a…) Apache-2.0
PP-OCRv6_tiny_rec_fp32.onnx PP-OCRv6 text recognition, tiny tier (6906-way CTC) bit-identical copy of PaddlePaddle/PP-OCRv6_tiny_rec_onnx inference.onnx @ 2612ab37 (9ef676d6…) Apache-2.0
PP-OCRv6_tiny_rec_fp16.onnx the same in FP16 convert_fp16.py over the file above Apache-2.0
PP-OCRv6_small_rec_fp32.onnx PP-OCRv6 text recognition, small tier (18710-way CTC) — the tier served by default (OCR_REC_MODEL) bit-identical copy of PaddlePaddle/PP-OCRv6_small_rec_onnx inference.onnx @ b8f84f0b (5435fd74…) Apache-2.0
PP-OCRv6_small_rec_fp16.onnx the same in FP16 convert_fp16.py over the file above Apache-2.0
PP-OCRv6_medium_rec_fp32.onnx PP-OCRv6 text recognition, medium tier (18710-way CTC, the same dictionary as small) bit-identical copy of PaddlePaddle/PP-OCRv6_medium_rec_onnx inference.onnx @ 50c7eaca (9c09abf0…) Apache-2.0
PP-OCRv6_medium_rec_fp16.onnx the same in FP16 convert_fp16.py over the file above Apache-2.0
SLANet_plus_encoder.onnx SLANet-Plus encoder (PP-LCNet), the official graph up to the GRU loop's feature input onnx.utils.extract_model over PaddlePaddle/SLANet_plus_onnx inference.onnx @ 7dbe640e (7790c0c1…) — scripts/models/export_slanet_plus.py::extract_encoder Apache-2.0
SLANet_plus_decoder.bin the GRU decoder's 16 parameter tensors as float32 (DocParser's host decoder) export_slanet_plus.py::dump_decoder over the same file; byte-identical to TurboOCR's slanet_plus_decoder.bin (f4b9f9b2…), and 16 of 16 tensors bit-equal to the named head. subtree of SLANet_plus_pretrained.pdparams (--verify-decoder) Apache-2.0
PP-FormulaNet_plus-M_encoder.onnx, _prep.onnx, _decoder_step.onnx, _tokenizer.json PP-FormulaNet_plus-M split for a host decode loop: vision encoder, the cross-attention K/V computed once per crop, and one greedy step against a static KV cache scripts/models/export_ppformulanet.py --model plus_m over PaddlePaddle/PP-FormulaNet_plus-M — the encoder cut from the paddle2onnx graph, the decoder's 165 tensors read by name from the official training checkpoint (PP-FormulaNet_plus-M_pretrained.pdparams, 165 of 165 bit-equal to the conversion's own numbering); gated at 12/12 identical tokens against PaddleX's own runtime Apache-2.0
PP-FormulaNet_plus-S_encoder.onnx, _prep.onnx, _decoder_step.onnx, _tokenizer.json the same split for plus-S, which decodes three tokens per step (parallel_step: 3) — the throughput tier scripts/models/export_ppformulanet.py --model plus_s; decoder weights by name likewise (61 of 61); same gate, 12/12 Apache-2.0

Contracts (inputs, normalisation, post-processing) follow each source's inference.yml; the pre/post-processing code is in the DocParser checkout (crates/docparser-inference/src/preprocess/, deploy/triton_model_repository/). The CTC dictionary of the recogniser is a text file in that checkout, not here. Why these models and not their siblings is measured in docparser-bench/docs/BENCH-2026-09.md (OmniDocBench v1.6 §8, the per-slot ablations §1–7).

Redistribution: all files are Apache-2.0, under that licence with this attribution. (Texo, an AGPL-3.0 checkpoint, served the formula slot's throughput tier until Stage 14 and was replaced by PP-FormulaNet_plus-S; nothing here is copyleft any more.)

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support