ベンチマーク · agentic

SWE-bench

9 結果 7 モデル

SWE-bench は、AI システムが実際のソフトウェアのバグを修正できるかを測定するベンチマークで、GitHub 上の人気オープンソース Python リポジトリから 2,294 件の実際の issue を集め、モデルにコードを修正する patch を生成させます。主要な指標は解決した issue の割合です。

詳しく見る
典型的な項目では、Python プロジェクトに実際に投稿されたバグ報告や機能要望(たとえば Django や scikit-learn の issue)を、そのリポジトリのコードとともにモデルに渡し、問題を解決する patch を生成させます。
採点方法
スコアは 2,294 件の issue のうち解決した割合です。モデルの patch を適用した結果、そのリポジトリ自身のテストスイートが通った場合にのみ、その issue は解決とみなされます。
検証方法
検証は完全に自動で行われます。生成された patch をリポジトリに適用してプロジェクト本来のテストを実行し、対象の失敗していたテストが成功に変わり、かつ元々成功していたテストも引き続き成功した場合にのみ、タスクは解決として受理されます。人間の判断や完全一致は使いません。
重要な理由
おもちゃのような課題ではなく実際のコードに対するエンドツーエンドのソフトウェアエンジニアリング能力を測るため、コーディングエージェントの進歩を示す注目の指標となっています。ただし見出しの数値としては、人手で検証された部分集合 SWE-bench Verified にほぼ取って代わられています。
解説付きの例
課題
リポジトリ psf/requests。あるユーザーから、リクエストのヘッダーを None に設定しても(セッションのデフォルトヘッダーを削除するため)効果がなく、値が None のキーが削除されずにマージ後のヘッダーに残る、という報告があります。バグのあるコミット時点のリポジトリとこの issue が与えられたとき、requests.sessions.merge_setting が値 None のキーを削除するようにする patch を作成してください。
解答
--- a/requests/sessions.py
+++ b/requests/sessions.py
@@ -412,6 +412,11 @@ def merge_setting(request_setting, session_setting, dict_class=OrderedDict):
     merged_setting = dict_class(to_key_val_list(session_setting))
     merged_setting.update(to_key_val_list(request_setting))
 
+    # Remove keys that are set to None. Extract the keys first to avoid
+    # mutating the dictionary while iterating over it.
+    none_keys = [k for (k, v) in merged_setting.items() if v is None]
+    for key in none_keys:
+        del merged_setting[key]
+
     return merged_setting
解説
セッションとリクエストの辞書をマージした後、None を指すキーはデフォルト値を消すことを意図したリクエストレベルの明示的な上書きに由来するため、修正ではそれらのキーを集めて削除します(反復中に辞書を変更しないよう先にリストを作ります)。SWE-bench は patch を適用し、そのインスタンスの FAIL_TO_PASS と PASS_TO_PASS のテストを実行して評価し、すべて通った場合のみ解決とみなします。
0 21.5 43 64.5 86 2023-10-10 2024-11-01 2025-11-25 Claude 2 · 2.0 · 2023-10-10 Claude 3.7 Sonnet · 70.3 · 2025-02-24 Claude Sonnet 4 · 72.7 · 2025-05-22 Claude Sonnet 4 · 72.7 · 2025-05-22 Claude Opus 4 · 72.5 · 2025-05-22 Claude Opus 4 · 72.5 · 2025-05-22 Grok 4 Code · 75 · 2025-07-10 Qwen3-Coder-480B-A35B-Instruct · 55.4 · 2025-10-17 Claude Opus 4.5 · 80.9 · 2025-11-25
Claude 2 Claude 3.7 Sonnet Claude Sonnet 4 Claude Opus 4 Grok 4 Code Qwen3-Coder-480B-A35B-Instruct Claude Opus 4.5
タイムライン
日付 モデル スコア ソース
2025-11-25 Claude Opus 4.5 80.9% AnthropicがClaude Opus 4.5をリリース、最先端のコーディングとコンピュータ操作を実現
2025-10-17 Qwen3-Coder-480B-A35B-Instruct 55.4% アリババ、独自モデルに匹敵する性能を持つオープンソースのコーディングモデル「Qwen3-Coder-480B-A35B-Instruct」をリリース
2025-07-10 Grok 4 Code 75.0% xAIがGrok 4をリリース、重厚なマルチエージェント層とライブWebデータを搭載
2025-05-22 Claude Sonnet 4 72.7% AnthropicがClaude Opus 4およびSonnet 4をASL-3の安全対策付きでリリース
2025-05-22 Claude Opus 4 72.5% AnthropicがClaude Opus 4およびSonnet 4をASL-3の安全対策付きでリリース
2025-05-22 Claude Opus 4 72.5% AnthropicがClaude Opus 4とSonnet 4を、拡張思考とツール使用機能付きで発表
2025-05-22 Claude Sonnet 4 72.7% AnthropicがClaude Opus 4とSonnet 4を、拡張思考とツール使用機能付きで発表
2025-02-24 Claude 3.7 Sonnet 70.3% Anthropicが動的推論制御機能を備えたClaude 3.7 Sonnetをリリース
2023-10-10 Claude 2 1.96% SWE-benchが現実のGitHub課題に対するLM評価フレームワークを導入