ITER: Interaction-Aware Retrieval for Agentic Search
Haodong Chen, Shuai Wang, Yu Yin, Shengyao Zhuang, Guido Zuccon, Teerapong Leelanupab
cs.IR
2026-08-28
ITER把主问题、当前子查询和历史子查询拼成查询,把已读有用文档当冗余负样本训练稠密检索器。六套Agent上相对LRAT,InfoSeek-Eval平均高7.5%,BrowseComp-Plus平均高13.5%。
深度研究 Agent 回答复杂问题,会自己拆一串子查询、看文档、再搜下一轮。检索器却几乎总是只看见当前这一句。上一轮搜过什么、Agent 已经点开读过哪些页,它都不知道。
昆士兰大学团队在 LRAT 放出的 26,482 条 Tongyi-DeepResearch 轨迹上量过这件事。相邻子查询的稠密向量余弦相似度均值 0.657,同轨迹非相邻也有 0.575,跨轨迹随机对只有 0.237。从第二次搜索起,top-10 里 52.1% 的文档上一轮已经出现过;到第八次,平均只有 3.9 条是新文档。被 Agent 点开读过的文档,后续搜索里有 54.9% 会再回来,其中 44.3% 直接排第一、70.1% 落在前三。
当前子查询仍然相关的文档,对 Agent 可能已经没有边际收益。检索器却还在把它们顶回榜首。
ITER 做两件事:查询表示带上交互历史,训练信号按轨迹位置来定义。
默认查询输入拼三块。主问题保住总任务,当前子查询标明这一步要补什么,此前的子查询标明已经探过哪些方向。第一步没有历史子查询。实验里也试过把访过的文档全文、读后摘要、搜索前推理塞进查询;文档正文和读后摘要会拖累证据召回。
训练轨迹不是在常规 top-10 上采的。搜索工具先取 100 条候选,去掉前面已经返回过的,再给 Agent 10 条没见过的;重复文档单独列在 returned earlier,Agent 仍可用 getdocument 打开。这套去重界面用 Tongyi-DeepResearch-30B 在 10,000 道 InfoSeek 训练题上跑,检索后端是 BM25 和 Qwen3-Embedding 的 0.6B、4B、8B,共 40,000 条轨迹,留下最终答案对得上参考的 20,893 条。67,934 个正样本对里,26.7% 是延迟访问:文档更早出现过,Agent 这一步才点开。
正负样本按交互时机分层。当前搜索之后、下一次搜索之前点开,且被 Qwen3-30B-A3B-Thinking-2507 判为有用的文档,是正样本。负样本三档:
每组 1 正 9 负,最多各抽 3 个冗余和难负,其余用弱负填。正样本还按读后推理长度做实例权重。损失是带权重的对比学习,温度 0.02。骨干是 Qwen3-Embedding-0.6B,跟 LRAT 同款,FlagEmbedding 全量微调两轮,学习率 1e-6,batch 32;查询截到 8192 token,文档截到 512。另训了一个 4B 对照。
评测两套固定语料的深度研究基准。InfoSeek-Eval 300 道多跳题,语料 Wiki-25-Dump 约 1120 万篇,题目与训练不相交,算域内。BrowseComp-Plus 830 道题、100,195 篇文档,题目和语料都没进训练,算域外。检索一律返回 top-10、64 token 摘要,Agent 最多 50 轮工具调用。
训练轨迹来自 Tongyi-DeepResearch-30B。这套 matched-agent 上,0.6B 默认 ITER(主问题+当前+历史子查询)InfoSeek 成功率 80.0,LRAT 是 72.7,只喂当前子查询的 ITER 是 76.7。BrowseComp-Plus 分别是 46.6、43.4、43.7。证据搜索召回从 LRAT 的 0.602 升到 0.636。再把搜索前推理拼进查询,BrowseComp 到 47.6,InfoSeek 掉到 79.0。
同设置下 BM25 在 InfoSeek 上已经到 77.3,高于 LRAT 的 72.7;ITER 默认 80.0 只比 BM25 多 2.7 点。BrowseComp 上 BM25 只有 31.1,ITER 拉到 46.6,差距主要出在更难、更长的搜索轨迹。
六套骨干、三个模型家族,默认 ITER 相对 LRAT 的 12 组对照全赢,平均相对提升 InfoSeek-Eval 7.5%、BrowseComp-Plus 13.5%,其中 7 组 McNemar 显著。未见过的五套骨干上,任务成功率也高于同规模的 AgentIR。AgentIR 的证据搜索召回往往更高,Agent 真正点开、最终答对的比例 ITER 更稳。最大单点出现在 Qwen3.6-27B:InfoSeek 从 LRAT 的 68.7 到 79.3,BrowseComp 从 28.1 到 34.5。
查询消融:只加主问题,BrowseComp 从 43.7 到 45.4;再加历史子查询到 46.6、InfoSeek 到 80.0。把已读文档正文塞进查询,BrowseComp 掉到 41.1、召回 0.541。拿掉冗余负样本,BrowseComp 从 46.6 掉到 40.8、召回从 0.636 到 0.561,比拿掉难负样本的损伤大得多。权重改成均匀 (1,1,1),BrowseComp 掉到 43.9;把冗余权重加到 5.0,InfoSeek 掉到 75.0。
0.6B 扩到 4B 没有单调变好。InfoSeek 上默认表示从 80.0 掉到 77.0,BrowseComp 从 46.6 升到 48.0。更大的编码器替代不了历史条件。
做深度研究系统的人,检索器经常还是 BM25 或离线训好的稠密模型,每一步当独立查询打。ITER 说明,这一步该排什么,取决于 Agent 已经搜过、读过什么。改动不大:查询侧多拼几段结构化历史,训练侧把已读有用文档当高权负样本。接口仍是标准的 top-k 排序,不必换成 corpus shell 或工作区。
可落地的选择也很清楚。默认表示别塞文档正文和读后摘要,那些会跟冗余负样本打架。搜索前推理在 Tongyi 上有时能再抬 BrowseComp,换到别的家族就不稳:gpt-oss-120B 上加推理后 BrowseComp 从 40.8 掉到 30.2。跨 Agent 部署优先用主问题加历史子查询。
这是渐进改进。收益来自把交互状态写进同一个稠密编码器,代码和权重已公开。
论文没有单独的 Limitations 节,开放问题写在结论里:怎么表示 Agent 已经学到的信息、交互信号怎么跨 Agent 迁移、检索和搜索决策要不要联合优化。
训练轨迹只来自 Tongyi-DeepResearch-30B 和 InfoSeek 训练题。去重搜索界面增加了未见文档覆盖,评测时所有检索器却走未过滤的标准 top-10,训练分布和评测接口并不对齐。正样本要过另一台 Qwen3-30B 裁判,跟 AgentIR 用外部 LLM judge 的路线只是换了信号来源,裁判偏差仍在。
0.6B 升 4B 在 InfoSeek 上默认设置掉了 3 个点,论文没把原因讲清楚。BrowseComp-Plus 语料只有约 10 万篇,比真实网页小两个数量级,重复文档占比会被放大。任务成功率两端判分标准也不一致:BrowseComp 用另一台 Qwen3 当裁判,InfoSeek 用字符串匹配。
冗余负样本把「已经有用」直接当成「下一步不该再排前面」。有些多跳题需要回头核对同一篇。26.7% 的延迟访问说明当时没点开不等于没用,弱负样本仍被拿来当负例,只是权重打到 0.3。