LEGO-RL、ネイティブなコーディングHarnessを強化学習に接続
導入
コーディングエージェントの学習では、コードを一度生成できるだけでは十分ではありません。エージェントはリポジトリを読み、ターミナルなどのツールを呼び出し、テストを実行し、失敗結果を受け取って次の行動を決めます。長い処理の途中でコンテキストを圧縮することもあります。こうした処理を管理するHarnessは実運用に近い一方、方策勾配による強化学習とは相性がよくありません。環境のクラッシュは結果信号を壊し、報酬ハッキングは見かけ上の成功を生み、ロールアウト時と学習時の確率のずれは最適化を不安定にします。
LEGO-RLは、Harness内部の制御フローを変更せずに、この実行環境と強化学習を橋渡しすることを目指します。研究チームはGSPOを用いて、疎なMixture-of-ExpertsモデルQwen3.5-35B-A3Bを学習しました。
主な仕組み
- プロセス内LLMプロキシ。 Harnessのプロセス内でLLM呼び出しを仲介し、生成ストリームをそのまま取得します。これにより、トークン単位の整合や、学習側での対数確率の再計算を行いやすくします。コンテキスト圧縮やメッセージの再シリアライズがあっても、実際の生成に近い情報を扱う設計です。
- サンドボックスの信頼性向上。 スケーラブルなサンドボックス管理、イメージキャッシュ、段階的な防御を組み合わせ、実行障害や報酬ハッキングの影響を抑えます。
- 学習の可観測性。 統合プラグインが検証とモニタリングを自動化し、Live UIが軌跡を細かく確認できるようにします。ツール呼び出し、実行結果、報酬の関係を調査しやすくする狙いです。
- 3つのHarnessで改善。 SWE-bench Verifiedでは、OpenHands SDKが64.0%から70.4%、Claude Codeが62.4%から68.2%、OpenCodeが57.2%から66.6%へ向上しました。
意義と残る論点
この研究が示すのは、コーディングエージェントの強化学習ではモデルだけでなく、実行ランタイムも学習系の一部として扱う必要があるという点です。ツールのプロトコル、コンテキスト管理、例外処理、テスト結果を無視した訓練では、実際のHarnessに組み込んだ際に挙動が変わる可能性があります。
LEGO-RLは既存Harnessを維持しながら、最適化、実行、防御、診断のための接続点を追加します。そのため、異なるエージェント基盤へ研究モデルを移植し、比較する際の負担を下げる可能性があります。ただし、提供された情報だけでは、各要素の個別効果、学習コスト、他のモデルやタスクへの一般化までは判断できません。今後は詳細なアブレーションと再現実験が必要です。
コメント
ログイン状態を確認中…
コメントを読み込み中…