"Banyak orang pertama-tama membuat kueri tipikal ke sistem dan kemudian mengevaluasi hasilnya," jelas Burchardt. Melalui "pembelajaran penguatan" ini, ChatGPT akhirnya belajar untuk hanya memberikan jawaban terbaik dan paling membantu.
Sebastian Erdweg adalah seseorang  pengembangan perangkat lunak. Dia mengepalai kelompok kerja untuk bahasa pemrograman di Universitas Johannes Gutenberg di Mainz dan bereksperimen mencoba ChatGPT untuk tujuan ini. "Kemungkinan yang ditawarkan oleh AI untuk meningkatkan perangkat lunak sangat relevan," simpulnya. "Namun, dalam kasus ChatGPT, penting untuk memahami bagaimana program berbeda dari teks dalam bahasa manusia." Lagi pula, teks biasanya tidak dapat digunakan persis seperti yang dimuntahkan oleh AI. Namun, teks yang berisi argumen lemah tidak langsung runtuh sepenuhnya, sedangkan program komputer pada akhirnya harus berfungsi dengan benar.
 "Anda bisa membandingkannya dengan resep. Karena mirip dengan program, mereka  menentukan aturan yang tepat. Ada daftar bahan dan instruksi memasak langkah demi langkah - semua keteraturan yang seharusnya memudahkan AI untuk menghasilkan resep berdasarkan preferensi pribadi pengguna. Namun, itu hanya mengoptimalkan masuk akal berdasarkan resep lain yang telah dibuat oleh manusia, sementara kesalahan tertentu hanya terungkap saat mencobanya. "Misalnya, jika instruksinya adalah memotong kentang terlebih dahulu lalu memasaknya utuh, itu kontradiksi yang bermasalah. "Dan karena algoritme ini benar-benar tidak tahu tentang memasak, itu bisa terjadi kapan saja."
Sama tidak cukupnya jika kode program hanya terlihat masuk akal di permukaan. Satu pernyataan yang salah dapat menyebabkan seluruh program batal karena tidak menghasilkan hasil yang berarti. "Dan yang lebih buruk: Sangat sulit untuk menemukan kesalahan ini. Lagi pula, dalam pengembangan perangkat lunak, pemeliharaan kode program pihak ketiga biasanya jauh lebih kompleks daripada pengembangan awal. Dan dengan kode yang dihasilkan secara otomatis, seorang pemrogram dengan sangat cepat menemukan dirinya dalam situasi harus melakukan pemecahan masalah yang membosankan ini.
Namun demikian, fungsionalitas ChatGPT Â mengesankan ilmuwan komputer: "Ini bekerja dengan sangat baik untuk contoh pemrograman sederhana." Namun, ini adalah algoritme standar yang sudah tersedia 1000 kali di Internet dan kemungkinan besar sistemnya telah dilatih secara khusus. . "Namun, jika Anda terus mengkhususkan persyaratan dan semakin bergerak ke arah aplikasi yang realistis, maka semuanya akan runtuh dengan relatif cepat.
Kekuatan khusus ChatGPT adalah kemungkinan untuk tetap berdialog dengan sistem - fungsi yang tidak ada di alat pengembang perangkat lunak Copilot yang agak lama. "Jika Anda membuat program dengan Copilot dan tidak berfungsi dengan baik, satu-satunya pilihan adalah menghapusnya dan memulai dengan permintaan baru. ChatGPT benar-benar membuat saya terkesan dengan kemungkinan mendasar untuk meminta program yang diperbaiki melalui dialog.
Namun, pengembangan AI tampaknya  tidak mencapai tujuannya di bidang ini. Misalnya sebuah dialog di mana dia berulang kali meminta ChatGPT untuk memperbaiki titik kesalahan tertentu dalam kode. "AI kemudian melakukan itu dan menyarankan program baru kepada saya, di mana titik ini benar-benar diperbaiki," lapor peneliti. "Namun, pada saat yang sama ada sesuatu yang pecah di tempat lain." Dan permintaan untuk memperbaiki masalah baru akhirnya menghasilkan semacam penutupan melingkar di mana kerentanan sebelumnya muncul kembali.Â
"Rasanya seperti berbicara dengan balita. Dan beberapa iterasi kemudian, AI, dalam kemampuan dialognya yang sangat dibanggakan, bahkan menghadapkan penggunanya dengan pernyataan palsu, mengklaim  kesalahan telah diperbaiki, meskipun masih ada. "AI oleh karena itu tidak memahami apa yang dilakukannya atau dialog yang dilakukannya. "Jadi, anda harus sangat berhati-hati saat menanganinya."
Ilmuwan komputer melihat satu cara menggunakan ChatGPT secara produktif untuk menulis kode, setidaknya untuk saat ini, untuk membatasi diri pada tujuan yang lebih sederhana dan hanya menggunakan AI untuk tugas-tugas kecil yang terlepas dari perangkat lunak lainnya.Â
Ini dapat dibandingkan dengan outsourcing yang umum dalam pengembangan perangkat lunak, di mana bagian dari perangkat lunak dikembangkan oleh subkontraktor. "Anda tidak pernah tahu pasti apakah suku cadang ini akan berfungsi dengan baik atau apakah persyaratannya telah dipahami dengan benar," kata Erdweg. Dan baik saat melakukan outsourcing maupun saat bekerja dengan kecerdasan buatan, pemrogram yang bertanggung jawab tidak punya pilihan selain mencari kesalahan dengan cermat pada kode yang dikirimkan atau mengujinya sampai akhirnya dia mempercayainya.
Dengan nama Minerva, para peneliti memulai dengan Google's Pathways Language Model (PaLM), yang memiliki 540 miliar parameter dan dilatih pada kumpulan data 780 miliar token . Token bisa berupa kata, angka, atau satuan informasi; dalam kasus PaLM, token diambil dari situs web, buku, dan kode pemrograman. Minerva adalah hasil dari penyempurnaan PaLM pada miliaran token dari makalah ilmiah dan situs web terkait matematika.