本文详细介绍了11种RAG优化策略,分为查询优化(重排序、智能体RAG、知识图谱等)和数据准备(上下文感知切分、延迟切分等)。作者建议从重排序开始,根据数据特点和查询复杂度选择策略组合,逐步测试优化效果,关注成本与收益比。文章提供了从入门到专业场景的实施方案和技术栈推荐,帮助开发者构建更高效的RAG系统。
当AI搜索变成"大海捞针",你需要的是这11把"渔网"
你有没有遇到过这种情况:
问ChatGPT:"上周三的会议有哪些行动项?"它回答:“抱歉,我无法访问您的会议记录。”
问自己搭建的AI助手同样的问题,它给你返回了50条毫不相关的会议片段,或者干脆告诉你"没有找到相关信息"——明明文档就在那里!
这就是为什么**RAG(检索增强生成)**如此重要,但更重要的是——如何让RAG真正"智能"起来。
今天这篇文章,我将用10分钟带你看懂11种RAG优化策略,让你的AI Agent从"能搜索"进化到"会搜索"。更重要的是,我会告诉你什么时候该用哪种策略,以及如何组合它们来获得最佳效果。
1分钟回顾:RAG到底是什么?
在深入策略之前,让我们快速回顾RAG的基本原理。
想象你在图书馆找资料。传统的AI就像一个博学的图书管理员,什么都知道一点,但对你公司昨天的会议内容一无所知(因为训练数据有截止日期)。
而RAG就像给这个管理员配了一套检索系统:
数据准备阶段:
- 把你的文档切成小块(chunking)
- 给每块打上"指纹"(embedding)
- 存进"档案柜"(向量数据库)
查询阶段:
- 你提问:“上周三会议的行动项?”
- 系统给问题也打上"指纹"
- 在档案柜里找相似的文档块
- 把找到的内容交给AI,生成答案
听起来很完美?但现实是——简单的RAG准确率可能只有50-60%。这就是为什么我们需要这11种优化策略。
查询优化篇:让搜索更精准的8种武器
策略1:重排序(Reranking)—— 我几乎每次都用的核心策略
原理:两阶段筛选——先"广撒网",再"精挑选"。
第一步:从向量数据库拉50个可能相关的文档块
第二步:用专门的重排序模型(如Cross-Encoder)重新打分,只留下最相关的5个
类比:就像招聘流程——先海选100份简历,再让HR精筛出5个候选人面试。
适用场景:
- 几乎所有RAG场景(这是我的"默认配置")
- 尤其适合文档量大、相似内容多的情况
Trade-off:
- ✅ 显著提升相关性,避免"淹没"LLM
- ❌ 略微增加成本(但完全值得)
策略2:智能体RAG(Agentic RAG)—— 给AI选择权
原理:不再固定搜索方式,而是让AI Agent根据问题类型选择:
- 语义搜索(找相似内容)
- 关键词搜索(精确匹配)
- 读取整个文档(需要全局理解时)
类比:就像你去餐厅点餐——有时点单品(精确搜索),有时要套餐(语义搜索),有时直接问厨师推荐(读全文)。
适用场景:
- 问题类型多样的场景
- 既需要精确查找又需要模糊匹配
Trade-off:
- ✅ 超级灵活,适应性强
- ❌ 不够可预测,需要清晰的指令设计
实践建议:在Postgres+pgvector中,我会创建两个表——一个存文档块(chunks),一个存完整文档元数据(documents),让Agent自己选择查哪个。
策略3:知识图谱(Knowledge Graphs)—— 当数据有"关系"时
原理:除了向量搜索,还能搜索实体关系。
比如:“找出所有与张三合作过的项目负责人”——这不是简单的语义相似,而是关系查询。
类比:传统RAG是用Google搜索,知识图谱是用LinkedIn找人脉——不仅看内容相似度,还看"谁认识谁"。
适用场景:
- 高度互联的数据(人物关系、组织架构、产品依赖)
- 需要多跳推理(A认识B,B认识C,所以A可能认识C)
Trade-off:
- ✅ 能回答复杂关系问题
- ❌ 构建成本高(需要LLM提取实体关系),速度慢
工具推荐:Graffiti库(Python)是我最喜欢的知识图谱工具。
策略4:上下文检索(Contextual Retrieval)—— Anthropic的秘密武器
原理:在每个文档块前面加一段"说明书",解释这块内容在整个文档中的位置和作用。
举例:
【此段落来自2024年Q3财报,讨论亚太市场增长】 --- 我们在亚太地区的收入同比增长35%...类比:就像给每张拼图标注"这是天空的一部分"——拿出来看也能知道它的背景。
适用场景:
- 文档结构复杂
- 单个片段孤立看容易误解
Trade-off:
- ✅ Anthropic研究显示可提升30%+准确率
- ❌ 每个块都要LLM生成说明,成本和时间增加
策略5-6:查询扩展 vs 多查询RAG
这两个策略很相似,但有细微差别:
查询扩展(Query Expansion):
- 把"上周会议行动项"扩展成"2024年12月10日团队会议中提到的待办事项和责任分配"
- 一个查询→一个更精确的查询
多查询RAG(Multi-Query RAG):
- 生成多个变体:“会议行动项”+“会议待办”+“会议任务分配”
- 一个查询→多个并行查询
适用场景:
- 用户查询模糊或口语化严重时
- 需要覆盖多种表达方式
Trade-off:
- ✅ 提高召回率(不会漏掉相关内容)
- ❌ 每次搜索前都要额外调用LLM
策略7:自我反思RAG(Self-Reflective RAG)—— AI的"二次检查"
原理:搜索完后让LLM给结果打分(1-5分),如果低于3分就重新搜索。
类比:就像你做题后检查一遍——“这个答案靠谱吗?不靠谱?那重新做。”
适用场景:
- 对准确性要求极高的场景
- 愿意牺牲速度换取质量
Trade-off:
- ✅ 自动纠错,减少低质量回答
- ❌ 可能要多次LLM调用,成本翻倍
数据准备篇:切分文档的3种艺术
前面7种策略都是优化"怎么搜",接下来3种是优化"搜什么"——也就是如何切分和存储文档。
策略8:上下文感知切分(Context-Aware Chunking)
原理:不是每1000个字就切一刀,而是用嵌入模型找文档的"自然边界"(比如段落结束、主题转换)。
类比:切西瓜不是随便横竖几刀,而是顺着瓜瓤的纹理切——既整齐又不破坏结构。
适用场景:
- 文档有清晰结构(论文、报告、书籍)
- 希望每个块语义完整
Trade-off:
- ✅ 维持文档逻辑,嵌入质量高
- ❌ 比简单的字符切分复杂
工具推荐:Dockling库可以实现混合切分(Hybrid Chunking),效果非常好。
策略9:延迟切分(Late Chunking)—— 最复杂但最前沿
原理:先对整个文档做嵌入,再切分嵌入结果(而不是先切文档再嵌入)。
类比:传统方法是"先切西瓜再冰镇每一块",延迟切分是"先冰镇整个西瓜再切开"——每块都保留了整体的"冰爽感"(上下文)。
适用场景:
- 需要每个块都保留完整文档上下文
- 使用长上下文嵌入模型
Trade-off:
- ✅ 理论上最优的上下文保留
- ❌ 极其复杂,需要特殊的嵌入模型支持
坦白说:这是11种策略里我唯一没实践过的,但它代表了RAG的前沿方向。
策略10:分层RAG(Hierarchical RAG)—— 用元数据玩"套娃"
原理:存储多层级的信息——段落、章节、整个文档——通过元数据关联。
搜索策略:“小处搜索,大处获取”
- 精确搜索段落(找到这句话:“Q3收入增长35%”)
- 查元数据拉取整个章节或文档(获取完整的财报分析)
类比:就像图书馆的分类系统——你搜"量子力学"找到某一页,但可以选择借整本书或整套丛书。
适用场景:
- 既需要精确定位又需要完整上下文
- 文档有清晰的层级结构
Trade-off:
- ✅ 平衡精确性和全面性
- ❌ 数据库设计更复杂
终极武器:微调嵌入模型
策略11:微调嵌入(Fine-tuned Embeddings)—— 当你有大量数据时
原理:就像微调大语言模型一样,你也可以微调嵌入模型,让它理解你的领域术语和相似度规则。
举例:
- 通用嵌入模型:“订单延迟” ≈ “发货速度快”(都是关于订单的)
- 微调后的嵌入模型:“订单延迟” ≈ “商品总是缺货”(基于情感相似)
适用场景:
- 有大量领域数据(医疗、法律、金融)
- 对准确率有极高要求
- 愿意投入基础设施
Trade-off:
- ✅ 5-10%准确率提升,小模型能超越大模型
- ❌ 需要大量数据、训练成本、持续维护
黄金组合:我的3-5策略方案
视频作者给出了他的"黄金三角"推荐:
- 重排序(Reranking)- 几乎必选
- 智能体RAG(Agentic RAG)- 提供灵活性
- 上下文感知切分(Context-Aware Chunking)- 尤其推荐Dockling的混合切分
我的补充建议:
入门方案(3种):
- 重排序 + 查询扩展 + 基础切分
进阶方案(5种):
- 重排序 + 智能体RAG + 上下文感知切分 + 分层RAG + 自我反思
终极方案(专业场景):
- 重排序 + 知识图谱 + 上下文检索 + 分层RAG + 微调嵌入
选择原则:
- 从重排序开始,这是性价比最高的策略
- 根据你的数据特点选择切分策略
- 根据查询复杂度选择查询优化策略
- 逐步叠加,每次加一种并测试效果
写在最后:RAG优化是马拉松,不是百米冲刺
看完这11种策略,你可能会想:“我全都要!”
但请记住:RAG优化不是堆砌策略,而是找到最适合你业务场景的组合。
我的实践建议:
- 先建立基准线:用最简单的RAG跑通流程,测试准确率
- 逐个添加策略:每次只加一种,看效果提升多少
- 关注成本-效果比:不要为了1%的提升付出3倍的成本
- 持续迭代:随着数据增长和场景变化,策略也要调整
最后,如果你正在搭建RAG系统,推荐的技术栈:
- 向量数据库:Postgres + pgvector(配合Neon托管服务)
- 嵌入模型:OpenAI text-embedding-3 或开源的BGE系列
- 重排序模型:Cohere Rerank 或 BGE Reranker
- 知识图谱:Neo4j + Graffiti库
如果这篇文章对你有帮助,欢迎点赞、收藏、转发。如果你想深入了解某个特定策略(比如知识图谱、延迟切分),请在评论区告诉我,点赞最多的我会单独出一篇详解。
记住:最好的RAG系统不是最复杂的,而是最适合你的。
那么,如何系统的去学习大模型LLM?
作为一名从业五年的资深大模型算法工程师,我经常会收到一些评论和私信,我是小白,学习大模型该从哪里入手呢?我自学没有方向怎么办?这个地方我不会啊。如果你也有类似的经历,一定要继续看下去!这些问题啊,也不是三言两语啊就能讲明白的。
所以我综合了大模型的所有知识点,给大家带来一套全网最全最细的大模型零基础教程。在做这套教程之前呢,我就曾放空大脑,以一个大模型小白的角度去重新解析它,采用基础知识和实战项目相结合的教学方式,历时3个月,终于完成了这样的课程,让你真正体会到什么是每一秒都在疯狂输出知识点。
由于篇幅有限,⚡️ 朋友们如果有需要全套 《2025全新制作的大模型全套资料》,扫码获取~
为什么要学习大模型?
我国在A大模型领域面临人才短缺,数量与质量均落后于发达国家。2023年,人才缺口已超百万,凸显培养不足。随着AI技术飞速发展,预计到2025年,这一缺口将急剧扩大至400万,严重制约我国AI产业的创新步伐。加强人才培养,优化教育体系,国际合作并进是破解困局、推动AI发展的关键。
👉大模型学习指南+路线汇总👈
我们这套大模型资料呢,会从基础篇、进阶篇和项目实战篇等三大方面来讲解。
👉①.基础篇👈
基础篇里面包括了Python快速入门、AI开发环境搭建及提示词工程,带你学习大模型核心原理、prompt使用技巧、Transformer架构和预训练、SFT、RLHF等一些基础概念,用最易懂的方式带你入门大模型。
👉②.进阶篇👈
接下来是进阶篇,你将掌握RAG、Agent、Langchain、大模型微调和私有化部署,学习如何构建外挂知识库并和自己的企业相结合,学习如何使用langchain框架提高开发效率和代码质量、学习如何选择合适的基座模型并进行数据集的收集预处理以及具体的模型微调等等。
👉③.实战篇👈
实战篇会手把手带着大家练习企业级的落地项目(已脱敏),比如RAG医疗问答系统、Agent智能电商客服系统、数字人项目实战、教育行业智能助教等等,从而帮助大家更好的应对大模型时代的挑战。
👉④.福利篇👈
最后呢,会给大家一个小福利,课程视频中的所有素材,有搭建AI开发环境资料包,还有学习计划表,几十上百G素材、电子书和课件等等,只要你能想到的素材,我这里几乎都有。我已经全部上传到CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】相信我,这套大模型系统教程将会是全网最齐全 最易懂的小白专用课!!