一つから複数へ、そして一つへ:カテゴリ対応型SWEエージェント訓練
背景
リポジトリ全体を対象とするソフトウェア工学タスクは、単一の能力ではありません。バグ修正、機能追加、テスト変更、複数ファイルにまたがる編集では、必要な推論やツール利用のパターンが異なります。これらを一つの強化学習プールでまとめて訓練すると、全体の成功率は上がっても、特定カテゴリの性能が停滞したり低下したりする可能性があります。本論文はこの現象をカテゴリ間の「シーソー」と捉え、専門化と統合を組み合わせる訓練法を提案します。
手法の要点
- 実行可能なタスクを分類する。 実行可能なタスク構築と、証拠に基づく多軸ラベリングシステム「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、実行環境イメージが公開されているため、こうした検討を再現しやすい点も実務上の特徴です。
コメント
ログイン状態を確認中…
コメントを読み込み中…