高级 RAG 技术:查询转换与查询分解

从基础到高级 RAG 的每一步 RAG 或检索增强生成,使 LLM 能够从一个或多个数据源检索信息,并使用这些信息来回答用户查询。设置基本的 RAG 系统相对简单,但开发一个既强大又可靠的系统却面临许多挑战和陷阱,尤其是在优化计算效率时。在本篇博文中,我们将探讨开发 RAG 系统时常见的陷阱,并介绍旨在提高检索质量、最大限度地减少幻觉和处理复杂查询的先进技术。在阅读完本文后,您将更深入地了解构建 RAG 系统所涉及的复杂性,并了解如何开始解决这些问题。下面是大多数人使用的 RAG 基本流程图。 阅读详情

检索增强生成(RAG)的基础流程是用户查询转换为向量嵌入,从向量数据库中取回相似文档,再将这些文档作为上下文送入大语言模型(LLM)生成答案。

基础 RAG 的准确性受制于查询质量,查询模糊、表述不当,或者用户对问题的抽象层次把握不准,检索结果就会出偏差,LLM 拿到的上下文也跟着失真。垃圾输入,垃圾输出,这个规律在 RAG 场景里同样成立。

所以有两类改进方向逐渐成型:查询转换(Query Translation)与查询分解(Query Decomposition)。前者在查询送入向量数据库之前对其进行变形和扩展,后者则把复杂查询拆解成更易处理的子问题。具体技术包括:并行查询检索(FAN-OUT 架构)、倒数排名融合(RRF)、HyDE(假设文档嵌入),以及基于思维链的低抽象分解和基于后退提示的高抽象分解。

查询转换

查询转换的核心思路是不依赖原始查询的单一表述,而是生成若干语义相近的变体,覆盖更多可能与文档匹配的角度。

以"RAG 如何改善 LLM 的响应效果?"为例,扩展后可以得到:

 检索增强生成是如何工作的?
 RAG 对大语言模型的优势
 检索如何提升 LLM 的准确性

这些变体并不改变查询的意图,而是换用不同的措辞和切入点,让向量搜索有机会命中文档库中表述各异的相关内容,从而提高召回率。

并行查询检索(Fan-Out 检索)

图片

图片

并行查询检索把上述思路落地为具体架构:LLM 基于原始输入生成多个查询变体,各变体同时发往向量数据库执行相似度搜索,检索结果汇总后去除重复文档,最终上下文再传入 LLM。

整个流程分六步完成:用户发送查询、LLM 生成备选查询、各查询并发执行相似度搜索、合并检索结果、过滤重复文档、将最终上下文传递给 LLM。不同措辞在嵌入空间中的分布位置不同,命中的文档集合也会有所差异,并行执行正是在利用这一特性。

倒数排名融合(RRF)

图片

图片

多路查询的结果合并,不能简单拼接了事。各路检索返回的文档存在重叠,排名也不尽相同,直接合并会导致高质量文档被低质量文档淹没。

倒数排名融合(RRF)解决的正是这个问题。它不看原始相似度分数,而是根据文档在每路结果中的排名位置计算分数,公式如下:

图片

其中:

图片

排名越靠前,得分越高;在多路结果中反复出现且名次稳定的文档,累计分数也更高。经过 RRF 重排后,最终上下文的质量比简单合并要可靠得多。

HyDE(假设文档嵌入)

HyDE 的逻辑与前两种技术不同,它绕开了"查询表述不准确"这个根源性问题。

直接对用户查询做嵌入,得到的向量反映的是问题的语义;向量数据库里存的是答案文档,两者在嵌入空间中的距离未必近。HyDE 的做法是:先让 LLM 针对用户查询生成一段假设性的答案或文档,再对这段生成文本做嵌入,用于相似度搜索。

生成文本在风格和内容上更接近真实文档,检索准确率往往随之提升。不过需要注意的是这里依赖 LLM 的生成质量,参数量偏小的模型生成的假设文档可能失真,反而干扰检索。

查询分解

