← 最新の論文
🤖 AI

COMPAS: Difficulty-Aware Joint Search for Optimizing Code Generation

COMPASは、特定のタスク難易度グループに対して最適なモデル、プロンプト、およびデコーディング設定を共同で探索することにより、コード生成を最適化する難易度認識型フレームワークであり、LiveCodeBenchやSWE-benchといったベンチマークにおいて、パス率とコスト効率の両面で大幅な向上を実現しています。

原著者: Jingzhi Gong, Jie M. Zhang, Gunel Jahangirova, Dong Huang, Mohammad Reza Mousavi, Mark Harman

公開日 2026-08-06
📖 1 分で読めます☕ さくっと読める

原著者: Jingzhi Gong, Jie M. Zhang, Gunel Jahangirova, Dong Huang, Mohammad Reza Mousavi, Mark Harman

原論文は CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) でライセンスされています。 これは以下の論文のAI生成解説です。著者が執筆または承認したものではありません。技術的な正確性については原論文を参照してください。 免責事項の全文を読む

完璧なケーキを焼こうとしている場面を想像してみてください。しかし、あなたには話すことができる魔法のオーブンがあります。コンピュータサイエンスの世界では、この「オーブン」とは大規模言語モデル(LLM)のことであり、人間のプログラマーと同じようにコンピュータコードを書くことができる超スマートなAIです。最高のケーキを作るには、3つのものを選ぶ必要があります。どのオーブンを使うか(モデル)、どのようなレシピを与えるか(プロンプト)、そして温度とタイマーをどのように設定するか(デコーディング設定)です。長い間、科学者たちは、シンプルなカップケーキから複雑なウェディングケーキまで、あらゆる種類のケーキに対して機能する「唯一の完璧なレシピとオーブンの設定」を見つけようとしてきました。しかし、彼らはある問題に突き当たりました。カップケーキをふわふわにする設定がウェディングケーキを焦がしてしまうこともあれば、小麦粉の節約のために設定を変えると味が台無しになることもあるのです。大きな疑問は、多額の費用や何年もの時間を費やしてあらゆる可能性を試すことなく、どうすれば各特定のタスクに対して完璧な組み合わせを見つけられるのか、ということでした。

そこで登場したのが、優秀で予算意識の高いヘッドシェフのような新しい手法、COMPASです。COMPASは、全員に一つのルールを押し付けるのではなく、タスクにはそれぞれ異なる「難易度」があることを理解しています。それは、タスクを「初級」「中級」「上級」のようにグループ分けし、それぞれのグループに対して独自の完璧なレシピを見つけるべきだと提案しています。研究者たちは、プロンプト(指示)とデコーディング設定(オーブンのダイヤル)は、別々にではなく、組み合わせて調整したときが最も効果的であること、そしてあるAIモデルに最適な設定が別のモデルでは失敗することを発見しました。COMPASは、スマートな2段階のプロセス(まず適切なオーブンを選び、次にレシピとダイヤルを一緒に微調整する)を用いることで、各難易度レベルに応じた「メニュー」を構築しました。新しいタスクが届くと、COMPASは即座にその難易度を確認し、そのグループに用意された完璧な既製品のメニューを選び出し、作業を開始します。

実験において、このアプローチは大きな成功を収めました。LiveCodeBenchと呼ばれるコーディング問題のテストセットにおいて、COMPASは52.8%の確率で正解を導き出し、45.9%に留まった従来の最高の手法を打ち破りました。さらに優れたことに、これほど高い成果を出しながら、コストを大幅に削減しました。コストは36.57ドルからわずか4.92ドルへと減少したのです。また、ソフトウェアプロジェクト全体のバグ修正を含むより複雑な課題(SWE-bench)でもテストを行い、76.0%のタスクを解決し、やはり既存の最高の手法を上回る結果を出しました。

COMPASの「秘伝のソース」は、その「難易度を意識した(difficulty-aware)」戦略にあります。研究者たちは、実験を通じて3つの重要な発見をしました。第一に、指示とオーブンの設定は相互に作用します。両方を同時に変えることは、一つずつ変えるよりも良い結果をもたらします。第二に、あるAIモデルを助ける微調整が別のモデルには悪影響を与える可能性があるため、微調整を始める前にモデルを慎重に選ぶ必要があります。第三に、最も重要なことですが、「簡単な問題」に最適な設定は「難しい問題」に最適な設定とは全く異なります。グローバルで一律の、ワンサイズ・フォー・オール(万能)なアプローチは通用しないのです。

これを解決するために、COMPASは2段階の計画を用います。オフラインフェーズ(準備段階)では、すべてのトレーニングタスクを難易度に基づいてグループに分けます。次に、素早く安価なテストを実行して、各グループに最適なAIモデルを選びます。モデルが決まると、「共同探索(joint search)」モードに入り、スマートなフィードバックループを使用して、プロンプトとデコーディング設定を同時に調整します。単にランダムな組み合わせを試すのではなく、自身の失敗と成功から学び、各難易度グループに対して「品質とコストのフロント(quality-cost front)」、つまり、良い結果を得ることと節約することの間の最適なトレードオフのリストを構築していきます。

オンラインフェーズ(リアルタイムの調理)では、新しいタスクが入ってきたとき、COMPASは探索に時間を浪費しません。単にタスクの難易度ラベルを確認し、一致するグループを見つけ、そのグループの構築済みメニューから最適な構成を選択します。これは、完璧に調整されたレシピのライブラリを持っているようなもので、ゼロからやり直す必要はありません。

この論文は、この手法が堅牢であることを示しています。ランダムシード(カードの束をシャッフルする方法を変えること)を変更したり、異なるタイプのAIモデルでテストしたりしても、COMPASは一貫して他の手法を上回りました。また、タスクを難易度ごとに分解することが極めて重要であることも証明されました。もし難易度を無視して一つの設定をすべてに使おうとすれば、結果は著しく低下します。現在、この手法はAIモデルが同じ「ファミリー」に属している場合に最もよく機能しますが、研究者たちはこのアプローチが将来的に拡張可能であると考えています。現時点において、COMPASは、適切な設定をいかに検索するかという「方法」がいかに重要であるかを強力に示す実例となっています。

自分の分野の論文に埋もれていませんか?

研究キーワードに一致する最新の論文のダイジェストを毎日受け取りましょう——技術要約付き、あなたの言語で。

Digest を試す →