記事一覧へ戻る
コーディングAI

一つから複数へ、そして一つへ:カテゴリ対応型SWEエージェント訓練

読了目安 3 分

背景

リポジトリ全体を対象とするソフトウェア工学タスクは、単一の能力ではありません。バグ修正、機能追加、テスト変更、複数ファイルにまたがる編集では、必要な推論やツール利用のパターンが異なります。これらを一つの強化学習プールでまとめて訓練すると、全体の成功率は上がっても、特定カテゴリの性能が停滞したり低下したりする可能性があります。本論文はこの現象をカテゴリ間の「シーソー」と捉え、専門化と統合を組み合わせる訓練法を提案します。

手法の要点

  • 実行可能なタスクを分類する。 実行可能なタスク構築と、証拠に基づく多軸ラベリングシステム「SWE Labeler」により、訓練データをカテゴリ別に整理します。これにより、総合スコアだけでなくカテゴリ単位の変化も追跡できます。
  • カテゴリ専門家を育成する。 各カテゴリに対して強化学習を行います。ただし、初期訓練で平均成功率が改善しても、個々の事例の進歩が均一になるとは限りません。そこで、成功行動の明示的な定着と、方策に適応したタスク選択を組み込みます。
  • RREを反復する。 Refresh–Repair–Expandは、長期的なAgentic-miniRLと三つの処理を組み合わせます。更新された方策で既存事例の習熟度を再確認し、自身が検証した成功軌跡をRepair SFTに再利用し、その後の強化学習に向けてタスクを再選択します。成功結果を修正用の教師信号として使いながら、未習得の事例も探索する構成です。
  • 専門家を一つのモデルへ統合する。 ラベルで教師を振り分ける多教師オンポリシー蒸留(MOPD)により、カテゴリに適した専門家の挙動を単一の学生モデルへまとめます。さらにReLUゲート付き報酬外挿を用い、基準方策に対して改善する方向だけを残すことで、専門家間の信号が無制限に混ざることを抑えます。

意義と留意点

評価では、混合RL、バランスRL、専門家開発、単一モデルへの統合を比較し、総合およびカテゴリ別の結果を確認しています。最終モデルについて、Pro-618で58.04%、SWE-bench Multilingualで59.00%が報告されました。重要なのは数値だけでなく、平均値の上昇によって隠れがちなカテゴリ別の退行を検出しようとした点です。

専門家訓練と統合には、外部モデルが作った解答軌跡や行動ラベルを必要としません。実行環境から得た結果と、方策自身が検証した成功軌跡を利用するため、外部教師データへの依存を抑える設計になっています。一方、ラベルの品質、タスク振り分けの安定性、別のリポジトリやベンチマークへの転移性は、今後も検証が必要です。モデル、データセット、SWE Labeler、実行環境イメージが公開されているため、こうした検討を再現しやすい点も実務上の特徴です。

出典:Hugging Face Daily Papers

コメント

ログイン状態を確認中…

コメントを読み込み中…

関連記事

CCTest · Blog
CodeMidas、ソースコードそのものからコーディングAIの強化学習環境を構築
コーディングAI
cctest.ai
コーディングAI

CodeMidas、ソースコードそのものからコーディングAIの強化学習環境を構築

Xiaomi MiMoチームのCodeMidasは、既存のソースコードだけを入力として、機能の探索、実行可能なテストの作成、強化学習タスクの検証までを自動化する。実験では、修正、プログラム構築、ターミナル操作に関する複数のベンチマークで性能向上が報告された。

続きを読む
CCTest · Blog
コーディングエージェントの性能を左右するHarness設計
コーディングAI
cctest.ai
コーディングAI

コーディングエージェントの性能を左右するHarness設計

コーディングエージェントのHarnessを計画、アクション空間、コンテキスト管理に分解して比較した実証研究が示された。最適な構成は、モデルの能力、タスクの性質、コンテキスト予算によって変わる。

続きを読む
CCTest · Blog
Bend、証明と並列実行でAI生成コードを制約する言語
コーディングAI
cctest.ai
コーディングAI

Bend、証明と並列実行でAI生成コードを制約する言語

Bendは、AIエージェントにコードを書かせるだけでなく、定義されたルールを満たすことまで証明させようとする新しい言語です。Python風の構文、ネイティブコンパイル、CPUとGPU向けの並列ランタイムを組み合わせています。

続きを読む