v0.3.0承認の確認も、トークンの無駄も、途中で止まる実行も減らす · mu-agent 0.3.0

mubench 1.0:コーディングエージェントの判断で意思決定モデルを採点する

mubench のメインボードの問題はどれも、オープンソースのリポジトリでの実際のコーディングセッションで、mu が意思決定モデルに送ったリクエストそのままです。答えはその結果がもたらすコストで採点し、どのモデルも意思決定モデルなしで動く mu と比べます。

実際のコーディングセッション

オープンソースのリポジトリでの 86 件のコーディングタスクから集めた 3,193 件のリクエストです。

メインボードの総合スコアの棒グラフ(95% 区間付き):mude 1.0 64.9 (59.1–72.3)、Jev 1.14 63.1 (55.6–70.5)、Jev 1.13 61.5 (53.8–69.1)、d3-nano(オリジナル) 32.0 (21.3–39.0)。意思決定モデルなし:0。 メインボードの総合スコアの棒グラフ(95% 区間付き):mude 1.0 64.9 (59.1–72.3)、Jev 1.14 63.1 (55.6–70.5)、Jev 1.13 61.5 (53.8–69.1)、d3-nano(オリジナル) 32.0 (21.3–39.0)。意思決定モデルなし:0。

スコアは、意思決定モデルなしの mu が間違いで払うコストを、モデルがどれだけなくしたかを表します。100 はすべてなくしたこと、0 は改善なし、マイナスはより悪いことです。正答率ではありません。正答率は下の判断の正答率にあります。

モデル総合権限の許可悪意ある指示の検出†コンテキスト圧縮オンデマンド読み込みとリマインド分類とルーティング進捗と完了の判断記憶と教訓マルチエージェント協調
mude 1.064.952.6—64.6*−2.7*83.686.658.719.8*
Jev 1.1463.153.7—76.7*16.8*87.561.675.14.6*
Jev 1.1361.552.7—70.7*25.1*85.861.672.2−0.8*
d3-nano(オリジナル)32.05.9—−19.1*−118.4*51.770.140.526.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%
メインボードの 8 つの能力スコアの棒グラフ。数値は上の表にあります。 メインボードの 8 つの能力スコアの棒グラフ。数値は上の表にあります。

サブボード:作成したシナリオ

mubench のために書いた 1,655 件のシナリオで、採点方法は同じです。判断の内訳が実際のセッションと違うので、2 つのボードは別々に採点し、合算しません。

サブボードの総合スコアの棒グラフ(95% 区間付き):mude 1.0 81.8 (76.3–86.0)、Jev 1.14 80.5 (74.6–85.4)、Jev 1.13 76.4 (69.9–82.2)、d3-nano(オリジナル) 56.7 (52.4–60.8)。意思決定モデルなし:0。 サブボードの総合スコアの棒グラフ(95% 区間付き):mude 1.0 81.8 (76.3–86.0)、Jev 1.14 80.5 (74.6–85.4)、Jev 1.13 76.4 (69.9–82.2)、d3-nano(オリジナル) 56.7 (52.4–60.8)。意思決定モデルなし:0。
モデル総合権限の許可悪意ある指示の検出†コンテキスト圧縮オンデマンド読み込みとリマインド分類とルーティング進捗と完了の判断記憶と教訓マルチエージェント協調
mude 1.081.874.5—83.5*64.293.582.185.181.8
Jev 1.1480.574.8—58.5*83.394.280.883.069.4
Jev 1.1376.465.2—60.2*88.793.371.281.873.7
d3-nano(オリジナル)56.751.2—37.5*42.477.654.236.267.6
問題数1,6552420139193310341276154
総合での重み100.0%28.7%0.0%4.7%6.3%23.1%18.6%9.5%9.1%

判断の正答率

モデルが正しく答えたチェックの割合です(1 つの問題に複数のチェックがあることもあります)。最初の行は意思決定モデルなしの mu です。ここではチェックはどれも同じ重みで、間違いのコストは問わないため、正答率とスコアでモデルの順位が変わることがあります。

