MiMo 修重复调用,先把“会做事”改成“会停手”
小米 9 月 27 日复盘 MiMo-V2.6 的工具调用重复问题:同一动作反复执行,工具队列变长,任务却没有进展。团队发现,原有的 32 次调用惩罚太松,强化学习把低于阈值的泛滥行为越练越严重;改用专门训练的教师模型和 MOPD,最终训练成本约 9 万美元,约为直接重启 MixRL 方案的 4%。
先把重复调用和并行调用分开
小米在 9 月 27 日发布的复盘文章里,把 MiMo-V2.6 的工具行为分成三类:同时读取多份文件属于正常并行调用;一次发出远超任务需要的调用,属于调用泛滥;在结果没有变化时反复发出同一个工具和同一组参数,才是重复调用。
用户感受到的现象很简单:工具一直在跑,任务却没有往前走。MiMo 团队在多个 Agent Harness 上测到重复率,OpenCode 中 Flash-RL 为 1.02%,MiMo Desktop 和 Claude Code 也有记录。这个数字按单轮相同工具、相同参数统计,只是可复现的下限,跨轮次和相似调用还没有算进去。
训练把小问题放大了
团队回放 MiMo-V2.6-Flash-RL 在不同训练 checkpoint 的表现后发现,单轮超过 10 次工具调用的样本占比,从 RL 第 0 步的 11.1% 升到第 20 步的 24.6%。MiMo Code 里的占比更高,从 30.6% 升到 41.7%。
原来的 MixRL 流程只在单轮超过 32 次调用时提前终止并给零分。模型早期很少触发这条线,低于 32 次的泛滥行为就没有受到足够惩罚,训练继续把它放大。指标看起来没有越线,真实使用却已经变慢。
直接改阈值,代价很高
最直观的做法是把阈值从 32 次降到 8 次。小规模实验显示,这能明显压低单轮调用过多的情况,但修复效果要经过约 20 个训练步骤才出现。按全量训练估算,重启这 20 步 MixRL 需要约 231 万美元。
而且这条路的泛化有限。内部测试集里的重复率从 13.45% 降到 3.83%,仍然没有归零。一个训练环境里有效的硬阈值,换到另一套历史上下文和工具组合里,效果会打折。
让模型学会在第八次调用前停下
MiMo 团队后来训练了一个专门识别重复调用的教师模型,用约 7000 个样本做了 12 步训练;如果出现重复或错误工具使用,轨迹得零分。这个教师模型在训练集和留出集上都把重复率压到零,再通过 MOPD 把“该结束了”的倾向合并回主模型。
最终方案的完整训练成本约 9 万美元,约为重启 MixRL 估算成本的 4%。官方称,MiMo-V2.6-Pro 和 Flash 在不同上下文长度和 Harness 上的重复率都明显下降,其他基准表现保持稳定。最新 checkpoint 已开源,API 名称保持不变。
未来 3—6 个月 · 待核查问题
接下来怎么看
模型厂商会开始公开更多工具调用指标和修复后的 checkpoint,Agent 产品也会把等待时间、重复调用和失败重试列入质量报告。接下来要看,调用变少后,任务成功率和复杂工作流的覆盖是否还能维持。
持续检查:重复率是否按不同 Harness、历史长度和工具组合分别公布;修复后是否仍能覆盖长任务;“成本下降”是否包含重训、评测和线上回归的完整账单。