RAG 技术 01 - 数据预处理

在构建 RAG 应用时,提前对接入的知识进行预处理,能减轻检索的压力,提升回答的准确度

使用 llm 提升信息密度

在处理原始数据时,无关信息或不相关的内容,可能会给检索过程带来干扰,通过 LLM 可以从原始数据中提取有用的信息,总结过于冗长的文本,或隔离关键事实,从而提高信息密度。甚至可以将原始数据转为更密集、更清晰的知识图谱

如使用以下 prompt 对数据进行整理

1
You are a data processing assistant. Your task is to extract meaningful information from a scraped web page from XYZ Corp. This information will serve as a knowledge base for further customer inquiries. Be sure to include all possible relevant information that could be queried by XYZ Corp's customers. The output should be text-only (no lists) separated by paragraphs.

如对网页文件处理后,原始 HTML 约有 55000 tokens,而使用 GPT4 提取后的信息约有 330tokens,在降低噪声的同时大大提高了信息密度。

![[认识 AdvancedRAG-20250124150225.png]]

使用 llm 删除冗余信息

如果多个文档存在类似内容时,在返回 top 可相近文档时,会存在冗余内容,并且导致检索到其他相关文档能力下降,因此需要对冗余数据进行删除

例如在不同的文档,存在以下内容:

文档 1:“员工必须确保所有客户数据都得到安全存储。未经同意,不得共享客户数据。
文档 2:“所有客户数据都必须加密。分享前需要征得同意。
文档 3:“确保客户数据得到安全存储。未经正确利益相关者同意,请勿共享客户数据。

经过删除后,合并文本为:“客户数据必须安全地加密和存储,未经明确同意,禁止共享客户数据

使用llm删除冗余信息-20241216113932