判断の正答率の棒グラフ(95% 区間付き)。メインボード:意思決定モデルなし 78.0% (75.9–80.2)、mude 1.0 91.5% (89.6–93.3)、Jev 1.14 90.1% (88.9–91.3)、Jev 1.13 89.4% (87.7–91.1)、d3-nano(オリジナル) 83.5% (82.1–84.9)。サブボード:意思決定モデルなし 44.5% (42.8–46.2)、mude 1.0 92.1% (91.1–93.1)、Jev 1.14 91.8% (90.8–92.8)、Jev 1.13 91.1% (90.0–92.0)、d3-nano(オリジナル) 80.1% (78.6–81.7)。 判断の正答率の棒グラフ(95% 区間付き)。メインボード:意思決定モデルなし 78.0% (75.9–80.2)、mude 1.0 91.5% (89.6–93.3)、Jev 1.14 90.1% (88.9–91.3)、Jev 1.13 89.4% (87.7–91.1)、d3-nano(オリジナル) 83.5% (82.1–84.9)。サブボード:意思決定モデルなし 44.5% (42.8–46.2)、mude 1.0 92.1% (91.1–93.1)、Jev 1.14 91.8% (90.8–92.8)、Jev 1.13 91.1% (90.0–92.0)、d3-nano(オリジナル) 80.1% (78.6–81.7)。

メインボード:実際のコーディングセッション

モデル総合権限の許可悪意ある指示の検出†コンテキスト圧縮オンデマンド読み込みとリマインド分類とルーティング進捗と完了の判断記憶と教訓マルチエージェント協調
意思決定モデルなし78.0%60.6%—96.3%96.4%61.3%86.6%82.9%43.6%
mude 1.091.5%96.6%—98.0%*98.0%*83.1%94.7%93.4%70.7%*
Jev 1.1490.1%81.8%—98.7%*98.2%*85.2%92.5%92.1%62.8%*
Jev 1.1389.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.092.1%93.8%—93.8%*91.5%91.0%90.9%93.8%91.2%
Jev 1.1491.8%95.8%—88.0%*93.0%95.4%89.8%91.3%81.7%
Jev 1.1391.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%

結果のコストで採点

mubench の採点方法:コーディングセッションで mu が意思決定モデルに送った実際のリクエスト、テスト対象のモデルの判断、その判断がもたらす結果のコスト、そして意思決定モデルなしの mu との比較。 mubench の採点方法:コーディングセッションで mu が意思決定モデルに送った実際のリクエスト、テスト対象のモデルの判断、その判断がもたらす結果のコスト、そして意思決定モデルなしの mu との比較。

スコアの計算方法

能力スコア100 × Σ w·(f − r) / Σ w·fその能力の判定ポイントについて合計します。f は意思決定モデルなしのときのチェック 1 件あたりの平均コスト、r はテスト対象のモデルを使ったときの平均コスト、w は判定ポイントの重みです(安全上の関門は 3、毎ターン使う流れの判断は 2、それ以外は 1)。100 はそのコストをすべてなくしたこと、0 は意思決定モデルなしと同じこと、0 未満はそれより悪いことを表します。
総合スコアmubench の全判定ポイントをまとめたスコアです。各能力スコアを、意思決定モデルなしのときのコストに占めるその能力の割合(表の「総合での重み」の行)で重み付けした平均に等しくなります。コストと重みは、どのモデルを採点するよりも前に決めてあります。均等な重みにしないのは、能力ごとの問題数が約 60 倍違い、問題が少なくばらつきの大きい能力が結果を左右してしまうからです。
95% 区間総合スコアのグラフの細い線です。ブートストラップで 1,000 回抽出し、判定ポイントごとに再抽出します。メインボードではタスク単位(同じセッションのリクエストは独立ではないため)、サブボードではシナリオ単位です。
—(未採点)その能力に問題がないか、意思決定モデルなしでも mu がその能力でコストをまったく払わない場合です。このときスコアは定義できません。

8 つの能力

権限の許可その操作を通してよいか:フラグが付いたコマンドはユーザーが頼んだものか、ユーザーに代わってこの呼び出しを承認できるか、ユーザーが決めた制約に反しないか。tool.risktool.approvaltool.constraint
悪意ある指示の検出ウェブページ、検索結果、MCP の応答といった外部コンテンツに AI を狙った指示が含まれていないか。MCP ツールの説明に、ツールと関係のない命令が紛れ込んでいないか。tool.injectiontool.description
コンテキスト圧縮コンテキストがいっぱいに近づいたとき、どの古いツール出力を残すか。古い結果がまだそのトークンに見合うか。ツール出力のどの部分をコンテキストに入れなくてよいか。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

mu が役に立ったら、GitHub で Star を付けてください

GitHub で Star を付ける553