Benchmark · agentic

SWE-bench Pro

6 hasil 4 model

Versi SWE-bench yang lebih sulit dan tahan terhadap kontaminasi dari Scale AI. Benchmark ini menarik ~1,865 issue GitHub nyata dari repositori enterprise, startup, dan open-source yang disisihkan (held-out) dan tidak dipakai untuk melatih model, dan perbaikannya biasanya membentang beberapa file.

Selengkapnya
Contoh
Diberikan sebuah issue nyata dan repositori lengkap, agen harus menghasilkan sebuah patch — yang sering menyentuh banyak file — agar test suite tersembunyi milik proyek lolos. Soal-soal berasal dari repo privat dan komersial secara khusus untuk menghindari kebocoran data pelatihan.
Penilaian
% issue yang terselesaikan, dilaporkan sebagai pass@1 (satu percobaan). Semakin tinggi semakin baik. Skornya lebih rendah dibanding pada SWE-bench Verified karena tugas-tugasnya lebih sulit dan belum pernah dilihat sebelumnya.
Verifikasi
Sepenuhnya otomatis dan disisihkan (held-out): patch yang dihasilkan diterapkan dan unit test tersembunyi asli milik repositori dijalankan di dalam sandbox. Sebuah tugas hanya dihitung jika setiap test target lolos dan tidak ada bagian lain yang mengalami regresi.
Mengapa penting
Dirancang untuk menahan kontaminasi dan saturasi yang menggelembungkan skor pada SWE-bench Verified, sehingga menjadi sinyal yang lebih bersih tentang kemampuan coding-agent yang nyata dan tergeneralisasi pada kode yang belum pernah dilihat model.
Contoh penyelesaian
Tugas
Repositori acme/payments pada base commit yang tetap. Issue: Money('0.05').allocate([1, 1, 1]) kehilangan satu sen — ketiga bagian berjumlah $0.04, bukan $0.05. Hasilkan sebuah patch agar suatu alokasi selalu berjumlah kembali sama dengan nilai aslinya.
Solusi
--- a/payments/money.py
+++ b/payments/money.py
@@ def allocate(self, ratios):
-        total = sum(ratios)
-        return [self._from_minor(self.minor * r // total) for r in ratios]
+        total = sum(ratios)
+        shares = [self.minor * r // total for r in ratios]
+        remainder = self.minor - sum(shares)
+        for i in range(remainder):
+            shares[i] += 1
+        return [self._from_minor(s) for s in shares]
Penjelasan
Pembagian integer memangkas (truncate), sehingga unit minor sisa (sen) hilang tanpa terdeteksi. Perbaikannya menghitung setiap bagian, lalu mendistribusikan sisanya satu unit demi satu unit ke bagian-bagian pertama, menjamin bahwa bagian-bagian yang dialokasikan selalu berjumlah sama dengan totalnya. Test tersembunyi memverifikasi sum(m.allocate(ratios)) == m di beberapa nilai dan rasio.
0 17 34 51 68 2025-12-11 2026-03-25 2026-07-08 GPT-5.2 Thinking · 55.6 · 2025-12-11 GPT-5.2 Thinking · 55.6 · 2025-12-11 GPT-5.5 · 58.6 · 2026-04-23 GPT-5.5 · 58.6 · 2026-04-23 Claude Opus 4.7 · 64.3 · 2026-04-23 Grok 4.5 · 64.7 · 2026-07-08
GPT-5.2 Thinking GPT-5.5 Claude Opus 4.7 Grok 4.5
Linimasa
Tanggal Model Skor Sumber
2026-07-08 Grok 4.5 64.7% xAI merilis Grok 4.5 dengan biaya rendah dan kinerja benchmark campuran
2026-04-23 GPT-5.5 58.6% OpenAI merilis GPT-5.5 dan GPT-5.5 Pro melalui API
2026-04-23 GPT-5.5 58.6% OpenAI merilis GPT-5.5 dengan kemampuan agentic dan penggandaan harga API
2026-04-23 Claude Opus 4.7 64.3% OpenAI merilis GPT-5.5 dengan kemampuan agentic dan penggandaan harga API
2025-12-11 GPT-5.2 Thinking 55.6% OpenAI memperkenalkan GPT-5.2 dengan kemampuan coding, konteks panjang, dan penalaran yang ditingkatkan
2025-12-11 GPT-5.2 Thinking 55.6% OpenAI merilis GPT-5.2, mengungguli Gemini 3 dalam benchmark pemrograman dan penalaran