Memperkenalkan Amazon CodeWhisperer, pendamping pengkodean yang didukung ML

Node Sumber: 1563783

Kami sangat senang mengumumkannya Pembisik Kode Amazon, layanan yang didukung machine learning (ML) yang membantu meningkatkan produktivitas developer dengan memberikan rekomendasi kode berdasarkan komentar natural developer dan kode sebelumnya. Dengan CodeWhisperer, pengembang cukup menulis komentar yang menguraikan tugas tertentu dalam bahasa Inggris yang sederhana, seperti "mengunggah file ke S3." Berdasarkan ini, CodeWhisperer secara otomatis menentukan layanan cloud dan perpustakaan umum mana yang paling cocok untuk tugas yang ditentukan, membuat kode spesifik dengan cepat, dan merekomendasikan cuplikan kode yang dihasilkan langsung di IDE.

Meskipun cloud telah mendemokratisasi pengembangan aplikasi dengan memberikan akses sesuai permintaan ke komputasi, penyimpanan, database, analitik, dan ML, proses tradisional dalam membangun aplikasi perangkat lunak masih mengharuskan pengembang menghabiskan banyak waktu untuk menulis bagian boilerplate dari kode yang tidak berhubungan langsung dengan masalah inti yang mereka coba pecahkan. Bahkan pengembang yang paling berpengalaman pun merasa kesulitan untuk mengikuti berbagai bahasa pemrograman, kerangka kerja, dan pustaka perangkat lunak, sambil memastikan bahwa mereka mengikuti sintaks pemrograman yang benar dan praktik pengkodean terbaik. Akibatnya, pengembang menghabiskan banyak waktu untuk mencari dan menyesuaikan cuplikan kode dari web. Dengan CodeWhisperer, pengembang dapat tetap fokus pada IDE dan memanfaatkan rekomendasi kontekstual waktu nyata, yang telah disesuaikan dan siap digunakan. Lebih sedikit gangguan dari IDE dan rekomendasi real-time yang siap digunakan membantu Anda menyelesaikan tugas pengkodean lebih cepat dan memberikan peningkatan produktivitas.

Dalam posting ini, kita membahas manfaat CodeWhisperer dan bagaimana memulainya.

Membawa kekuatan ML ke ujung jari pengembang

CodeWhisperer tersedia sebagai bagian dari ekstensi AWS Toolkit untuk IDE utama, termasuk JetBrains, Visual Studio Code, dan AWS Cloud9. Di AWS Lambda konsol, CodeWhisperer tersedia sebagai fitur saran kode asli. Saat peluncuran, Anda dapat menggunakan CodeWhisperer untuk menghasilkan rekomendasi kode untuk Python, Java, dan JavaScript. Anda dapat menginstal AWS Toolkit dengan membuka plugin atau layar ekstensi IDE Anda dan mencari AWS Toolkit.

Setelah CodeWhisperer diaktifkan, Anda secara otomatis mulai menerima rekomendasi kode di IDE Anda saat Anda mulai menulis kode atau komentar. Dengan bertemu pengembang di mana pun Anda berada, kami membuat CodeWhisperer mudah digunakan dan bereksperimen. Anda dapat memulai dalam beberapa menit dan mulai menikmati manfaat produktivitas segera.

Lebih dari pelengkapan otomatis tradisional

Alat pelengkapan otomatis tradisional menyediakan pelengkapan satu kata, misalnya, daftar properti atau metode untuk suatu objek. CodeWhisperer memberikan peningkatan produktivitas yang jauh lebih baik dengan menghasilkan seluruh fungsi dan blok kode logis sekaligus. Juga, CodeWhisperer memahami maksud pengembang seperti yang diungkapkan melalui komentar bahasa Inggris yang sederhana. Contoh berikut menunjukkan bagaimana CodeWhisperer menghasilkan seluruh fungsi untuk mengonversi file JSON menjadi file CSV, sambil mempertimbangkan maksud pengembang untuk menggunakan kunci dalam file JSON sebagai header file CSV.

Membangun aplikasi di AWS semakin mudah

CodeWhisperer memudahkan pengembang untuk menggunakan layanan AWS dengan memberikan rekomendasi kode untuk antarmuka pemrograman aplikasi (API) AWS di seluruh layanan paling populer, termasuk Cloud komputasi elastis Amazon (Amazon EC2), Lambda, dan Layanan Penyimpanan Sederhana Amazon (Amazon S3). Saat Anda menulis kode di IDE Anda, CodeWhisperer secara otomatis menganalisis komentar, merakit kode menggunakan layanan cloud yang relevan dan perpustakaan perangkat lunak publik untuk fungsionalitas yang diinginkan, dan merekomendasikan potongan kode dan bahkan seluruh fungsi secara langsung di IDE yang memenuhi praktik terbaik. Contoh berikut menunjukkan bagaimana CodeWhisperer dapat menghasilkan seluruh fungsi untuk mengunggah file ke Amazon S3 menggunakan enkripsi sisi server.

Memanfaatkan kekuatan AI secara bertanggung jawab

Kami telah melatih model CodeWhisperer pada sejumlah besar kode yang tersedia untuk umum untuk meningkatkan keakuratan rekomendasi. Sederhananya, akurasi model berbanding lurus dengan ukuran data latih. Dan meskipun ini telah membantu kami dalam hal akurasi, jenis model ini juga dapat mempelajari beberapa pola yang tidak diinginkan. Kami percaya meskipun AI tidak diragukan lagi dapat meningkatkan produktivitas, kami harus memanfaatkan kekuatan ini dengan cara yang bertanggung jawab. Ada beberapa kemampuan menonjol yang membuat CodeWhisperer unik di ruang ini.

Di AWS, kami ingin mengatakan bahwa keamanan adalah pekerjaan nol. Itu sebabnya CodeWhisperer juga menyediakan kemampuan untuk menjalankan pemindaian pada kode Anda (dihasilkan oleh CodeWhisperer dan juga ditulis oleh Anda) untuk mendeteksi kerentanan keamanan. Tangkapan layar berikut mengilustrasikan fungsionalitas pemindaian keamanan CodeWhisperer. Kami telah menyertakan cuplikan kode yang dapat menyebabkan kebocoran sumber daya. Ketika Anda memilih Jalankan Pemindaian Keamanan, CodeWhisperer mendeteksi kerentanan ini dan menampilkan masalahnya.

Kedua, kami menyediakan pelacak referensi yang dapat mendeteksi ketika output yang dihasilkan mungkin mirip dengan data pelatihan tertentu. Meskipun model telah mempelajari cara menulis kode dan menghasilkan kode yang benar-benar baru berdasarkan pembelajaran, dalam kasus yang sangat jarang, rekomendasi kode yang dibuat secara independen mungkin menyerupai cuplikan kode unik dalam data pelatihan. Dengan memberi tahu Anda saat hal ini terjadi, dan memberikan informasi repositori dan lisensi, CodeWhisperer memudahkan Anda memutuskan apakah akan menggunakan kode dalam proyek Anda dan membuat atribusi kode sumber yang relevan sesuai keinginan Anda.

CodeWhisperer memberi tahu Anda secara real time bahwa rekomendasi kode saat ini yang Anda lihat mungkin mirip dengan kode referensi dengan menampilkan pemberitahuan di pop-up rekomendasi. Pada tangkapan layar berikut, kode yang dihasilkan ditemukan mirip dengan kode referensi yang berada di bawah lisensi MIT. Jika pengembang menerima rekomendasi, CodeWhisperer mencatat penerimaan dan informasi lisensi yang sesuai. Anda kemudian dapat melihat log referensi dengan memilih Open CodeWhisperer Reference Panel di bawah node CodeWhisperer.

Terakhir, kami menerapkan teknik untuk mendeteksi bias berdasarkan stereotip umum. Kami telah menerapkan filter yang mendeteksi bias yang jelas dalam kode yang dihasilkan dan menghapus rekomendasi kode yang mungkin dianggap bias dan tidak adil. Misalnya, bayangkan perangkat lunak perekrutan yang membantu mempekerjakan manajer dengan memilih kandidat secara otomatis. Jika terjadi seri, perangkat lunak bergantung pada logika tie-breaker. Saat membuat rekomendasi untuk skenario ini, ada kemungkinan model AI dapat menghasilkan kode yang mendukung kandidat berdasarkan parameter yang tidak sesuai. CodeWhisperer dapat mendeteksi bias dalam rekomendasinya dan menyaringnya sebelum menunjukkan rekomendasi kepada pengembang.

Membuka keuntungan produktivitas dengan CodeWhisperer

โ€œGangguan adalah tantangan konstan saat coding, terutama ketika itu perlu untuk beralih konteks untuk mencari contoh kode dan dokumentasi di web. Amazon CodeWhisperer membuat saya tetap fokus pada kode dengan secara otomatis menawarkan saran bermanfaat tepat saat saya membutuhkannya, jadi saya tidak perlu meninggalkan editor saya.โ€

โ€“ Ryan Grove, Staf Insinyur Perangkat Lunak di SmugMug.

โ€œKami sangat senang bekerja dengan AWS dalam menghadirkan Amazon CodeWhisperer ke Platform IntelliJ. Di JetBrains, kami bertujuan untuk membuat pengembangan perangkat lunak menjadi pengalaman yang lancar dan menyenangkan. Ketersediaan plugin untuk alat kami akan membantu pengembang tetap fokus pada IDE mereka dan mengurangi kebutuhan untuk mencari dan menyesuaikan cuplikan kode dari web. Mulai hari ini, pengguna IntelliJ IDEA, PyCharm, dan WebStorm dapat mulai bekerja dengan Amazon CodeWhisperer langsung di IDE mereka, dengan lebih banyak IDE yang akan didukung dalam waktu dekat.โ€

โ€“ Max Shafirov, CEO JetBrains.

Mulai

Selama periode pratinjau, CodeWhisperer tersedia untuk semua pengembang di seluruh dunia secara gratis. Untuk mengakses layanan dalam pratinjau, bergabunglah dengan daftar tunggu dengan mendaftar. Untuk informasi lebih lanjut tentang layanan ini, kunjungi Pembisik Kode Amazon.


Tentang Penulis

Ankur Desai adalah Manajer Produk Utama dalam tim AWS AI Services.

Atul Deo adalah Direktur Manajemen Produk dengan tim AWS AI Services.

Stempel Waktu:

Lebih dari Pembelajaran Mesin AWS