Cara menggunakan ChatGPT untuk menulis kode

gambar1.pngSalah satu penemuan yang lebih menarik tentang ChatGPT adalah ia dapat menulis kode yang cukup bagus. Saya menguji ini pada bulan Februari ketika saya memintanya untuk menulis plugin WordPress yang dapat digunakan istri saya di situs webnya. Itu melakukan pekerjaan dengan baik, tetapi itu adalah proyek yang sangat sederhana.

Cara menggunakan ChatGPT untuk menulis: Resume| rumus excel | Esai | Surat pengantar

Bagaimana Anda dapat menggunakan ChatGPT untuk menulis kode sebagai bagian dari praktik pengkodean harian Anda? Itulah yang akan kita jelajahi di sini.

Jenis pengkodean apa yang dapat dilakukan ChatGPT dengan baik?

Ada dua fakta penting tentang ChatGPT dan pengkodean. Yang pertama adalah bahwa ia sebenarnya dapat menulis kode yang berguna. Yang kedua adalah ia bisa tersesat sama sekali, jatuh ke lubang kelinci, mengejar ekornya sendiri, dan menghasilkan sampah yang benar-benar tidak dapat digunakan.

Saya menemukan ini dengan cara yang sulit. Setelah saya menyelesaikan plugin WordPress, saya memutuskan untuk melihat sejauh mana kemampuan ChatGPT. Saya menulis permintaan yang sangat hati-hati untuk aplikasi Mac, termasuk deskripsi mendetail tentang elemen antarmuka pengguna, interaksi, apa yang akan disediakan di pengaturan, cara kerjanya, dan sebagainya. Lalu saya memasukkannya ke ChatGPT.

ChatGPT merespons dengan banjir teks dan kode. Kemudian berhenti mid-code. Ketika saya memintanya untuk melanjutkan, itu memuntahkan lebih banyak kode dan teks. Saya meminta melanjutkan setelah melanjutkan dan membuang lebih banyak kode. Tapi ... tidak ada yang bisa digunakan . Itu tidak mengidentifikasi ke mana kode harus pergi, bagaimana membangun proyek, dan - ketika saya melihat dengan hati-hati pada kode yang dihasilkan - itu meninggalkan operasi besar yang saya minta, meninggalkan deskripsi teks sederhana yang menyatakan "logika program berjalan di sini. "

Setelah serangkaian tes berulang, menjadi jelas bagi saya bahwa jika Anda meminta ChatGPT untuk mengirimkan aplikasi lengkap, itu akan gagal. Akibat wajar dari pengamatan ini adalah bahwa jika Anda tidak tahu apa-apa tentang pengkodean dan ingin ChatGPT membuatkan sesuatu untuk Anda, itu akan gagal.

Di mana ChatGPT berhasil -- dan melakukannya dengan sangat baik -- adalah dalam membantu seseorang yang sudah mengetahui cara membuat kode untuk membuat rutinitas tertentu dan menyelesaikan tugas tertentu. Jangan meminta aplikasi yang berjalan di bilah menu. Tetapi jika Anda meminta rutin ChatGPT untuk meletakkan menu di bilah menu, lalu menempelkannya ke proyek Anda, itu akan berjalan dengan baik.

Juga: Cara menggunakan ChatGPT untuk membuat aplikasi

Selain itu, perlu diingat bahwa meskipun ChatGPT tampaknya memiliki pengetahuan khusus domain yang sangat banyak (dan sering kali demikian), ia tidak memiliki kebijaksanaan . Dengan demikian, mungkin dapat menulis kode, tetapi tidak akan dapat menulis kode yang berisi nuansa untuk masalah yang sangat spesifik atau kompleks yang memerlukan pengalaman mendalam untuk memahaminya.

Gunakan ChatGPT untuk mendemonstrasikan teknik, menulis algoritme kecil, dan membuat subrutin. Anda bahkan bisa mendapatkan ChatGPT untuk membantu Anda memecah proyek yang lebih besar menjadi potongan-potongan, dan kemudian Anda dapat memintanya untuk membantu Anda mengkodekan potongan-potongan itu.

