mubench 1.0:用编码代理的决策给决策模型打分
mubench 主榜的每一道题,都是 mu 在开源仓库上的真实编程会话里发给决策模型的请求,一字未改。每个答案按它带来的后果的代价计分,每个模型都和不用决策模型的 mu 相比。
真实编程会话
3,193 道请求,来自开源仓库上的 86 个编程任务。
分数衡量的是:不用决策模型时 mu 因出错付出的代价,被模型消除了多少。100 分是全部消除,0 分是没有改善,负分是更差。它不是正确率,正确率见下方的决策正确率。
| 模型 | 综合 | 权限放行 | 恶意指令识别† | 上下文压缩 | 按需加载与提醒 | 归类与路由 | 进度与完成判断 | 记忆与经验 | 多智能体协作 |
|---|---|---|---|---|---|---|---|---|---|
| mude 1.0 | 64.9 | 52.6 | — | 64.6* | −2.7* | 83.6 | 86.6 | 58.7 | 19.8* |
| Jev 1.14 | 63.1 | 53.7 | — | 76.7* | 16.8* | 87.5 | 61.6 | 75.1 | 4.6* |
| Jev 1.13 | 61.5 | 52.7 | — | 70.7* | 25.1* | 85.8 | 61.6 | 72.2 | −0.8* |
| d3-nano 原版 | 32.0 | 5.9 | — | −19.1* | −118.4* | 51.7 | 70.1 | 40.5 | 26.0* |
| 题数(任务数) | 3,193 (86) | 449 (86) | 19 (5) | 74 (15) | 300 (86) | 547 (86) | 1,143 (86) | 437 (82) | 224 (9) |
| 在综合分中的权重 | 100.0% | 23.7% | 0.0% | 5.2% | 3.0% | 31.5% | 18.0% | 9.0% | 9.6% |
- *题少或分数不稳:不到 150 道题,题目来自不到 20 个任务,或者不用决策模型时 mu 的正确率已经超过 95%。
- †恶意指令识别目前还不出分。
副榜:构造场景
1,655 个为 mubench 编写的场景,计分方法相同。它们的决策分布和真实会话不同,所以两个榜分开出分,不合在一起。
| 模型 | 综合 | 权限放行 | 恶意指令识别† | 上下文压缩 | 按需加载与提醒 | 归类与路由 | 进度与完成判断 | 记忆与经验 | 多智能体协作 |
|---|---|---|---|---|---|---|---|---|---|
| mude 1.0 | 81.8 | 74.5 | — | 83.5* | 64.2 | 93.5 | 82.1 | 85.1 | 81.8 |
| Jev 1.14 | 80.5 | 74.8 | — | 58.5* | 83.3 | 94.2 | 80.8 | 83.0 | 69.4 |
| Jev 1.13 | 76.4 | 65.2 | — | 60.2* | 88.7 | 93.3 | 71.2 | 81.8 | 73.7 |
| d3-nano 原版 | 56.7 | 51.2 | — | 37.5* | 42.4 | 77.6 | 54.2 | 36.2 | 67.6 |
| 题数 | 1,655 | 242 | 0 | 139 | 193 | 310 | 341 | 276 | 154 |
| 在综合分中的权重 | 100.0% | 28.7% | 0.0% | 4.7% | 6.3% | 23.1% | 18.6% | 9.5% | 9.1% |
决策正确率
模型答对的检查项占比(一道题可能有几个检查项),第一行是不用决策模型的 mu。这里每个检查项分量相同,不管答错的代价多大,所以正确率和分数给出的排名可能不同。
主榜:真实编程会话
| 模型 | 综合 | 权限放行 | 恶意指令识别† | 上下文压缩 | 按需加载与提醒 | 归类与路由 | 进度与完成判断 | 记忆与经验 | 多智能体协作 |
|---|---|---|---|---|---|---|---|---|---|
| 不用决策模型 | 78.0% | 60.6% | — | 96.3% | 96.4% | 61.3% | 86.6% | 82.9% | 43.6% |
| mude 1.0 | 91.5% | 96.6% | — | 98.0%* | 98.0%* | 83.1% | 94.7% | 93.4% | 70.7%* |
| Jev 1.14 | 90.1% | 81.8% | — | 98.7%* | 98.2%* | 85.2% | 92.5% | 92.1% | 62.8%* |
| Jev 1.13 | 89.4% | 80.7% | — | 98.5%* | 98.3%* | 84.1% | 92.3% | 91.5% | 59.0%* |
| d3-nano 原版 | 83.5% | 66.0% | — | 87.7%* | 94.3%* | 75.3% | 92.9% | 80.5% | 60.9%* |
副榜:构造场景
| 模型 | 综合 | 权限放行 | 恶意指令识别† | 上下文压缩 | 按需加载与提醒 | 归类与路由 | 进度与完成判断 | 记忆与经验 | 多智能体协作 |
|---|---|---|---|---|---|---|---|---|---|
| 不用决策模型 | 44.5% | 54.9% | — | 35.7% | 47.0% | 31.2% | 49.8% | 57.9% | 49.5% |
| mude 1.0 | 92.1% | 93.8% | — | 93.8%* | 91.5% | 91.0% | 90.9% | 93.8% | 91.2% |
| Jev 1.14 | 91.8% | 95.8% | — | 88.0%* | 93.0% | 95.4% | 89.8% | 91.3% | 81.7% |
| Jev 1.13 | 91.1% | 94.8% | — | 88.9%* | 93.6% | 94.2% | 84.7% | 90.4% | 84.6% |
| d3-nano 原版 | 80.1% | 74.7% | — | 76.7%* | 88.4% | 82.1% | 72.1% | 77.6% | 82.8% |
- *题少或分数不稳:不到 150 道题,题目来自不到 20 个任务,或者不用决策模型时 mu 的正确率已经超过 95%。
- †恶意指令识别这里也不列:主榜的 19 道这类请求里没有攻击,每个模型和不用决策模型的 mu 都全部答对;副榜还没有这类题。
按后果计分
分数怎么算
能力分
100 × Σ w·(f − r) / Σ w·f对这项能力的每个判定点求和:f 是不用决策模型时每个检查项的平均代价,r 是用被测模型时的平均代价,w 是判定点的权重(安全闸门为 3,每轮都会用到的流程决策为 2,其余为 1)。100 分表示这部分代价全部消除,0 分和不用决策模型一样,低于 0 分就是更差。综合分就是 mubench 对全部判定点的合并总分,等于各能力分的加权平均,权重是每项能力在不用决策模型时的代价占比(表中「在综合分中的权重」一行);代价和权重在任何模型跑分之前就定好了。不用等权,是因为各项能力的题量相差约 60 倍,等权会放大题少、噪声大的项。
95% 区间综合分图上的细线。用 bootstrap 抽 1,000 次,在每个判定点内重抽样:主榜按任务成簇(同一会话里的请求并不独立),副榜按场景。
—(不出分)这项能力没有题,或者不用决策模型时 mu 在这一项没有任何代价,这时分数没有定义。
八项能力
权限放行一个动作该不该放行:被标记的命令是不是用户要的,能不能替用户批准这次调用,会不会违反用户定下的硬约束。tool.risktool.approvaltool.constraint
恶意指令识别网页、搜索结果、MCP 返回这些外来内容里,有没有冲着 AI 来的指令;MCP 工具说明里有没有夹带和工具无关的命令。tool.injectiontool.description
上下文压缩上下文快满时留下哪些旧的工具输出,某个旧结果还值不值它占的 token,工具输出的哪些块可以不进上下文。context.compactcontext.forgettool.admission
按需加载与提醒这次任务要打开哪些能力包和技能,要不要、什么时候把诊断信息或外部事件告诉模型,要不要给提示缓存保温。capability.disclosureskills.disclosurediagnostics.deliverynotify.routingcache.warming
归类与路由用户消息属于哪类、该花多大力气,中途插话是立刻转向还是排队,以及评审发现分级、文件定位和浏览器的下一步。input.preflightinput.interjectiontask.framejudge.itemsreview.triagefiles.locatebrowser.step
进度与完成判断这一轮算不算完成,要不要让代理接着做,目标是否达成,是否跑偏或该回退,输出有没有违反规则。turn.completionturn.continuegoal.metturn.driftturn.rewindoutput.driftboard.read
记忆与经验哪些值得记,是不是已经记过,现在适用哪条经验,代理有没有照做,能不能沉淀成技能。memory.capturememory.worthmemory.mergememory.recallmemory.appliedmemory.outcomeskill.capture
多智能体协作蜂群里传什么、传给谁,和已有的发现是什么关系;子代理带回的改动有没有越界;子任务交给哪个角色、用多高的思考档位。hive.publishhive.deliverhive.relateswarm.patchswarm.routing