在了解这篇文章之前,如果对RAG技术不是很了解,可以参考之前发表的一篇博客中的内容 到底什么是RAG技术以及有哪些chunk切片策略?一文带你了解核心流程。-CSDN博客

本文将会对RAG在实际落地过程中,可能遇到的问题进行分析,主要从数据准备、知识检索、答案生成三个阶段进行优化。

目录

数据准备阶段

可能存在的问题

解决方案:

1.构建完整的数据准备流程

2.智能文档技术 IDP

知识检索阶段

可能存在的问题

解决方案:

1. 查询转换澄清用户意图

2. 混合检索和重排策略

3.优化向量表示

答案生成阶段

可能存在的问题

解决方法

1. 改进Prompt

2. 实施动态防护栏


数据准备阶段

可能存在的问题

  • 数据质量差:企业数据(尤其是非结构化数据)缺乏良好的数据治理,未经标记/评估的非结构化数据可能包含敏感、过时、重复、矛盾或不正确的信息。

  • 多模态信息:提取、定义和理解文档中的不同内容元素,如标题、配色方案、图像和标签等存在挑战。

  • 复杂的PDF提取:PDF是为人类阅读而设计的,机器解析起来非常复杂。

解决方案:

1.构建完整的数据准备流程
  • 数据评估与审查:审查现有数据,识别敏感、过时、矛盾或不准确的信息。

  • 数据清洗:删除错误,重复数据,替换过时信息,避免模型检索到噪声。

  • 敏感信息处理:对敏感数据进行脱敏处理,确保合规

  • 数据标记与标注:为数据添加元数据,如来源时间作者等

  • 数据治理框架:明确数据管理,访问以及更新流程。指定数据治理负责人,定期监控数据质量,进行审计。

全面审查现有数据,识别敏感、过时、矛盾或不准确的信息。去除冗余错误过时等信息,避免模型检索到噪声。

2.智能文档技术 IDP
  • 对不同类型文档(PDF、Word、图片等)进行统一解析和结构化表示。

  • 多模态支持:图片使用 OCR + 多模态模型提取语义;音视频通过 ASR(如 Whisper)生成文本;表格、图表信息结构化。

  • 目标是建立干净、结构化、可索引的知识库,提高后续检索和生成的准确性。

知识检索阶段

可能存在的问题

  • 内容缺失:当检索过程缺少关键内容时,系统会提供不完整的答案。

  • 召回相关性不足:用户查询可能被检索到,但相关文档排名靠后而未被使用。Top-k 策略选择不当可能漏掉重要信息。

解决方案:

1. 查询转换澄清用户意图

意图识别:使用自然语言处理技术识别用户意图。

查询扩展:根据识别结果扩展查询,使用扩展后的查询检索相关文档。(可以用llm扩展,或规则映射)

2. 混合检索和重排策略

混合检索:结合关键词检索和语义检索(多路召回提升覆盖率)

Rerank重排:用模型或排序算法对召回结果重新排序,提高 Top-k 文档的相关性。对检索结果进行重排,从重排后的文档中生成答案。

Top k:动态调整 k 值,根据问题复杂度选择召回数量

3.优化向量表示
  • 考虑选择高质量的embedding 模型(如 OpenAI embedding、BGE-Large)

  • 对长文档进行合理切片(chunk策略),保证检索向量精确覆盖语义。

答案生成阶段

可能存在的问题

  • 未提取:正确答案出现在所提供的上下文中,但模型未准确识别。这种情况通常发生在上下文中存在过多噪音或存在冲突的信息。

  • 不完整:模型回答时,可能遗漏关键细节或部分信息

  • 格式错误:Prompt 中附加指令不清晰,导致模型输出不符合预期格式

  • 幻觉:大模型生成虚假信息或无依据内容。

解决方法

1. 改进Prompt
  • 明确要求模型只基于检索内容回答,避免幻觉。

  • 引导模型在回答时标注出处。

  • Pompt格式规范

2. 实施动态防护栏

实施动态防护栏是一种在生成式AI系统中用于实时监控和调整模型输出的机制,目的是确保生成的内容符合预期、准确且安全。它通过设置规则、约束和反馈机制,动态地干预模型的生成过程,避免生成错误、不完整、不符合格式要求或有幻觉的内容。

例如:

静态规则:禁止输出敏感词 A、B、C

‘“检查生成的答案是否包含“步骤”和“材料”。 如果缺失,提示模型重新生成”,“生成的答案必须包含检索到的知识片段中的关键实体”。

动态防护栏也可应用在输入阶段和检索阶段,作为多层安全保障。建议将规则存储在数据库或配置中心,避免硬编码,方便更新与扩展。

Logo

为武汉地区的开发者提供学习、交流和合作的平台。社区聚集了众多技术爱好者和专业人士,涵盖了多个领域,包括人工智能、大数据、云计算、区块链等。社区定期举办技术分享、培训和活动,为开发者提供更多的学习和交流机会。

更多推荐