想象你是一个老师,班上有个学生特别聪明,你出的题他次次满分。这时候你有两个选择:一是继续用同一套题库,看着他次次考100分,却完全不知道他到底哪里还不够强;二是想办法给他出更难的题,但又不能难到他完全不会做,不然他也学不到东西。

腾讯混元团队最近发的这篇论文,讨论的正是AI训练里一模一样的难题。只不过这里的"学生"是正在训练的语言模型智能体,"考题"是让它在电脑终端里完成各种任务的模拟环境。


【资料图】

**核心问题:题目太简单,AI学不到东西**

先说说背景。现在训练一个能操作电脑终端的AI智能体(比如帮你写代码、跑脚本、管理文件的那种),靠的是强化学习。

强化学习*:让AI在环境里不断尝试,做对了给奖励,做错了不给,通过反复试错学会怎么把任务做好。

而这套学习方式要生效,环境本身必须有区分度,也就是说,同一个任务,AI有时候做对有时候做错,这样才能通过对比知道"什么样的做法更好"。可如果AI每次都能一次通关,这道题对它来说就完全失去了训练价值。

问题是,现在的前沿模型越来越强了。论文里提到,现有的很多从零开始合成的终端环境(比如把GitHub仓库、网页这些资源改造成可执行的任务),对当下的顶尖模型来说已经不够看了,它们反复跑几次全都能通关。这些环境不是没用,而是被浪费了:构建它们花了不少成本,结果因为太简单只能被丢进废纸篓,训练数据的多样性也跟着受损。

那能不能让AI自己给自己出难题?确实有研究者这么想过,这类方法叫智能体环境协同进化。

智能体环境协同进化*:先让待训练的AI在原始环境里跑一遍,把它做错的地方记录下来(形成一个"弱点库"),然后针对这些弱点专门生成更难的新环境。

这个思路听起来很合理,但有个绕不开的毛病:新生成的环境永远是"绕着这个AI的弱点转"的,换一个AI来做,未必还是难题。而且更麻烦的是,训练到后期,AI越来越强,犯错越来越少,弱点库越来越难填满,这套机制会逐渐失效,就像一个总是能猜中你出招套路的对手,你越是了解他,就越难用同一招骗到他。

如果一直依赖这种"AI犯错才能出新题"的方式,你会遇到一个尴尬的死循环:模型越强,能暴露的弱点越少,能生成的新题也就越少,最后训练信号会越来越稀薄,直到彻底枯竭。

**从数学公式里,拆出三个决定难度的开关**

论文的作者们没有继续在"跟着AI的弱点走"这条路上打转,而是回过头去问了一个更根本的问题:一个任务到底为什么会"难"?这跟哪个模型来做完全没关系吗?

他们从AI完成任务的整个决策过程出发,把一次完整的执行拆成一串"场景加技能"的组合。什么意思呢?比如你让AI去处理一个数据库故障,它得先识别出"这是一个数据库连接超时的场景"(这叫场景),然后决定"用重启服务这个技能来解决"(这叫技能),一步步往下走,直到任务完成。

用数学的语言描述,一条任务轨迹有多难,可以拆解成三个因素相乘(严格说是相加,因为用的是对数):一是这个任务需要走多少步才能完成(步骤越多越难);二是任务里出现的场景本身有多罕见(越少见的场景越难,因为AI见过的类似案例少);三是在某个场景下要用的技能有多冷门(哪怕场景常见,如果这一步该用的技能很少被人用到,也会增加难度)。

关键的转折在这里:如果直接用某个特定模型来算这三个概率,得到的其实还是"这个模型的弱点",和前面提到的协同进化方法没有本质区别。作者们的解法是,不用某个模型的概率分布,改用一个基于广泛世界知识的参考分布来衡量——简单说,就是看这个场景和技能在真实世界里、在整个环境家族里,到底常不常见,而不是问某个AI模型觉得它常不常见。

这一步转换非常关键。它把"难度"从"对某个学生而言的难度"变成了"这道题客观上的难度",跟哪个学生来考完全无关。就像一道奥数题,不会因为换了个学生来做,题目本身的难度系数就变了,题目难不难是客观的,只是不同学生的答对概率不同。

这个转换带来一个重要推论:如果只关注AI做错的地方来出新题(也就是协同进化的做法),你实际上只是在针对"技能选错了"这一类错误打转,既没有系统性地增加任务步数,也没有主动引入更冷门的场景。而按照场景、技能、步数这三个客观维度直接去构造新环境,才是更全面、更不受特定模型局限的做法。

