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

简介: RAG准确性受限于查询质量,易因表述模糊导致检索偏差。主流优化方向为查询转换(如Fan-Out并行检索、RRF重排、HyDE假设文档嵌入)与查询分解(高抽象后退提示、低抽象思维链检索),二者常协同提升召回率与答案质量。

检索增强生成(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 保证合并结果的排名质量,复杂问题再交给分解流程逐步处理。至于哪种组合适合当前场景,取决于查询的典型复杂度、向量库的规模,以及系统对延迟的容忍程度——这些判断没有通用答案,需要在具体环境里测量。

https://avoid.overfit.cn/post/f84e72a8354746249b17ab498cf99483

by Samarth Acharya

目录
相关文章
|
3月前
|
存储 人工智能 NoSQL
理解 Agent 记忆:从无状态模型到持久化记忆架构
大语言模型本质无状态,对话历史无法自动留存。Agent需长期记忆支撑连续性任务,但简单堆砌上下文不可行。本文系统阐释Agent记忆的四层架构(工作/情景/语义/程序记忆),及其写入、检索与遗忘机制,并对比Mem0、Letta等主流方案,揭示记忆正成为AI Agent技术栈中独立、标准的关键基础设施。
975 7
理解 Agent 记忆:从无状态模型到持久化记忆架构
|
3月前
|
机器学习/深度学习 文字识别 数据挖掘
BookRAG:面向层级文档的树-图融合RAG框架
BookRAG是专为书籍类层级文档设计的新型RAG框架,首创“树+图+链接+Agent”四元结构:构建融合版面层级树与知识图谱的BookIndex,通过GT-Link双向映射实现结构与语义统一;引入信息觅食启发的Agent,动态规划检索路径,支持单跳、多跳及全局聚合查询,在精度、覆盖率与效率上显著优于传统文本/版面优先方法。
529 5
BookRAG:面向层级文档的树-图融合RAG框架
|
3月前
|
存储 运维 自然语言处理
CRAG 架构解析:如何在生成器前修正错误检索结果
CRAG是一种新型RAG框架,直面检索错误问题:引入轻量级评估器,对检索文档打分并按置信度分流——高分则精炼本地文档(句子级过滤重组),低分则转向网络搜索,中等分则双源协同。从架构上杜绝无关内容污染生成器,显著提升答案准确性与鲁棒性。
253 1
CRAG 架构解析:如何在生成器前修正错误检索结果
|
3月前
|
机器学习/深度学习 人工智能 算法
草莓成熟度目标检测数据集(2000张图片已标注)| YOLO训练数据集 AI视觉检测
本文介绍的 草莓成熟度目标检测数据集(2000张已标注图像),基于多类别草莓成熟度样本构建,覆盖未成熟、成熟和过熟三类典型状态,并采用标准 YOLO标注格式,可直接用于深度学习模型训练,为智慧农业视觉研究和果蔬自动检测系统提供重要的数据支持。
|
3月前
|
存储 人工智能 安全
给AI龙虾配云端硬盘:OpenClaw阿里云/本地部署+360AI云盘Skill安装、API配置与全场景使用指南
2026年OpenClaw(龙虾、Clawdbot)已经成为AI自动化执行的主流平台,无论是自动写作、文件处理、数据抓取、资料整理,还是办公流程自动化,都能高效完成。但随着使用深入,海量文件存储、多端同步、知识沉淀、数据安全问题开始凸显——本地空间不足、文件丢失、多设备无法互通、AI无法读取云端资料,成为限制能力的核心瓶颈。
744 2
|
3月前
|
机器学习/深度学习 人工智能 算法
更大的上下文窗口为什么让RAG变得更重要而非更多余
大上下文窗口(如1M tokens)并未淘汰RAG,反而凸显其价值:LLM注意力易被噪声稀释,“迷失在中间”效应导致性能下降。实验证明,相关性筛选比单纯扩容更关键。RAG+大上下文协同——先精准检索重排序,再注入高密度片段——才是生产级AI的可靠范式。
404 0
|
6天前
|
数据采集 存储 算法
视频 RAG 中分块策略:基于停顿、滑动窗口与基于 LLM 的方法
本文探讨视频RAG中的核心挑战——如何为无时间结构的视频转录文本设计有效分块策略。对比传统文本分块,提出基于停顿、重叠窗口、递归切分及LLM驱动的主题分块四层方案,实现细粒度检索与全局理解兼顾,提升视频内容检索准确性与上下文完整性。
147 13
视频 RAG 中分块策略:基于停顿、滑动窗口与基于 LLM 的方法
|
3月前
|
数据库 决策智能
多 Agent 验证架构实战:从输出评分到过程验证
2026年生产级Agent系统最典型失败:多步流水线中错误静默累积,最终输出流畅却全错。本文详解四种验证模式——输出评分、Reflexion、对抗辩论与过程验证,揭示其适用场景、失效边界及真实成本(验证器用小模型可降本10倍),强调验证层是演示与落地的分水岭。
272 0
多 Agent 验证架构实战:从输出评分到过程验证