
Bergabunglah dengan buletin harian dan mingguan kami untuk pembaruan terbaru dan konten eksklusif tentang liputan AI terkemuka di industri. Pelajari lebih lanjut
Amazon Web Services hari ini memperkenalkan SWE-Polybench, tolok ukur multi-bahasa yang komprehensif yang dirancang untuk mengevaluasi asisten pengkodean AI di beragam bahasa pemrograman dan skenario dunia nyata. Benchmark membahas keterbatasan signifikan dalam kerangka evaluasi yang ada dan menawarkan peneliti dan pengembang cara baru untuk menilai seberapa efektif agen AI menavigasi basis kode yang kompleks.
“Sekarang mereka memiliki tolok ukur yang dapat mereka evaluasi untuk menilai apakah agen pengkodean dapat menyelesaikan tugas pemrograman yang kompleks,” kata Anoop Deoras, Direktur Ilmu Terapan untuk Aplikasi AI generatif dan pengalaman pengembang di AWS, dalam sebuah wawancara dengan VentureBeat. “Dunia nyata menawarkan tugas yang lebih kompleks. Untuk memperbaiki bug atau melakukan pembangunan fitur, Anda perlu menyentuh banyak file, sebagai lawan dari satu file.”
Rilis ini datang karena alat pengkodean bertenaga AI telah meledak dalam popularitas, dengan perusahaan teknologi besar mengintegrasikannya ke dalam lingkungan pengembangan dan produk mandiri. Sementara alat -alat ini menunjukkan kemampuan yang mengesankan, mengevaluasi kinerja mereka tetap menantang – terutama di berbagai bahasa pemrograman dan berbagai kompleksitas tugas.
SWE-Polybench berisi lebih dari 2.000 tantangan pengkodean yang dikuratori yang berasal dari masalah gitub nyata yang mencakup empat bahasa: Java (165 tugas), JavaScript (1.017 tugas), naskah (729 tugas), dan Python (199 tugas). Benchmark juga mencakup subset bertingkat dari 500 masalah (SWE-Polybench500) yang dirancang untuk eksperimen yang lebih cepat.
“Keragaman tugas dan keragaman bahasa pemrograman hilang,” Deoras menjelaskan tentang tolok ukur yang ada. “Di SWE-Bench hari ini, hanya ada satu bahasa pemrograman tunggal, Python, dan ada satu tugas: perbaikan bug. Di Polybench, yang bertentangan dengan SWE-Bench, kami telah memperluas tolok ukur ini untuk memasukkan tiga bahasa tambahan.”
Benchmark baru secara langsung membahas keterbatasan di SWE-Bench, yang telah muncul sebagai standar de facto untuk evaluasi agen pengkodean dengan lebih dari 50 pengiriman papan peringkat. Terlepas dari peran perintisnya, SWE-Bench hanya berfokus pada repositori Python, sebagian besar menampilkan tugas-tugas pengikat bug, dan secara signifikan condong ke arah basis kode tunggal-repositori Django menyumbang lebih dari 45% dari semua tugas.
“Secara sengaja, kami memutuskan untuk memiliki sedikit lebih dari representasi untuk JavaScript dan naskah, karena kami memiliki SWE-Bench yang sudah memiliki tugas-tugas Python,” kata Deoras. “Jadi, bukannya lebih mewakili Python, kami memastikan bahwa kami memiliki representasi yang cukup untuk JavaScript dan naskah selain Java.”
Mengapa Metrik Pass/Gagal Sederhana Tidak menceritakan keseluruhan cerita tentang kinerja pengkodean AI
Inovasi utama dalam SWE-Polybench adalah pengenalan metrik evaluasi yang lebih canggih di luar “laju kelulusan” tradisional, yang hanya mengukur apakah tambalan yang dihasilkan berhasil menyelesaikan masalah pengkodean.
“Evaluasi agen pengkode ini terutama telah dilakukan melalui metrik yang disebut laju kelulusan,” kata Deoras. “Singkatnya, laju kelulusan pada dasarnya hanyalah proporsi dari tugas -tugas yang berhasil berjalan pada penerapan tambalan yang diproduksi oleh agen. Tetapi angka ini adalah statistik yang sangat tinggi dan teragregasi. Itu tidak memberi tahu Anda detail yang berpasir seluk -beluk, dan khususnya, tidak memberi tahu Anda bagaimana agen itu datang ke resolusi itu.”
Metrik baru termasuk lokalisasi level file, yang menilai kemampuan agen untuk mengidentifikasi file mana yang membutuhkan modifikasi dalam repositori, dan pengambilan level node-level sintaks (CST) beton, yang mengevaluasi seberapa akurat suatu agen dapat menentukan struktur kode spesifik yang membutuhkan perubahan.
“Selain laju lulus, kami memiliki ketepatan dan penarikan. Dan untuk mencapai metrik presisi dan penarikan kembali, kami melihat alat analisis program yang disebut pohon sintaks beton,” jelas Deoras. “Ini memberi tahu Anda bagaimana struktur file inti Anda disusun, sehingga Anda dapat melihat apa node kelas, dan di dalam kelas itu, apa node fungsi dan variabel.”
Bagaimana Python tetap dominan saat tugas kompleks mengekspos keterbatasan AI
Evaluasi Amazon terhadap beberapa agen pengkodean sumber terbuka pada SWE-Polybench mengungkapkan beberapa pola. Python tetap menjadi bahasa terkuat untuk semua agen yang diuji, kemungkinan karena prevalensinya dalam data pelatihan dan tolok ukur yang ada. Kinerja menurun seiring dengan meningkatnya kompleksitas tugas, terutama ketika modifikasi untuk tiga atau lebih file diperlukan.
Agen yang berbeda menunjukkan berbagai kekuatan di seluruh kategori tugas. Sementara kinerja pada tugas pengikat bug relatif konsisten, ada lebih banyak variabilitas antara agen saat menangani permintaan fitur dan refactoring kode.
Benchmark juga menemukan bahwa keinformatifan pernyataan masalah secara signifikan berdampak pada tingkat keberhasilan, menunjukkan bahwa deskripsi masalah yang jelas tetap penting untuk bantuan AI yang efektif.
Apa arti swe-polybench bagi pengembang perusahaan yang bekerja di berbagai bahasa
SWE-Polybench tiba pada titik kritis dalam pengembangan asisten pengkodean AI. Ketika alat -alat ini berpindah dari lingkungan eksperimental ke lingkungan produksi, kebutuhan akan tolok ukur yang ketat, beragam, dan representatif telah meningkat.
“Seiring waktu, tidak hanya kemampuan LLMS telah berevolusi, tetapi pada saat yang sama, tugas -tugas menjadi semakin kompleks,” kata Deoras. “Ada kebutuhan bagi pengembang untuk menyelesaikan tugas yang lebih kompleks secara sinkron menggunakan agen -agen ini.”
Dukungan bahasa yang diperluas dari patokan membuatnya sangat berharga bagi lingkungan perusahaan di mana pengembangan poliglot adalah umum. Java, JavaScript, TypeScript, dan Python secara konsisten peringkat di antara bahasa pemrograman paling populer dalam pengaturan perusahaan, membuat cakupan SWE-Polybench sangat relevan dengan skenario pengembangan dunia nyata.
Amazon telah membuat seluruh kerangka kerja SWE-Polybench tersedia untuk umum. Dataset dapat diakses pada wajah memeluk, dan harness evaluasi tersedia di GitHub. Papan peringkat yang berdedikasi telah didirikan untuk melacak kinerja berbagai agen pengkodean di tolok ukur.
“Kami memperluas pipa akuisisi data-Bench-Bench untuk mendukung ketiga bahasa tambahan ini,” kata Deoras. “Harapannya adalah bahwa kita akan dapat mengekstrapolasi proses ini lebih jauh di masa depan dan melampaui empat bahasa, melampaui tiga tugas yang saya bicarakan, sehingga tolok ukur ini menjadi lebih komprehensif.”
Ketika pasar asisten pengkodean AI memanas dengan penawaran dari setiap perusahaan teknologi besar, SWE-Polybench memberikan pemeriksaan realitas penting tentang kemampuan mereka yang sebenarnya. Desain benchmark mengakui bahwa pengembangan perangkat lunak dunia nyata menuntut lebih dari sekadar perbaikan bug sederhana di Python-itu membutuhkan kerja di seluruh bahasa, memahami basis kode yang kompleks, dan menangani berbagai tantangan teknik.
Untuk pembuat keputusan perusahaan yang mengevaluasi alat pengkodean AI, SWE-Polybench menawarkan sesuatu yang sangat berharga: cara untuk memisahkan hype pemasaran dari kemampuan teknis asli. Lagi pula, tes sebenarnya dari asisten pengkodean AI bukanlah seberapa baik kinerjanya pada demo yang disederhanakan, tetapi apakah itu dapat menangani kompleksitas multi-bahasa yang berantakan dari proyek perangkat lunak aktual-pengembang jenis bergulat dengan setiap hari.