当前位置: 首页 > backend >正文

RAG技术体系问题的系统性总结


一、RAG技术体系核心思路

  1. 总体流程
    数据预处理 → 分块(关键步骤) → 文本向量化 → Query向量化 → 向量检索 → 重排 → Query+上下文输入LLM → 输出生成
    • 分块优化:动态分块、语义分块、混合分块策略可提升召回率(网页16)。

    • 向量检索模型:常用BM25(稀疏检索)、DPR(密集检索)、HyDE(假设性文档嵌入)。

  2. 外挂知识库的核心价值
    • 解决LLM的遗忘问题,提升回答的准确性(基于事实)、时效性(动态更新)、权威性(引用可信源)。

    • 增强对小众领域知识的覆盖,提高可控性与可解释性。


二、RAG评估方法

  1. 检索阶段指标
    • 召回率(Recall@K):前K结果中相关文档比例(网页9)。

    • MRR(平均倒数排名):首个正确答案的排名倒数均值。

    • NDCG(归一化折扣累积增益):衡量排序质量,结合位置权重。

  2. 生成阶段指标
    • BLEU/ROUGE:评估生成文本与参考答案的相似度。

    • 答案忠实度(Faithfulness):生成内容是否与检索信息一致。


三、RAG模块优化策略
1. 检索优化
• 混合检索(Hybrid Search):结合语义向量(如BERT嵌入)与关键词匹配(BM25),兼顾语义与精确性(网页7)。

• 重排序(Reranking):用Rank-BERT、monoT5对检索结果二次排序,提升Top-K质量(网页8)。

• 查询转换:LLM重写查询(如HyDE生成假设性文档),增强语义对齐(网页17)。

2. 索引优化
• 动态分块与元数据:添加时间戳、作者等元数据,支持多维度检索(网页16)。

• 知识图谱增强:用KG实体关系优化索引,解决向量空间语义漂移问题(网页3)。

3. 生成优化
• Prompt工程:设计模板引导LLM基于检索内容生成,减少幻觉(例:“仅根据上下文回答”)。

• Self-RAG:

• 创新点:模型自适应决定检索时机,并对结果进行批判性验证(网页12)。

• 训练/推理:通过检索增强的SFT数据训练,推理时动态插入检索与验证步骤。


四、挑战与高阶优化
1. 向量数据库的局限性
• 问题:语义漂移、长文本效率低、多模态支持弱。

• 解决方案:

• 多模态RAG:结合CLIP(图像)、Table-BERT(表格)嵌入,支持跨模态检索(网页13)。

• 模块化架构:分离检索、重排、生成模块,支持灵活替换(例:用Elasticsearch替代FAISS)。

2. 召回率低优化
• 核心策略:

  1. LLM优化查询与索引:用LLM提取文档关键信息构建结构化索引(网页17)。
  2. 多粒度分块:结合短块(关键词)与长块(语义)提升覆盖(网页16)。
  3. 动态检索策略:根据Query复杂度选择检索范围(例:简单问题仅用BM25,复杂问题触发混合检索)。

3. 知识图谱增强
• 应用场景:法律、医疗等需深度推理的领域。

• 实现方式:

• 将文档实体链接到KG,检索时融合实体关系与向量相似度。

• 生成阶段提示LLM引用KG中的逻辑链(例:“根据[实体A]→[关系]→[实体B]生成回答”)。


五、前沿技术拓展

  1. RAG Fusion:多Query生成 + 结果聚合,提升长尾Query效果(网页18)。

  2. 模块化RAG:支持迭代检索(多次检索逐步细化)、自适应检索(动态调整检索量)。

  3. RAG+SFT联合优化:
    • 用RAG数据微调LLM,增强领域适配性(网页12)。

    • 示例:医疗问答模型微调后,结合RAG检索最新论文。


六、典型问题解析

  1. BERT在RAG中的作用:
    • 语义编码:将文本映射为稠密向量(如DPR模型)。

    • 查询重写:通过NSP(下一句预测)生成扩展Query(网页23)。

  2. 多模态RAG实现:
    • 文本+表格:用PandasAI解析表格,嵌入时保留行列结构。

    • 文本+图片:CLIP生成跨模态嵌入,联合检索(网页13)。


引用来源
RAG基础概念与流程(网页1, 网页2)
知识图谱与检索优化(网页3, 网页16)
Prompt工程技巧(网页5)
向量数据库局限性(网页6)
混合检索策略(网页7)
模块化架构与重排序(网页8, 网页16)
评估指标(网页9, 网页10, 网页11)
Self-RAG技术(网页12)
多模态RAG(网页13, 网页16)
分块与索引优化(网页16)
召回率优化案例(网页17)
RAG Fusion(网页18)
http://www.xdnf.cn/news/4556.html

相关文章:

  • C++并发编程完全指南:从基础到实践
  • BBDM学习笔记
  • Spring Boot 中 AOP 的自动装配原理
  • C语言复习笔记--自定义类型
  • Nacos源码—5.Nacos配置中心实现分析二
  • QT高级(1)QTableView自定义委托集合,一个类实现若干委托
  • C——函数递归
  • 软考冲刺——OSPF简答题
  • 仿真系统-学生选课管理
  • 数字化转型是往哪转?怎么转?
  • 第35周Zookkeeper+Dubbo Dubbo
  • 【前端笔记】CSS 选择器的常见用法
  • Cron 用法
  • 数据管道的解耦艺术:Dagster I/O管理器实现存储与逻辑分离
  • 第二章:MySQL 索引优化与高级应用
  • python的异常处理
  • CODESYS开发环境下的快捷键和软件操作汇总
  • 《C++ Templates》:有关const、引用、指针的一些函数模板实参推导的例子
  • Ubuntu 安装 Keepalived
  • Linux 系统的进阶指令详解
  • 【软件设计师:算法】3.排序算法
  • 微信小程序pinia的应用
  • 对redis的深入了解
  • 【每日刷题】第2天
  • 互联网大厂Java求职面试:AI集成与云原生架构设计
  • Go 面向对象,封装、继承、多态
  • 拆解 Prompt 工程:五大场景驱动 DeepSeek 超越 ChatGPT
  • AUTOSAR图解==>AUTOSAR_SWS_WirelessEthernetTransceiverDriver
  • 【AI入门】CherryStudio入门3:结合FastMCP创建自己的MCP服务,实现哔哩视频查询
  • 梅特卡夫法则——AI与思维模型【97】