Jadi, dengan mengingat hal itu, mari kita lihat beberapa langkah khusus tentang cara menggunakan ChatGPT untuk menulis kode.

Bagaimana ChatGPT dapat membantu Anda menulis kode

1. Persempit dan pertajam permintaan Anda

Langkah pertama ini adalah memutuskan apa yang akan Anda tanyakan tentang ChatGPT -- tetapi belum menanyakan apa pun. Putuskan apa yang Anda ingin fungsi atau rutinitas Anda lakukan, atau apa yang ingin Anda pelajari untuk dimasukkan ke dalam kode Anda. Tentukan parameter yang akan Anda masukkan ke dalam kode Anda dan apa yang ingin Anda dapatkan. Dan kemudian lihat bagaimana Anda akan menggambarkannya.

Bayangkan Anda membayar programmer manusia untuk melakukan ini. Apakah Anda memberi orang itu informasi yang cukup untuk dapat mengerjakan tugas Anda? Atau apakah Anda terlalu kabur dan orang yang Anda bayar lebih cenderung mengajukan pertanyaan atau menyerahkan sesuatu yang sama sekali tidak berhubungan dengan apa yang Anda inginkan?

Ini sebuah contoh. Katakanlah saya ingin dapat meringkas halaman web apa pun. Saya ingin memberi makan sesuatu seperti artikel ini dan mendapatkan kembali ringkasan singkat yang dipertimbangkan dengan baik dan sesuai. Sebagai masukan saya, saya akan menentukan URL halaman web. Sebagai keluaran saya, ini adalah blok teks dengan ringkasan.

2. Gunakan ChatGPT untuk menjelajahi perpustakaan dan sumber daya

Melanjutkan contoh di atas, cara lama untuk mengekstrak data halaman web adalah menemukan teks di antara tag paragraf HTML.

Namun dengan munculnya alat AI, lebih masuk akal untuk menggunakan pustaka AI untuk melakukan ekstrak dan ringkasan cerdas. Salah satu keunggulan ChatGPT (dan ini juga area yang dapat Anda verifikasi dengan mudah untuk menghindari pola perilaku otoritatif tapi salah) adalah menemukan pustaka dan sumber daya.

OpenAI (pembuat ChatGPT) menjual akses API ke mesin GPT-3 dan GPT-4 yang akan melakukan apa yang kita inginkan. Namun dalam kasus contoh ini, anggaplah kita tidak ingin membayar biaya transaksi.

Jadi mari kita lihat interaksi dengan ChatGPT untuk mengetahui cara menggunakan alat semacam itu, gratis, dengan proyek yang berjalan di PHP.

Saya mulai dengan prompt yang dirancang untuk memperoleh informasi tentang perpustakaan apa yang akan menyediakan fungsionalitas yang saya inginkan. Pustaka (bagi Anda yang bukan programmer) adalah kumpulan kode yang dapat diakses oleh programmer yang melakukan banyak pekerjaan berat untuk tujuan tertentu. Sebagian besar pemrograman modern adalah menemukan dan memilih perpustakaan yang tepat. Jadi ini adalah titik awal yang baik.

Dalam hal ini, saya sedang melihat blok kode yang ditulis oleh orang lain yang akan meringkas teks. Inilah prompt pertama saya:

Jelaskan sepuluh perpustakaan AI sumber terbuka yang berbeda (dan bahasa yang digunakannya) yang dapat saya gunakan untuk membuat ringkasan konten inti utama dari halaman web mana pun, mengabaikan iklan atau materi yang disematkan.

Ini memberi saya apa yang saya inginkan, termasuk menyebutkan penawaran OpenAI. Saya pikir OpenAI akan berhasil di sini, tetapi untuk proyek hipotetis ini, saya tidak ingin menganggarkan biaya API. Jadi saya akan mempersempit pertanyaannya.

Apakah semua ini gratis?

ChatGPT melindungi taruhannya dengan jawabannya. Inilah yang tertulis: "Ya, kesepuluh perpustakaan AI ini adalah open source dan gratis untuk digunakan. Namun, beberapa di antaranya mungkin memiliki batas penggunaan atau memerlukan pembayaran untuk mengakses fitur atau sumber daya tambahan." Jadi, berdasarkan itu, saya mengklarifikasi pertanyaan saya.

