游乐游手机版
首页/AI热点日报/热点详情

RAG效果差?PDF预处理没做好是关键

类型:热点整理2026-07-14
PDF解析阶段丢失结构化信息是RAG效果差的主因。经比较,Docling提取标题、表格等结构效果最佳但速度慢。采用云服务并行处理可将大规模任务从17小时压缩至分钟级,进而构建知识图谱用于GraphRAG的多跳推理场景。

为什么你的RAG效果差?可能PDF没准备好!

将PDF转换为文本,过去只是“勉强可用”,如今已能“轻松实现”。但许多RAG系统表现不佳,根源往往在于PDF解析阶段丢失了关键的结构化信息。本教程将带你从PDF解析工具选型大规模并行处理方案,全面掌握构建高质量RAG数据管道的核心技术。

1. 为什么选择GraphRAG?

最近我搭建了一个图数据库,用于RAG系统——换句话说,我们构建了一个GraphRAG。相比传统向量数据库支持的RAG,GraphRAG拥有一个显著优势——推理能力更强。例如:

问题A:「XYZ公司去年CFO是谁?」
这种问题,向量搜索就能轻松解决,因为年报中通常直接写明。

但换成这样:

问题B:「XYZ公司有哪两位董事是同一所学校毕业的?」
如果年报没有直接提及学校名称,向量搜索就“无能为力”了。而GraphRAG则能胜任,因为它可以推理出隐含关系。

但问题来了——如何构建这个图? 如果我们再深入一步思考:如何从PDF中提取信息来构建知识图谱? 这篇文章就来讲解这个过程。

2. 主流PDF解析工具效果对比

所有工程步骤都从一件事开始:将PDF转化为文本数据。但年报并非普通PDF,它们包含大量图表、表格、结构化数据。大多数Python开发者用过这些PDF解析库:

  • PyPDF2 —— 老牌工具,能用,但功能简陋。
  • PyMuPDF4LLM —— 可将PDF直接转为Markdown格式。
  • Docling —— IBM Deep Search出品,提取效果惊艳。
  • Marker —— 另一个较新的工具,表现也不错。

2.1 各工具提取效果对比

  • PyPDF2:纯文本提取,无任何结构。段落、标题、表格、列表,全部混在一起。
  • PyMuPDF4LLM:能转换为Markdown,包含结构信息,得到LangChain等框架支持,但表格提取效果不佳。
  • Docling:表现最强!能保留标题层级、表格结构,甚至为图片添加占位符。
  • Marker:也不错,但整体信息保留度不如Docling。

3. Docling的优势与速度问题

我们进行了一项实验,从包含文字、表格、图片混合段落的年报中提取内容,放置在不同页数的PDF中,测试各工具的处理速度。结果如下:

  • Docling:每页大约4秒
  • Marker:每页大约8秒
  • PyPDF2:极快,但结构信息很少

如果处理几十份报告(例如50份,每份300页),那么意味着:

300页×50份×4秒÷3600秒≈17小时

这还在可接受范围内。但如果扩展到标普500所有公司30年的年报——就需要处理上百万页。单机运行不现实,因此我们选择了云服务+并行处理方案。

来源:https://www.53ai.com/news/RAG/2025062336975.html

相关热点

继续查看同栏目近期热点。

延伸阅读

补充最近整理过的热点入口。