Benchmark · agentic

SWE-bench

9 hasil 7 model

SWE-bench menguji apakah sistem AI mampu memperbaiki bug perangkat lunak nyata: ia mengambil 2.294 issue asli dari repositori Python open source populer di GitHub dan meminta model menghasilkan patch yang memperbaiki kode. Metrik utamanya adalah persentase issue yang berhasil diselesaikan.

Selengkapnya
Contoh
Sebuah item khas memberi model laporan bug atau permintaan fitur nyata yang diajukan pada proyek Python — misalnya sebuah issue dari Django atau scikit-learn — beserta kode repositori tersebut, dan memintanya menghasilkan patch yang menyelesaikan masalah itu.
Penilaian
Skornya adalah persentase dari 2.294 issue yang terselesaikan: sebuah issue baru dihitung jika patch dari model, setelah diterapkan, membuat rangkaian tes milik repositori itu lulus.
Verifikasi
Verifikasi sepenuhnya otomatis: patch yang dihasilkan diterapkan ke repositori dan tes asli proyek dijalankan; tugas dianggap selesai hanya jika tes sasaran yang tadinya gagal berubah menjadi lulus dan tes yang sebelumnya lulus tetap lulus, tanpa penilaian manusia atau pencocokan persis.
Mengapa penting
Ia mengukur kemampuan rekayasa perangkat lunak menyeluruh pada kode nyata, bukan latihan mainan, sehingga menjadi tolok ukur yang banyak diperhatikan untuk kemajuan agen pemrograman; untuk angka utama, ia sebagian besar telah digantikan oleh subset yang divalidasi manusia, SWE-bench Verified.
Contoh penyelesaian
Tugas
Repositori psf/requests. Seorang pengguna melaporkan bahwa menyetel header request ke None (untuk menghapus header default sesi) tidak berpengaruh: key bernilai None tetap ada di header hasil penggabungan alih-alih dihapus. Diberikan repositori pada commit yang bermasalah dan issue ini, buatlah patch agar requests.sessions.merge_setting menghapus key yang nilainya None.
Solusi
--- 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
Penjelasan
Setelah menggabungkan dictionary sesi dan request, setiap key yang menunjuk ke None berasal dari penggantian eksplisit di tingkat request yang dimaksudkan untuk menghapus nilai default, sehingga perbaikan mengumpulkan key-key tersebut dan menghapusnya (membangun daftarnya lebih dulu agar tidak mengubah dictionary saat iterasi). SWE-bench menilai dengan menerapkan patch dan menjalankan tes FAIL_TO_PASS dan PASS_TO_PASS milik instance itu — dianggap selesai hanya jika semuanya lulus.
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
Linimasa
Tanggal Model Skor Sumber
2025-11-25 Claude Opus 4.5 80.9% Anthropic merilis Claude Opus 4.5 dengan kemampuan coding dan penggunaan komputer terkini
2025-10-17 Qwen3-Coder-480B-A35B-Instruct 55.4% Alibaba merilis Qwen3-Coder-480B-A35B-Instruct, model pemrograman open-source yang menyamai kinerja proprietary
2025-07-10 Grok 4 Code 75.0% xAI merilis Grok 4 dengan tier multi-agent berat dan data web langsung
2025-05-22 Claude Sonnet 4 72.7% Anthropic merilis Claude Opus 4 dan Sonnet 4 dengan langkah keamanan ASL-3
2025-05-22 Claude Opus 4 72.5% Anthropic merilis Claude Opus 4 dan Sonnet 4 dengan langkah keamanan ASL-3
2025-05-22 Claude Opus 4 72.5% Anthropic memperkenalkan Claude Opus 4 dan Sonnet 4 dengan pemikiran ekstensif dan penggunaan alat
2025-05-22 Claude Sonnet 4 72.7% Anthropic memperkenalkan Claude Opus 4 dan Sonnet 4 dengan pemikiran ekstensif dan penggunaan alat
2025-02-24 Claude 3.7 Sonnet 70.3% Anthropic merilis Claude 3.7 Sonnet dengan kontrol penalaran dinamis
2023-10-10 Claude 2 1.96% SWE-bench memperkenalkan kerangka kerja untuk mengevaluasi LM pada isu GitHub dunia nyata