专栏名称: 数据派THU
本订阅号是“THU数据派”的姊妹账号,致力于传播大数据价值、培养数据思维。
目录
相关文章推荐
数局  ·  青眼情报:2024年中国化妆品年鉴 ·  2 天前  
数据派THU  ·  报名|大数据产业论坛——航空航天专场 ·  3 天前  
艺恩数据  ·  2025人生四双鞋:京东趋势白皮书 ·  3 天前  
51好读  ›  专栏  ›  数据派THU

独家|为RAG准备好PDF

数据派THU  · 公众号  · 大数据  · 2025-05-26 17:00

正文

请到「今天看啥」查看全文


图片来自Unsplash的年度报告设计机构-Yak Report


可以将PDF转换成文本但是从来没那么容易过。


我最近在RAG(检索增强生成,retrieval-augmented generation)中创建了一个图形数据存储。换句话说,我们创建了一个GraphRAG。


如何在几分钟内建立一个知识图形(并使其适合企业使用)


图形RAG对其他广泛使用的支持矢量存储的RAG软件来说是一个极好的替代。他们引入了推理。例如,使用语义相似性检索(在矢量存储中用于提取信息的技术),你可以提问去年某一公司的CFO是谁。因为某一公司去年的年度报告会明确提到它的CFO。但是考虑这样一个问题:某公司的哪两位主管曾在同一学校学习?如果没有提到学校名字,提取过程并不能获取任何相关信息。但是图形RAG可以。


然而,关键问题是我们如何构建图形来提取信息。我最近在另一篇文章中提到这个问题。往回想一步,我们是如何以更容易创建图形的方式来准备年度报告的呢?


这是本文的关注点所在。


我们所有工作的第一步是将PDF数据转换成文本。然而,年度报告是复杂的文件。不会仅仅有文本。还有图和表等等。每一部分都提供了关于公司的关键信息。


所以,让我们从这里开始。


如何将PDF转换为富文本


大多数Python程序员都会在某些时候使用PDF阅读器——至少是为了跟随教程。最流行的事PyPDF2。


大多数的库确实能够完成工作。但是信息的帮助性却不大。


我很多年前就知道PyPDF2库了,它能提取所有的PDF内容为文本,没有任何格式。提取之后,你就不知道什么是题目什么是列表了。


然后就是PyMuPDF4LLM。这个包可以直接将PDF转换为markdown。Markdown也有大量关于文本结构的关键信息。像Langchain这样的框架支持markdown。他们使用文本格式中的额外信息来更好地分块和存储数据。反过来也使得提取相关数据更加容易。


PyMuPDF4LLM的问题在于,它不能很好地处理表格。提取的表格与原始表格相差甚远。(不要放弃PyMuPDF4LLM。它在我们的最终解决方案中仍然发挥了不可思议的作用)。


最近,我们尝试了几个其他的现代工具。一个是Docling,由IBM Deep Search开发的开源库,另一个是Marker,一个同样非常好的库。


下面是我们讨论的四个包转换的相同Pdf页输出。


PyPDF2:


信息提取为文本从PDF使用PyPDF2 -截图来自作者。


PyMuPDF4LLM:


使用PyMuPDF4LLM从PDF中提取的降价信息-截图来自作者。


Docling:


信息提取作为标记从PDF使用粘贴-截图来自作者。


Marker:


信息提取为markdown从PDF使用标记-截图来自作者







请到「今天看啥」查看全文