Catatan editor: Dengan peluncuran ChatGPT, sejumlah asisten pembuat kode kecerdasan buatan telah muncul di pasar. Kecerdasan buatan generatif sedang panas dan telah merambah ke setiap aspek kehidupan manusia Akankah AI benar-benar menggantikan pemrogram manusia? Bagi pengembang program, bagaimana cara bertahan dan berkembang di dunia ChatGPT? Artikel ini akan membagikan 4 tip untuk membantu pemrogram manusia tetap berada di depan AI generatif. Artikel ini dari terjemahan, semoga bisa menginspirasi Anda.
Sumber gambar: Dihasilkan oleh AI Tak Terbatas
Kecerdasan buatan, terutama AI generatif yang ditenagai oleh model bahasa besar (LLM), berpotensi mengganggu seluruh industri pemrogram. Tetapi beberapa ahli percaya bahwa AI tidak akan menggantikan programmer manusia, setidaknya tidak segera.
"Anda harus khawatir tentang orang yang menggunakan AI untuk menggantikan diri mereka sendiri," kata Tanishq Mathew Abraham, PhD di bidang teknik biomedis di University of California, Davis, dan CEO MedARC, pusat penelitian kecerdasan buatan medis. .
Jadi bagaimana pengembang perangkat lunak dapat membuat diri mereka lebih berharga dan berguna seiring dengan mendekatnya usia pengkodean LLM? Berikut adalah beberapa tips dan trik bagi para pembuat kode untuk bertahan dan berkembang di era kecerdasan buatan generatif.
Mematuhi prinsip dasar dan praktik terbaik
Meskipun banyak asisten pengkodean berbasis AI dapat membantu kita menulis kode dan menghasilkan kode, kemampuan dasar untuk mempelajari pemrograman tetap diperlukan, yaitu kemampuan membaca dan menganalisis kode, serta memahami bagaimana kode yang Anda tulis berlaku untuk sistem besar. . **
"Saya percaya bahwa Kecerdasan Buatan dapat sangat meningkatkan produktivitas pengembang perangkat lunak, tetapi rekayasa perangkat lunak tidak hanya menghasilkan kode, tetapi juga menghasilkan persyaratan pengguna, debugging dan pengujian, dan banyak lagi."
**Salah satu keterampilan pemrograman paling integral tetap menjadi domain pembuat kode manusia: pemecahan masalah. ** Menganalisis masalah dan menemukan solusi yang cocok untuk itu tetap merupakan keterampilan pengkodean yang sangat dihargai.
"Pemrograman memiliki sisi kreatifnya, dan keterampilan dalam pemecahan masalah itu lebih penting daripada bahasa atau alat pemrograman yang sebenarnya. Jangan terjebak dalam perbandingan dengan kecerdasan buatan, yang kurang lebih hanya keluaran statistik dari model bahasa besar Pengembang Ada perbedaan antara apa yang Anda lakukan dan apa yang dihasilkan model Anda, dan sebagai pengembang, ada lebih dari sekadar menulis kode, ”kata Ines Montani, peneliti di Python Software Foundation dan salah satu pendiri dan CEO Explosion.
Selain itu, **praktik rekayasa perangkat lunak yang baik lebih berharga dari sebelumnya. **Praktek ini mencakup desain sistem perencanaan dan arsitektur perangkat lunak, dan pemrogram dapat menggunakan alat kecerdasan buatan untuk memprediksi kode apa yang akan dibutuhkan selanjutnya secara lebih efektif.
"Insinyur Pemrograman harus memikirkan struktur data untuk sepotong kode, abstraksi yang tepat untuk mengatur kode, dan persyaratan untuk antarmuka yang berbeda. Semua ini adalah inti dari praktik rekayasa perangkat lunak, dan mereka tidak akan hilang untuk waktu yang lama untuk datang."
Temukan alat yang sesuai dengan kebutuhan Anda
Menemukan alat AI yang tepat sangatlah penting. Setiap alat memiliki caranya sendiri untuk berinteraksi, dan setiap alat dapat diintegrasikan ke dalam alur kerja pengembangan dengan cara yang berbeda, apakah itu membuat pengujian unit secara otomatis, menghasilkan data pengujian, atau menulis dokumentasi.
Misalnya, GitHub Copilot dan asisten pengkodean AI lainnya dapat meningkatkan kemampuan pengkodean kami dan memberi kami saran pengkodean. ChatGPT dan Google's Bard, sebaliknya, lebih seperti pemrogram AI percakapan yang dapat digunakan untuk menjawab pertanyaan tentang API (antarmuka pemrograman aplikasi) atau menghasilkan cuplikan kode.
**Kuncinya adalah bereksperimen. Cobalah alat AI, kenali cara kerjanya, pertimbangkan kualitas keluarannya, dan tetap berpikiran terbuka terhadap alat AI lainnya. **Abraham berkata: "Bidang kecerdasan buatan berubah dengan cepat. Anda tidak bisa hanya menggunakan alat tertentu selamanya, jadi Anda perlu beradaptasi dengan alat baru dengan cepat."
Juga, pertimbangkan kasus penggunaan yang sesuai. Alat kecerdasan buatan generatif dapat membantu kita mempelajari bahasa pemrograman baru dengan cepat, dan juga dapat membuat prototipe proyek dalam waktu singkat.
Dialog yang jelas dan tepat sangat penting
Saat menggunakan asisten pengkodean AI, uraikan kebutuhan Anda dan anggap itu sebagai proses berulang. Abraham menyarankan untuk menulis komentar yang menjelaskan kode tersebut, sehingga asisten dapat membuat kode yang memenuhi kebutuhan Anda berdasarkan komentar tersebut.
Untuk pemrogram AI percakapan, Anda perlu mengetahui cara terbaik untuk menyiapkan perintah, dan di situlah rekayasa cepat diperlukan.
Abraham menyarankan menggunakan metode mendorong rantai pemikiran. Metode ini sebenarnya melibatkan strategi "bagi dan taklukkan", yaitu, urai masalah menjadi beberapa langkah, lalu selesaikan satu per satu, dan akhirnya selesaikan seluruh masalah. "Meminta model untuk melakukan terlalu banyak hal dalam waktu tertentu dan itu tidak bekerja dengan baik. Yang harus dilakukan adalah mampu memproses potongan informasi yang dapat dikelola dan menghasilkan potongan kode yang dapat dikelola," katanya.
Misalnya, daripada meminta pemrogram AI untuk membuat kode seluruh program dari awal, pikirkan baik-baik tentang semua tugas yang perlu diselesaikan oleh program. **Membagi tugas-tugas ini lebih lanjut mengharuskan model untuk menulis fungsi spesifik untuk setiap tugas, yang mengharuskan model bolak-balik pada langkah-langkah yang perlu diambil untuk mencapai tugas tertentu. **
"Anggap saja sebagai magang cerdas yang memiliki pengetahuan tentang suatu subjek tetapi tidak memiliki banyak pengalaman," kata Abraham.
Ketepatan dan kejelasan tip engineering sangat penting. Abraham menyebutkan: "Anda harus memberi tahu model dengan sangat jelas apa yang Anda inginkan, katakan dengan sangat tepat masalah apa yang Anda minta untuk dipecahkan, dan pastikan Anda menindaklanjutinya."
**Penting juga untuk mempelajari konsep dasar kecerdasan buatan dan pembelajaran mesin, serta memahami cara kerja model bahasa besar serta kekuatan dan kelemahannya. ** Anda harus melakukan riset, tetapi akal sehat sangat penting untuk menilai hasilnya.
Untuk membantu Anda memulai, Abraham merekomendasikan OpenAI Cookbook, yang mencakup bab tentang pustaka dan alat petunjuk, panduan petunjuk, pelajaran video, dan banyak lagi, sementara Weisslingame merekomendasikan membaca Transformer Bergambar untuk mempelajari lebih lanjut tentang dasar-dasar model dan pembelajaran mesin.
Bersikaplah kritis dan waspadai risikonya
Insinyur perangkat lunak harus kritis terhadap keluaran model bahasa besar karena mereka cenderung berhalusinasi dan menghasilkan kode fiktif, tidak akurat, atau bahkan salah. "Membutuhkan kode yang dihasilkan AI dapat dengan mudah mengarah ke jalan buntu, dan sulit untuk menemukan kesalahan yang halus," kata Weisslingame.
"Itulah mengapa sangat penting untuk memeriksa kode yang dihasilkan, yang, sambil menambahkan beberapa pekerjaan, mungkin lebih berbahaya daripada kebaikan untuk produktivitas," kata Weisslingame. Tetapi Abraham berpendapat bahwa "dalam beberapa kasus, memverifikasi kode jauh lebih mudah daripada menulis kode dari awal, dan ini adalah cara yang jauh lebih cepat untuk menghasilkan kode, memvalidasinya, lalu mengintegrasikannya ke dalam basis kode yang sudah ada."
Mari kita menganalisis output dari model ini dan ajukan pertanyaan berikut: **Data apa yang digunakan model ini untuk dilatih? Data mana yang disaring dan data mana yang tidak disertakan? Berapa umur data pelatihan? Versi bahasa pemrograman, paket perangkat lunak, atau pustaka apa yang digunakan model untuk dilatih? Jawaban atas pertanyaan-pertanyaan ini dapat mempengaruhi hasil dan memberikan informasi yang lebih relevan. **
Pengembang juga harus berhati-hati dalam memasukkan kode hak milik ke dalam model ini. Beberapa perusahaan, seperti Tabnine, menawarkan asisten pengkodean bertenaga AI versi perusahaan yang mempelajari pola dan gaya pengkodean perusahaan sambil memberikan privasi.
Hak cipta adalah pertimbangan lain, meskipun jika Anda menggunakan alat ini untuk menyelesaikan beberapa baris kode atau membuat kode untuk tugas-tugas umum dan sepele, masalah hak cipta tidak terlalu menjadi perhatian daripada menghasilkan potongan kode yang besar.
"Programmer harus memiliki kesadaran akan kecerdikan dari apa yang mereka coba lakukan, dan seberapa cocok kecerdikan itu dengan lingkungan mereka," kata Lesama. "Jika kode yang dihasilkan oleh model memiliki orisinalitas, itu harus diperlakukan dengan kecurigaan dan kecurigaan sebelum memasukkannya ke dalam basis kode".
Kekhawatiran yang lebih besar adalah keamanan kode, karena model ini dapat menghasilkan kode yang mengandung kerentanan. Weisslingame percaya bahwa praktik terbaik pengembangan perangkat lunak, seperti tinjauan kode dan alur pengujian yang kuat, dapat membantu mencegah risiko ini.
"Salah satu hal yang dapat dibawa oleh perekayasa perangkat lunak yang lebih berpengalaman adalah kerentanan paling umum dalam kode dan cara paling umum yang membuat kode rentan," kata Lesama. "Mereka akan mengembangkan intuisi tentang ke mana harus mencari, tempat mana akan menimbulkan kewaspadaan. Di masa depan, teknologi semacam itu akan menjadi bagian yang lebih penting dari portofolio rekayasa perangkat lunak. "
Agar pemrogram dapat bertahan di dunia AI generatif, mereka perlu melihat AI sebagai alat dan mengintegrasikannya ke dalam alur kerja mereka, sambil mengenali peluang dan keterbatasan alat tersebut dan mengandalkan kemampuan pengkodean manusia untuk tumbuh dan berkembang.
Penerjemah: Araon_
Lihat Asli
Halaman ini mungkin berisi konten pihak ketiga, yang disediakan untuk tujuan informasi saja (bukan pernyataan/jaminan) dan tidak boleh dianggap sebagai dukungan terhadap pandangannya oleh Gate, atau sebagai nasihat keuangan atau profesional. Lihat Penafian untuk detailnya.
Bagaimana programmer bertahan di dunia ChatGPT?
Sumber: Biro Terjemahan Ilahi
Catatan editor: Dengan peluncuran ChatGPT, sejumlah asisten pembuat kode kecerdasan buatan telah muncul di pasar. Kecerdasan buatan generatif sedang panas dan telah merambah ke setiap aspek kehidupan manusia Akankah AI benar-benar menggantikan pemrogram manusia? Bagi pengembang program, bagaimana cara bertahan dan berkembang di dunia ChatGPT? Artikel ini akan membagikan 4 tip untuk membantu pemrogram manusia tetap berada di depan AI generatif. Artikel ini dari terjemahan, semoga bisa menginspirasi Anda.
Kecerdasan buatan, terutama AI generatif yang ditenagai oleh model bahasa besar (LLM), berpotensi mengganggu seluruh industri pemrogram. Tetapi beberapa ahli percaya bahwa AI tidak akan menggantikan programmer manusia, setidaknya tidak segera.
"Anda harus khawatir tentang orang yang menggunakan AI untuk menggantikan diri mereka sendiri," kata Tanishq Mathew Abraham, PhD di bidang teknik biomedis di University of California, Davis, dan CEO MedARC, pusat penelitian kecerdasan buatan medis. .
Jadi bagaimana pengembang perangkat lunak dapat membuat diri mereka lebih berharga dan berguna seiring dengan mendekatnya usia pengkodean LLM? Berikut adalah beberapa tips dan trik bagi para pembuat kode untuk bertahan dan berkembang di era kecerdasan buatan generatif.
Mematuhi prinsip dasar dan praktik terbaik
Meskipun banyak asisten pengkodean berbasis AI dapat membantu kita menulis kode dan menghasilkan kode, kemampuan dasar untuk mempelajari pemrograman tetap diperlukan, yaitu kemampuan membaca dan menganalisis kode, serta memahami bagaimana kode yang Anda tulis berlaku untuk sistem besar. . **
"Saya percaya bahwa Kecerdasan Buatan dapat sangat meningkatkan produktivitas pengembang perangkat lunak, tetapi rekayasa perangkat lunak tidak hanya menghasilkan kode, tetapi juga menghasilkan persyaratan pengguna, debugging dan pengujian, dan banyak lagi."
**Salah satu keterampilan pemrograman paling integral tetap menjadi domain pembuat kode manusia: pemecahan masalah. ** Menganalisis masalah dan menemukan solusi yang cocok untuk itu tetap merupakan keterampilan pengkodean yang sangat dihargai.
"Pemrograman memiliki sisi kreatifnya, dan keterampilan dalam pemecahan masalah itu lebih penting daripada bahasa atau alat pemrograman yang sebenarnya. Jangan terjebak dalam perbandingan dengan kecerdasan buatan, yang kurang lebih hanya keluaran statistik dari model bahasa besar Pengembang Ada perbedaan antara apa yang Anda lakukan dan apa yang dihasilkan model Anda, dan sebagai pengembang, ada lebih dari sekadar menulis kode, ”kata Ines Montani, peneliti di Python Software Foundation dan salah satu pendiri dan CEO Explosion.
Selain itu, **praktik rekayasa perangkat lunak yang baik lebih berharga dari sebelumnya. **Praktek ini mencakup desain sistem perencanaan dan arsitektur perangkat lunak, dan pemrogram dapat menggunakan alat kecerdasan buatan untuk memprediksi kode apa yang akan dibutuhkan selanjutnya secara lebih efektif.
"Insinyur Pemrograman harus memikirkan struktur data untuk sepotong kode, abstraksi yang tepat untuk mengatur kode, dan persyaratan untuk antarmuka yang berbeda. Semua ini adalah inti dari praktik rekayasa perangkat lunak, dan mereka tidak akan hilang untuk waktu yang lama untuk datang."
Temukan alat yang sesuai dengan kebutuhan Anda
Menemukan alat AI yang tepat sangatlah penting. Setiap alat memiliki caranya sendiri untuk berinteraksi, dan setiap alat dapat diintegrasikan ke dalam alur kerja pengembangan dengan cara yang berbeda, apakah itu membuat pengujian unit secara otomatis, menghasilkan data pengujian, atau menulis dokumentasi.
Misalnya, GitHub Copilot dan asisten pengkodean AI lainnya dapat meningkatkan kemampuan pengkodean kami dan memberi kami saran pengkodean. ChatGPT dan Google's Bard, sebaliknya, lebih seperti pemrogram AI percakapan yang dapat digunakan untuk menjawab pertanyaan tentang API (antarmuka pemrograman aplikasi) atau menghasilkan cuplikan kode.
**Kuncinya adalah bereksperimen. Cobalah alat AI, kenali cara kerjanya, pertimbangkan kualitas keluarannya, dan tetap berpikiran terbuka terhadap alat AI lainnya. **Abraham berkata: "Bidang kecerdasan buatan berubah dengan cepat. Anda tidak bisa hanya menggunakan alat tertentu selamanya, jadi Anda perlu beradaptasi dengan alat baru dengan cepat."
Juga, pertimbangkan kasus penggunaan yang sesuai. Alat kecerdasan buatan generatif dapat membantu kita mempelajari bahasa pemrograman baru dengan cepat, dan juga dapat membuat prototipe proyek dalam waktu singkat.
Dialog yang jelas dan tepat sangat penting
Saat menggunakan asisten pengkodean AI, uraikan kebutuhan Anda dan anggap itu sebagai proses berulang. Abraham menyarankan untuk menulis komentar yang menjelaskan kode tersebut, sehingga asisten dapat membuat kode yang memenuhi kebutuhan Anda berdasarkan komentar tersebut.
Untuk pemrogram AI percakapan, Anda perlu mengetahui cara terbaik untuk menyiapkan perintah, dan di situlah rekayasa cepat diperlukan.
Abraham menyarankan menggunakan metode mendorong rantai pemikiran. Metode ini sebenarnya melibatkan strategi "bagi dan taklukkan", yaitu, urai masalah menjadi beberapa langkah, lalu selesaikan satu per satu, dan akhirnya selesaikan seluruh masalah. "Meminta model untuk melakukan terlalu banyak hal dalam waktu tertentu dan itu tidak bekerja dengan baik. Yang harus dilakukan adalah mampu memproses potongan informasi yang dapat dikelola dan menghasilkan potongan kode yang dapat dikelola," katanya.
Misalnya, daripada meminta pemrogram AI untuk membuat kode seluruh program dari awal, pikirkan baik-baik tentang semua tugas yang perlu diselesaikan oleh program. **Membagi tugas-tugas ini lebih lanjut mengharuskan model untuk menulis fungsi spesifik untuk setiap tugas, yang mengharuskan model bolak-balik pada langkah-langkah yang perlu diambil untuk mencapai tugas tertentu. **
"Anggap saja sebagai magang cerdas yang memiliki pengetahuan tentang suatu subjek tetapi tidak memiliki banyak pengalaman," kata Abraham.
Ketepatan dan kejelasan tip engineering sangat penting. Abraham menyebutkan: "Anda harus memberi tahu model dengan sangat jelas apa yang Anda inginkan, katakan dengan sangat tepat masalah apa yang Anda minta untuk dipecahkan, dan pastikan Anda menindaklanjutinya."
**Penting juga untuk mempelajari konsep dasar kecerdasan buatan dan pembelajaran mesin, serta memahami cara kerja model bahasa besar serta kekuatan dan kelemahannya. ** Anda harus melakukan riset, tetapi akal sehat sangat penting untuk menilai hasilnya.
Untuk membantu Anda memulai, Abraham merekomendasikan OpenAI Cookbook, yang mencakup bab tentang pustaka dan alat petunjuk, panduan petunjuk, pelajaran video, dan banyak lagi, sementara Weisslingame merekomendasikan membaca Transformer Bergambar untuk mempelajari lebih lanjut tentang dasar-dasar model dan pembelajaran mesin.
Bersikaplah kritis dan waspadai risikonya
Insinyur perangkat lunak harus kritis terhadap keluaran model bahasa besar karena mereka cenderung berhalusinasi dan menghasilkan kode fiktif, tidak akurat, atau bahkan salah. "Membutuhkan kode yang dihasilkan AI dapat dengan mudah mengarah ke jalan buntu, dan sulit untuk menemukan kesalahan yang halus," kata Weisslingame.
"Itulah mengapa sangat penting untuk memeriksa kode yang dihasilkan, yang, sambil menambahkan beberapa pekerjaan, mungkin lebih berbahaya daripada kebaikan untuk produktivitas," kata Weisslingame. Tetapi Abraham berpendapat bahwa "dalam beberapa kasus, memverifikasi kode jauh lebih mudah daripada menulis kode dari awal, dan ini adalah cara yang jauh lebih cepat untuk menghasilkan kode, memvalidasinya, lalu mengintegrasikannya ke dalam basis kode yang sudah ada."
Mari kita menganalisis output dari model ini dan ajukan pertanyaan berikut: **Data apa yang digunakan model ini untuk dilatih? Data mana yang disaring dan data mana yang tidak disertakan? Berapa umur data pelatihan? Versi bahasa pemrograman, paket perangkat lunak, atau pustaka apa yang digunakan model untuk dilatih? Jawaban atas pertanyaan-pertanyaan ini dapat mempengaruhi hasil dan memberikan informasi yang lebih relevan. **
Pengembang juga harus berhati-hati dalam memasukkan kode hak milik ke dalam model ini. Beberapa perusahaan, seperti Tabnine, menawarkan asisten pengkodean bertenaga AI versi perusahaan yang mempelajari pola dan gaya pengkodean perusahaan sambil memberikan privasi.
Hak cipta adalah pertimbangan lain, meskipun jika Anda menggunakan alat ini untuk menyelesaikan beberapa baris kode atau membuat kode untuk tugas-tugas umum dan sepele, masalah hak cipta tidak terlalu menjadi perhatian daripada menghasilkan potongan kode yang besar.
"Programmer harus memiliki kesadaran akan kecerdikan dari apa yang mereka coba lakukan, dan seberapa cocok kecerdikan itu dengan lingkungan mereka," kata Lesama. "Jika kode yang dihasilkan oleh model memiliki orisinalitas, itu harus diperlakukan dengan kecurigaan dan kecurigaan sebelum memasukkannya ke dalam basis kode".
Kekhawatiran yang lebih besar adalah keamanan kode, karena model ini dapat menghasilkan kode yang mengandung kerentanan. Weisslingame percaya bahwa praktik terbaik pengembangan perangkat lunak, seperti tinjauan kode dan alur pengujian yang kuat, dapat membantu mencegah risiko ini.
"Salah satu hal yang dapat dibawa oleh perekayasa perangkat lunak yang lebih berpengalaman adalah kerentanan paling umum dalam kode dan cara paling umum yang membuat kode rentan," kata Lesama. "Mereka akan mengembangkan intuisi tentang ke mana harus mencari, tempat mana akan menimbulkan kewaspadaan. Di masa depan, teknologi semacam itu akan menjadi bagian yang lebih penting dari portofolio rekayasa perangkat lunak. "
Agar pemrogram dapat bertahan di dunia AI generatif, mereka perlu melihat AI sebagai alat dan mengintegrasikannya ke dalam alur kerja mereka, sambil mengenali peluang dan keterbatasan alat tersebut dan mengandalkan kemampuan pengkodean manusia untuk tumbuh dan berkembang.
Penerjemah: Araon_