The Scaffold Effect in Coding Agents: Harness Choice as a Hidden Variable in Coding-Agent Evaluation
本論文は、評価ハーネスがコーディングエージェントの性能と効率に、モデル自体の選択よりもむしろ大きな影響を与えることを示し、最大40倍のトークン使用量の変動やモデルに依存しない失敗パターンを明らかにすることで、モデル比較と並行して完全なハーネス仕様およびトークン/レイテンシ指標を報告することを主張している。
原論文は CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) でライセンスされています。 これは以下の論文のAI生成解説です。著者が執筆または承認したものではありません。技術的な正確性については原論文を参照してください。 免責事項の全文を読む
ロボットコーダーの背後に潜む見えない手
料理コンテストを見ているところを想像してみてください。そこには、完璧なチョコレートケーキを焼こうとしている、シェフAとシェフBという二人の素晴らしい料理人がいます。審査員たちは通常、完成したケーキを見て「シェフAの方が良いケーキを作った!」と言うだけです。しかし、もし審査員たちが、シェフAはすべての材料をあらかじめ刻み、オーブンを正確な秒数で予熱してくれるハイテクで自動化されたキッチンを使っていた一方で、シェフBは錆びたナイフと壊れたストーブがある埃っぽい小屋で作業していたことを忘れていたとしたらどうでしょう? 結果は単なるシェフの才能によるものではなく、彼らに与えられた「キッチン」によるものなのです。
人工知能の世界、特に「コーディング・エージェント」(ソフトウェアを書くAIプログラム)の世界では、私たちはまさにこれを行ってきました。私たちは、AIモデルがどれだけのコーディング問題を解決したかに基づいてランキング付けをしてきましたが、そのAIが働いている「キッチン」を無視してきました。このキッチンは「ハーネス(harness)」と呼ばれます。ハーネスとは、AIに道具を渡し、メモリを管理し、いつ作業を終了するかを決定する、目に見えないアシスタントだと考えてください。あるハーネスは、すべてを完璧に整理してくれる超効率的なロボット執事のようですが、別のハーネスは、何度も同じ質問を繰り返して時間とエネルギーを浪費させる、混乱したインターンのようです。研究者が問いかけている大きな疑問は、「AIの脳が重要なのか、それともそのアシスタントの質が重要なのか?」ということです。
大いなる「キッチン」実験
ある研究チームは、推測をやめて測定を開始することにしました。彼らは、「シェフ(AIモデル)」は全く同じまま、「キッチン(ハーネス)」を入れ替えたときに何が起こるかを調べる大規模な実験を設定しました。彼らは、Qwen 3.6 PlusとMiniMax M2.5という2つの非常にスマートなAIコーディングモデルを選び、50種類の異なるコーディングパズルを解かせました。しかし、ここには仕掛けがあります。彼らはこれら同じモデルを、Goose、OpenCode、OpenHands-SDKという3つの異なるオープンソースのハーネスを通して実行したのです。
結果は、控えめに言っても衝撃的でした。
研究者がAIが解いたパズルの数(「パス率」)を見たとき、ハーネス間の差はごくわずかでした。AIがGoose、OpenCode、OpenHands-SDKのいずれを使用しているかに関わらず、解ける問題の数はほぼ同じであり、通常は38%から50%の間でした。ハーネスを変えても、AIが突然天才になったり失敗したりすることはありませんでした。成功率はほぼ横ばいでした。
しかし、問題を解くための「コスト」を見たとき、物語は一変しました。研究者はこれを「トークン」として測定しました。トークンとは、AIが処理するデータの単位(単語やコードの断片のようなもの)のことです。彼らは、ハーネスの選択によってコストが驚愕の40倍変わることを発見しました。
これを例えると:もしGooseハーネスが、AIがパズルを解くために約28,000トークンを使用するのを助けたとした場合、OpenCodeハーネスは、全く同じAIが同じパズルを解くために110万トークン以上を使用させました。これは、全く同じ結果を得るために、コストが40倍違うということです! まさに、一人のシェフがケーキを焼くのに卵を1個しか使わない一方で、もう一人のシェフはキッチンの道具が非効率であるという理由だけで、同じケーキを作るのに40個の卵を使っているようなものです。
「アイドルターン」の税金
なぜコストがこれほど上がったのでしょうか? 研究者たちは、隠れた犯人を発見しました。それは**「アイドルターン(idle turns)」**です。
あなたが、コンピュータを修理しようとしている友人と話しているところを想像してください。時々、彼らは何も入力したり画面上で何かを変えたりすることなく、「うーん、ちょっと確認させて……」と考えて座り込んでいることがあります。AIの世界では、これらは「ノーアクション・ターン(no-action turns)」と呼ばれます。OpenCodeハーネスは、AIをこれらの思考ループの中に、1タスクあたり約2回も座らせてしまいました。一方、Gooseハーネスでは、これは約0.2回しか発生しませんでした。
AIがこれらのループの中にいるたびに、現在地を把握するために会話の履歴全体をサーバーに送り返さなければなりません。これは、立ち止まって考えるたびに、100ページの日記を送っているようなものです。OpenCodeはAIをより頻繁に考えさせることで、膨大な量のトークンを消費させました。研究者たちはこれを「タスクあたりの待機税(per-task wait tax)」と呼んでいます。これは単にお金のコストではありません。時間のコストでもあるのです。AIを見守る人間の開発者は、お金と忍耐を燃やしながら、何もしていない画面を眺めて、これらのアイドルループを待ち続けなければなりません。
失敗の「指紋」
また、各ハーネスには、失敗の独自のやり方があり、それはまるで「指紋」のようであることも判明しました。これらのパターンは、使用されるAIモデルに基づいて変化するのではなく、ハーネス自体によって引き起こされていました。
- Gooseは慎重派でした。行き詰まったとき、推測するのではなく、立ち止まって「これはできません」と言いました。間違ったアイデアを検証しようとして時間を無駄にすることは滅多にありませんでした。
- OpenHands-SDKは粘り強い派でした。答えを検証したり、試行回数の上限(「max turns」制限)に達するまで実行し続けたりしました。
- OpenCodeはループに陥る派でした。制限時間(「wall-time」制限)を使い果たしたり、「ハング(hang)」状態になって、何も完了させることなく空回りし続けたりしました。
これは、開発者にとって、単にAIを選んでいるのではなく、「失敗のスタイル」を選んでいるということを意味します。すぐに正直に諦めるAIが欲しいのか、それとも忍耐が尽きるまで空回りし続けるAIが欲しいのか、という選択です。
大きな教訓
この論文の主な教訓は、私たちはAIコーディングのベンチマークを完全に見誤ってきたということです。私たちは、QwenやMiniMaxといったモデルが唯一重要なものであるかのようにランキング付けをしてきました。しかし、この研究は、**ハーネス(キッチン)がモデル(シェフ)**と同じくらい重要であることを示しています。
AIが実際にどれほどのコストがかかり、作業を完了するのにどれくらいの時間がかかるかを知りたいのであれば、モデルの名前を見るだけでは不十分です。モデルと、それが動作しているハーネスの「ペア」を見なければなりません。優れたハーネスの中で動くスマートなモデルは、悪いハーネスの中で動くスマートなモデルよりも、40倍高価になる可能性があります。
研究者たちは、将来的には単に「パス率」を報告するのではなく、「解決タスクあたりのコスト」、「アイドルターンの数」、そして「失敗パターン」を報告すべきだと提案しています。なぜなら、実際の人間開発者にとって、1ドルのコストで50%の成功率を得ることと、40ドルのコストで50%の成功率を得ることの間には、それが「有用なツール」であるか「お金の無駄遣い」であるかの決定的な違いがあるからです。「スキャフォールド効果(Scaffold Effect)」は実在しており、ロボットを導く目に見えない手を無視するのはもう終わりにすべきなのです。
自分の分野の論文に埋もれていませんか?
研究キーワードに一致する最新の論文のダイジェストを毎日受け取りましょう——技術要約付き、あなたの言語で。