所有文章 > AI驱动 > LLM之RAG理论(六)| 高级RAG指南和技巧

LLM之RAG理论(六)| 高级RAG指南和技巧

一、基本RAG介绍

       基本RAG需要从外部知识数据库中获取文档,然后,将这些文档与用户的查询一起被传输到LLM,用于生成响应。从本质上讲,RAG包括一个检索组件、一个外部知识数据库和一个生成组件。

在基本的RAG场景中,大致有如下步骤:首先将文本划分为多个块,使用Transformer Encoder模型将这些块嵌入到向量中,将这些向量存储到向量数据库并建立索引,查询会检索向量数据库中相关的上下文,这些上下文和查询一起生成最终的LLM提示,并引导LLM合成响应。

RAG系统包含三个关键模块:

Retriever:从上下文相关的知识源中检索文本段落;

Reranker(可选):对检索到的段落重新打分和重新排序;

Generator:将上下文与检索到的段落集成以生成输出文本

二、使用LangChain和Huggingface实现基本RAG

三、高级RAG

       最基本、最简单的RAG系统有时候会检索不到相关的上下文,因此需要一些更高级的方法来增强RAG系统,比如:查询转换、重排序等。

3.1 高级RAG(检索增强生成)技术涵盖以下内容:

🔍 基本RAG:它涉及从外部知识数据库中检索文档,并将这些文档与用户的查询一起传递给LLM以生成响应。主要组件是检索组件、外部知识数据库和生成组件。

🌐 RAG的成功要求:一个成功的RAG系统应该有两个主要功能:检索必须找到与用户查询最相关的文档,生成必须有效地利用这些文档来回答用户查询。

💡 高级RAG:构建高级RAG需要应用更复杂的技术和策略来满足成功要求。这些技术既可以独立地满足其中一个高级成功需求,也可以同时满足这两个需求。

🎯 高级检索技术:这包括通过网格搜索执行超参数调整,以及为递归或路由检索构建外部知识。

🖥️ 高级生成技术:这包括充分利用检索到的文档,对结果进行重新排序,以及使用信息压缩来减少噪声。

🤝 同时定位检索和生成的高级技术:这包括生成器增强检索和迭代检索生成器RAG

3.2 高级RAG常用的技术

a)基本索引

b)分层索引

c)语句窗口检索

d)父文档检索器

e)融合检索

f)查询转换

g)聊天引擎检索

h)多文档检索

3.3 高级RAG技术总结:

       RAG通过集成外部知识检索来增强语言模型,从而提高生成的准确性、相关性和信息覆盖率。

      检索器的进步提升了长文档和关键字查询的词汇、语义和上下文相关性匹配度。

       重排序体系结构专门用于精确预测相关性,采用结合预训练、模型大小和网络体系结构的策略。

       生成器通过截断提取加权记忆无缝地整合外部证据。

      混合RAG系统将两种LLM结合在一起,以最大限度地提高质量和高效SLM的可扩展性和吞吐量。

参考文献:

[1] https://regupathit.medium.com/advanced-rag-cooking-guide-techniques-3e505b4fb76f

本文章转载微信公众号@ArronAI

#你可能也喜欢这些API文章!