一个模型跑三端:MAGA 把手机、网页、桌面 Agent 蒸馏到一块
做 GUI Agent 绕不开一个问题:手机上一个模型,浏览器上一个模型,桌面又一个模型。每端一个专家,各自调参、各自部署、各自维护,想合并成一套又怕能力掉。这不像架构选择,更像是反复横跳的现实。
最近 arXiv 上有一篇论文,叫 MAGA,全称是 Multi-Platform Self-Fusion of GUI Agents via Structured Action Distillation,来自 Hang Yan 等 8 位作者。它要解决的就是这件事:怎么把多个平台专精的 GUI Agent 合并成一个跨平台策略,而不损失执行质量。
现有两条路子都不太走得通。Weight merging 直接把多个领域专家模型的参数合并,但专家之间对同一屏幕的动作意见不一致时,合并出来的结果往往是乱点一气。On-policy distillation 不用老师打架了,但它蒸馏时把每个 token 平等对待——这忽略了动作 token 才是 Agent 和环境交互的唯一接口,其他 token 的权重应该不同。
MAGA 的关键改动就一句话:根据结构化动作的正确性来重新分配训练信号。生成一串动作时,对的 token 少学点,错的 token 重点补。同时它加了一个 training-only hint,用来优化领域专家老师提供的监督信号,但不改变学生模型的输入。蒸馏的时候更聪明地"挑错题做"。
论文在两个模型规模上做了实验,8B 规模的 MAGA 在平均成功率上比最强的 baseline 高出 2.0%,而且几乎追平了多个老师模型的平均性能。也就是说,用一个模型差不多能打出三个专家的水平。
这个思路对做 Agent 落地的人挺实用——不用为 App 操作、网页操作、桌面操作各维护一套模型,也不用忍受合并后的掉点。MAGA 的做法本质上是一种更精细的蒸馏策略:把动作指令当作操作系统的 API call 来对待,错了就多练,对了就别反复背。
正在搭跨平台 GUI Agent 的人,这篇论文值得拉下来看看结构。它没有放出代码(至少目前 abstract 里没提),但思路本身已经能省掉一些试错——下次蒸馏时,先想想哪些 token 是真正要跟环境打交道的,再决定怎么分配学习预算。毕竟,一个 Agent 再能写文案,点错按钮就全白搭。