OpenDataLoader PDF
OpenDataLoader PDF 涵盖 PDF 数据提取与 PDF 无障碍自动化。
核验日期
核心信息
以下信息由程序从官方接口读取,不经模型改写。
- 许可证
- Apache-2.0
- 语言
- Java
- 维护方
- opendataloader-project
- 核验日期
它是什么
OpenDataLoader PDF 涵盖 PDF 数据提取和 PDF 无障碍自动化两方面。该项目采用 Apache-2.0 许可证。它提供面向 Python、Node.js 和 Java 的 SDK。它的输入是 PDF 文件,包括数字版、扫描版和带标签的 PDF。
主要能力
输出格式包括 Markdown、带边界框的 JSON、HTML、带标签 PDF,以及企业版的 PDF/UA。
免费层支持为每个元素提供边界框、带坐标的图像提取、标题层级检测和带标签 PDF 的结构提取。
它使用 XY-Cut++ 阅读顺序分析来排列多栏页面、侧栏和混合版式中的文本,并通过边框分析和文本聚类检测表格,同时保留行列结构。
免费层支持提示注入过滤形式的 AI 安全,也支持页眉、页脚和水印过滤。
免费层通过混合模式支持扫描 PDF 的 OCR、LaTeX 公式提取,以及复杂或无边框表格的提取。
自动打标签可将未打标签的 PDF 转为带标签 PDF,免费且采用 Apache 2.0。
怎么上手
运行下方示例需要 Java 11+ 和 Python 3.11+;开始前先在终端检查 Java 版本,找不到就安装 JDK 11+。
混合模式将本地 Java 处理与 AI 后端结合,该后端在用户的本机上运行。
OCR 引擎通过专门的引擎选项选择,OCR 质量会随引擎、语言和文档本身而变化。
可以从科学类 PDF 中提取数学公式并输出为 LaTeX,公式和图片描述增强要求客户端使用完整混合模式选项。
如果在带标签 PDF 上同时设置了结构树选项和混合选项,则使用结构树,不会调用混合后端。
pip install -U opendataloader-pdfimport opendataloader_pdf
# Batch all files in one call — each convert() spawns a JVM process, so repeated calls are slow
opendataloader_pdf.convert(
input_path=["file1.pdf", "file2.pdf", "folder/"],
output_dir="output/",
format="markdown,json"
)pip install -U opendataloader-pdfimport opendataloader_pdf
# Batch all files in one call — each convert() spawns a JVM process, so repeated calls are slow
opendataloader_pdf.convert(
input_path=["file1.pdf", "file2.pdf", "folder/"],
output_dir="output/",
format="markdown,json"
)pip install -U "opendataloader-pdf[hybrid]"opendataloader-pdf-hybrid --port 5002适合谁
该项目不处理 Word、Excel 和 PPT。它不需要 GPU。项目方称,本地模式在 CPU 上每秒处理 60 页以上(每页 0.02 秒),该基准在 Apple M4 上测得。
将带标签 PDF 转换为 PDF/UA-1 或 PDF/UA-2 属于企业版附加功能。标题层级选项先从 PDF 大纲、再从章节编号推断标题深度,层级上限为 H6。对敏感数据(邮箱、网址、电话号码替换为占位符)的脱敏需要显式启用。
自动打标签遵循 PDF Association 的 Well-Tagged PDF 规范,并使用 veraPDF 验证。2.0 之前的版本仍采用 MPL 2.0,用户可以继续使用。项目提供 LangChain 集成。
来源
本页内容整理自以下官方来源,点击可核对原文。
- GitHub READMEhttps://github.com/opendataloader-project/opendataloader-pdf抓取于
核验日期 ·
本页由 AI 依据上述官方来源整理,并经自动核对,未经本站实测。 发现错误?告诉我们。