- Docker環境なしにAIエージェントが生成したコードパッチの正しさを検証する新フレームワーク
- リポジトリ探索で収集した証拠に基づいて判定し、従来の実行ベース検証のコスト課題を解決
- SWE-bench Verifiedで62.0%の解決率を達成し、最強のオープンソース検証器を14.3 AUC上回る
研究の背景
AIコーディングエージェントの開発が急速に進む中、生成されたコードが正しく動作するかを判定する「検証器」の重要性が高まっています。従来の検証器は、テストを実際に実行して結果を見るDocker環境ベースの手法と、表面的な情報だけでスコアリングするLLMスコアラーに大きく分かれています。前者は精度が高い一方で、リポジトリごとに専用環境を構築するコストが課題でした。後者は環境構築が不要ですが、リポジトリの深い情報にアクセスできないため精度には限界があります。両者の長所を取り入れ、環境コストを排除しつつリポジトリに根ざした検証を行う試みといえるのがDockerlessです。

Dockerlessの仕組み
Dockerlessは、コードを実際に実行する代わりに、リポジトリを能動的に探索して得た証拠に基づいてパッチの正しさを判定する2段階のアーキテクチャを採用しています。第1段階では、検証のための質問(Verification Questions)を複数生成し、それぞれの質問に答えるためにサブエージェントを並列に派遣してコードベースから証拠を収集します。第2段階では、集めた質問と回答のペアを踏まえて、候補パッチが問題を解決しているかを二値判定します。この判定時に出力されるロジット(確率値)を連続的なスコアとして利用することで、複数エージェントを組み合わせた評価にも活用できるのが特徴です。

学習方法
Dockerlessは、教師モデルが生成した「質問→回答→判定」の軌跡データを用いて学習されます。具体的には、予測された判定結果が正解ラベルと一致する軌跡のみを棄却サンプリング(条件を満たさないデータを除外する手法)で選別し、ベースモデルをファインチューニングします。さらに、環境不要な後学習パイプラインも構築されており、Dockerless自身をスコアラーとして使うことで、SFT(Supervised Fine-Tuning)データのフィルタリングや強化学習(GRPO)の報酬シグナル生成が可能です。これにより、Docker環境を一切使わずにコーディングエージェントの学習パイプライン全体を完結できる点が実用上の大きな利点となっています。


実験結果
SWE-bench Verifiedベンチマークにおいて、Dockerlessは62.0%の解決率を記録し、最強のオープンソース検証器を14.3 AUCポイント上回りました。さらに、Multilingualでは50.0%、Proでは35.2%の解決率を達成し、Qwen3.5-9Bベースラインを2.4~8.7ポイント上回る性能を示しています。検証質問の数Kを増やすことでAUCが向上する傾向も確認されており、より多くの証拠を収集することが精度向上につながることが実証されました。また、環境ベースの後学習と環境不要の後学習を比較した実験では、ほぼ同等の性能が得られることが示されており、Docker環境なしでも高精度な検証が実現できることが裏付けられています。

まとめと今後の展望
Dockerlessは、Docker環境を必要とせずにコードパッチの正しさを検証できる画期的なフレームワークです。リポジトリ探索を通じて収集した証拠に基づく判定により、従来の実行ベース検証の高コスト問題を解決しつつ、表面的なLLMスコアラーよりも高精度な検証を実現しました。SFTデータフィルタとGRPOの報酬シグナル双方に使えるため、Docker環境なしに学習パイプライン全体を完結できます。今後は、より多様なプログラミング言語やフレームワークへの対応、検証質問生成の最適化などが期待され、AIコーディングエージェントの開発効率をさらに高める基盤技術として発展していくでしょう。
