Satori-SWE: サンプル効率の高いソフトウェアエンジニアリングのための進化的テストタイムスケーリング
Satori-SWE: Evolutionary Test-Time Scaling for Sample-Efficient Software Engineering
May 29, 2025
著者: Guangtao Zeng, Maohao Shen, Delin Chen, Zhenting Qi, Subhro Das, Dan Gutfreund, David Cox, Gregory Wornell, Wei Lu, Zhang-Wei Hong, Chuang Gan
cs.AI
要旨
言語モデル(LM)は標準的なコーディングベンチマークでは優れた性能を発揮しますが、SWE-BenchにおけるGitHubイシューの解決といった実世界のソフトウェアエンジニアリングタスクでは、特にモデルパラメータが100B未満の場合に苦戦します。計算コストが低いため、実際には小規模なモデルが好まれますが、その性能向上は依然として課題です。既存のアプローチは主に高品質なデータを用いた教師ありファインチューニング(SFT)に依存しており、大規模にデータを整備するにはコストがかかります。代替案として、テストタイムスケーリングがあります:複数の出力を生成し、検証器を用いてスコア付けし、最良のものを選択する方法です。この戦略は効果的ですが、過剰なサンプリングと高コストなスコア付けを必要とするため、実用上の制約があります。本論文では、進化的テストタイムスケーリング(EvoScale)を提案します。これは、生成を進化的プロセスとして扱うサンプル効率の良い手法です。選択と突然変異を介して出力を反復的に洗練することで、EvoScaleは出力分布を高スコア領域にシフトさせ、正しい解を見つけるために必要なサンプル数を削減します。サンプリングと選択の繰り返しによるオーバーヘッドを軽減するため、強化学習(RL)を用いてモデルに自己進化を学習させます。推論時に外部の検証器に依存するのではなく、モデルは自身の生成物のスコアを反復的に自己改善することを学習します。SWE-Bench-Verifiedでの評価では、EvoScaleにより32BモデルであるSatori-SWE-32Bが、100B以上のパラメータを持つモデルの性能を匹敵または上回りながら、少数のサンプルを使用することが可能です。コード、データ、およびモデルは完全にオープンソース化されます。
English
Language models (LMs) perform well on standardized coding benchmarks but
struggle with real-world software engineering tasks such as resolving GitHub
issues in SWE-Bench, especially when model parameters are less than 100B. While
smaller models are preferable in practice due to their lower computational
cost, improving their performance remains challenging. Existing approaches
primarily rely on supervised fine-tuning (SFT) with high-quality data, which is
expensive to curate at scale. An alternative is test-time scaling: generating
multiple outputs, scoring them using a verifier, and selecting the best one.
Although effective, this strategy often requires excessive sampling and costly
scoring, limiting its practical application. We propose Evolutionary Test-Time
Scaling (EvoScale), a sample-efficient method that treats generation as an
evolutionary process. By iteratively refining outputs via selection and
mutation, EvoScale shifts the output distribution toward higher-scoring
regions, reducing the number of samples needed to find correct solutions. To
reduce the overhead from repeatedly sampling and selection, we train the model
to self-evolve using reinforcement learning (RL). Rather than relying on
external verifiers at inference time, the model learns to self-improve the
scores of its own generations across iterations. Evaluated on
SWE-Bench-Verified, EvoScale enables our 32B model, Satori-SWE-32B, to match or
exceed the performance of models with over 100B parameters while using a few
samples. Code, data, and models will be fully open-sourced.Summary
AI-Generated Summary