纯 Rust 写的 PDF 分类 + 文本提取库,零 ML 模型,200 文档 0.47 秒搞定
更新于 2026-08-06 · v0.2.6
← 返回汇总PDF 处理流水线的"智能路由器"——先判断要不要 OCR,再决定怎么走
Firecrawl 出品的纯 Rust PDF 库。不做 OCR,不用任何 ML 模型,只干一件事:10-50ms 判断 PDF 是原生文本还是扫描件,原生文本的直接提取成 Markdown,扫描件的标记出来交给 OCR 引擎。核心洞察:约 54% 的 PDF 根本不需要 OCR,对它们调用重型 OCR 引擎纯属浪费。
基准 opendataloader-bench(200 PDF),Apple M4 Pro,OCR 关闭。综合得分满分 1.0。
这是 pdf-inspector 存在的核心理由。Firecrawl 在生产环境中发现,超过一半的 PDF 是原生文本 PDF(电子版报告、论文、合同),文字层完整存在,根本不需要任何 OCR。
Word/LaTeX 导出的 PDF,文字可选中复制。pdf-inspector 直接提取,亚秒级。
纸质扫描/拍照转的 PDF,文字是图像。需要 OCR 引擎(MinerU/DeepSeek-OCR)。
部分页文本、部分页扫描。pdf-inspector 做逐页路由。
pdf-inspector 不是 MinerU/DeepSeek-OCR 的竞品,而是它们的前置智能路由层。正确架构是组合使用:
| 引擎 | 综合 | 阅读顺序 (NID) | 表格 (TEDS) | 标题 (MHS) | 200 文档耗时 |
|---|---|---|---|---|---|
pdf-inspector | 0.875 | 0.915 | 0.814 | 0.788 | 0.470s |
| liteparse | 0.873 | 0.913 | 0.693 | 0.811 | 0.750s |
| opendataloader | 0.831 | 0.902 | 0.489 | 0.739 | 2.569s |
| pymupdf4llm | 0.735 | 0.886 | 0.401 | 0.424 | 17.117s |
| markitdown | 0.589 | 0.844 | 0.273 | 0.000 | 16.165s |
opendataloader-bench 语料(200 PDF),仅本地无模型引擎,OCR 关闭。pdf-inspector 综合分、阅读顺序、表格、速度均第一。比 markitdown 快 34 倍。
# 安装(Rust 编译,需 maturin) pip install maturin maturin develop --release # 用法 import pdf_inspector result = pdf_inspector.process_pdf("document.pdf") print(result.pdf_type) # "text_based" / "scanned" / "image_based" / "mixed" print(result.markdown) # Markdown 字符串(扫描件返回 None)
另有 Node.js(@firecrawl/pdf-inspector)和浏览器 WASM(@firecrawl/pdf-inspector-wasm)绑定,同一套 Rust 核心。
| 项目 | 层次 | 技术路线 | 扫描件 | 速度 | 关系 |
|---|---|---|---|---|---|
pdf-inspector | 规则解析 + 路由 | 纯 Rust,零 ML | ❌ | 极快 | — 本页 — |
| MinerU | 端到端产品 | VLM+OCR 双引擎 | ✅ | 慢 | 下游互补:pdf-inspector 把扫描件交给它 |
| DeepSeek-OCR | VLM 模型 | 单一视觉语言模型 | ✅ | 慢 | 下游互补:扫描件的另一选择 |
| Apache Tika | 通用解析器 | Java,1000+ 格式 | ✅ | 中 | 平行互补:非 PDF 全部交给它 · 看 11 维横评打分表 → |
三者组合 > 单选:pdf-inspector 做网关 → 原生文本自己处理 → 扫描件按需转交 MinerU 或 DeepSeek-OCR。
PDF 解析"成本优化"赛道的标杆。当 LLM 应用大规模处理真实文档时,先用规则吃掉 54% 的简单情况,再把贵的 GPU 留给真正需要 OCR 的部分——这是生产环境的工程常识。Firecrawl 自身已验证这条路径。
不是所有 PDF 都值得上 OCR——pdf-inspector 帮你把简单的先解决掉。
如果你的系统在批量处理 PDF,加一层 pdf-inspector 做前置路由,能省掉一半以上的 GPU 成本。它和 MinerU、DeepSeek-OCR 是搭档关系,不是替代关系。