**造题的具体办法:一个带着两道关卡的AI流水线**

理论说完了,怎么落地?论文提出的方法叫环境进化,本质上是让一个AI系统扮演"出题者"的角色,拿着已有的环境(题目),一代一代地把它改造得更难。

这套系统被设计成一个双重循环结构,每一代的进化都要闯两道关。

第一道关叫计划打磨。系统里有个"提议者"角色,先把当前环境拆解成前面说的场景加技能序列,然后按照三个方向之一去修改这个序列:要么在里面插入新的步骤(增加任务的长度),要么换掉某个场景(同样的技能,放到一个更少见的场景下用),要么换掉某个技能(同样的场景,要求用一个更生僻的手段解决)。改完之后,一个"审阅者"角色会像审稿人一样反复挑刺,直到这份修改计划真的说得通为止。

第二道关叫环境打磨。审核通过的计划交给"修改者",它会真的动手去改这个环境(比如改配置文件、改题目描述、改验证脚本),改完的候选版本要同时通过三重检验:一是有没有一个正确答案能在这个新环境里跑通(防止改坏了导致题目根本无解);二是随便交个空答案能不能被判为失败(防止判分系统本身有漏洞,随便交白卷都能过关);三是有没有人工总结出的质量规范可以核查(防止环境本身逻辑混乱、指令和验证对不上)。

这套两道关卡的设计,本质上是在解决一个矛盾:既要让AI自动化地、批量地把题目变难,又不能让它在改题目的过程中把题目改坏、改出漏洞。如果只有第一道关没有第二道,就像老师随口说了句"这道题加个条件",但没人去验证加了条件之后题目是不是还有解,改题目的人可能一不小心就把题目改成了无解的悖论,学生怎么答都是错的,这种"题目"完全没有训练价值,反而会污染整个训练过程。

论文里还提到一个很细腻的设计,进化力度。这个概念有点像给"改题目"这件事设置一个调节旋钮,分低、高、最高三档。低档只改一个局部的场景技能对,高档能改一整段连续的步骤,最高档几乎可以不受限制地大改。实验发现,低档改动虽然会让任务执行的步数慢慢变长,但通过率会上下波动、始终降不到零,原因是低档每次只改一个点,改来改去很容易绕回原来的状态,就像你反复调整衣柜里同一件衣服的位置,却没有真正给衣柜做减法,房间看起来乱了,但实际收纳空间没变。相比之下,高档和最高档能让通过率稳定地一路降到零,最高档降得更快,改动幅度也更大。综合考虑效果和可控性,论文最终选择高档作为默认的进化力度。

**三个改题方向,各有各的脾气**

前面提到改题目有三个方向:改任务步数、改场景、改技能。论文专门做了实验,把这三种改法拆开单独测试,结果显示它们各有各的性格。

改步数这个方向,对通过率的打压最狠,一步操作能让通过率下降7.1个百分点,但它带来的执行步数增长相对温和,只增加了9.4步左右,而且这种改法涉及的环境结构和验证系统的改动幅度也是三者里最小的。

改场景这个方向,恰恰相反,它带来的环境和验证系统层面的改动最大(总体改动幅度达到71.1%),说明换一个新场景往往会牵一发动全身,波及到围绕它建立的很多细节。

改技能这个方向,则处在两者之间,但它对执行步数的拉长效果最明显。

这三种方向的性格特点,在连续15代的长期观察里也保持得很稳定,不是偶然的一次性效果。这说明作者们后续把三个方向随机打乱顺序、轮流使用的做法是合理的,如果只盯着一个方向使劲改,进化出来的题目风格会变得单一,就像一个厨师只会做辣的菜,久而久之食客的口味会越来越窄。

**别让AI一开局就被难哭:一个排课表的智慧**

题目造出来了,但还有个问题:一代一代进化下去,后面的环境肯定越来越难,如果不管三七二十一把所有环境混在一起随机丢给AI训练,很容易出现的情况是,AI连续抽到好几个它完全做不了的超难题目,一次都通过不了。

这在强化学习里是个大麻烦。因为强化学习靠的是"同一批任务里,做得好的和做得差的对比"来学习,如果一整组任务全部失败,那就没有"好"和"差"的对比了,这组训练数据直接作废,一分钱学习信号都提炼不出来。

打个比方,这就像给一个刚学骑车的孩子直接安排他去骑山地越野赛道,摔了八次全摔了,教练也看不出他这次摔跤和上次摔跤有什么本质区别,没法给出具体的改进建议。真正有效的训练,应该是循序渐进,先在平地练熟,再慢慢加坡度。

