Mengapa Agen Pemrograman AI Gagal: Kesenjangan Kritis Antara File dan Baris Kode
Meskipun agen pemrograman AI semakin mampu menyelesaikan bug perangkat lunak, sebuah studi baru mengungkapkan bahwa mereka menderita masalah "lokalisasi" yang signifikan. Mereka dapat menavigasi ke file yang benar dalam basis kode yang masif, tetapi mereka sering kali gagal mengidentifikasi baris kode spesifik yang diperlukan untuk menerapkan perbaikan.
Memperkenalkan SWE-Explore: Melampaui Tingkat Perbaikan
Secara historis, efektivitas agen pemrograman AI telah diukur dengan metrik biner tunggal: apakah agen tersebut memperbaiki bug atau tidak? Pendekatan ini mengabaikan alasan "mengapa" di balik sebuah kegagalan. Perbaikan yang gagal bisa berarti agen tersebut menulis patch yang buruk, atau bisa juga berarti agen tersebut bahkan tidak pernah melihat logika yang relevan.
Untuk mengatasi titik buta ini, tim peneliti internasional, termasuk ilmuwan dari Shanghai Jiao Tong University, mengembangkan SWE-Explore. Berbeda dengan tolok ukur tradisional, SWE-Explore mengisolasi fase pencarian upstream. Ia mengevaluasi kemampuan agen untuk mengambil deskripsi bug dan mengembalikan daftar peringkat bagian kode spesifik yang benar-benar relevan dengan masalah tersebut. Datasetnya sangat luas, diambil dari 848 tugas di 203 proyek sumber terbuka dan sepuluh bahasa pemrograman, dengan Python sebagai yang paling menonjol (547 tugas).
Kesenjangan Presisi: Keberhasilan File vs. Kegagalan Baris
Temuan paling mencolok dari studi ini adalah disparitas masif antara akurasi tingkat file dan tingkat baris. Ketika diuji terhadap agen serbaguna seperti Claude Code, Codex, dan OpenHands, hasilnya sangat jelas:
- Akurasi tingkat file: Agen bekerja dengan baik, berhasil mengidentifikasi file sumber yang benar dan menempatkannya di peringkat tinggi.
- Akurasi tingkat baris: Performa merosot tajam. Agen pemrograman umum hanya mencakup 14% hingga 19% dari baris kode aktual yang penting untuk perbaikan.
Menariknya, sekadar meningkatkan Large Language Model (LLM) yang mendasarinya tidak menyelesaikan masalah ini. Baik menggunakan model dari OpenAI, Anthropic, Google, Moonshot, atau Zhipu, polanya tetap identik: tingkat kecocokan file yang tinggi tetapi cakupan baris yang sangat buruk. Penelitian tersebut mencatat bahwa sistem khusus seperti CoSIL mengungguli agen umum dengan memperlakukan kode sebagai jaringan blok bangunan yang saling terhubung, yang menunjukkan bahwa perubahan arsitektur lebih penting daripada kekuatan model mentah.
Efek Ambang Batas: Mengapa "Membaca Lebih Banyak" Itu Penting
Melalui eksperimen ablasi terkontrol, para peneliti menemukan "efek ambang batas" terkait konteks. Dengan memvariasikan jumlah kode inti yang diberikan kepada model (dari 0% hingga 100%), mereka menemukan bahwa perbaikan tidak meningkat secara linear.
Untuk tugas-tugas yang lebih mudah, terdapat titik balik yang jelas: jika agen melihat kurang dari 50% wilayah inti yang diperlukan, tingkat keberhasilan perbaikan tetap mendekati nol. Lonjakan signifikan dalam perbaikan yang berhasil hanya terjadi setelah agen memiliki akses ke antara 50% hingga 75% konteks yang diperlukan. Yang terpenting, studi tersebut menemukan bahwa memberikan kode "noise" yang tidak relevan tidak merusak performa sebesar dampak dari hilangnya baris-baris kritis. Pelajaran bagi para pengembang sangatlah jelas: di era agen AI, lebih baik memberikan lebih banyak konteks daripada mengambil risiko menyaring detail-detail penting.
Poin-Poin Penting
- Lokalisasi adalah hambatan utama: Agen AI mahir dalam menemukan file yang tepat, tetapi sangat kesulitan untuk menentukan baris kode spesifik yang diperlukan untuk perbaikan.
- Peningkatan skala model bukanlah solusi ajaib: Meningkatkan ke LLM yang lebih kuat tidak memperbaiki celah akurasi pada tingkat baris; pendekatan arsitektur khusus seperti CoSIL lebih efektif.
- Aturan Konteks 50%: Keberhasilan perbaikan AI mengikuti pola ambang batas, yang membutuhkan setidaknya 50-75% konteks kode yang relevan terlihat sebelum perbaikan yang berhasil menjadi mungkin.