SWE-Bench(エスダブリューイーベンチ)
GitHubの実際のIssueと修正コミットペアを使い、LLMがコードバグを自律修正できる能力を評価するソフトウェアエンジニアリングベンチマーク。2023年公開・2,294問。
SWE-Bench とは
SWE-Bench(Software Engineering Benchmark)は、2023年11月にPrinceton NLP Group(John Yang氏ら)が発表したLLM評価ベンチマークです。実際のGitHubリポジトリのIssueとその修正コミットを組み合わせた2,294件の実問題を使い、LLMがソフトウェアエンジニアの仕事(バグ修正・機能追加・テスト修正)を自律的に遂行できるかを測定します。
従来の「コード生成ベンチマーク」(HumanEval、MBPPなど)は「ゼロからコードを書く能力」を測るものでした。SWE-Benchはそれを超え、「既存の大規模コードベースを理解した上で問題を診断・修正する能力」を評価します。これは実際のソフトウェアエンジニアの日常業務に直結する、より実用的な能力評価です。
データセットの構成
| 項目 | 仕様 |
|---|---|
| 問題総数 | 2,294問(SWE-Bench Full) |
| Verified版 | 500問(人間専門家が検証) |
| Lite版 | 300問(評価コスト削減版) |
| 対応リポジトリ | 12リポジトリ |
| 収集期間 | 2013年〜2023年 |
| ライセンス | MIT License |
対象の12 OSSリポジトリ: astropy(天文学)、django(Webフレームワーク)、flask(マイクロWeb)、matplotlib(可視化)、numpy(数値計算)、pandas(データ分析)、pillow(画像処理)、pytest(テスト)、requests(HTTP)、scikit-learn(機械学習)、seaborn(統計可視化)、sympy(数式処理)
評価の仕組み
SWE-Benchでの評価フロー:
- Issue提示: GitHub上の実際のバグレポート・機能リクエストをLLMに提示
- コードベース提供: 問題発生時点のリポジトリ全体をコンテキストとして提供
- パッチ生成: LLMが差分(diff)形式でコード修正を出力
- 自動検証: 修正後にリポジトリのテストスイートを実行、全テストが通過すれば「解決」
評価指標はResolved Rate(解決率): 正しく解決できた問題の割合(%)。
2024–2025年 主要モデル・システムのスコア
| システム / モデル | 解決率(SWE-Bench Verified) | 手法 |
|---|---|---|
| Claude 3.5 Sonnet + Agentless | 49%+ | Agentlessフレームワーク |
| SWE-agent + Claude 3.5 Sonnet | 43.2% | ReACT型Agent |
| OpenHands + Claude 3.5 Sonnet | 37.8% | マルチAgent |
| Devin(Cognition AI) | 13.8%(Lite版) | 自律エンジニアAI |
| SWE-agent + GPT-4 Turbo | 12.5% | ReACT型Agent |
| GPT-4o | 9% | 直接推論 |
| Gemini 1.5 Pro | 3.8% | 直接推論 |
| Llama 3.1 70B | 2.1% | 直接推論 |
2024年後半、Agentlessフレームワーク(シンプルな検索+編集パイプライン)とClaude 3.5 Sonnetの組み合わせが50%に迫るスコアを達成し、業界に衝撃を与えました。
Devin vs Claude の論争
2024年3月、Cognition AIは自律AIエンジニア「Devin」をSWE-Bench Liteで13.8%と発表し注目を集めました。しかし同年6月以降、Agentless+Claude 3.5 Sonnetが40-50%+を達成し、Devinを大幅に上回ります。
この結果は「大規模なAgentアーキテクチャより、シンプルな検索+パッチ生成が効果的な場合がある」という重要な知見をもたらしました:
- ファイル定位精度: 変更すべきファイルを正確に特定できるかが鍵
- コンテキスト管理: 大規模コードベースの圧縮・選択的提示の巧拙
- テスト修正: 本体コード修正と合わせたテストコード修正の必要性
自作PC情報サイトでの応用
SWE-Benchが示唆する実用的な活用:
- バグ修正自動化: GH価格APIパース失敗などの軽微なバグをAIに任せる
- テスト追加: 既存コードのカバレッジ不足箇所の自動テスト生成
- リファクタリング提案: 技術的負債の検出と修正案提示
よくある質問(FAQ)
Q1: SWE-Bench Verified とオリジナルSWE-Benchの違いは何ですか? A: Verified版は2024年にSWE-Benchチームが500問を人間エキスパートで再検証したサブセットです。問題文の曖昧さを排除し、テストの信頼性を高めた「公正な評価」版で、2024年以降はVerified版でのスコア比較が主流です。
Q2: SWE-Benchで高スコアのモデルはGitHub CopilotやCursorより優れていますか? A: 評価方法が異なります。SWE-Benchは「自律バグ修正の完全解決率」を測り、Copilot/CursorはIDEでの補完・提案の実用性を重視します。SWE-Bench高スコアはバッチ型自律修正タスクの優秀さを示しますが、インタラクティブな補完品質とは必ずしも相関しません。
Q3: SWE-Benchをローカルで実行するにはどうすれば良いですか? A: swe-bench/SWE-benchリポジトリをクローンし、Dockerコンテナ環境(各リポジトリ用に自動生成)でテストを実行します。フル実行は数日かかるため、Lite版(300問)での評価が現実的です。
まとめ
- GitHub実IssueとPRペア2,294件でLLMのコード修正能力を評価する実用的ベンチマーク
- Claude 3.5 Sonnet + Agentlessが49%+を達成し、業界最高水準を更新(2024年)
- 単純なコード生成を超えた「コードベース理解・診断・修正」能力の測定
- AI Agentフレームワーク選定・コードアシスタント評価の業界標準指標として定着