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 建立、編輯與表單填寫。