ソフトウェア工学 LLM の SFT 効率化手法 SWE-Prime──10% のデータ選別で SWE-Bench Verified 比 24.2% 向上
軌跡とセグメントの 2 段階でノイズを除去するデータ選択手法により、データ量を 1/10 に削減しつつ精度を最大 24.2% 向上させた。
リリース: 2026-08-27 · 読了 5 分論文概要
大規模言語モデル(LLM)をソフトウェア工学タスクに適応させる際、従来は成功したエージェントの軌跡(trajectory)を集めてそのまま Supervised Fine-Tuning(SFT)を行っていた。しかし、成功した軌跡であっても冗長なステップやリスクのある行動が含まれている。本論文では、多粒度・2段階のデータ選択手法「SWE-Prime」を提案し、全体データのわずか 10% を用いるだけで SWE-Bench Pro および SWE-Bench Verified においてそれぞれ最大 12.2%、24.2% の性能向上を達成した。

関連研究
ソフトウェアタスク向けのエージェント開発では、大規模な軌跡データセットの構築と SFT が主流であった。しかし、タスクが成功したことと、学習データとしての品質が高いことは同義ではない。従来手法ではノイズを含むデータや非効率な試行錯誤をそのまま学習させてしまう課題があった。
新規性と貢献
本研究の最大の貢献は、成功軌跡の中にある「非効率・冗長・リスクのあるステップ」に着目し、軌跡全体だけでなくセグメント単位でもフィルタリングを行う多粒度アプローチを導入した点である。これにより、データの総量を 1/10 に絞り込みながら、モデルの汎化性能と実用的な問題解決能力を大きく高めることに成功した。
提案手法の詳細
SWE-Prime は 2 つのステージで構成される。

第 1 ステージでは、プロセス品質、結果品質、データの代表性に基づいて軌跡レベルのスクリーニングを行い、高品質なサブセットを選択する。第 2 ステージでは、連続するステップをセグメントにグループ化し、最終的な解決への貢献度、学習容易性、潜在的リスクを評価してセグメント単位の選択を行う。SFT の際は文脈を維持するためにすべてのセグメントをシーケンスに残すものの、損失(loss)の計算には選択されたセグメントのみを寄与させる設計となっている。
評価・考察
SWE-Bench Pro および SWE-Bench Verified を用いた実験において、SWE-Prime により選別された 10% の軌跡サブセットで訓練したモデルは、すべての解決済みデータを用いて訓練したモデルを上回る性能を示した。具体的には、相対的なパフォーマンスゲインとして SWE-Bench Pro で最大 12.2%、SWE-Bench Verified で最大 24.2% の向上を実証している。

応用例と今後の展望
ソフトウェア開発自動化ツールや自律型コーディングエージェントの開発において、SFT の計算コストを大幅に削減しつつ精度を最適化する基盤技術として直ちに適用可能である。国内のソフトウェア受託開発企業やテックリード層においては、LLM のファインチューニングにかかるコストを 1/10 に圧縮しつつ、デバッグやコード生成の精度を向上させるためのデータ前処理パイプラインの設計指針として極めて価値が高い。
結論
SWE-Prime は、エージェントの軌跡データに対する多粒度な 2 段階フィルタリングにより、データ量の削減と性能の最大化を両立する優れた SFT 手法であることを示した。
注釈
- SFT (Supervised Fine-Tuning): 教師あり微調整。事前学習済みモデルに正解データを与えて特定のタスク向けに最適化する手法。
- SWE-Bench: 実世界の GitHub リポジトリの Issue を用いて LLM のソフトウェアエンジニアリング能力を評価するベンチマーク。