有些查询本身就包含多个子问题,单次检索无法覆盖全部所需信息。把这类查询原封不动地送入向量数据库,检索结果往往是残缺的。

查询分解把复杂查询拆解为若干粒度更细的子查询,分别检索,再合并结果。拆解的方向取决于查询的抽象层次——查询可以向上推至更高的概念层,也可以向下细化为具体的执行步骤。

高抽象分解(后退提示)

后退提示(Step-Back Prompting)先退一步,提出一个比原始查询更高层次的问题,再基于这个高层问题检索到的上下文来回答具体问题。

以"RAG 如何提升 LLM 的性能?"为例,后退查询可以是:

 没有外部知识的 LLM 存在哪些局限性?

先建立认知框架,再回答具体问题,检索到的上下文在概念层面会更完整。

低抽象分解(思维链检索)

思维链检索把查询拆解为若干有顺序依赖的子步骤,前一步的检索结果作为后一步的输入,逐步推进。

以"RAG 是如何工作的?它与微调有何不同?"为例,分解过程如下:

步骤 1——理解 RAG 的概念

 什么是检索增强生成?

步骤 2——检索 RAG 工作原理的详细信息

 RAG 是如何工作的?

步骤 3——检索微调的相关信息

 LLM 中的微调是什么?

步骤 4——对比两个概念

 RAG 与微调有何区别?

每个子步骤独立命中一批相关文档,前序步骤积累的理解指导后续步骤的检索方向,最终由 LLM 整合所有步骤的上下文,生成完整答案。

这种顺序推理结构在处理跨概念的比较类问题时尤为有效——原始查询包含的概念跨度越大,单次检索的信噪比就越低,分步处理带来的收益也越明显。

总结

查询转换和查询分解并不是非此即彼的选择。实际系统里,两者往往配合使用:Fan-Out 扩展查询覆盖面,RRF 保证合并结果的排名质量,复杂问题再交给分解流程逐步处理。至于哪种组合适合当前场景,取决于查询的典型复杂度、向量库的规模,以及系统对延迟的容忍程度——这些判断没有通用答案,需要在具体环境里测量。

这里给大家精心整理了一份全面的AI大模型学习资源,包括:AI大模型全套学习路线图(从入门到实战)、精品AI大模型学习书籍手册、视频教程、实战学习、面试题等,资料免费分享!

👇👇扫码免费领取全部内容👇👇
在这里插入图片描述

1. 成长路线图&学习规划

要学习一门新的技术,作为新手一定要先学习成长路线图,方向不对,努力白费。

这里,我们为新手和想要进一步提升的专业人士准备了一份详细的学习成长路线图和规划。可以说是最科学最系统的学习成长路线。
在这里插入图片描述

2. 大模型经典PDF书籍

书籍和学习文档资料是学习大模型过程中必不可少的,我们精选了一系列深入探讨大模型技术的书籍和学习文档,它们由领域内的顶尖专家撰写,内容全面、深入、详尽,为你学习大模型提供坚实的理论基础。(书籍含电子版PDF)

在这里插入图片描述

3. 大模型视频教程

对于很多自学或者没有基础的同学来说,书籍这些纯文字类的学习教材会觉得比较晦涩难以理解,因此,我们提供了丰富的大模型视频教程,以动态、形象的方式展示技术概念,帮助你更快、更轻松地掌握核心知识。

在这里插入图片描述

4. 2026行业报告

行业分析主要包括对不同行业的现状、趋势、问题、机会等进行系统地调研和评估,以了解哪些行业更适合引入大模型的技术和应用,以及在哪些方面可以发挥大模型的优势。

5. 大模型项目实战

学以致用 ,当你的理论知识积累到一定程度,就需要通过项目实战,在实际操作中检验和巩固你所学到的知识,同时为你找工作和职业发展打下坚实的基础。

在这里插入图片描述

6. 大模型面试题

面试不仅是技术的较量,更需要充分的准备。

在你已经掌握了大模型技术之后,就需要开始准备面试,我们将提供精心整理的大模型面试题库,涵盖当前面试中可能遇到的各种技术问题,让你在面试中游刃有余。

