← 返回 2026-07-29

相关性新角色:用相关性引导智能体搜索中的语料交互 A New Role for Relevance: Guiding Corpus Interaction in Agentic Search

Jiangnan Li, Yuqing Li, Mo Yu, Jinchao Zhang, Jie Zhou 📅 2026-07-27 👍 92 2026-08-03 18:30
ripgrep 智能体搜索 检索增强生成 直接语料交互(DCI) 相关性引导

RARG 把相关性作为 rg 执行先验,按文档相关度排序遍历并重排命中,提升智能体搜索准确率与效率

前置知识

直接语料交互 (Direct Corpus Interaction, DCI)

DCI 指把整个语料库当作原始文件暴露给智能体,智能体通过 Bash 中的 grep/ripgrep 模式匹配、文件局部读取 (Read) 等通用终端工具来检索证据。它与 RAG 的关键区别在于不预先返回 top-k 文档,而是让模型自己组合词法约束、追踪实体、查看匹配周围的精确上下文,是一种高分辨率、可组合的证据接口。

本文的方法完全建立在 DCI-Agent-Lite(仅提供 Bash 与 Read 两个工具)之上,理解 grep 如何扫描文件、输出如何被截断,才能理解 RARG 为什么要往 grep 里注入相关性。

检索相关性 (Relevance)

相关性是一种随查询变化的估计,判断某个文档、段落或匹配片段是否包含当前信息需求所需的有用证据。稠密检索器用嵌入相似度实现,稀疏检索器(如 BM25)用词法匹配信号实现。它是有用但不完美的先验:只表示证据可能在哪,不保证证据充分、可定位或可组合。

论文的核心论点就是重新定义相关性的角色——从「选择 top-k 内容」变成「引导搜索执行」,这一概念贯穿全文三个变体。

ripgrep (rg) 与 -j1 顺序保持

ripgrep 是高性能的递归 grep 工具,默认多线程并行读取文件,匹配输出顺序由各线程完成先后决定,因此无法保持命令行参数里给出的文件顺序。加上参数 -j1 可强制单线程串行扫描,使输出严格按文件路径顺序排列。

RARG 把文档按相关度排序喂给 rg,必须靠规则注入 -j1 才能让相关度顺序真正反映在匹配输出里,这是把「文档级相关性」转成「搜索顺序」的技术关键。

BrowseComp-Plus 与 BRIGHT 基准

BrowseComp-Plus (BC+) 是基于固定 10 万文档语料库回答困难浏览型问题的问答基准,RISE 在 100 个查询的样本上评测,用 LLM-as-judge (GPT-5.1) 计算准确率。BRIGHT 则是推理密集型检索基准,要求在生物学/地球科学/经济学/机器人学等子集上做深度推理而非浅层语义匹配,以 $ ext{nDCG}@10$ 衡量。

论文在这两个奖励相反搜索形态的基准上验证方法——BC+ 偏「深度优先」追求单条证据链,BRIGHT 偏「广度优先」追求高召回排序——是理解主结果表的前提。

研究动机

传统检索智能体把相关性仅用于选出 top-k 文档或片段喂给大模型,这种接口把「文档相关」与「证据有用」混为一谈:一份相关文档可能把决定性事实藏在被片段截断的一小段中,多跳推理中某文档的价值也可能在发现中间实体后才显现,于是智能体即使检索到正确文档仍可能答错。另一端的 DCI 虽然通过 grep、本地读取等高分辨率操作解决了接口瓶颈,却几乎完全移除了语料级相关性引导——模式匹配命令把所有位置当成同等有希望地扫描,导致有用线索出现得晚、输出被截断时丢失,随着语料增长工具调用数 $ ext{Tools}$ 迅速膨胀。实测中 DCI 在 BC+ 100K 上平均调用 99.1 次工具、48.8 轮,远高于检索型方法。

本文的目标是作者的目标是保留 DCI 高分辨率、可组合、可验证的细粒度交互能力,同时把检索相关性重新引入到交互过程内部,用作一种执行先验而非硬性的证据瓶颈。具体而言,希望在两个互补的分辨率上发挥作用:全局相关性决定一次模式匹配操作先搜索哪些文档,让有希望的文档比不相关的更早被遇到;局部相关性决定当原始输出超过模型观测预算时哪些匹配片段保持可见。最终在 BC+ 与 BRIGHT 上同时提升准确率与工具效率前沿。

与已有工作不同的是,现有工作(如 RISE、DR-DCI、Pi-Serini)虽用稀疏或稠密检索来构建、扩展一个有界的候选空间再让智能体探索,但相关性仍然只是「构造空间」的机制,而不是空间内部交互的细粒度执行信号——它既不直接决定模式匹配操作的遍历顺序,也不在输出截断时区分哪些匹配应优先展示给模型。本文的独特切入角度是:把相关性作为执行先验贯穿到 grep 探索中,让文档级排序变成搜索顺序、让匹配级重排决定局部可见性,从而把检索评分从一次性过滤器升级为持续指导交互的双层执行信号。

