西北大学等五所高校联手:让AI游戏机器人像人类一样“记住”技能
发布时间:2026-06-02 18:35 浏览量:1
这项由西北大学、东北大学、华南理工大学、香港浸会大学及北京师范大学-香港浸会大学联合国际学院联合完成的研究,于2026年5月以预印本形式发布,论文编号为arXiv:2605.27762,有兴趣深入了解的读者可以通过该编号查询完整论文。
**研究概要:一个记性越来越好的AI玩家**
假设你的朋友刚开始学打游戏,每次遇到同样的关卡都要重新翻攻略本,找到上次的笔记,然后按图索骥地操作。时间一长,光是翻笔记本就要花掉大半的反应时间,而且笔记本越堆越厚,翻起来也越来越慢。现在再假设这个朋友玩了一段时间后,那些常用的操作已经"刻进了肌肉记忆"——他不需要翻笔记了,手就自然地做出正确动作。这两种状态的差距,正是这篇论文想要解决的核心问题。
研究团队在沙盒游戏《我的世界》(Minecraft)这个虚拟环境里,让AI学习如何完成各种复杂任务,比如收集材料、打怪、制作工具。现有的大多数AI系统依赖的是第一种方式——每次做决定之前,都要把以往的经验记录翻出来塞进脑子里,然后再想怎么办。这种方式有明显的代价:既慢,又费资源,而且随着经验越积越多,代价也越来越大。
为了解决这个问题,研究团队提出了一个叫做PEAM(参数化具身智能体记忆,Parametric Embodied Agent Memory)的框架。它的核心思路是:让AI通过反复经历,把有价值的技能真正"写入"自己的神经网络参数里,变成像肌肉记忆一样的东西,而不是永远存在外部笔记本里靠检索使用。
**一、为什么"翻笔记本"的方式撑不住长远**
要理解这个研究的价值,得先弄清楚现有AI的记忆方式为什么是个麻烦。
现在主流的AI游戏智能体,记忆的工作方式大概是这样的:AI有一个外部的"技能库"或者"经验日志",每次需要完成任务时,系统就在这个库里搜索相关记录,然后把找到的内容塞进当前的"工作记忆"(也就是输入给AI的提示词),AI再根据这些信息做出决定。这种方式有个专业名称叫"检索增强生成"(RAG),在很多领域都很流行。
麻烦在哪里?每次做决定都要经历一个完整的搜索-读取-注入流程。技能库越大,搜索越费时;注入的内容越多,处理它的计算量越大;而且,任务做完之后,下次再来还是要重复同样的流程,技能永远只是"可以查阅的外部文件",而不是AI自己真正掌握的能力。研究团队测量了这个代价:使用VOYAGER(一个知名的《我的世界》AI系统)这类基于检索的方案,每完成一个任务平均要消耗约31,200个token(可以理解为AI处理信息的计量单位),每次调用的延迟也在5.5秒左右。
更深层的问题是,AI完成了几十次"制作石镐"这个任务之后,如果它的技能仍然只是存在外部库里,那它本质上并没有"学会"这件事——它只是有了更多的参考文献。这就好比一个厨师手边放着一本食谱,炒了一百次同一道菜,但手艺依然停留在"每次都要看食谱"的阶段,从未真正熟练起来。
认知神经科学很早就注意到了类似的问题。人类的大脑有两套互补的记忆系统:海马体负责快速记下新鲜事件(就像记笔记),而大脑皮层则负责把反复出现的规律慢慢整合成长期的知识和技能(就像把笔记内化成本能)。两者通过"记忆巩固"这个过程连接——尤其是在睡眠中,海马体会重放白天的经历,把稳定有价值的内容"写入"皮层。研究团队把这个机制引入了AI设计,并把这种从"外部笔记"到"内化技能"的过程,称为"参数化巩固"。
**二、PEAM的整体架构:快手艺与慢思考的搭档**
PEAM的整体设计就像是一个由两种不同速度的思维模式配合工作的智能体。
慢思考部分由一个大型语言模型(具体实验中使用的是Azure GPT-4o)承担。它负责那些需要深思熟虑的事情:分析当前情况、制定计划、生成可执行的代码、验证结果是否正确,以及在任务失败后进行反思和修正。这部分速度较慢,但处理能力强,适合应对复杂的、以前没遇到过的新情况。
快手艺部分则是一个叫做"多模态混合专家LoRA"(MoE-LoRA)的模块,基于Qwen3-VL-8B-Instruct这个多模态语言模型构建。它负责执行那些已经被内化为技能的操作,反应速度快,不需要每次都重新推理。这就好比一个老厨师,面对熟悉的菜肴时,手已经知道该怎么做了,根本不需要停下来查食谱。
两个部分之间有一个"巩固流水线",负责把慢思考积累的经验,按照一定规则,挑选合适的内容,在合适的时机,写进快手艺模块的神经网络参数里。整个系统还维护着一个"情节记忆库",存放着成功完成任务的轨迹记录,以及最为关键的"失败-修正"轨迹对——即哪些操作导致了失败,以及后来是如何修正并成功的。
在实际运行时,系统首先尝试用快手艺模块处理任务。如果有对应的已学技能,模块就直接生成可执行代码并运行,完成后验证结果。一旦验证通过,任务就算完成;如果快手艺模块没有合适的技能,或者执行后验证失败了,系统就切换到慢思考模块来处理,处理的结果会被记录下来,作为未来巩固的候选素材。
**三、失败不是垃圾,而是最宝贵的教材**
这个研究里有一个非常有意思的设计理念:把失败当作头等重要的训练信号,而不是要被遗忘的负面记录。
大多数AI训练的逻辑是:收集成功的案例,让AI模仿成功的行为。失败的案例顶多被转化成文字提示,告诉AI"下次别这样"。PEAM走了一条不同的路:它专门收集"失败-修正"轨迹对,也就是同一个情境下先失败、后成功的两段操作记录,然后把这两段记录放在一起,直接用来训练神经网络参数。
训练的方式是一个叫做"行为克隆加直接偏好优化"(BC+DPO)的联合目标。行为克隆部分(BC)负责让AI模仿成功轨迹的具体操作,确保生成的代码格式是正确的、可以被解析执行的。直接偏好优化部分(DPO)则负责让AI"感受到"修正后的操作比失败操作更好,把这种偏好关系写进参数里。两者缺一不可。
研究团队在实验中发现了一个很有说服力的细节:如果只用DPO、去掉BC,训练出来的适配器在"打分测试"上看起来还不错,打分差值高达+6.51,表面上似乎学到了偏好。但实际让它生成可执行的代码时,12次测试里有0次成功生成了格式正确的代码。这是因为DPO只教AI分辨"A比B好",但没有给AI提供一个具体的"好代码长什么样"的示范。就好比你只告诉一个学生"这篇作文比那篇好",但从来没有展示过一篇好作文的具体格式,他也不知道如何下笔。加上BC之后,联合训练的打分差值提升到+37.92,12次里12次都能生成格式正确的代码。
这一发现还有一个实践层面的启示:仅仅看前向计算的偏好分数,不足以判断一个AI是否真的能在实际部署中正常工作。对DPO训练的AI,同时测试生成路径的实际可用性,是更可靠的评估方式。
**四、怎么决定哪些经验值得"刻进骨子里"**
并不是所有的经验都值得被内化成参数。如果把每一次尝试都写进模型,会造成参数空间的浪费,也可能让已有的好技能被不稳定的操作覆盖掉。PEAM为此设计了一个叫做"参数化价值评分"(PV)的筛选机制。
这个评分从四个维度综合考量一个技能候选是否值得被内化。第一个维度叫"检索成本节省",衡量如果把这个技能内化,未来能省下多少翻笔记的功夫——技能越复杂、被用到的频率越高,内化的价值就越大。第二个维度叫"稳定性",考察这个技能在不同情境下的成功率是否稳定——一个碰运气才能成功的操作,内化进去只会带来不稳定的表现。第三个维度是"冗余度",检查这个技能是否和已经内化的某个技能高度重复——如果是,就没必要再浪费空间存一个差不多的版本。第四个维度是"干扰风险",评估内化这个技能是否会影响其他已有的技能——具体实现上,系统会检查这个技能和已有技能是否属于同一类别,如果是同类别的,更新时会被路由到同一个专用适配器,属于可控范围。
这四个维度通过加权求和得出最终分数,权重分别是0.4、0.3、0.2、0.1,通过网格搜索确定。与之对比的是之前一些智能体系统采用的简单启发式规则(比如"成功率大于80%且被检索超过15次才考虑内化")。实验表明,完整的PV评分和这个简单规则对候选技能的排名相关性为-0.375,也就是说两者的判断结果有相当大的差异——PV评分会筛选出那些同时具备高频使用价值和稳定性但尚未被充分利用的技能,而简单规则则可能漏掉一些价值较高但代码较长的复杂技能。用完整PV评分替代简单规则,任务成功率高出了8.7个百分点。
**五、怎么决定什么时候把技能"存档"**
筛选出了哪些技能值得内化之后,还有一个问题:什么时候执行这个内化操作?
最朴素的做法是设一个固定时间表,比如每隔50场游戏就做一次巩固。但这有明显的缺陷:当AI表现很好的时候,定时巩固是浪费计算资源;当某个技能的失败率突然变高的时候,等到下一个固定时间点才处理,已经晚了。
PEAM采用的是一种叫做"自触发巩固"(STC)的机制,让AI自己监测自己的状态来决定何时触发巩固。具体方式是:系统持续追踪每个技能在最近一段窗口内的失败率,并与该技能的历史基线失败率进行统计检验对比。当近期失败率相对于历史基线出现了统计显著的上升(用Z统计量判断,显著性水平0.05),同时该技能的PV评分处于当前候选集的前50%,就触发巩固。
这个机制有一个关键特性:它是"无标度的",也就是说,它的触发标准不依赖于任何绝对的失败次数或失败率数值,而是相对于该技能自身的历史表现来判断。这意味着,同样一套触发参数(窗口大小10,基线窗口10,显著性0.05,前50%分位)在"以制作类任务为主"的场景和"以战斗类任务为主"的场景里,都能产生合理的触发结果,不需要针对不同任务类型重新调参。
实验通过将已有的轨迹数据按类别重新切分来模拟两种不同分布,验证了这个特性。在两种分布下,STC触发的时间点高度一致(Jaccard相似度0.538),被评选为高价值的候选技能有61%是重叠的。相比之下,用固定失败率阈值作为触发条件的对照方案,在两种分布下触发结果差异很大,必须分别调参才能达到可接受的效果。此外,与固定时间表相比,STC能让系统少跑37%的巩固周期就达到同等性能,触发的平均延迟也从23个任务周期缩短到7个。
**六、适配器的物理隔离:让"学新技能"不影响"旧技能"**
机器学习领域有一个顽固的老问题叫做"灾难性遗忘":神经网络在学习新任务的时候,会把旧任务的知识覆盖掉。就好比你花了很多时间练习打篮球,结果却忘了怎么打羽毛球。PEAM通过架构设计从根本上回避了这个问题。
每一个技能类别(制作、采集、战斗)都有自己独立的LoRA适配器,这些适配器的参数是完全分开的,互不干扰。LoRA是一种参数高效的神经网络微调技术,可以用相对较少的新参数对大模型进行定制化调整,而不需要重新训练整个模型。在PEAM里,每个类别的适配器约有8300万个参数,都是独立存储的。巩固制作技能只会更新制作适配器,战斗适配器的参数完全不受影响。
实验对此做了直接验证:按顺序先巩固制作技能、再巩固采集技能、再巩固战斗技能,完成全部巩固后再测试最早学的制作技能,PEAM的留存率是100%,没有任何遗忘。对照来看,把所有技能共用一个LoRA适配器的方案(Single shared LoRA)遗忘了32.4%;使用弹性权重固化(EWC,一种通过正则化对抗遗忘的方法)的方案遗忘了43.3%;而直接对整个模型做全参数微调(Naive full-FT)的方案,遗忘程度高达78.5%。
这个结果背后的逻辑直接而清晰:当参数本来就不共享的时候,学新技能物理上就不可能覆盖旧技能。遗忘抵抗不是靠算法上的额外保护机制来实现的,而是从架构设计层面直接消除了遗忘发生的可能性。
**七、实验结果:一份详细的成绩单**
研究团队在《我的世界》1.19版本里设计了11个长链条任务,覆盖制作、采集、战斗三个类别。制作类包括:制作制作台、制作木镐、制作石镐、制作熔炉、制作铁镐。采集类包括:收集4根橡木原木、开采8块圆石、开采2块铁矿石(含冶炼步骤)、收集4块煤炭。战斗类包括:夜间击败僵尸、用弓击败骷髅。每个任务用3个不同随机种子各跑一次,共33次试验。
PEAM的整体任务成功率是69.7%(33次里成功23次),95%置信区间在53.0%到83.4%之间。相比之下,作为主要对照基准的VOYAGER成功率是54.5%(18/33),差距为+15.2个百分点,配对统计检验的p值是0.018,差距在统计上是显著的。
效率方面的改善更加显著。PEAM每次调用的中位延迟是3.2秒,而VOYAGER是5.5秒,降低了约42%。每个任务消耗的token数,PEAM是约4600,VOYAGER是约31,200,降低了约85%。这85%的token减少,来自于参数化路径不再需要每次把技能库内容塞进提示词。
研究还对比了另外几类方案。没有任何记忆机制、完全依赖实时推理的ReAct方案只有6.1%的成功率,说明记忆对于复杂任务确实至关重要。只记录反思文本的Reflexion方案达到了27.3%。使用空间-时间记忆的MrSteve方案是33.3%。直接全参数微调的方案是42.4%。共享LoRA方案是48.5%。使用正则化抗遗忘的EWC方案是51.5%。使用多模态检索的Optimus-1复现版本是60.6%,PEAM比它还高9.1个百分点,说明把经验内化到参数里能带来超过单纯丰富检索内容的收益。
从单任务粒度看,PEAM在11个任务里有10个与VOYAGER持平或更好,明显改善集中在需要多步制作的复杂任务(石镐、熔炉、铁镐)和需要定位加采集配合的资源类任务(铁矿石+冶炼、煤炭)。两种方案都在"弓击骷髅"这个任务上全部失败,因为这个任务需要精准的远程战斗时机控制,而这超出了当前Javascript机器人接口的动作精度。
**八、一些在研发过程中意外发现的实用规律**
研究团队还记录了几个在开发过程中撞上的问题,这些问题对其他想做类似研究的团队有参考价值。
关于在消费级硬件上部署这类系统:团队尝试在一张12GB显存的RTX 4070显卡上运行4-bit量化版本的模型加适配器,结果遇到了三个严重问题。第一,每一步的生成延迟高达约2000秒,比在A100服务器上慢了几百倍,原因是显存不够用,导致大量重复计算。第二,在合并适配器参数时,有一个常用的函数会悄悄地把那些幅度很小的参数更新清零——而BC训练出来的参数更新恰好整体幅度较小,4-bit量化路径下约有37%的更新被清零,而16精度路径下是0%。第三,游戏AI生成的代码通常比较长(制作类任务经常超过1500个token),但在消费级硬件上为了控制速度不得不限制最长生成长度,截断了的代码被解析器拒绝,拒绝率约84%。这三个问题合在一起,意味着在消费级设备上部署这类系统目前几乎不可行,需要A100级别的服务器。
关于失败-修正对的收集效率:在四个技能类别里,导航类任务完全无法生成可用的训练对。原因在于,导航任务失败通常不是因为代码写错了,而是因为目标地形或资源根本不在AI的探索范围内——这属于环境限制而非操作失误,所以没有"修正后成功"的轨迹。制作和采集类任务的成功配对率约50%,战斗类约25%。这说明这种基于失败-修正对的参数化学习方式,最适合那些失败原因在于操作层面、可以通过修改代码来修正的任务。
**说到底,记忆该是"烂熟于心"而不是"翻箱倒柜"**
归根结底,这个研究做的事情,是在AI系统里建立一条之前缺失的通路:让积累的经验真正变成AI自己的能力,而不是永远堆在身边的参考材料。
这条通路有三个门卫:价值评分决定哪些经验值得被内化,自触发机制决定什么时候执行内化,独立适配器的架构决定内化怎么进行而不伤害已有技能。三个机制各司其职,组合起来让AI能够在不断接触新任务的过程中,真正地越来越熟练,而不只是越来越有一堆参考文件。
当然,目前这套系统还只在《我的世界》里测过,只覆盖了三个技能类别,实验规模也不算大(11个任务,3个种子)。能否迁移到机器人控制、网页操作等其他领域,还需要进一步验证。但它提出的核心问题——AI的记忆该怎样真正转化为能力——是一个在整个领域都有意义的问题,这项研究给出了一种具体可行的思路。
对这个方向感兴趣的读者,可以通过arXiv:2605.27762查阅完整论文,里面有完整的算法伪代码、超参数设置、任务清单和部署细节,方便自行复现和进一步研究。
Q&A
Q1:PEAM和VOYAGER这类AI游戏智能体的主要区别是什么?
A:VOYAGER等传统智能体把学到的技能存在外部技能库里,每次用的时候都要搜索出来塞进提示词,相当于每次都要翻笔记本。PEAM则通过训练把常用技能直接写进神经网络参数里,相当于练成了肌肉记忆,执行时不需要再查笔记,所以速度快很多,token消耗也少约85%。
Q2:PEAM的"失败-修正"训练方式具体是怎么工作的?
A:系统会收集同一个任务里"先失败后成功"的两段操作记录组成训练对,用行为克隆(让AI模仿成功操作的格式)加直接偏好优化(让AI感受到成功操作比失败操作更好)联合训练。实验证明,单独用偏好优化在测试分数上看着不错,但实际生成可用代码的成功率是0,加上行为克隆才能达到12/12的代码可用率。
Q3:PEAM为什么能避免学了新技能就忘掉旧技能这个问题?
A:PEAM给每个技能类别(制作、采集、战斗)分配了独立的LoRA适配器,参数完全分开存储。更新制作技能只改制作适配器的参数,战斗适配器完全不受影响,物理隔离从根本上消除了遗忘发生的可能。实验中按顺序学完三类技能后,最早学的制作技能留存率100%,而共享参数的方案则遗忘了32%以上。