在这里插入图片描述

7. 资料领取:全套内容免费抱走,学 AI 不用再找第二份

不管你是 0 基础想入门 AI 大模型,还是有基础想冲刺大厂、了解行业趋势,这份资料都能满足你!
现在只需按照提示操作,就能免费领取:

👇👇扫码免费领取全部内容👇👇
在这里插入图片描述

RAG系统查询优化实战:从重写、分解到HyDE与多查询的核心策略解析 在检索增强生成(RAG)系统中,查询优化是提升整体效果的关键环节。其核心原理在于,通过技术手段将原始的用户查询转化为对检索器更友好的形式,从而跨越用户自然语言表达与知识库结构化文档之间的语义鸿沟。这项技术的核心价值在于,它能以相对较低的工程成本,显著提升文档召回率与最终生成答案的相关性,是优化RAG系统性价比的重要手段。在工程实践中,查询优化已衍生出多种成熟策略,例如查询重写(Query Rewriting)用于规范化和扩展查询,以及多查询生成(Multi-Query)通过生成多个语义相同的查询变体来提升召 阅读详情

相关推荐

RAG_查询重构与分发

首先创建一个。

河南骏的博客 1157

一文读懂:AI大模型RAG(检索增强生成)含高级方法

RAG 是2023年基于 LLM 的系统中最受欢迎的架构。许多产品基于 RAG 构建,从基于 web 搜索引擎和 LLM 的问答服务到使用私有数据的chat应用程序。

Y525698136的博客 1268

OpenCV形状检测

开始定义我们的ShapeDetector类。我们将跳过这里的init构造函数,因为不需要初始化任何东西。#导入必要的包importcv2classShapeDetector#初始化形状名称并近似轮廓shape="unidentified"peri=cv2.arcLength(c,True)approx=cv2.approxPolyDP(c,0.04*peri,True)我们的检测方法,它只需要一个参数c,即我们试图识别的形状的轮廓。...

weixin_43229348的博客 9425

开发简单的RAG智能体-提高篇

自定义的节点后处理器可以从BaseNodePostprocessor组件中派生,并通过 _postprocess_nodes 接口来实现。我们可以添加任意的自定义逻辑。相似度过滤是一种常见的过滤策略。在召回相关Node时,你可能希望对 相似度评分做一次过滤,比如只召回评分高于0.7的Node,以确保上下文的高 度相关性,那么可以使用节点后处理器。(1)处理器类型:SimilarityPostprocessor。(2)输入参数:similarity_cutoff,过滤的评分阈值。

jinancaizi的博客 215

通讯模块_三菱IQ-R PLC串口通讯模块RJ71C24进行Modbus-RTU通讯

在日常的选型中,很多电气工程师咨询我,三菱iQ-R系列有没有Modbus通讯模块,我在这里可以肯定的回复您,这个肯定是有的;我们共有三种可以选择分别是RJ71C24、RJ71C24-R2、RJ71C24-R4。RJ71C24系列支持MC协议通信、通信协议通信、无顺序协议通信、双向协议通信全、MODBUS通信。当我帮助他们选型之后,他们在使用的时候,又是一头雾水。那么今天我抽一些时间讲解一RJ71...

weixin_39878549的博客 9275

【华为鸿蒙3.0/荣耀安卓12使用VMOS Pro的激活方式】

解压激活工具 →连接数据线 轻松搞定激活!

Amy_mumu的博客 142万+

提高RAG性能的高级查询转换

提高RAG性能的高级查询转换

安静的软件工程师 1288

UE4项目迁移指南:如何无缝导入外部.uasset文件并保持材质关联

本文详细解析了将外部.uasset文件无缝导入UE4项目的专业方法。针对手动复制文件时常见的材质关联丢失问题,提供了使用引用查看器进行诊断和修复的实用技巧,并推荐使用引擎内置的“迁移”功能确保资源依赖关系的完整性,帮助开发者高效整合项目资源。

t8u9v0的博客 1047

