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
最新文章
- 用 Poe-API-wrapper 连接 DALLE、ChatGPT,批量完成AI绘图或文字创作
- RESTful Web API 设计中要避免的 6 个常见错误
- LangGraph 工具详解:构建 AI 多步骤流程的关键利器
- GitHubAPI调用频率限制的增加方法
- 如何使用Route Optimization API优化配送路线
- 什么是聚类分析?
- 安全好用的OpenApi
- 医疗数据管理与fhir api的未来发展趋势
- 为什么要使用Google My Business Reviews API
- 2025年7月第2周GitHub热门API推荐:rustfs/rustfs、pocketbase/pocketbase、smallcloudai/refact
- API设计的首要原则
- 左手用R右手Python系列——百度地图API调用与地址解析/逆解析