Skip to content

Latest commit

 

History

History

rag

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 

Advanced RAG Techniques: Elevating Your Retrieval-Augmented Generation Systems 🚀

欢迎来到当今最全面和最动态的检索增强生成(RAG)教程集合之一。此存储库充当旨在提高RAG系统的准确性、效率和上下文丰富性的尖端技术的中心。

该教程完全参考自: https://github.com/NirDiamant/RAG_Techniques

介绍

检索增强生成(RAG)正在彻底改变我们将信息检索与生成人工智能相结合的方式。此存储库展示了精心策划的高级技术集合,旨在增强您的RAG系统,使它们能够提供更准确、上下文相关和全面的响应。

我们的目标是为研究人员和实践者提供一个有价值的资源,以突破RAG的极限。通过营造合作环境,我们的目标是加速这一令人兴奋的领域的创新。

主要的特性

  • 🧠 先进的RAG增强技术
  • 📚 每种技术的全面文档
  • 🛠️ 实用实施指南
  • 🌟 定期更新最新进展

先进的技术

探索先进的RAG技术的列表:

1. Simple RAG 🌱

概述 🔎

介绍基本的RAG技术,非常适合新手。

实现 🛠️

从基本检索查询开始,并集成增量学习机制。

2. Context Enrichment Techniques 📝

概述 🔎

通过嵌入单个句子和将上下文扩展到相邻句子来提高检索精度。

实现 🛠️

检索最相关的句子,同时访问原文中前后的句子。

3. 多方面过滤 🔍

概述 🔎

应用各种过滤技术来提炼和提高检索结果的质量。

实现 🛠️

  • 🏷️ 元数据过滤: 根据日期、来源、作者或文档类型等属性应用过滤器。
  • 📊 相似度阈值: 设置相关性分数的阈值,只保留最相关的结果。
  • 📄 内容过滤: 删除不符合特定内容标准或关键词汇的结果。
  • 🌈 多样性过滤: 通过过滤掉近乎重复的条目来确保结果的多样性。

4. 融合检索 🔗

概述 🔎

通过结合不同的检索方法来优化搜索结果。

实现 🛠️

  • 结合基于关键词的搜索和基于向量的搜索,以实现更全面和准确的检索。

5. 智能重排 📈

概览 🔎

应用高级评分机制来提高检索结果的相关性排名。

实现 🛠️

  • 🧠 基于语言模型的评分: 使用语言模型对每个检索到的块的相关性进行评分。
  • 🔀 交叉编码器模型: 联合重新编码查询和检索到的文档,以进行相似度评分。
  • 🏆 增强元数据排名: 将元数据纳入评分过程,实现更细致的排名。

6.Query 转换 🔄

概述 🔎

修改和扩展 query 以提高检索效果。

实现 🛠️

  • ✍️ query 重写: 重新制定 query 以改善检索。
  • 🔙 后退提示: 生成更广泛的 query 以获得更好的上下文检索。
  • 🧩 子查询分解: 将复杂 query 拆分为更简单的子查询。

7. 分层索引 🗂️

概览 🔎

创建一个多层次系统,用于高效的信息导航和检索。

实现 🛠️

实现一个两级系统,用于文档摘要和详细片段,两者都包含指向数据中相同位置的元数据。

8. 假设性问题(HyDE方法)❓

概述 🔎

生成假设性问题,以改善查询与数据之间的一致性。

实现 🛠️

创建指向数据中相关位置的假设性问题,增强查询-数据匹配。

9. 选择块大小 📏

概述 🔎

选择合适的固定大小的文本块,以平衡上下文保留和检索效率。

实现 🛠️

尝试不同的块大小,为您特定的用例找到在保留上下文和保持检索速度之间的最佳平衡。