用途:将 PDF 文档转换为 Markdown,便于作为 LLM 上下文或 RAG 数据;从 PDF 中提取结构化内容(表格、标题、列表);为 AI 消费准备 PDF 数据。当用户说“转换这个 PDF”“解析 PDF”“PDF 转 markdown”“读取这个 PDF”时使用。不适用于生成或创建 PDF、编辑现有 PDF,以及读取已是纯文本的文件(应直接用 Read 工具)。
主要能力:默认输出 Markdown,保留标题、表格、列表、图片等文档结构;支持 JSON(含边界框)、HTML、纯文本及多格式组合输出;支持扫描件 OCR(混合模式)、图片提取(内嵌 base64)、Tagged PDF 结构树。
使用方式:无需安装,使用 uvx opendataloader-pdf 运行。基本转换:uvx opendataloader-pdf input.pdf;指定输出目录:uvx opendataloader-pdf input.pdf --output-dir ./output/;多文件或文件夹:uvx opendataloader-pdf file1.pdf file2.pdf folder/;OCR(扫描件,需混合模式服务器):uvx opendataloader-pdf-hybrid --port 5002 --force-ocr --ocr-lang "ko,en" 与 uvx opendataloader-pdf --hybrid docling-fast input.pdf;图片提取:uvx opendataloader-pdf input.pdf --image-output embedded --image-format png;结构树:uvx opendataloader-pdf input.pdf --use-struct-tree。输出格式通过 --format 指定(markdown、json、html、text 或组合)。未指定输出目录时输出到输入 PDF 同目录。转换后应运行 uvx mdformat 规范化 Markdown,并校验可读性与结构,向用户报告转换问题。
限制与排错:乱码可尝试 --use-struct-tree;扫描件无文本层需混合模式 --force-ocr;复杂或无边框表格建议混合模式;非英文 PDF 需加 --ocr-lang;超大 PDF(100 页以上)建议按页范围或批处理;公式未提取可用混合模式 --enrich-formula。项目配置见 config/pdf-config.yaml,执行步骤见 resources/execution-protocol.md。