All RAG Techniques

2个月前更新 347 00

这个 RAG 学习资源库的目标非常明确:降低 RAG 学习门槛,提升理解深度。无论你是学生、研究人员还是工程师,都能在这里找到适合自己水平的实践材料。通过亲手实现每一个 RAG 技术,你将更深刻地理解其工作原理,并能灵活应用于实际项目中。

所在地:
中国
收录时间:
2025-06-26
All RAG TechniquesAll RAG Techniques

检索增强生成(Retrieval-Augmented Generation, RAG)是当前大模型应用中最具实用价值的技术之一。它通过将外部知识库引入生成流程,显著提升了模型回答准确性与上下文相关性。

本项目提供了一套完整的 RAG 技术学习资源库,涵盖从基础实现到高级技巧共 20+ 种方法,每种技术都配有独立的 Jupyter Notebook 文件,包含详细代码示例和讲解,适合从零入门到深入理解 RAG 的原理与应用。

🎯 项目亮点

  • 无需依赖复杂框架:不使用 LangChain 或 FAISS 等封装库,全部基于 Python 常用库(如 openainumpymatplotlib)构建。
  • 注重基础原理:帮助你真正理解嵌入、向量存储、余弦相似度、分块、检索、生成和评估等核心概念。
  • 可读性强:所有代码都带有内联注释,便于阅读、修改和扩展。
  • 可视化辅助:每个技术点均配有图表展示效果,提升学习效率。
  • 持续更新:不断加入新方法和实验思路,保持内容前沿性。

📦 内容概览

✅ 核心模块说明

模块描述
1. 简单 RAG入门级实现,掌握基本流程与架构
2. 语义分块基于语义相似度划分文本,提高检索精度
3. 分块大小选择器探索不同分块粒度对性能的影响
4. 上下文增强 RAG利用相邻文本块提供更多背景信息
5. 上下文分块标题在嵌入前为文本块添加描述性标题
6. 文档增强 RAG从文本生成问题以辅助检索过程
7. 查询转换使用 Step-back Prompting 和子查询分解优化查询
8. 重排序器利用 LLM 对检索结果重新排序
9. 相关片段提取提取连续文本片段,保持语义完整性
10. 上下文压缩过滤冗余信息,压缩检索结果
11. 反馈循环 RAG引入用户反馈机制,实现系统自我优化
12. 自适应 RAG动态选择最优检索策略
13. 自监督 RAG (Self-RAG)自动判断是否需要检索及如何检索
14. 命题分块将文档拆解为原子事实陈述,提升检索精准度
15. 多模态 RAG结合图像与文本进行联合检索
16. 融合 RAG同时使用向量搜索与关键词匹配
17. 图 RAG构建图结构表示知识,支持关系推理
18. 层次化 RAG使用摘要与详细分块结合,提升检索效率
19. HyDE RAG利用假设文档嵌入提升语义匹配质量
20. 校正 RAG动态评估检索质量并补充网络搜索
21. 强化学习 RAG利用强化学习机制优化 RAG 效果
最佳 RAG 查找器综合使用多种策略寻找最适合当前查询的 RAG 方法
22. 知识图谱处理大数据使用图结构管理大规模数据集

🔬 更新日志

  • 2025年5月12日:新增“使用知识图谱处理大数据”的 Notebook
  • 2025年4月27日:新增“最佳 RAG 查找器”——结合重排序与查询改写寻找最优策略
  • 2025年3月20日:新增“强化学习 RAG”实现
  • 2025年3月7日:新增 20 种 RAG 技术实现

🧪 学习路径建议

如果你是 RAG 新手,推荐按如下顺序学习:

  1. 简单 RAG
  2. 语义分块
  3. 查询转换
  4. 重排序器
  5. 自监督 RAG
  6. 图 RAG / 层次化 RAG

随着理解加深,你可以尝试:

  • 结合多个技术形成复合型 RAG 系统
  • 探索多模态检索的应用场景
  • 实现动态调整的自适应 RAG 流程

📁 项目结构说明

本项目采用模块化设计,每个 .ipynb 文件专注于一种 RAG 技术,结构统一:

  • 技术要点解释:简明扼要介绍该方法的核心思想
  • 逐步实现:从数据预处理到最终生成答案,全过程代码演示
  • 代码注释详尽:每一步都有清晰注释,便于理解与调试
  • 结果评估与可视化:对比不同方法的效果差异

数据统计

相关导航

暂无评论

none
暂无评论...