代码定位太慢?????蚂蚁ACL2026新作:让模子自己学会「该搜几多」
新智元报道
【新智元导读】FuseSearch:学习型自顺应并行执行 —— 一个40亿参数的模子,,,,凭什么在代码定位上干过了商用闭源大模子?????谜底只有四个字:搜得更智慧。。。。
在AI编程狂飙突进的今天,,,,一个尴尬的事实正在浮出水面:
你花在「让 AI 改代码」上的钱,,,,凌驾一半着实烧在了「找代码」上。。。。
研究批注,,,,目今最先进的AI编程Agent,,,,凌驾50%的盘算资源消耗在代码搜索与定位环节——Agent翻来覆去地搜文件、读代码、定位函数,,,,轮次消耗惊人,,,,Token账单飞涨。。。。
当所有人都在卷「模子多大、能写多长的代码」时,,,,蚂蚁集团的一篇ACL 2026 Findings论文把眼光转向了一个更底层的问题:能不可让搜索自己变得更智慧?????
谜底是可以。。。。并且效果堪称惊艳——
FuseSearch-4B,,,,一个仅40亿参数的开源模子,,,,在SWE-bench Verified上抵达84.7%文件级F1,,,,匹配Claude Haiku 4.5的定位能力,,,,同时速率快93.6%,,,,Token消耗降低68.9%。。。。
怎么做到的?????一句话:让模子自己学会该并行几多。。。。
代码定位
AI编程最烧钱的「卡脖子」环节
设想这样一个场景:你让AI帮你修一个Bug,,,,它需要在一个几十万行代码的大型项目中,,,,精准找到该改哪个文件、哪个函数。。。。
这就是代码定位(Code Localization)——自动软件修复中最要害、也最腾贵的瓶颈。。。。
现有方案分为两大门户,,,,各有各的痛点:
但这两派有一个配合的致命缺陷:一次只能做一件事。。。。
每一轮交互只能挪用一个工具,,,,逐步缩小规模。。。。就像你在图书馆找一本书,,,,划定每次只能掀开一个书架看一眼——轮次用完了,,,,信息还没网络够。。。。
论文把这种征象称为信息匮乏(Information Starvation)。。。。
并行 ≠ 万能解药
那解决方案似乎很简朴——一次多调几个工具不就行了?????
没那么容易。。。。论文实验展现了一个反直觉的发明:无脑并行反而更糟。。。。
若是牢靠每轮挪用8个工具(质朴的并行战略),,,,会爆发凌驾34.9%的冗余挪用——重复搜索已经看过的代码区域,,,,不但铺张Token,,,,还会引入噪声信号滋扰判断。。。。
焦点矛盾就此浮出水面:
并行少了→信息不敷用,,,,定位精度下降。。。。并行多了→大宗冗余,,,,铺张盘算资源。。。。
FuseSearch的焦点洞察是:搜索效率和搜索质量并非对立关系。。。。要害不在于并行几多,,,,而在于——什么时间该多并行,,,,什么时间该少并行。。。。
极简工具箱 + 自顺应智能
FuseSearch的设计哲学出奇地优雅:不给模子定死规则,,,,让它自己学会动态调解并行度。。。。
3.1 三把「瑞士军刀」
零本钱安排
FuseSearch只用三个只读工具,,,,极其榨取:
就这三个。。。。不需要代码知识图谱,,,,不需要语法剖析器,,,,不需要任何重型基础设施。。。。零依赖,,,,拿来就能用,,,,可即时安排到恣意代码客栈。。。。语言无关,,,,Python 客栈能用,,,,Java客栈也能用。。。。
工具虽少,,,,能力完整——glob找文件、grep 搜内容、read_file读细节,,,,三者组合可以遍历整个代码库。。。。
要害立异
用「信息增益」量化搜索质量
论文首次提出工具效率(Tool Efficiency)指标,,,,权衡每次工具挪用的信息新颖性:
信息增益=新发明的代码实体数÷总返回的代码实体数
打个例如:你派了5个侦探兵去探路。。。。若是5个人报告的都是统一条路,,,,那4 个人就白跑了。。。。工具效率权衡的,,,,就是「每个侦探兵带回了几多独家情报」。。。。
效率越高 → 每次搜索都在探索新区域。。。。效率越低 → 在做重复劳动。。。。
两阶段训练
先学会并行,,,,再学会智慧地并行
FuseSearch的训练战略分两步走:
阶段一:监视微调(SFT)——建设并行能力
从233个高质量GitHub客栈中提取约21,000个issue-patch对,,,,用强盛的西席模子(Kimi-K2-Instruct)天生搜索轨迹。。。。然后用双重标准严酷筛。。。。
定位准确率 ≥ 0.8
工具效率 ≥ 0.5
从约24,000条候选轨迹中,,,,精选出约 6,000 条「又准又不铺张」的高质量数据,,,,教会小模子「每轮可以同时调 2-8 个工具」。。。。
阶段二:强化学习(RL)——学会自顺应
SFT之后,,,,模子会并行了,,,,但还不知道什么时间该多并行、什么时间该少并行。。。。
RL阶段的奖励函数设计得极为精妙:
\text{奖励} = 0.8 \times \text{定位准确率} + 0.2 \times (\text{定位准确率} \times \text{工具效率})
注重谁人乘积项:
只有「找得准」且「搜得不铺张」同时知足,,,,才华拿到特殊奖励
若是定位完全过失(准确率=0),,,,无论效率多高,,,,奖励都是零——模子不可「高效地犯错」
这个设计迫使模子在搜索的每个阶段都做权衡:目今是广撒网收益大,,,,照旧精准验证收益大?????
训练效果:一种「先撒网、再收网」的搜索战略
经由RL训练,,,,模子自动学会了一种「老司机」式的自顺应搜索模式:
这种「先广度、后深度」的模式,,,,完全是模子自己从奖励信号中学出来的,,,,没有任何人工规则。。。。
实验效果:小模子大翻身
5.1 焦点数据(SWE-bench Verified,,,,386 个实例)
在Qwen3-4B上比照之前的要领RepoSearcher,,,,FuseSearch的提升堪称碾压:
一句话总结:准确率翻倍,,,,速率快16倍,,,,Token省了近70%。。。。
5.2 40亿参数 vs.商用闭源大模子
一个可以外地安排的4B开源小模子,,,,定位能力与商用闭源大模子持平,,,,同时更快、更省。。。。
5.3 接入下游Agent:不掉精度,,,,省一半本钱
把FuseSearch-4B作为Kimi-K2-Instruct的「前置搜索引擎」:
不影响修复效果,,,,直接把本钱砍掉近一半。。。。
为什么这项事情值得关注?????
FuseSearch带来了三个层面的孝顺:
学术层面
首次将「搜索效率」酿成一个可训练的目的。。。。不是简朴地让模子多搜或少搜,,,,而是通过精巧的奖励函数设计,,,,让模子自己学会「什么时间该搜几多」。。。。这为 Agent 工具挪用战略的优化提供了一个新范式。。。。
工程层面
极简设计,,,,零安排本钱。。。。三个只读工具,,,,语言无关,,,,不依赖任何重型基础设施。。。。论文作者已将代码开源,,,,可即时安排到恣意代码客栈。。。。
工业层面
小模子逆袭大模子。。。。40亿参数匹配Claude级别的定位体现,,,,证实晰「智慧的战略」比「堆参数」更主要。。。。关于对延迟和本钱敏感的工业级AI编程场景,,,,这条蹊径极具落地价值。。。。
论文信息
论文问题:FuseSearch: Learning Adaptive Parallel Execution for Efficient Code Localization
收录聚会:ACL 2026 Findings
作者单位:蚂蚁集团(Ant Group)
论文链接:https://github.com/sxthunder/FuseSearch
文章点评
未盘问到任何数据!
揭晓谈论
◎接待加入讨论,,,,请在这里揭晓您的看法、交流您的看法。。。。