Bagaimana Kualitas Code Programmer yang Dihasilkan oleh AI
AI-Assisted Code Generation Tools seperti GitHub Copilot, Amazon CodeWhisperer, dan ChatGPT saat ini menjadi semakin populer dalam dunia Software development. Tools ini memungkinkan developer untuk menghasilkan code dari prompt Natural language yang dapat membantu meningkatkan produktivitas.
Nah, pernahkah Anda terpikirkan bagaimana dengan kualitas kode yang dihasilkan oleh AI? Dalam artikel ini mengevaluasi kualitas kode dari ketiga tools berdasarkan beberapa metrik kualitas kode seperti Code Validity, Code Accuracy, Code Security, Code Reliability dan Code Maintainability.
1. Code Evaluation Methodology
Metode ini menggunakan dataset HumanEval, yang terdiri dari 164 masalah pemrograman yang setiap masalahnya dilengkapi dengan prompt, the canonical solution, dan unit tests. Kode yang dihasilkan oleh GitHub Copilot, Amazon CodeWhisperer, dan ChatGPT dievaluasi menggunakan Code quality metrics yang mencakup Code Validity, Code Accuracy, Code Security, Code Reliability dan Code Maintainability.
2. Code Evaluation Results
Code Validity
Validitas kode diukur berdasarkan kemampuan tools ini untuk menghasilkan kode yang memenuhi aturan sintaksis tanpa kesalahan runtime. Hasil menunjukkan bahwa:
- GitHub Copilot menghasilkan kode yang valid 91,5% dari waktu.
- Amazon CodeWhisperer valid dalam 90,2% kasus.
- ChatGPT menunjukkan kinerja terbaik dengan tingkat validitas 93,3%.
Code Accuracy
Ketepatan kode diukur dengan seberapa sering kode yang dihasilkan lolos dari unit test yang disediakan. Hasilnya adalah:
- ChatGPT menghasilkan kode yang benar 65,2% dari waktu, yang merupakan skor tertinggi dibandingkan dengan alat lainnya.
- GitHub Copilot menghasilkan kode yang benar 46,3% dari waktu.
- Amazon CodeWhisperer hanya mencapai 31,1%.
Code Security
Code Security diukur menggunakan modul keamanan SonarQube yang mendeteksi kerentanan. Semua alat menunjukkan hasil keamanan yang serupa, dengan tidak ada perbedaan signifikan dalam skor keamanan antara alat-alat ini. Namun, perlu diingat bahwa alat ini masih bisa menghasilkan kode yang mengandung potensi kerentanan, dan pengembang harus tetap melakukan pemeriksaan manual terhadap kode tersebut.
Code Reliability
Code Reliability diukur berdasarkan jumlah bug yang terdeteksi dalam kode yang dihasilkan. Temuan menunjukkan bahwa ChatGPT, GitHub Copilot, dan Amazon CodeWhisperer masing-masing memiliki beberapa bug, dengan GitHub Copilot menunjukkan jumlah bug yang lebih banyak dibandingkan yang lain.
Code Maintainability
Kemudahan maintain kode dievaluasi berdasarkan jumlah "code smells" atau praktik pengkodean yang buruk yang terdeteksi. Hasil menunjukkan:
- GitHub Copilot memiliki rata-rata waktu teknis untuk mengatasi code smells sebesar 9,1 menit.
- Amazon CodeWhisperer memiliki waktu 5,6 menit.
- ChatGPT membutuhkan rata-rata 8,9 menit.
Kesimpulan
Studi ini menunjukkan bahwa kualitas code yang dihasilkan oleh AI-Assisted Code Generation Tools bervariasi tergantung pada tools yang digunakan. ChatGPT cenderung menghasilkan kode dengan ketepatan yang lebih tinggi, sementara Amazon CodeWhisperer lebih unggul dalam Code Maintainability. Meskipun tools ini sangat membantu, developer tetap harus melakukan tinjauan dan pengujian menyeluruh terhadap code yang dihasilkan untuk memastikan bahwa kode tersebut benar, aman, dan efisien.
Jika Anda berminat untuk mempelajari tentang teknologi AI lebih mendalam, silakan mengikuti pelatihan terkait AI bersama SUHU disini :
- Webinar Unlocking the Power of AI: GPT, Whisper and DALL-E
- Pelatihan Data Analysis with Python
- Pelatihan Deep Learning Python
- Pelatihan Data Science with Python
Silakan konsultasikan kebutuhanmu dengan kami, klik link https://bit.ly/kontaksuhu