
这项由英国曼彻斯特大学、MAP团队、香港科技大学(广州)、香港科技大学以及北京航空航天大学联合开展的研究,以预印本形式于2026年4月21日发布在arXiv平台,编号为arXiv:2604.19572。感兴趣的读者可通过该编号在arXiv上查阅完整原文。
一、AI程序员正在被"信息垃圾"淹没
回想一下你家里的记事本。如果每次外出购物,你都把超市里货架上所有商品的价格、包装颜色、摆放位置全都记下来,而不只是记下你买了什么、花了多少钱,那这本记事本很快就会被无用信息填满。当你下次想查某件事的时候,你需要翻过成百上千页的废话,才能找到那一行真正有用的字。
AI程序员——也就是所谓的"终端智能体"——正在经历这种煎熬。这类AI的工作方式是在电脑终端里一步一步执行命令:先运行一个指令,看看返回了什么信息,再根据这些信息决定下一步怎么做。听起来很合理,但问题在于,终端返回的内容往往杂乱无比。安装一个软件包时,屏幕上会刷出几百行"正在解压缩……正在设置……正在配置……";编译一段代码时,会出现大量重复的编译日志;克隆一个代码仓库时,进度条信息反复滚动。这些内容占据了AI的"记忆空间",却几乎不含任何真正有用的判断依据。
更要命的是,AI在做每一步决策时,都需要把之前所有步骤的信息一并"翻出来看"。这意味着随着任务步骤增加,需要处理的信息量会以平方级别增长——走了10步,信息量可能已经是走5步时的4倍。这不仅让计算成本急剧攀升,更让AI在一大堆废话里迷失方向,忘了自己最初要做什么。
曼彻斯特大学的研究团队决定正面解决这个问题。他们提出了一套叫做TACO(Terminal Agent Compression framework,终端智能体压缩框架)的系统。这套系统的核心思想是:与其让AI硬撑着看完所有废话,不如教它学会自动识别哪些信息是垃圾,哪些是宝贝,然后把垃圾扔掉、把宝贝留下。更聪明的地方在于,这套"识别技巧"会随着AI完成的任务越来越多而不断自我完善——就像一个新员工,刚来时需要学习怎么整理文件,用得越久,整理技巧就越纯熟。
二、从"死记硬背"到"学以致用":以往方案为何行不通
在TACO出现之前,研究者们并非没有意识到这个信息过载的问题。已有的应对方案大致分成几类,但都存在明显局限。
最简单粗暴的方式是"截断":超过一定长度就直接砍掉后面的内容,就好比你的记事本写满了就直接撕掉后半本。这个方法有时会把最关键的错误信息截掉,让AI根本不知道自己到底哪里出了问题。
稍微聪明一点的方式是"手工规则":由人类专家提前写好一套规则,告诉AI遇到什么样的输出内容可以忽略。比如"遇到`apt-get install`的输出时,只保留错误信息和最后的安装结果"。这种方法在特定场景下确实有效,但问题是终端任务的种类实在太多——今天在整理Python代码仓库,明天在编译Rust程序,后天在调试数据库配置,每种任务的输出格式完全不同。用有限的手工规则去覆盖无限多样的场景,就像试图用一把万能钥匙打开世界上所有的锁,注定徒劳。
还有一种方法是让另一个AI负责"总结":读完所有输出之后,让AI帮你写一个摘要。但研究团队做了实验,发现这种通用总结方式在任务表现上反而比什么都不做还要差(如原论文图1所示,"LLM Summarize"方法的准确率为20.3%,低于基线的23.9%)。通用总结太容易把关键细节抹去,或者把无关信息也捎带进去。
最后还有一种基于训练的方法,代表是一个叫SWE-Pruner的系统。它通过专门训练让AI学会剪枝,确实更灵活,但代价是需要额外的训练过程,而且主要针对特定类型的软件工程任务,换个场景就可能水土不服。
TACO的思路与这些方案都不同。它既不靠人工制定规则,也不靠额外训练,而是让系统在完成实际任务的过程中自动积累经验、自动总结规律、自动不断改进。这种"边干边学"的机制才是它的核心竞争力。
三、TACO的工作方式:一套会自我进化的"过滤系统"
可以把TACO理解成一个附着在AI程序员身上的智能秘书。每当AI执行完一条终端命令,收到大量输出时,这位秘书不会把所有内容都原封不动地递给AI,而是先过一遍,把无用的废话过滤掉,再把真正有价值的信息呈上。而这位秘书的工作手册——也就是"过滤规则"——并不是一成不变的,它会随着工作经验增加不断更新和完善。
TACO的运作分成三个层次,就像一个三层的知识管理体系。
最底层是"全局规则池"(Global Rule Pool)。这可以理解为整个系统积累的所有知识的总仓库。仓库里存放着一条条"规则",每条规则描述的是:遇到什么样的命令(触发条件),哪些内容要保留(关键信息特征),哪些内容可以删除(冗余信息特征),以及保留前几行和后几行。每条规则还配有一个"可信度评分",记录这条规则在过去的任务中表现有多好。新生成的规则初始可信度设为满分,如果之后被证明会误删关键信息,可信度就会下降。
系统一开始并非空白状态,研究团队预先放入了6条基础规则,涵盖几种最常见的场景:`git`克隆时的进度条噪声、`pip install`的安装过程刷屏、`apt-get`的解压配置流水账、编译器输出的超长命令行、heredoc写文件时的回显信息,以及OpenSSL生成密钥时的点号进度条。这6条规则就像新员工入职时培训手册里最基本的工作常识,保证系统在还没积累任何实际经验时也能发挥一定作用。
第二层是"任务级规则集"(Task-level Rule Set)。每当要开始一个新任务时,系统不会直接把全局规则池里所有规则都用上——规则太多反而会带来混乱。它会根据规则的可信度和历史使用频次(两者相乘得到一个排名分数),从全局规则池里挑出排名最靠前的30条候选规则,再让AI根据当前任务的具体描述,从这30条里进一步筛选和调整,最终组成这个任务专用的规则集。这就好比一位经验丰富的厨师面对一道新菜,不会把厨房里所有调料都往锅里放,而是根据这道菜的特点,挑选最合适的几种调味料。
第三层是"任务内实时更新"(Intra-Task Rule Set Evolution)。任务执行过程中,规则集并不是固定不变的。当遇到某条命令的输出,现有规则都覆盖不到时,系统会把这段输出的开头和结尾告知AI,让AI即兴创作一条新规则,加入当前任务的规则集。而当AI程序员在处理压缩后的信息时,表现出明显的迷惑迹象——比如请求重新获取完整输出、重复执行同一条命令——系统就会把这个信号解读为"刚才那条规则压缩得太狠了,把有用的东西也删掉了",进而让AI生成一条更保守的替代规则,专门用来取代那条"过度热情"的规则。
此外,TACO有一个"永不压缩"的底线:凡是输出内容里含有明显错误信号的(比如语法报错、异常堆栈),一律原封不动地传给AI,不做任何处理。错误信息往往是AI判断下一步该怎么走的最关键依据,绝不能有任何损失。
任务结束后,系统会把本次任务中表现良好的规则(成功应用至少一次且最终可信度达到门槛)写回全局规则池,供下一个任务使用。而那些被判定为"压缩过头"的规则,则会被从全局规则池中直接删除,避免"劣币驱逐良币"。每条规则的全局排名分数计算方式很直观:可信度乘以(历史成功使用次数加一)。一条可信度高、使用频繁的规则自然排名靠前;一条刚被创建、还没经过考验的规则则排名靠后,等待实战检验。
四、如何判断系统已经"学到位了"?收敛机制的设计
TACO是一个会持续进化的系统,但"持续进化"也带来一个问题:什么时候应该停下来?一直进化下去,最终会不会陷入永无止境的调整循环?
研究团队为此设计了一套叫做"留存率"(Retention)的收敛指标。具体来说,系统会在每轮跑完所有任务后,看看全局规则池里排名前30的规则发生了多大变化。如果这一轮结束后,还有90%以上的规则和上一轮相同,那就说明规则体系已经趋于稳定——该学的基本都学会了,继续跑下去收益递减,可以停止了。
研究团队在实验中用真实的任务准确率变化来验证这个指标是否靠谱。他们发现,在留存率还没超过90%阈值的早期阶段,准确率的波动幅度通常超过2个百分点;而一旦留存率稳定超过阈值,准确率的波动立刻明显收窄,稳定在1个百分点左右。这意味着这个指标确实抓住了系统真实的学习状态——规则稳定了,性能也就稳定了。
五、实验结果:提升有多明显,省了多少"脑力"
研究团队在多个专门为AI终端任务设计的测试平台上进行了系统验证,主要包括TerminalBench(分1.0和2.0两个版本,专门测试AI在真实命令行环境中完成复杂任务的能力)以及SWE-Bench Lite(测试AI修复真实GitHub代码问题的能力)、CompileBench(测试编译任务)、DevEval(代码生成能力)和CRUST-Bench(C语言转安全Rust语言的移植任务)。测试使用了多款主流大型语言模型,既有开源的DeepSeek-V3.2、MiniMax-M2.5、Qwen3系列,也有商业闭源模型的对比参考。
以最核心的TerminalBench测试为例,接入TACO后的改善效果相当稳定。以230亿参数的MiniMax-M2.5为例,在TB1.0上从42.30%涨到45.25%,在TB2.0上从42.80%涨到44.16%。685亿参数的DeepSeek-V3.2在TB1.0上从43.93%涨到46.25%,在TB2.0上从40.62%涨到42.77%。480亿参数的Qwen3-Coder-480B在TB2.0上从23.90%涨到25.86%。规模较小的Qwen3-32B更是在TB2.0上从3.92%大幅跳升至7.48%,涨幅接近翻倍。绝对值提升范围在0.36到6.02个百分点之间,覆盖所有测试模型,没有例外。
在成本方面,对于参数量超过2000亿的大模型,TACO让每一步的平均输入词元量减少了约10%,而完成任务所需的步骤数基本没有变化。换句话说,任务照样完成得一样好,但每一步消耗的"算力"少了一成。这在实际工程部署中意味着可观的经济节省。
有一个有趣的现象值得特别关注:对于参数量较小的模型(比如Qwen3-32B),接入TACO后反而会增加总词元消耗。原因在于,这些小模型在没有压缩帮助时,往往在任务进行到一半就因为"上下文信息太乱"而提前放弃,只走了十几步就宣告失败;有了TACO的清晰信息输入,它们能够坚持走完更多步骤,最终成功率大幅提升。步骤多了,总成本自然也上去了——但换来的是更高的成功率,这笔账怎么算都是值得的。
研究团队还做了一个更严苛的公平性测试:给所有方法设定完全相同的词元预算,看谁能在预算内做得更好。在所有六款测试模型上,无论预算设定为1400万词元还是1.2亿词元,TACO的曲线始终高于不使用TACO的基线。这说明TACO的优势并非来自"多花钱",而是真实地提升了信息利用效率。
在其他四个测试平台上,TACO同样保持了一致的正向表现。SWE-Bench Lite从56.30%升至57.12%,同时总词元消耗从3.076亿降至2.705亿;DevEval从38.10%升至39.74%,总词元从3672万降至2682万;CRUST-Bench从47.00%升至48.05%,总词元从1.635亿降至1.350亿。CompileBench的准确率保持75.00%不变,但词元消耗从1455万降至1141万。这种在保持或提升准确率的同时降低词元消耗的表现,证明TACO的价值不局限于特定任务类型。
六、深挖案例:一个AI如何在101步任务中靠一条规则省下三万字的垃圾信息
原论文提供了三个具体任务的详细分析,像一组显微镜下的标本,让TACO的工作机制变得肉眼可见。
第一个案例是`adaptive-rejection-sampler`任务,要求AI在R语言环境中实现并验证一种统计采样算法。整个任务25个步骤里,只有4步触发了压缩,但这4步的压缩效果惊人。其中最夸张的一步是安装R语言运行环境:`apt-get install -y r-base`这条命令会触发200多个依赖包的解压安装,终端输出了一万多个字符——全是"正在解压libXXX……""正在设置libXXX……"这样的流水线刷屏。这些内容对AI来说没有任何判断价值,AI需要知道的只是:安装成功了没有,有没有报错?
TACO的规则执行后,把这一万多字符压缩成了73个字符:"[等待中] apt-get install -y r-base,当前状态:正在设置x11-utils"。压缩比达到了0.007,也就是说只保留了原始内容的0.7%。这73个字符告诉AI:"安装还在进行,暂时没有报错",这正是AI此时需要知道的全部信息。
第二个案例是`sqlite-with-gcov`任务,需要把SQLite数据库的编译系统配置为带代码覆盖率检测的版本。一条`make`命令产生了6519字符的输出,里面包含了100多个源文件被复制到临时目录的记录——这些`cp`命令对AI来说完全是噪声。TACO的规则把这部分删掉,但完整保留了最后那条关键的编译命令,里面有`-fprofile-arcs -ftest-coverage`参数,这两个参数正是确认覆盖率检测已正确启用的证据。如果用简单截断的方式处理,很可能会从末尾砍掉这条最关键的信息;TACO的语义过滤则能精确识别这行的重要性,确保它不会被误删。
第三个案例是`vulnerable-secret`任务,要求AI对一个二进制程序进行逆向工程,找出隐藏的秘密信息。这个任务长达101个步骤,AI多次调用`objdump`命令反汇编二进制文件,每次都产生大量十六进制汇编代码输出。在任务的第9步,第一次出现`objdump`输出时,当时的规则集里没有任何覆盖这种情况的规则。TACO立刻触发"实时新增规则"机制,让AI生成了一条`objdump_disassembly_rule`:保留函数调用指令(因为它们揭示了程序调用了哪些系统函数,比如`signal`和`ptrace`,这些是反调试逻辑的关键线索),保留有符号标签的跳转目标,删除大量重复的纯十六进制字节行。
这条规则在此后的任务中被触发了18次,共节省了29464个字符——占这个任务全部压缩量的99.4%。整个101步任务的总输入词元量高达240万,这条临时创建的规则避免了大量低价值的汇编代码占据AI的宝贵注意力,让AI得以保持清晰的逻辑链条,最终成功找到隐藏信息。
七、分层控制参数:批量大小与候选规则数如何影响最终效果
TACO有两个关键参数需要在部署时调节,研究团队通过实验摸清了两者的最优取值逻辑。
第一个参数是每次从全局规则池里取出多少候选规则(Top-k)供任务初始化使用。取得太少,可能漏掉某些有用的历史规则,新任务就得从头摸索;取得太多,规则太庞杂,AI做选择时反而容易选错,而且选择过程本身也要消耗词元。实验发现,k=30是最佳平衡点:在这个值附近准确率最高,继续增大k之后准确率不升反降,选择成本却持续攀升。
第二个参数是并行处理的任务批次大小(N)。由于系统在任务之间共享规则,理论上后处理的任务能受益于前面任务积累的新规则。批次越小,意味着每完成一批任务就能更新一次规则池,新规则传播得更快,最终效果也更好。但批次越小,并行度越低,整体运行速度越慢。研究团队选择N=4作为标准设置,在这个参数下完成一轮完整的自我进化大约需要4天——对于一个不需要额外训练、纯靠运行积累经验的框架来说,这个时间代价是可以接受的。
八、拆解实验:哪部分功能贡献了多少价值
为了搞清楚TACO的哪些设计元素是真正有用的,研究团队做了拆分实验,分别去掉"任务内实时更新"和"全局规则池进化"两个组件,看各自对最终效果的影响。
去掉全局规则池进化组件,只在任务内部做规则调整但不积累跨任务经验的情况下,准确率从基线的40.6%降到了40.4%,几乎没有改善。这说明单纯靠单个任务内部的临时规则是远远不够的——一个任务的经验太片面,规则质量有限。
去掉任务内实时更新组件,只用全局规则池里的静态规则而不在执行中动态调整的情况下,准确率更是从40.6%跌到38.9%,反而低于基线。这个结果值得深思:固定规则不仅没有帮助,反而起了负面作用。原因在于,当一条全局规则遇到与它所预设场景不完全匹配的输出时,可能会误删关键信息,而如果缺少实时调整机制,这种错误就无法被纠正。
只有同时拥有两个组件的完整TACO,才能把准确率提升到42.7%,比基线高出2.1个百分点,同时词元消耗降低12.2%。两个组件相辅相成:全局池保证了跨任务知识的积累与传播,实时更新保证了在当前任务里的灵活纠偏,缺一不可。
说到底,TACO解决的问题很朴素:让AI不要被信息垃圾淹没,帮它把注意力集中在真正重要的事情上。这个思路并不神秘,但把它做成一个无需额外训练、适应能力强、能持续自我改进的系统,需要在设计上做不少精妙的工程权衡。
研究团队用实实在在的数字证明了这套系统的价值:无论是几十亿参数的小模型还是几百亿参数的大模型,无论是软件工程、编译任务还是逆向工程,TACO都能给出一致的正向改善。这项研究给整个AI终端智能体领域提供了一个新的思路:与其一味扩大上下文窗口、让AI硬撑着处理越来越多的信息,不如先把信息质量提上来,让每一个词元都物有所值。
当然,TACO目前也有值得继续探索的空间。比如,规则的质量依赖于AI本身的语言理解能力,用能力较弱的小模型来生成规则时,效果也会打折扣。再比如,一轮完整进化需要4天,在需要快速部署的场景下是否有加速方案,也是后续值得研究的方向。有兴趣深入了解这套系统完整细节的读者,可以通过arXiv编号2604.19572找到原始论文。
Q&A
Q1:TACO框架和普通的"把AI的输出截断一半"有什么本质区别?
A:截断是不管内容重不重要、一刀切掉后面的部分,很容易把关键错误信息或最终结果砍掉。TACO则是"语义过滤"——它通过规则识别哪些行是真正的噪声(比如"正在解压libXXX"),哪些行必须保留(比如报错信息、最终编译命令),只删噪声不动要害。而且这些规则是从实际任务经验里自动学来的,会随任务类型不同而调整,而不是一套固定逻辑。
Q2:TACO需要重新训练AI模型才能用吗?
A:完全不需要。TACO是一个"插件式"的外挂框架,它不修改AI模型本身的参数,而是在AI收到终端输出之前先过滤一遍,再把过滤后的内容传给AI。任何现有的终端智能体系统都可以直接接入TACO,就像给手机加了一个垃圾短信过滤App,不需要换手机,也不需要重新刷机。
Q3:TACO的压缩规则会不会把有用的信息也误删掉,导致AI出错?
A:这是系统设计重点防范的问题。TACO有两道保险:第一,含有明确错误信号的输出(语法错误、异常堆栈等)永远不会被压缩;第二,当AI表现出迷惑行为(比如重复执行同一命令),系统会识别为"压缩过度"的信号,自动生成更保守的替代规则,并且把原来那条"过激"的规则从全局规则池里删除,避免后续任务再次受害。从实验数据来看,完整TACO比不带任务内实时更新的静态规则版本准确率高了约3.8个百分点,印证了这套纠错机制的必要性。
好文章,需要你的鼓励
这项由IIT马德拉斯与BITS Pilani联合发布的研究(arXiv:2604.21523,2026年4月)构建了FOCUS元评估基准,系统检验了评审型视觉语言大模型的可靠性。通过向超过4000个图文和图像样本中注入40种受控错误,研究发现顶尖评审AI的检测失败率在某些条件下超过50%,物理合理性和视觉细节类错误尤为难以被发现,两两比较是最可靠的评审范式。
这篇由Sylph.AI发布的技术报告提出了一套两层自动化框架,核心思想是让AI自动优化自身的运行脚手架,再进一步让AI学会如何更高效地做这种优化。内层的脚手架进化循环通过工人代理、评估代理和进化代理的协作,自动迭代改进单个任务的运行配置;外层的元进化循环则在多个任务上训练,学习一套能快速适应任何新场景的通用进化蓝图,从而彻底消除人工脚手架工程的需求。
这篇由英伟达等顶尖机构联合发表的论文提出了一种名为Voyager的新型智能体。研究团队以《我的世界》为实验平台,通过引入自动课程规划、技能库存储以及迭代反馈机制,成功让大语言模型主导的AI在完全无人类干预的情况下,实现了在复杂开放世界中的自主探索与终身学习。实验数据表明,Voyager在物品收集、探索范围及技能解锁速度上均呈现出远超传统方法的压倒性优势,为未来开发能够自主解决真实物理世界复杂任务的通用人工智能奠定了关键的理论与实践基础。
这项由伊利诺伊大学、斯坦福大学、英伟达和麻省理工学院联合发布的研究(arXiv:2604.25917,2026年4月)提出了RecursiveMAS框架,让多个异构AI模型通过轻量级模块RecursiveLink在内部信号层面直接传递"潜在思想",形成循环协作,彻底绕开了传统多AI系统依靠文字传话的低效方式。配合两阶段内外循环训练策略,整个系统只需优化极少量参数,就能在数学、科学、代码生成和搜索问答等9个基准测试上取得平均8.3%的精度提升,同时实现最高2.4倍推理加速和75.6%的token用量削减。