在大语言模型(LLM)如ChatGPT、Claude、Gemini日益强大的今天,人们希望它们不仅能“生成”,还要“准确生成”。然而,LLM训练的数据往往是静态的、封闭的,这使得它们在面对时效性强、专业性高、上下文复杂的问题时,力不从心。
在有些时候,企业内部或者事业部门内部的数据是不允许公开上传的,那么也就没有办法享受到大模型的服务,生产力也得不到解放。
这时,RAG(Retrieval-Augmented Generation,检索增强生成)应运而生。它是连接“生成能力”与“外部知识”的桥梁,让LLM不再是“闭门造车”,而成为真正的知识型智能体。
关于RAG的介绍可以参考什么是RAG?一文搞懂检索增强生成技术。
对于RAG来说,最重要的无疑是从文档中提取内容作为知识库,所以从文档中提取得到高质量的数据至关重要。
下面介绍当下对pdf文件进行解析的方法。
1.pdf解析难点
pdf是一种和docx以及doc文档一样最常见的文档格式。以下介绍和分析以gpt3论文中的第9页为例。
尽管 PDF(Portable Document Format)是一种通用、稳定、跨平台的文档格式,但它并不是为结构化数据提取设计的格式,这也使得从中提取高质量、结构化的知识成为一项技术挑战。主要难点包括:
1. 格式复杂、结构不统一
PDF 文件更像是“数字版的打印纸张”,其本质是页面渲染信息,而不是像 HTML、XML 那样的结构化标记语言。这导致同样是一个段落或表格,不同的 PDF 文件可能用完全不同的底层表示方式来编码。因此:
- 标题和正文没有语义上的“层级结构”;
- 表格、列表、图像和段落难以准确分离;
- 多栏排版、复杂排版(如学术论文)易导致文本顺序错乱。
2. 内容可能是图片而非文本
许多扫描版文档(如合同、书籍、报表等)将内容以图像形式嵌入 PDF,此时需要 OCR(Optical Character Recognition,光学字符识别)工具进行识别,但 OCR: