789BNi
Aplikasi Game Terbesar di Indonesia
DOWNLOAD APP

Bisakah AI benar -benar kode? Pelajari peta penghalang jalan untuk rekayasa perangkat lunak otonom

Bisakah AI benar -benar kode? Pelajari peta penghalang jalan untuk rekayasa perangkat lunak otonom



Bayangkan masa depan di mana kecerdasan buatan diam -diam memikul pekerjaan perkembangan perangkat lunak: refactoring kode kusut, memigrasi sistem warisan, dan memburu kondisi ras, sehingga insinyur manusia dapat mengabdikan diri mereka untuk arsitektur, desain, dan masalah -masalah baru yang benar -benar di luar jangkauan mesin. Kemajuan baru-baru ini tampaknya telah mendorong mendekati masa depan yang menggiurkan, tetapi sebuah makalah baru oleh para peneliti di Ilmu Komputer MIT dan Laboratorium Kecerdasan Buatan (CSAIL) dan beberapa lembaga yang berkolaborasi berpendapat bahwa realitas masa depan yang potensial ini menuntut pandangan yang sulit pada tantangan saat ini.

Berjudul “Tantangan dan jalur menuju AI untuk rekayasa perangkat lunak,” karya ini memetakan banyak tugas rekayasa perangkat lunak di luar pembuatan kode, mengidentifikasi kemacetan saat ini, dan menyoroti arah penelitian untuk mengatasinya, bertujuan untuk membiarkan manusia fokus pada desain tingkat tinggi sementara pekerjaan rutin diotomatisasi.

“Semua orang berbicara tentang bagaimana kita tidak membutuhkan programmer lagi, dan ada semua otomatisasi ini sekarang tersedia,” kata Armando Solar -Lezama, profesor MIT dari Teknik Listrik dan Ilmu Komputer, Penyelidik Kepala CSAIL, dan penulis senior penelitian ini. “Di satu sisi, lapangan telah membuat kemajuan yang luar biasa. Kami memiliki alat yang jauh lebih kuat daripada yang pernah kami lihat sebelumnya. Tetapi ada juga jalan panjang untuk benar -benar mendapatkan janji penuh otomatisasi yang kami harapkan.”

Solar-Lezama berpendapat bahwa narasi populer sering menyusut rekayasa perangkat lunak ke “Bagian Pemrograman Undergrad: Seseorang memberi Anda spesifikasi untuk fungsi kecil dan Anda mengimplementasikannya, atau menyelesaikan wawancara pemrograman gaya leetcode.” Praktek nyata jauh lebih luas. Ini termasuk refotaktor sehari -hari yang desain Polandia, ditambah migrasi menyapu yang memindahkan jutaan jalur dari Cobol ke Jawa dan membentuk kembali seluruh bisnis. Dibutuhkan pengujian dan analisis tanpa henti-fuzzing, pengujian berbasis properti, dan metode lainnya-untuk menangkap bug konkurensi, atau menambal kelemahan zero-hari. Dan itu melibatkan penggilingan pemeliharaan: mendokumentasikan kode yang sudah lama berpenduduk, merangkum sejarah perubahan untuk rekan satu tim baru, dan meninjau permintaan tarik untuk gaya, kinerja, dan keamanan.

Optimalisasi kode skala industri-pikirkan kembali kernel GPU atau penyempurnaan multi-lapis tanpa henti di belakang mesin V8 Chrome-tetap sulit untuk dievaluasi. Metrik headline hari ini dirancang untuk masalah singkat dan mandiri, dan sementara tes pilihan ganda masih mendominasi penelitian bahasa alami, mereka tidak pernah menjadi norma dalam kode AI-for-code. Tolok ukur de facto lapangan, swe-bench, hanya meminta model untuk menambal masalah github: berguna, tetapi masih mirip dengan paradigma “latihan pemrograman sarjana”. Ini hanya menyentuh beberapa ratus baris kode, berisiko kebocoran data dari repositori publik, dan mengabaikan konteks dunia nyata lainnya-refactor yang dibantu AI, pemrograman pasangan manusia-AI, atau penulisan ulang kritis kinerja yang menjangkau jutaan baris. Sampai tolok ukur meluas untuk menangkap skenario berisiko lebih tinggi, mengukur kemajuan-dan dengan demikian mempercepatnya-akan tetap menjadi tantangan terbuka.

Jika pengukuran adalah salah satu hambatan, komunikasi manusia -makhluk adalah hal lain. Penulis pertama Alex Gu, seorang mahasiswa pascasarjana MIT di bidang teknik listrik dan ilmu komputer, melihat interaksi hari ini sebagai “jalur komunikasi yang tipis.” Ketika dia meminta sistem untuk menghasilkan kode, dia sering menerima file besar yang tidak terstruktur dan bahkan satu set unit tes, namun tes itu cenderung dangkal. Kesenjangan ini meluas ke kemampuan AI untuk secara efektif menggunakan rangkaian alat rekayasa perangkat lunak yang lebih luas, dari debugger hingga analisis statis, yang diandalkan manusia untuk kontrol yang tepat dan pemahaman yang lebih dalam. “Saya tidak benar -benar memiliki banyak kendali atas apa yang ditulis model,” katanya. “Tanpa saluran untuk AI untuk mengekspos kepercayaan diri sendiri – ‘Bagian ini benar … Bagian ini, mungkin pemeriksaan ganda’ – pengembang berisiko secara membabi buta mempercayai logika berhalusinasi yang dikompilasi, tetapi runtuh dalam produksi. Aspek penting lainnya adalah memiliki AI tahu kapan harus menunda pengguna untuk klarifikasi.”

