来源:互联网 更新时间:2026-07-31 14:01
RAG领域的论文最近真是让人眼花缭乱,今天聊一篇关于“自适应”RAG的工作。核心想法其实很直观:不同难度的问题,RAG系统不应该用同一套策略去应对。简单到常识性的问题,直接问大模型就行,根本用不着检索;中等难度的问题,简单检索一次就能搞定;而那些需要多步推理、涉及多重知识的复杂问题,才需要反复检索。所以,这篇论文搭建了一个能根据问题复杂度自动调整策略的自适应RAG系统。
目录:

整篇论文的核心思路可以用一张图说清楚。不同难度的问题,处理方式天然不同:一些常识性简单问题,压根不需要检索,直接问大模型就能答对;中等难度的问题,检索一次就能拿到支持文档;而那些需要多重推理、依赖多种知识的复杂问题,得查好几次才能得到正确答案。所以,一视同仁地做检索然后返回,显然不是最优解。
因此,作者把问题分成了三档:
这三档划分背后,核心考量其实是资源(检索耗时和反复检索带来的时间消耗)与最终结果正确性之间的权衡。
整体架构上,相比普通RAG,这里就是增加了一个策略划分的插件,把问题先拆解。所以关键点就两个:问题怎么拆,以及拆完之后不同档位的操作有什么区别。对于后者,上面的定义已经给出了答案——根据难度进行不同次数的检索。那么剩下的问题就是:问题难度的划分工作怎么做。
现在把视角转到难度划分上,需要回答两个问题:
问题层面的定义和测试集的构造是放在一起的。论文通过举例给出了标注策略:
这个方法里应该暗含了一些人工标注,但能整理出来已经不错了。
至于分类模型,文中提到使用小语言模型。实验部分具体用的是T5-Large,包括学习率、停止条件、学习器等细节都有交代。
实验这块作者做了不少工作,尤其是关于分类模型的效果,之前的两篇论文都没做好,这次算是让人眼前一亮。重点聊几个关注到的点。
首先是实验数据。这几篇读下来,发现这里用的数据集都比较老,比如SQuAD v1.1、Natural Questions、TriviaQA等,基本上是20年前的数据了,只有MuSiQue稍微新一点。对比CRAG里用的PopQA、Biography、PubHealth(都是23年左右的),确实显得有些陈旧。当然,可能是出于对问题难易程度的考量,作者认为这些数据集不适合,具体原因没有深挖。
至于效果,理所当然地好。作者把Self-RAG作为关键的baseline进行对比,效果提升比较明显。当然,因为比Self-RAG做了更多的检索和预测,耗时确实增加了。但相比那些多次检索的模型(比如“Multi-step Approach”),耗时就明显降低了。总体看下来,Adaptive RAG算是有有效提升——以少量时间代价换来了更好的问答效果。
这里想小小质疑一下Self-RAG的效果。从结果看,Self-RAG的表现差得也太大了,几乎是垫底的存在。不知道是什么原因,感觉值得进一步探索。
至于分类器的效果,作者还是大胆给出了数据。说实话,确实不太好看。放在一般的文本分类任务里,基本就是不可用的水平——整体ACC只有50多。比较让人震惊的是,这么差的分类效果居然还能让整个RAG系统有收益。说明这个系统对“有没有分类”是敏感的,但对分类结果的精确度没那么敏感。
作者在分类效果评估上也比较严谨,对不同大小的模型做了综合评估。从表格可以看到,模型大小对效果影响不大,总之就是很差。
论文读完了,聊聊几点感想:
最近读的几篇论文,大都是围绕“如何选择适配大模型的知识”来展开的,内部进行组件划分,从而提升最终预测效果。结合目前工业界对RAG业务落地的观察,能看到后续RAG在工业界可能形成的一种范式。这个范式原来只是模糊被提及,但现在信心越来越足了:
关于这个结构的合理性和实践细节,不是这篇论文的重点,后续再展开聊。