RAG 系统开发中的 12 大痛点及解决方案


RAG 系统开发中的 12 大痛点及解决方案

图片
  • 痛点1:缺失内容

当实际答案不在知识库中时,RAG 系统可能会提供一个貌似合理但实际错误的答案,而不是直接表明自己无法给出答案。这种情况下,用户可能会因为接收到误导性信息而感到困惑和挫败。针对此问题,我们提出两种解决策略:

1. 数据清洗的重要性

俗话说,“差料出差货”。如果你的原始数据充满错误,如信息自相矛盾,那么无论你如何搭建你的 RAG 处理流程,都无法将输入的杂乱无章转化为有价值的信息。这一解决策略不仅适用于本文讨论的这一问题,也适用于所有提及的问题。高质量的数据是构建任何有效 RAG 流程的基础条件。

2. 对大模型设置合理的prompt

在prompt中明确告诉模型,当它不确定答案时应该怎么回应。

例如:

请记住,如果你对问题不确定或者信息不足,请直接回答:“不知道”而不是猜测答案

痛点2:关键文档被遗漏

有时候,重要的文档可能不会出现在系统返回的最顶端结果中,导致正确的答案被忽略,系统未能提供准确的反馈。正如一篇研究所暗示的那样:“答案虽然在文档中,但因为排名不够高而未能展现给用户”。

我想到了两种可能的解决方法:

1. 通过调整 chunk_sizesimilarity_top_k 参数优化检索效果

chunk_size 和 top k这两个参数关键影响了 RAG 模型在数据检索过程中的效率和准确性。适当调整这些参数,可以在计算效率和信息检索质量之间找到更好的平衡点. 在上传文档时可以根据当前文档的格式手动调整top k 和chunk_size参数,从而提高文档分片的效果。

2. 检索结果的优化排序

对向量库的检索结果进行Rerank,重排序。使相关性最高的数据请求到LLM

痛点 3:文档整合限制 —— 超出上下文

未完待续…..


文章作者: ring2
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 ring2 !
  目录