Pustaka mana yang tidak memiliki batas penggunaan dan tidak memerlukan pembayaran atau lisensi tambahan?

Perhatikan bagaimana ini adalah percakapan yang sangat banyak. Saya tidak perlu menanyakan kembali pertanyaan asalnya. Saya hanya menelusuri dengan cara yang sama seperti jika saya memiliki seorang ahli dan sedang mencari klarifikasi. Dalam hal ini, ChatGPT memberi saya delapan pilihan perpustakaan, tetapi tidak satupun dari mereka menyebutkan bahasa PHP yang saya rencanakan untuk dikodekan. Jadi, inilah petunjuk selanjutnya:

Dari 8 library tersebut, dapatkah saya menggunakan salah satunya dengan PHP?

Itu mengembalikan tiga perpustakaan, tetapi saya tidak yakin tentang apa yang masing-masing lakukan. Jadi pertanyaan lain:

Apa perbedaan antara Sumy, Gensim, dan NLTK?

Saya masih tidak yakin, jadi saya mengklarifikasi rencana penggunaan saya dan kemudian bertanya:

Jika saya ingin membuat ringkasan artikel berita halaman web, pustaka mana yang akan bekerja lebih baik?

Jawaban yang saya dapatkan jelas dan menjanjikan: "Sumy dirancang khusus untuk peringkasan teks, yaitu tugas membuat ringkasan yang menangkap informasi terpenting dari sebuah teks." Jadi, sekarang saatnya untuk melihat apa yang terlibat dalam penggunaannya dengan PHP. Saya menanyakan pertanyaan terakhir saya untuk bagian proyek ini:

Bisakah Anda menjelaskan cara menggunakan Sumy dari PHP?

Jangan ragu untuk bermain bersama di komputer Anda dan tempel petunjuk ini ke dalam instans ChatGPT Anda. Perhatikan bahwa, pada langkah 1, saya memutuskan modul program apa yang akan saya bantu. Kemudian, pada langkah ini, saya melakukan percakapan dengan ChatGPT untuk memutuskan perpustakaan apa yang akan digunakan dan bagaimana mengintegrasikannya ke dalam proyek saya.

Itu mungkin tidak tampak seperti pemrograman, tapi saya jamin itu. Pemrograman bukan hanya meledakkan baris kode ke halaman. Pemrograman adalah mencari tahu bagaimana mengintegrasikan semua sumber daya dan sistem bersama-sama, dan bagaimana berbicara dengan semua komponen solusi Anda. Di sini, ChatGPT membantu saya melakukan analisis integrasi tersebut.

Omong-omong, saya penasaran apakah Google Bard bisa membantu dengan cara yang sama. Bard sebenarnya tidak bisa menulis kode, tetapi itu memberikan beberapa wawasan tambahan tentang aspek perencanaan pemrograman atas respons ChatGPT. Jadi jangan ragu untuk menggunakan beberapa alat untuk melakukan triangulasi pada jawaban yang Anda inginkan. Inilah ceritanya: Bard vs. ChatGPT: Bisakah Bard membantu Anda membuat kode? Sejak saya menulis artikel itu, Google menambahkan beberapa kemampuan pengkodean ke Bard, tetapi tidak terlalu bagus. Anda dapat membacanya di sini: Saya menguji keterampilan pengkodean baru Google Bard. Itu tidak berjalan dengan baik.

Coding berikutnya.

3. Minta ChatGPT untuk menulis kode contoh

Oke, mari kita jeda di sini. Artikel ini berjudul "Cara menggunakan ChatGPT untuk menulis kode." Dan itu akan terjadi! Tapi kami benar-benar meminta ChatGPT untuk menulis kode contoh . Tunggu. Apa?

Juga: Apa itu GPT-4? Ini semua yang perlu Anda ketahui

