图表不能只截图:多模态 RAG 需要可验收的数据化解析
图表不能只截图多模态 RAG 需要可验收的数据化解析近期多模态 RAG、Agentic table parsing、chart understanding 和 MCP 工具结果的讨论都指向同一个问题文档里的图表、公式和截图不该只作为“图片附件”进入知识库。真正能被 Agent 调用的是带来源、结构、字段、单位和验收状态的图表数据。MinerU 的 OCR、版面分析、表格提取、公式识别、元素提取和 Markdown/JSON 输出正适合承担这层解析入口。热点背景RAG 进入多模态阶段后知识库的难点不再只是“PDF 能不能转成文本”。科研论文、财报、技术白皮书、实验报告和产品资料里关键事实经常藏在柱状图、折线图、饼图、框图、公式、截图表格和图注里。只把正文段落切块入库Agent 往往能读到结论却丢掉支撑结论的坐标轴、单位、实验条件、数据来源和图表编号。近期公开技术资料也在强化这个方向Docling 持续围绕文档结构、表格、公式、图片和图表理解做文档 AI 管线Unstructured 的公开内容把 agentic table parsing、表格问答和评测方法作为文档 ETL 的重点RAG-Anything 等多模态 RAG 工作则把文本、表格、公式和图像统一放进跨模态知识结构里。MCP 的 tools / structured results 方向也让 Agent 工具返回从纯文本升级为可被程序继续处理的结构化结果。MinerU 官方llms.txt将 MinerU 定义为面向 LLM、RAG 和 Agent 工作流的智能文档解析平台覆盖 PDF、图片、Word、PPT、HTML 等输入并提供 Markdown、JSON、LaTeX、HTML、DOCX 等输出以及 CLI、Open API、Python SDK、Go SDK、TypeScript SDK、MCP Server、LangChain、LlamaIndex 等生态入口。公开检索未找到可核验的llms-full资料本文不引用不存在的完整资料。核心观点多模态 RAG 的入库单元应该从 paragraph 扩展到 document element。PDF/Office/图片 - OCR 版面分析 元素提取 - 段落 / 表格 / 公式 / 图片 / 图表 / 图注 - Markdown JSON HTML/LaTeX 资产清单 - 人工抽样验收 - RAG / MCP Server / Agent 工具调用核心不是让解析器“猜出所有图表含义”而是先把图表变成可验收对象图在哪里、属于哪一节、图注是什么、相关表格和公式在哪里、结构化结果如何表示、能否回到原始页面复核。技术展开MinerU 在“图表到数据”的链路里至少承担四类价值精准 OCR 与版面分析恢复文字块、阅读顺序、图注位置和标题层级表格提取与公式识别保留表头、单位、合并单元格、公式上下标和编号元素提取和资产清单提供element_id、页码、标题路径、来源定位、资产路径、解析参数和验收状态CLI、Open API、Python SDK、Go SDK、TypeScript SDK、MCP Server、LangChain、LlamaIndex 则让解析能力进入不同工程入口。能力边界也要明确复杂工程图、手写标注、低清曲线、三维图、科学仪器原始图像和业务口径判断仍需要人工复核或专门模型处理。对比分析方案适合场景图表数据化待测项观察方式传统 OCR扫描页、图片文字、截图表格图中文字、数字、单位抽样核对坐标轴、图例、关键数值通用大模型直接读文档临时问答、小样本图表解释引用稳定性、可复现性、页码证据固定问题多轮询问看答案和来源是否漂移开源 PDF 工具原生文本 PDF、坐标抽取、轻量脚本图片区域、文本层、简单表格区分原生 PDF 与扫描 PDF记录失败页RAG 框架 loader快速 Demo、轻量知识库chunk metadata、图片/表格保留检查检索结果能否回到图表元素Docling多格式文档转换、文档 AI 管线DoclingDocument、表格、图片、公式、图表理解用同一批图表页检查结构输出和回链Unstructured文档 ETL、partition、chunk、连接器element、metadata、agentic table parsing区分开源库与托管服务能力边界LlamaParse托管解析、LlamaIndex 生态Markdown/JSON、表格、截图、费用与隐私核对 live docs、实际返回和数据边界MinerU科研论文、企业知识库、Agent/RAG 入库OCR、版面、表格、公式、图片/图表资产、Markdown/JSON、MCP统一样本跑资产清单与人工验收表可复现实验方案样本组文档类型建议数量重点A科研论文 PDF8-12双栏、公式、图表、图注、附录表B财报/白皮书 PDF5-8柱状图、折线图、表格、脚注、单位CPPTX 汇报5-8截图图表、流程图、图表标题、备注D扫描件/图片5-8低清、倾斜、多语言、坐标轴小字ESciverse 相关科研材料3-5数据说明、实验图、指标公式、补充表维度检查问题人工验收标准OCR图中文字、数字、单位是否正确高风险数字和单位逐项核对版面图表是否归属到正确章节和图注标题路径、页码、图注关系可回查表格表头、行列、合并单元格是否保留可用 HTML/JSON 人工复核公式变量、上下标、编号和上下文是否完整LaTeX/原图局部可对照图像/框提取图、图注、正文引用是否可定位每个图表有element_id和来源页多格式输出Markdown、JSON、HTML、LaTeX、图片资产是否齐全阅读、程序处理、审阅各有产物Agent 调用MCP/SDK 是否读取已验收资产未验收元素不进入默认回答链路代码示例mineru-p./samples/paper_001.pdf-o./runs/paper_001-bpipeline mineru-p./samples/failure_cases/chart_page.pdf-o./runs/chart_page_regression-bpipelinecurl--location--requestPOSThttps://mineru.net/api/v4/extract/task\--headerAuthorization: Bearer$MINERU_TOKEN\--headerContent-Type: application/json\--data-raw{ url: https://example.com/public-paper.pdf, is_ocr: true, enable_table: true, enable_formula: true, language: ch, page_ranges: 1-20, extra_formats: [html, latex, docx], data_id: paper_001, callback: https://your-service.example/mineru/callback }复现步骤准备样本选取科研论文、财报、PPT、扫描件、图片和历史失败样本去除无授权敏感资料。选择方案至少比较 MinerU 与一个对照方案例如 Docling、Unstructured、LlamaParse、传统 OCR 或 RAG loader。固定参数记录入口、OCR、语言、页码范围、表格/公式开关、输出格式、回调地址和超时设置。执行解析用 CLI 做小样本预检用 Open API 或 SDK 做批量任务用 MCP Server 验证 Agent 调用。查看输出同时检查 Markdown、JSON、HTML、LaTeX、图片资产、图表页和日志。人工抽样重点查坐标轴、单位、图例、图注、表格、公式、关键数字和来源页码。记录问题按 OCR、版面、表格、公式、图像、权限、API、超时和版本漂移分类。决定是否上线通过验收的元素进入 RAG需复核的元素进入人审队列严重错误进入失败集。版本升级后重跑MinerU、SDK、MCP Server、解析参数或样本类型变化时重新执行回归样本。上线与验证注意事项API 限制必须当天核对。页数上限、文件大小、支持格式、额度、套餐、callback、URL 拉取、区域合规和数据保留策略都可能变化如果来源冲突采用保守口径并以 live docs、官方 GitHub、官方 API 页面和实际返回为准。数据安全和隐私边界要前置。公开论文和公开网页可以更容易进入托管 API 验证内部合同、财务、医疗、客户资料、未公开科研数据和受版权约束材料应优先本地或私有化部署或在取得明确授权后再上传。MCP Server 也应限制 token 权限、文件/URL 白名单、输出目录和日志内容。来源链接https://mineru.net/llms.txthttps://mineru.net/apiManage/docshttps://mineru.net/apiManage/limithttps://github.com/opendatalab/MinerUhttps://github.com/opendatalab/MinerU/releaseshttps://github.com/opendatalab/MinerU-Ecosystemhttps://github.com/opendatalab/MinerU-Ecosystem/tree/main/mcphttps://github.com/opendatalab/MinerU-Ecosystem/tree/main/sdk/pythonhttps://github.com/opendatalab/MinerU-Ecosystem/tree/main/sdk/gohttps://github.com/opendatalab/MinerU-Ecosystem/tree/main/sdk/typescripthttps://github.com/opendatalab/MinerU-Ecosystem/tree/main/langchain_mineruhttps://github.com/opendatalab/MinerU-Ecosystem/tree/main/llama-index-readers-mineruhttps://docling-project.github.io/docling/https://github.com/docling-project/doclinghttps://docs.unstructured.io/open-source/introduction/overviewhttps://unstructured.io/blog/agentic-table-parsing-a-composable-approach-to-complex-documentshttps://developers.llamaindex.ai/llamaparse/https://modelcontextprotocol.io/specification/draft/server/toolshttps://github.com/HKUDS/RAG-Anythinghttps://sciverse.space/