Skala senyawa kesulitan -kesulitan ini. Model AI saat ini berjuang sangat dalam dengan basis kode besar, seringkali mencakup jutaan baris. Model yayasan belajar dari github publik, tetapi “basis kode setiap perusahaan berbeda dan unik,” kata Gu, membuat konvensi pengkodean eksklusif dan persyaratan spesifikasi yang secara fundamental di luar distribusi. Hasilnya adalah kode yang terlihat masuk akal namun menyebut fungsi yang tidak ada, melanggar aturan gaya internal, atau gagal dalam pipa integrasi kontinu. Ini sering mengarah pada kode yang dihasilkan AI yang “berhalusinasi,” yang berarti menciptakan konten yang terlihat masuk akal tetapi tidak selaras dengan konvensi internal spesifik, fungsi pembantu, atau pola arsitektur dari perusahaan tertentu.

Model juga akan sering mengambil salah, karena mengambil kode dengan nama yang sama (sintaks) daripada fungsionalitas dan logika, yang mungkin perlu diketahui oleh model bagaimana menulis fungsi. “Teknik pengambilan standar sangat mudah dibodohi oleh potongan -potongan kode yang melakukan hal yang sama tetapi terlihat berbeda,” kata Solar -Lezama.

Para penulis menyebutkan bahwa karena tidak ada peluru perak untuk masalah -masalah ini, mereka sebaliknya menyerukan untuk upaya skala masyarakat: lebih kaya, memiliki data yang menangkap proses pengembang menulis kode (misalnya, pengembang kode mana yang disimpan versus buang, bagaimana kode dapat diperbaiki dari waktu ke waktu, dll.), Bersama evaluasi bersama yang mengukur kemajuan pada kualitas refactor, longevitas bug -fix, dan migration yang dikembangkan; dan perkakas transparan yang memungkinkan model mengekspos ketidakpastian dan mengundang kemudi manusia daripada penerimaan pasif. GU membingkai agenda sebagai “ajakan untuk bertindak” untuk kolaborasi sumber terbuka yang lebih besar yang tidak ada laboratorium tunggal yang bisa mengumpulkan sendirian. Solar -Lezama membayangkan kemajuan tambahan— “Hasil penelitian mengambil gigitan dari masing -masing tantangan ini secara terpisah” —badilah umpan balik ke alat komersial dan secara bertahap memindahkan AI dari sahabat karib Autocomplete ke arah mitra teknik asli.

Mengapa semua masalah ini? Perangkat lunak sudah mendukung keuangan, transportasi, perawatan kesehatan, dan hal -hal kecil dari kehidupan sehari -hari, dan upaya manusia yang diperlukan untuk membangun dan mempertahankannya dengan aman menjadi hambatan. AI yang dapat memikul pekerjaan kasar – dan melakukannya tanpa memperkenalkan kegagalan tersembunyi – akan membebaskan pengembang untuk fokus pada kreativitas, strategi, dan etika, “kata Gu. “Tetapi masa depan itu tergantung pada mengakui bahwa penyelesaian kode adalah bagian yang mudah; bagian yang sulit adalah segalanya. Tujuan kami bukan untuk menggantikan pemrogram. Ini untuk memperkuat mereka. Ketika AI dapat menangani orang yang membosankan dan menakutkan, para insinyur manusia akhirnya dapat menghabiskan waktu mereka pada apa yang hanya dapat dilakukan manusia.”

“Dengan begitu banyak karya baru yang muncul di AI untuk pengkodean, dan masyarakat sering mengejar tren terbaru, mungkin sulit untuk mundur dan merenungkan masalah mana yang paling penting untuk diatasi,” kata Baptiste Rozière, seorang ilmuwan AI di Mistral AI, yang tidak terlibat dalam kertas. “Saya menikmati membaca makalah ini karena menawarkan gambaran yang jelas tentang tugas -tugas utama dan tantangan dalam AI untuk rekayasa perangkat lunak. Ini juga menguraikan arahan yang menjanjikan untuk penelitian di masa depan di lapangan.”

Gu dan Solar-Lezama menulis surat kabar itu dengan University of California di Profesor Berkeley Koushik Sen dan mahasiswa PhD Naman Jain dan Manish Shetty, asisten asisten Profesor Universitas Cornell Kevin Ellis dan mahasiswa PhD Wen-Ding Li, Stanford Profesor Diyi Yang dan Mahasiswa PhD Yijia Shao, dan Incooming Johns. Pekerjaan mereka didukung, sebagian, oleh National Science Foundation (NSF), sponsor dan afiliasi Industri Lab Sky, Intel Corp. melalui hibah NSF, dan Kantor Penelitian Angkatan Laut.
Para peneliti mempresentasikan pekerjaan mereka di Konferensi Internasional tentang Pembelajaran Mesin (ICML).


Previous Article

Tidak ada penampilan istana terakhir untuk Eze

Next Article

PLATARAN CANGGU

Write a Comment

Leave a Comment

Your email address will not be published. Required fields are marked *

Subscribe to our Newsletter

Subscribe to our email newsletter to get the latest posts delivered right to your email.
Pure inspiration, zero spam ✨