深入理解 RAG 检索前查询转换:从简单改写到多步分解的技术实践

检索前的查询转换,本质上是在构建用户问题与知识库之间的 “翻译层”。通过简单改写、假设性生成、多步分解、工具约束等不同策略,我们可以让系统更智能地理解用户意图,从而实现更精准的知识召回。这些技术并非孤立存在,实际项目中我们可以组合使用:比如先用 HyDE 生成假设性嵌入提升召回,再通过多步分解实现答案的逻辑整合。关键是根据具体场景选择合适的转换策略,让查询转换成为 RAG 系统的智能起点。如果你在实际开发中遇到查询转换的难题,欢迎在评论区交流。

佑瞻的博客 1345

脑影像分析入门:如何用一般线性模型(GLM)处理fMRI数据?

本文为神经影像研究入门者详细解析了如何运用一般线性模型(GLM)处理fMRI数据。文章从GLM的核心原理出发,逐步拆解了从实验设计、构建稳健设计矩阵、模型估计与统计推断,到高阶分析及多重比较校正的全流程,并指出了常见陷阱与结果解读要点,是掌握fMRI数据分析基础的关键指南。

weixin_29091445的博客 400

【YOLO】YOLOV5-Seg的Segment模块解析

Segment模块同时输出检测结果和分割掩模,通过轻量级分割头实现实时实例分割

浩瀚之水的专栏 599

高级 RAG 查询技术实战教程(非常详细),查询转换与分解从入门到精通,收藏这一篇就够了!

检索增强生成(RAG)的基础流程是用户查询转换为向量嵌入,从向量数据库中取回相似文档,再将这些文档作为上下文送入大语言模型(LLM)生成答案。

xx_nm98的博客 371

使用Python的OpenCV库进行三维重建点云

通过这些步骤,我们可以使用Python的OpenCV库进行三维重建,并生成对应的点云。当然,这只是一个简单的示例,实际的三维重建可能涉及更多的图像处理和计算步骤。在计算机视觉领域,三维重建是一项重要的任务,它可以将多个二维图像或视频序列转换为三维场景模型。在本文中,我们将介绍如何使用Python的OpenCV库进行三维重建,并生成相应的点云。以上是使用Python的OpenCV库进行三维重建点云的简要介绍和示例代码。最后,我们可以将计算得到的三维点云可视化。安装完成后,我们可以开始编写代码。

AuSwift的博客 1646

高级查询转换以改进 RAG

原文:towardsdatascience.com/advanced-query-transformations-to-improve-rag-11adca9b19d1图片由作者提供。AI 生成。检索增强生成已经成为生成式 AI 文献中最受讨论的话题之一。随着每日博客文章和科学论文的涌入,保持更新可能具有挑战性。然而,RAG 的流行是当之无愧的,因为没有任何其他解决方案已被证明在减轻大型语言模型中的幻觉方面如此有效。RAG 通过像维基百科页面、私有 PDF 等可靠的来源增强语言模型的一般知识。

龙哥盟 602

RK3588平台开发系列讲解(DMA篇)DMA engine使用

Linux 内核的 DMA 引擎提供了一组完整的接口,用于申请和释放 DMA 通道、准备 DMA 描述符、启动和控制 DMA 传输,以及同步和管理缓存。通过这些接口,内核能够高效地处理异步的 DMA 传输任务,减少 CPU 的干预,提高数据传输的效率。

内核笔记 1836

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

RAG高级优化:一文看尽query的转换之路

1 -查询重写重新表述查询以改进检索。# example query over the understanding climate change dataset``original_query = "气候变化对环境的影响是什么?# example query over the understanding climate change dataset``original_query = "气候变化对环境的影响是什么?

m0_59235699的博客 1741

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

从零开始构建完整的 RAG 生态系统(二):高级查询转换

