DeepCode akan menemui ralat dalam kod sumber perisian menggunakan AI

Hari ini syarikat permulaan Switzerland DeepCode, yang menggunakan kecerdasan buatan dan pembelajaran mesin untuk mengautomasikan analisis kod, mengumumkan ia telah menerima pelaburan $4 juta daripada dana teroka Earlybird, 3VC dan Btov Partners. Syarikat itu merancang untuk menggunakan dana ini untuk memperkenalkan sokongan untuk bahasa pengaturcaraan baharu ke dalam perkhidmatannya, serta untuk memasarkan produk di pasaran IT global.

DeepCode akan menemui ralat dalam kod sumber perisian menggunakan AI

Analisis kod adalah perlu untuk mengesan ralat, potensi kelemahan, pelanggaran pemformatan dan lebih awal dalam pembangunan perisian, sebelum kod digunakan di mana-mana sahaja. Biasanya, prosedur ini dijalankan selari dengan pembangunan kod baharu dan sejurus selepas ia selesai, sebelum peringkat ujian itu sendiri. "Pengujian perisian melihat kod dari luar, tetapi analisis kod membolehkan anda melihatnya dari dalam," jelas pengasas bersama DeepCode dan Ketua Pegawai Eksekutif Boris Paskalev dalam temu bual dengan VentureBeat.

Selalunya, semakan kod dilakukan oleh pengarangnya bersama-sama dengan rakan sekerja dan pengurus untuk mengenal pasti ralat yang jelas sebelum beralih ke peringkat pembangunan seterusnya. Dan lebih besar projek itu, lebih banyak baris kod perlu disemak, yang mengambil banyak masa pengaturcara. Alat yang sepatutnya mempercepatkan proses ini telah wujud sejak sekian lama, seperti penganalisis kod statik seperti Coverity dan PVS-Studio, tetapi mereka cenderung terhad dalam keupayaan mereka kerana mereka menumpukan pada "isu gaya yang menjengkelkan dan berulang, pemformatan dan ralat logik kecil,” jelas Paskalev.

DeepCode pula merangkumi pelbagai masalah yang lebih luas, contohnya, mengesan kelemahan seperti peluang untuk skrip rentas tapak dan suntikan SQL, kerana algoritma yang tertanam di dalamnya bukan sahaja menganalisis kod sebagai satu set aksara, tetapi cuba untuk memahami maksud dan tujuan program kerja yang ditulis. Intinya ialah sistem pembelajaran mesin yang menggunakan berbilion baris kod daripada projek sumber terbuka yang tersedia secara terbuka untuk latihannya. DeepCode menganalisis versi kod sebelumnya dan perubahan seterusnya yang dibuat padanya untuk mengkaji ralat dan cara pengaturcara sebenar membetulkan kerja mereka, dan kemudian menawarkan penyelesaian yang serupa kepada penggunanya. Selain itu, sistem ini juga menggunakan algoritma ramalan tradisional untuk mencari kemungkinan masalah dalam kod, seperti penganalisis statik yang dinyatakan di atas.

Salah satu soalan utama apabila menggunakan DeepCode ialah: sejauh manakah semakan kod automatik boleh dipercayai? Ketepatan analisis kurang daripada 100% bermakna pembangun masih perlu menganalisis kod mereka secara manual. Jika ya, berapa lamakah masa menggunakan alatan untuk mengautomasikan tugasan ini benar-benar dibebaskan? Menurut Paskalev, DeepCode akan dapat menyelamatkan pembangun kira-kira 50% daripada masa yang mereka gunakan untuk mencari ralat sendiri, yang merupakan angka yang agak ketara.

Pembangun boleh menyambungkan DeepCode ke akaun GitHub atau Bitbucket mereka, dan alat ini juga menyokong konfigurasi GitLab setempat. Selain itu, projek ini mempunyai API khas yang membolehkan pembangun menyepadukan DeepCode ke dalam sistem pembangunan mereka sendiri. Setelah disambungkan ke repositori, DeepCode akan menganalisis setiap perubahan kod dan membenderakan masalah yang berpotensi.

DeepCode akan menemui ralat dalam kod sumber perisian menggunakan AI

"Secara purata, pembangun menghabiskan kira-kira 30% masa mereka mencari dan membetulkan pepijat, tetapi DeepCode boleh menjimatkan separuh daripada masa itu sekarang, dan lebih banyak lagi pada masa hadapan," kata Boris. "Oleh kerana DeepCode belajar secara langsung daripada komuniti pembangun global, ia dapat mencari lebih banyak masalah daripada satu orang atau keseluruhan kumpulan pengulas yang pernah dapati."

Sebagai tambahan kepada berita hari ini menerima pelaburan, DeepCode juga mengumumkan dasar nilai baharu untuk produknya. Sehingga kini, DeepCode hanya percuma untuk projek pembangunan perisian sumber terbuka. Kini ia akan percuma untuk digunakan untuk sebarang tujuan pendidikan dan juga untuk syarikat komersial dengan kurang daripada 30 pembangun. Jelas sekali, dengan langkah ini, pencipta DeepCode ingin menjadikan produk mereka lebih popular di kalangan pasukan kecil. Selain itu, DeepCode mengenakan bayaran $20 setiap pembangun sebulan untuk penggunaan awan dan $50 setiap pembangun untuk sokongan tempatan.

Sebelum ini, pasukan DeepCode telah pun menerima pelaburan sebanyak $1 juta. Dengan 4 juta lagi, syarikat itu berkata ia merancang untuk mengembangkan bahasa pengaturcaraan yang disokongnya melangkaui Java, JavaScript dan Python, termasuk menambah sokongan untuk C#, PHP dan C/C++. Mereka juga mengesahkan bahawa mereka sedang mengusahakan persekitaran pembangunan bersepadu mereka sendiri.



Sumber: 3dnews.ru

Tambah komen