核心方法

RARG 完全构建在 DCI-Agent-Lite 之上,后者只暴露 Bash(command) 和 Read(doc_path, offset, limit) 两个工具,Bash 主要用来发 grep 命令、Read 用来读取匹配周围的上下文。整体直觉是:把稠密检索当作支撑(support,提供相关性指导)而不是承载(carry,直接做证据通道),于是相关性不再以 top-k 内容形式喂给模型,而是被转写成一份排好序的文件路径清单,由 rg 按该顺序串行扫描。在此基础上叠加两个细化层级:RARG+ 用查询相关段落作为入口初始化,RARG++ 对一批 rg 命中片段做匹配级重排。三个层级分别决定「从哪开始搜索」「先遍历哪些文档」「哪些局部观察送达模型」。上下文管理沿用 DCI 的 Level-3 压缩,单条工具结果截断到 $C$ 字符、保留最近 $T$ 轮。

核心创新是把相关性的角色从「内容选择器」反转为「执行先验」。作者明确把检索定位为支撑而非证据通道:embed_recall(scope_query) 不返回文档内容,只把排好序的路径写入 /tmp/scope_{N}.txt 并把「scope 文件→查询」的映射返回给 LLM。由于 rg 多线程输出会打乱路径顺序,RARG 用一个基于规则的正则匹配层自动给 rg 调用注入 -j1 强制单线程串行扫描,从而把「文档级相关度排序」真正转成「搜索顺序」。这与 RISE 等把检索当信息通道、用 Search 调用返回片段的本质区别在于:RARG 每个查询平均只发 1.2–1.6 次 embed_recall 来固定文档级顺序,然后把绝大部分探索交给受限的 rg。

方法步骤详情

第一步:智能体每集开始调用 embed_recall(原问题),得到排好序的范围文件 /tmp/scope_{N}.txt(最多 10000 条路径,相关文档几乎总排在前部)。第二步:LLM 用 `cat /tmp/scope_{N}.txt | xargs -d '\n' rg [OPTIONS] "PATTERN"` 形式搜索,正则层自动注入 -j1 保序输出;rg 命中数在 BC+ 上限 30、BRIGHT 上限 60,每条命中截断到 1000 或 500 字符。第三步(RARG+):取范围顶部文档切成 400–1000 字符段落,编码后按 scope 查询打分取 top-10,用 标签追加到 embed_recall 输出作为入口而非答案。第四步(RARG++):命中数超过 $m$ 时,构造重排查询 Instruct/Query(=scope query)/RG focus(=关键词) 对至多 $M=500$ 条命中重排、取 top $m=30/60$。第五步:智能体持续调用工具直到自信作答,压缩时保留 scope 映射、清除段落。

技术新颖性

技术新颖性体现在三点。其一,提出相关性的双层注入:全局层面用文档级排序决定 rg 遍历顺序,局部层面用匹配级重排决定截断后哪些片段可见,二者互补。其二,用规则自动注入 -j1 来保序,而非在完整多线程扫描后再重排——后者在命中很多的查询上本身就很慢,而 -j1 串行扫描可在累计到 30/60 或 $M=500$ 条命中时即停,实现同等排序但远少的事后处理。其三,匹配重排采用「构造式查询」(scope query 拼接 rg 关键词),而非让 LLM 额外生成 rerank_query;实验表明生成式变体反而掉到 75%,作者归因于训练-评测分布偏移。这三点共同把 DCI 的细粒度交互与检索的相关性先验融合在一起。

Overview of RARG
Figure 2: Overview of RARG

实验结果

在 BC+ 100K(Table 1),RARG++ 用 GPT-5.4-mini 取 84%,比 RISE 与 DCI 的 78% 高 6 个点,平均工具仅 23.9 次,远低于 DCI 99.1、RISE 28.7;变体递进清晰:RARG→RARG+→RARG++ 准确率 80→81→84。换 GPT-5.4 后 RARG++ 达 91%,超 RISE 82% 达 9 点;nano 上达 79%,超 DCI 71%、RISE 68%。扩到 1M(Table 2)后 RISE-BM25 从 77% 掉到 69%,RARG++ 仍维持 79%,保持约 10 点优势。BRIGHT(Table 3)RARG+ 平均 $\text{nDCG}@10$ 53.36,超检索专精 NeMo(52.89) 与 DCI(48.43);变体顺序反转为 RARG+>RARG>RARG++,因广度优先任务更偏好入口初始化。机制分析(Figure 3、4)显示 DCI 命中分布最平、RARG 前部集中、范围召回约 95–97%,1M 后 RG 覆盖率骤降,印证相关性引导并解释噪声退化。