本文介绍了提升RAG系统检索效果的三种高级查询转换技术。首先通过多查询生成,让LLM从不同角度重写用户问题;其次使用RAG-Fusion技术结合倒数排名融合对搜索结果重新排序;最后提出了问题分解方法,将复杂问题拆解为独立子问题分别解答后合并结果。这些技术通过Langchain实现,能够有效提高检索准确性,降低系统"幻觉",为用户提供更精准的检索结果。文中包含了完整的代码示例,展示了从查询转换到最终答案生成的全流程实现。

xawangxiaolong的博客 497

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

RAG系列(三):如何优化查询转换

然后,将这个假设性回复和原始查询一起用于向量检索。假设回复可能包含虚假信息,但蕴含着LLM认为相关的信息和文档模式,有助于在知识库中寻找类似的文档。4. Rag-Fusion,就比多查询多一个步骤,在多个查询进行检索后,利用“倒数排名融合算法”(注意是倒数,原来是5,现在是1/5的倒数,不是倒过来数,可以问文心一言了解这个算法的详情),根据文档在多个查询中的相关性重新排序,生成最终输出。接下来我们看第二个步骤如何在查询转换环节进行优化,查询转换的目的是对用户提给机器人的问题进行优化,以解决问题质量的问题。

m0_66899341的博客 721

AI入门之-RAG高效召回优化:查询扩展的高级技巧与实践

在RAG(检索增强生成)系统中,查询扩展(Query Expansion)是提升召回率与召回质量的核心环节,其本质是通过语义增强、结构化补全、迭代优化等方式,将用户原始查询转换为更符合检索系统理解习惯、覆盖更多潜在相关知识的搜索形式。随着RAG技术的演进,查询扩展已从早期的“同义词替换”发展到“知识图谱引导、迭代式优化”的高级阶段,解决了传统查询因“语义模糊、结构缺失、领域局限”导致的召回不精准问题。支持文本、图像、音频。

沛哥儿的专栏 944

高级 RAG 优化策略系列(一):让 LLM 能“看懂”的查询优化策略

从查询改写到查询分解,再到嵌入优化和假设性文档嵌入(HyDE),我们探讨了如何通过更智能的查询处理策略,显著提升RAG系统的检索质量与生成效果。

2501_90713449的博客 1062

高级模块化RAG之6大模块解析

模块化RAG包括六个主要模块:索引、预检索、检索、后检索、生成和编排。

ms44的专栏 1460

RAG 每日一技(十三):检索一次不够?学习查询改写与迭代式检索!

RAG第一次检索就“翻车”怎么办?别放弃!本文教你两种查询改写“黑科技”:查询分解与HyDE。学习如何让你的RAG系统自我反思,自动将复杂问题拆解,或生成“虚拟答案”来优化检索,从源头提升召回质量!

RAG 1046

第一章:高级RAG(上)—— 查询的艺术:从“搜得到”到“搜得准”

本文探讨了AI应用架构师在构建高级RAG系统时如何优化用户查询处理,实现从"搜得到"到"搜得准"的跃迁。文章指出用户原始查询常存在模糊性、不完整性等问题,提出了两种核心优化技术:MultiQueryRetriever(多角度生成查询变体)和HyDE(通过假设性答案反推检索)。通过LangChain框架的实战演示,展示了如何利用这些技术提升检索召回率和精准率,为后续生成高质量答案奠定基础。

杨小扩的博客 1126

RAG实战篇:优化查询转换的五种高级方法,让大模型真正理解用户意图

本文介绍了在RAG系统中优化Query Translation环节的五种方法:Multi-query(多查询)、Rag-Fusion、Decomposition(查询分解)、Stepback和HYDE。这些方法通过扩展查询、问题分解和优化检索结果等方式,提升大模型对用户意图的理解和回答质量。文章提供了具体的实现代码,包括生成相似查询、倒数排名融合算法以及问题分解策略等,帮助构建更高效的RAG系统。源代码可在文末获取。

libaiup的博客 1138
上一篇: 大模型部署必看:LLM 推理(Inference)优化 技术,适配高并发、低延迟场景
下一篇: 你的 RAG 为什么总答错?问题出在分块这一步
AI_小站
博客等级 码龄3年 6255粉丝 1154原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值