Di bidang rekayasa perangkat lunak, karena tantangan terus berkembang, metode pembandingan tradisional tampaknya tidak bermoral. Pekerjaan rekayasa perangkat lunak freelance kompleks dan bervariasi, dan jauh lebih dari sekadar tugas pengkodean yang terisolasi. Insinyur Freelancer perlu menangani seluruh basis kode, mengintegrasikan beberapa sistem, dan memenuhi kebutuhan pelanggan yang kompleks. Metode evaluasi tradisional biasanya fokus pada pengujian unit dan tidak dapat sepenuhnya mencerminkan dampak ekonomi aktual dari kinerja dan solusi penuh tumpukan. Oleh karena itu, sangat penting untuk mengembangkan metode evaluasi yang lebih realistis.
Untuk tujuan ini, OpenAI meluncurkan SWE-Lancer, tolok ukur untuk evaluasi kinerja model untuk upaya rekayasa perangkat lunak bebas dunia nyata. Benchmark ini didasarkan pada lebih dari 1.400 tugas lepas dari Upwork dan mengembang repositori, dengan total pembayaran $ 1 juta. Tugas-tugas ini dapat ditemukan dalam segala hal mulai dari perbaikan bug kecil hingga implementasi fungsi skala besar. SWE-Lancer bertujuan untuk mengevaluasi tambalan kode individual dan mengelola keputusan, mengharuskan model untuk memilih proposal terbaik dari beberapa opsi. Pendekatan ini lebih mencerminkan peran ganda tim teknik nyata.
Salah satu keunggulan besar SWE-Lancer adalah penggunaan pengujian ujung ke ujung daripada pengujian unit yang dibungkam. Tes ini telah dirancang dan diverifikasi dengan cermat oleh insinyur perangkat lunak profesional untuk mensimulasikan seluruh alur kerja pengguna dari identifikasi masalah, debugging ke verifikasi tambalan. Dengan menggunakan gambar Docker terpadu untuk evaluasi, pembandingan memastikan bahwa setiap model diuji dalam kondisi terkontrol yang sama. Kerangka pengujian yang ketat ini membantu mengungkapkan apakah solusi model cukup kuat untuk penyebaran praktis.
Detail teknis Swe-Lancer dirancang dengan cerdik untuk benar-benar mencerminkan situasi lepas yang sebenarnya. Tugas memerlukan modifikasi pada beberapa file dan integrasi dengan API, yang melibatkan platform seluler dan web. Selain menghasilkan tambalan kode, model ini juga perlu meninjau dan memilih proposal kompetisi. Fokus ganda pada keterampilan teknologi dan manajemen ini mencerminkan tanggung jawab sebenarnya dari seorang insinyur perangkat lunak. Pada saat yang sama, alat pengguna yang disertakan mensimulasikan interaksi pengguna nyata, lebih meningkatkan evaluasi dan mendorong debugging dan penyesuaian berulang.
Melalui hasil SWE-Lancer, para peneliti memiliki pemahaman mendalam tentang kemampuan model bahasa saat ini di bidang rekayasa perangkat lunak. Dalam tugas kontribusi individual, laju lulus model seperti GPT-4O dan Claude3.5Sonnet masing-masing adalah 8,0% dan 26,2%. Dalam tugas manajemen, model kinerja terbaik mencapai tingkat kelulusan 44,9%. Data ini menunjukkan bahwa sementara model canggih dapat memberikan solusi yang menjanjikan, masih ada banyak ruang untuk perbaikan.
Kertas: https://arxiv.org/abs/2502.12115
Poin -Poin Kunci:
** Metode Evaluasi Inovatif **: Benchmark SWE-Lancer memberikan evaluasi kinerja model yang lebih otentik melalui tugas lepas kehidupan nyata.
** Pengujian multi-dimensi **: Gunakan pengujian ujung ke ujung alih-alih pengujian unit untuk lebih mencerminkan kompleksitas insinyur perangkat lunak dalam pekerjaan nyata.
** Meningkatkan potensi **: Meskipun model yang ada berkinerja baik, masih ada ruang untuk perbaikan melalui lebih banyak sumber daya eksperimen dan komputasi.