Mari kita perjelas. Kecuali jika Anda menulis fungsi yang sangat kecil (seperti penyortir garis/pengacak yang ditulis ChatGPT untuk istri saya), ChatGPT tidak akan dapat menulis kode akhir Anda. Pertama, Anda harus memeliharanya. ChatGPT sangat buruk dalam memodifikasi kode yang sudah ditulis. Mengerikan, seperti, itu tidak berhasil. Jadi untuk mendapatkan kode baru, Anda harus meminta ChatGPT untuk membuat sesuatu yang baru. Seperti yang saya temukan sebelumnya, meskipun prompt Anda hampir identik, ChatGPT dapat mengubah apa yang diberikannya kepada Anda dengan cara yang sangat tidak terduga.

Jadi, intinya: ChatGPT tidak dapat mempertahankan kode Anda, atau bahkan men-tweaknya.

Artinya, Anda harus melakukannya sendiri. Seperti yang kita ketahui, draf pertama dari sebuah kode jarang menjadi kode akhir. Jadi, bahkan jika Anda mengharapkan ChatGPT untuk menghasilkan kode akhir, itu benar-benar akan menjadi titik awal, di mana Anda harus menyelesaikannya, mengintegrasikannya ke dalam proyek Anda yang lebih besar, mengujinya, menyempurnakannya, men-debugnya, dan sebagainya. .

Juga: Saya meminta ChatGPT untuk menulis episode pendek Star Trek. Itu benar-benar berhasil

Tapi itu tidak berarti kode contoh tidak berharga. Jauh dari itu. Mari kita lihat prompt yang saya tulis berdasarkan proyek yang saya jelaskan sebelumnya. Inilah bagian pertama:

Lihat fungsi PHP yang disebut sumpit_artikel.

Sebagai masukan, ringkasan_artikel akan diteruskan URL ke artikel di situs terkait berita seperti ZDNET.com atau Reuters.com.

Saya memberi tahu ChatGPT bahasa pemrograman yang harus digunakan. Saya juga memberi tahu masukannya tetapi, saat melakukannya, berikan dua situs sebagai contoh untuk membantu ChatGPT memahami gaya artikel. Sejujurnya, saya tidak yakin ChatGPT tidak mengabaikan panduan itu. Selanjutnya, saya akan memberi tahu cara melakukan sebagian besar pekerjaan:

Di dalam ringkasan_artikel, ambil konten halaman web di URL yang disediakan. Menggunakan perpustakaan Sumy dari dalam PHP dan perpustakaan lain yang diperlukan, ekstrak bagian utama artikel, abaikan iklan atau materi yang disematkan, dan rangkum menjadi sekitar 50 kata. Pastikan ringkasan terdiri dari kalimat lengkap. Anda dapat melanjutkan di atas 50 kata untuk menyelesaikan kalimat terakhir, jika perlu.

Ini sangat mirip dengan cara saya menginstruksikan seorang karyawan. Saya ingin orang itu tahu bahwa mereka tidak hanya terbatas pada Sumy. Jika mereka membutuhkan alat lain, saya ingin mereka menggunakannya.

Saya juga menentukan perkiraan jumlah kata untuk membuat batasan untuk apa yang saya inginkan sebagai ringkasan. Versi rutin yang lebih baru mungkin menggunakan angka itu sebagai parameter. Saya kemudian mengakhiri dengan mengatakan apa yang saya inginkan sebagai hasilnya:

Setelah pemrosesan selesai, kode sumpit_artikel sehingga mengembalikan ringkasan dalam teks biasa.

Kode yang dihasilkan cukup sederhana. ChatGPT memang memanggil perpustakaan lain (Goose) untuk mengambil konten artikel. Itu kemudian meneruskannya ke Summy dengan batas 50 kata, dan kemudian mengembalikan hasilnya. Itu dia. Tapi begitu dasar-dasarnya ditulis, itu hanya masalah pemrograman untuk kembali dan menambahkan tweak, menyesuaikan apa yang diteruskan ke dua perpustakaan, dan memberikan hasilnya.image2.png

Satu catatan menarik. ChatGPT membuat contoh panggilan ke rutinitas yang ditulisnya, menggunakan URL setelah tahun 2021 (saat kumpulan data ChatGPT berakhir).

