yfedoseev/pdf_oxide

The fastest PDF library for Python and Rust. Text extraction, image extraction, markdown conversion, PDF creation & editing. 0.8ms mean, 5× faster than industry leaders, 100% pass rate on 3,830 PDFs. MIT/Apache-2.0.

解决的问题

PDFOxide 是一款高性能 PDF 工具包,旨在克服现有库的速度和许可限制。它为 PyMuPDF 等工具提供了一个快速的、采用 MIT 许可的替代方案,能够使用 20 种不同的编程语言从 PDF 中高效地提取文本、图像和布局。

工作原理

该项目基于 Rust 核心构建,负责处理 PDF 处理的繁重工作。为了提供广泛的访问能力,它公开了稳定的 C ABI,从而可以为其他 19 种语言(包括 Python、Go、JS/TS、Java 和 C++)创建惯用的绑定。它还包含一个用于基于终端处理的 CLI 工具,以及一个允许 Claude 和 Cursor 等 AI 助手在本地与 PDF 交互的 MCP 服务器。

适用对象

  • RAG 和 LLM 开发人员:需要将 PDF 转换为干净的 Markdown 以用于检索增强生成流水线的开发人员。
  • AI 助手构建者:希望将本地 PDF 访问集成到其代理中的构建者。
  • 数据工程师:为学术研究或从表单和表格中进行结构化数据提取而大规模处理数千个 PDF 的工程师。
  • 软件开发人员:正在寻找具有宽松 MIT 许可的 PyMuPDF 替代方案的开发人员。

亮点

  • 极速性能:每份文档的平均处理时间为 0.8 毫秒,据称比 PyMuPDF 快 5 倍,比 pypdf 快 15 倍。
  • 广泛的语言支持:支持 20 种语言的原生绑定,包括 Rust、Python、Go、JS/TS、C#、Java、Kotlin、Swift、C++ 等。
  • 高可靠性:在 3,830 个真实世界的 PDF 语料库(veraPDF、Mozilla pdf.js 和 DARPA SafeDocs)上实现了 100% 的通过率。
  • AI 就绪:内置 MCP 服务器,可与 AI 助手直接集成。
  • 全面的功能集:支持文本、图像和布局提取,以及 PDF 创建、编辑和表单填写。