论文里对应的解法叫进化谱系调度器,简称EL调度器。

进化谱系调度器*:让AI按照环境进化的代数顺序、从最简单的第一代开始一步步往后训练,只有当前这一代环境里、AI在8次尝试里能通关6次以上(也就是通过率超过75%),才会解锁进入下一代更难的环境。

这个设计的核心逻辑,就是把"出题的难度曲线"和"AI实际的学习进度"锁死在一起,不让两者脱节。论文的实验数据支持了这个设计的价值:在训练最开始的50步里,用这套调度器的模型,"部分做对"(8次尝试里对1到7次)的比例明显高于随机打乱顺序训练的模型,训练奖励曲线也更稳定地往上走。反过来,随机顺序训练的那组模型,奖励曲线甚至一度往下掉。

**真刀真枪的训练结果:两个模型都涨了十几个百分点**

说了这么多设计思路,最终还是要看效果。论文在两个不同规模的模型上做了完整的强化学习训练,一个是270亿参数的稠密模型Qwen3.6-27B,一个是总参数350亿、每次实际只激活30亿参数的混合专家模型Qwen3.6-35B-A3B。

混合专家模型(MoE)*:一种模型架构,内部包含很多个"专家"子网络,每次处理输入时只挑选其中一部分专家来干活,这样能在总参数量很大的情况下,控制住实际计算量。

训练的评测标准是Terminal-Bench 2.1,一个专门考核终端操作类AI智能体能力的权威测试集。论文还提到这个基准修复了老版本(2.0)里一些导致评测结果不稳、甚至低估模型真实能力的问题,可以理解成一次考试标准的校准升级。

结果显示,用环境进化这套方法训练200步后,Qwen3.6-27B在这个基准上的准确率提升了14.4个百分点,Qwen3.6-35B-A3B提升了18.0个百分点。

论文还专门拿环境进化和另外两种造题方法做了对比:一种是前面提到的协同进化,另一种叫环境集成,做法是把AI做不出来的几个简单环境硬拼在一起,拼成一个更复杂的大环境。结果显示,环境进化在两个模型上的峰值准确率都是三种方法里最高的:27B模型上达到71.5%,对比协同进化的62.9%和环境集成的60.0%;35B-A3B模型上达到64.9%,对比协同进化的55.1%和环境集成的52.8%。

训练过程中还观察到一个有意思的现象:随着调度器逐渐放开更难的环境,AI每次执行任务用的对话轮数和消耗的文本长度都在稳步增长,27B模型从平均几十轮涨到了190轮左右,每一轮里模型"思考"用的文字量也变多了,从每轮951个词左右涨到1221个。这说明AI不仅是在学着走更多步,也在学着每一步想得更深。

**写在后面**

读完这篇论文,最触动我的其实不是那套多智能体造题系统的工程细节,而是那个把"难度"从模型剥离出来的数学转换。这个动作看起来简单,但它解决的其实是一个很本质的问题:我们平时说"这个AI很强"或者"这道题很难",其实经常是在混淆两件事,一件是任务本身客观的复杂程度,另一件是某个特定的解题者擅不擅长它。论文用参考分布替换模型分布这一步,相当于把这两件事第一次干净地拆开了。

还有一点值得单独说一说:论文在结尾坦诚地提到,后续工作会尝试"同一个模型既出题又做题"的思路,也就是所谓的RSI(递归自我提升)方向。这其实是个挺让人琢磨的设定,如果一个AI既是出题人又是答题人,它会不会不自觉地给自己出留有余地的题?这大概是接下来这条研究路线必须正面回答的问题。

Q&A

Q1:环境进化是什么?

A:环境进化是腾讯混元团队提出的一种训练方法,通过让AI系统按场景、技能、步数三个方向不断改造已有的终端任务环境,一代代生成难度递增的训练题目,且不依赖被训练模型自身的表现来判断难度。

Q2:环境进化和协同进化方法有什么区别?

A:协同进化依赖被训练AI跑出来的错误来生成新环境,容易受限于当前模型和初始环境分布,AI越强错误越少就越难继续出题。环境进化则脱离具体模型,用客观的场景稀有度和技能稀有度来衡量难度,能持续提供训练信号。

Q3:环境进化训练效果提升了多少?

A:在Terminal-Bench 2.1基准上,Qwen3.6-27B模型准确率提升14.4个百分点,Qwen3.6-35B-A3B模型提升18.0个百分点,均高于协同进化和环境集成两种对比方法。

推荐内容