Saya memeriksa URL itu di situs Reuters dan Wayback Machine, dan ternyata tidak ada. ChatGPT baru saja mengada-ada.

FAQ

Apakah ChatGPT menggantikan pemrogram?

Tidak sekarang -- atau, setidaknya -- belum. Program ChatGPT pada tingkat siswa pemrograman tahun pertama yang berbakat, tetapi malas (seperti siswa tahun pertama itu). Ini mungkin mengurangi kebutuhan akan pemrogram tingkat pemula, tetapi pada tingkat saat ini, saya pikir ini hanya akan membuat hidup lebih mudah bagi pemrogram tingkat pemula (dan bahkan pemrogram dengan lebih banyak pengalaman) untuk menulis kode dan mencari informasi. Ini benar-benar menghemat waktu, tetapi ada beberapa proyek pemrograman yang dapat dilakukan sendiri -- setidaknya sekarang. Di tahun 2030? Siapa tahu.

Bagaimana cara mendapatkan jawaban pengkodean di ChatGPT?

Tanyakan saja. Anda lihat di atas bagaimana saya menggunakan dialog diskusi interaktif untuk mempersempit jawaban yang saya inginkan. Saat Anda bekerja dengan ChatGPT, jangan berharap satu pertanyaan secara ajaib melakukan semua pekerjaan untuk Anda. Tetapi gunakan ChatGPT sebagai pembantu dan sumber daya, dan itu akan memberi Anda banyak informasi yang sangat membantu. Tentu saja, uji informasi itu -- karena, seperti yang dikatakan John Schulman, salah satu pendiri OpenAI, "Perhatian terbesar kami adalah seputar faktualitas, karena modelnya suka membuat sesuatu."

Jika saya menggunakan ChatGPT untuk menulis kode saya, siapa pemiliknya?

Ternyata, belum banyak kasus hukum yang secara definitif menjawab pertanyaan ini. AS, Kanada, dan Inggris mewajibkan sesuatu yang memiliki hak cipta dibuat oleh tangan manusia, jadi kode yang dihasilkan oleh alat AI mungkin tidak dapat dilindungi hak cipta. Ada juga masalah tanggung jawab berdasarkan asal kode pelatihan dan bagaimana kode yang dihasilkan digunakan. ZDNET mendalami topik ini, berbicara dengan pakar hukum, dan menghasilkan tiga artikel berikut. Jika Anda khawatir tentang masalah ini (dan jika Anda menggunakan AI untuk membantu dengan kode, Anda seharusnya), saya sarankan Anda membaca mereka.

  • Siapa pemilik kode itu? Jika AI ChatGPT membantu menulis aplikasi Anda, apakah itu masih milik Anda?
  • Jika Anda menggunakan kode yang dihasilkan AI, apa paparan kewajiban Anda?
  • Pertanyaan pelik: Siapa yang memiliki kode, gambar, dan narasi yang dihasilkan oleh AI?

Bahasa pemrograman apa yang diketahui ChatGPT?

Kebanyakan dari mereka. Saya menjadi sangat teralihkan mencoba ini. Saya menguji bahasa modern yang umum, seperti PHP, Python, Java, Kotlin, Swift, C#, dan lainnya. Tapi kemudian saya memintanya menulis kode dalam bahasa zaman kegelapan yang tidak jelas seperti COBOL, Fortran, Forth, LISP, ALGOL, RPG (generator program laporan, bukan permainan peran), dan bahkan bahasa rakitan IBM/360.

Sebagai lapisan gula pada kue, saya memberikan prompt ini:

Tulis urutan yang menampilkan 'Halo, dunia' dalam lampu berkedip ascii di panel depan PDP 8/e

PDP 8/e adalah komputer pertama saya, dan ChatGPT benar-benar memberi saya instruksi untuk mengaktifkan program menggunakan sakelar panel depan. Saya terkesan, gembira, dan sedikit takut.

Apa intinya? ChatGPT bisa menjadi alat yang sangat membantu. Hanya saja, jangan menganggap kekuatan super untuk itu. Belum.

Buka kekuatan AI dengan HIX.AI!