Main results on 100-query (RISE version) BrowseComp-Plus with a 100K-document corpus
Table 1: Main results on 100-query (RISE version) BrowseComp-Plus with a 100K-document corpus
Results after scaling 100-query BrowseComp-Plus from 100K to 1M documents using GPT-5.4-mini (medium reasoning)
Table 2: Results after scaling 100-query BrowseComp-Plus from 100K to 1M documents using GPT-5.4-mini (medium reasoning)
Retrieval effectiveness on BRIGHT, measured by NDCG@10
Table 3: Retrieval effectiveness on BRIGHT, measured by NDCG@10
Accuracy/nDCG@10 versus interaction cost (average tool calls) on BrowseComp-Plus and BRIGHT
Figure 1: Accuracy/nDCG@10 versus interaction cost (average tool calls) on BrowseComp-Plus and BRIGHT
The updated relevant-document hits over scope ranks on BC+
Figure 3: The updated relevant-document hits over scope ranks on BC+
查看结构化数据
任务指标本文基线提升
BrowseComp-Plus (100K, 100查询) 问答准确率 Acc (%),LLM-as-judge GPT-5.1 RARG++ 在 GPT-5.4-mini 上 84% RISE 78% / DCI 78% +6 个百分点,且工具调用从 99.1 降至 23.9
BrowseComp-Plus 100K (GPT-5.4 强模型) Acc (%) RARG++ 91% RISE 82% +9 个百分点
BrowseComp-Plus 扩展到 1M 文档 (GPT-5.4-mini) Acc (%) RARG++ 79% RISE-BM25 69% +10 个百分点,自身从 84% 温和下降
BRIGHT 四子集平均 $\text{nDCG}@10$ RARG+ 53.36 NeMo Agent 52.89 / DCI 48.43 超过检索专精的 NeMo 0.47 个点

局限与改进

作者坦承 RARG 依赖嵌入模型的相关性质量,且两层引导对模型提出不同要求:文档级排序要给长文档打分、匹配级重排要给短片段打分,同一个模型未必兼顾——BRIGHT 上 NV 擅长文档排序却不擅长短匹配,只能退回 Qwen3-Embedding。强制单线程 -j1 与匹配重排都增加搜索延迟,时间-性能权衡仍存在。方法对主干指令跟随能力敏感:GPT-5.4-nano 多阶段协议遵循较差、scoped-rg 占比明显缩水,准确率与一致性都不如 mini/GPT-5.4。语料噪声会带来干扰:长 FineWeb-Edu 文档让 rg 误命中增多、嵌入分数变差,匹配级重排只能部分缓解。生成式重排查询变体虽收敛最快(17.8 工具)却掉到 75%,提示存在训练-评测偏移。

独立分析的弱点

其一,scope 容量被硬编码上限 10000 路径,对极端长尾或多跳任务可能不够,且论文未给出该上限的消融;改进方向是按查询难度自适应或分层分桶。其二,相关度信号与 rg 输出耦合在 Unix 管道上,遇到含 50 万以上匹配的高频词查询时 -j1 串行扫描仍偏慢,未来可探索按文件分块并行后再合并排序的混合策略。其三,匹配重排的「构造式查询」依赖把 rg 模式机械转成关键词,遇到正则、否定、跨字段模式时会失真,可考虑轻量模型在线合成查询。其四,方法强依赖主干指令遵循,nano 等弱模型上 scoped-rg 占比塌缩,说明 prompt 层注入脆弱,可用工具签名内嵌 scope 参数等更结构化方式增强鲁棒性。其五,BRIGHT 上 RARG++ 反而最差,表明匹配级重排不利于广度优先任务,缺少任务自适应的粒度切换。

未来方向

作者明确提出的方向包括:弥合生成式重排查询的训练-评测差距(该变体收敛最快却掉点,潜力可观);研究如何降低局部词法匹配对语料噪声的敏感性,以更好支持 1M 以上语料;在更多主干、开放网页设置与更多领域上做更广验证。基于本成果还可延伸:把双层相关性思想迁移到向量数据库的原生 API、用强化学习训练小模型直接输出保序的文件清单、把匹配级重排扩展为可解释的证据链标注、以及与多智能体分工(召回型 vs 验证型)结合以同时兼顾 BC+ 的深度优先与 BRIGHT 的广度优先。

复现评估

复现度中等偏上。作者在 § 摘要页公开了代码仓库 github.com/LeqsNaN/RARG,并采用 DCI-Agent-Lite、RISE 与 NeMo 的官方实现作为基线,BC+ 与 BRIGHT 均为公开基准,关键超参(rg 命中上限 30/60、字符截断 1000/500、重排池 $M=500$、$m=30/60$、最多 100 轮、压缩阈值 230K、保留最近 40 条工具结果)均写明。但主要主干是 GPT-5.4-mini/nano/GPT-5.4 闭源模型、嵌入模型 Qwen3-Embedding-4B 与 llama-nv-embed-reasoning-3b 需 H20 GPU 运行,LLM-as-judge 用 GPT-5.1,整体推理与硬件成本较高;rompt 与工具定义放在附录 B,需仔细对齐才能复现 nano 上较弱的指令遵循行为。