Bagaimana cara kerja ChatGPT sebenarnya?
ChatGPT adalah chatbot yang didasarkan pada model bahasa yang besar (baik GPT-3.5 atau GPT-4). Di baliknya, ChatGPT adalah jaringan saraf tiruan yang telah terlatih yang telah dilatih dengan sejumlah besar data teks yang tersedia untuk umum dari internet.
Jumlah data yang sangat besar ini memungkinkan model untuk mempelajari pola, tata bahasa, konteks, dan bahkan beberapa pengetahuan umum, sehingga memungkinkannya untuk menghasilkan respons yang bermakna dan koheren terhadap pertanyaan pengguna. ChatGPT memiliki kemampuan unik untuk terlibat dalam percakapan interaktif dan dinamis dengan pengguna, menjadikannya alat yang menjanjikan untuk berbagai aplikasi.
Apa itu Model Bahasa Besar
Model bahasa besar adalah algoritme AI yang menggunakan teknik pembelajaran mendalam yang dikenal sebagai pemrosesan bahasa alami untuk membaca, memahami, menghasilkan, dan memprediksi teks.
Ketika Anda mengetikkan pertanyaan, model ini tidak mencari jawabannya di Internet, melainkan langsung memberikan jawabannya di luar kepala (meskipun ia tidak memiliki kepala). Model ini menghasilkan respons satu kata per satu kata, menentukan setiap kata berikutnya berdasarkan probabilitas yang berasal dari data teks yang dilatih dan teks yang telah dihasilkan sejauh ini.
11 miliar parameter: menjawab pertanyaan, aritmatika, pemahaman bahasa
Bagaimana itu mungkin? Nah, ChatGPT tidak perlu mencari informasi di Internet, karena ia sudah mengetahui segalanya (hampir). Semua pengetahuan yang tersedia di Internet dimasukkan ke dalam ChatGPT melalui 175 miliar parameternya.
62 miliar parameter: terjemahan, penalaran akal sehat, penyelesaian kode
Seiring dengan bertambahnya jumlah parameter model, kemampuan baru muncul dalam model yang tidak sengaja dirancang oleh siapa pun.
540 miliar parameter: rantai inferensi logis, pengenalan pola, pemahaman bacaan
Bagaimana ChatGPT dilatih
ChatGPT telah dilatih pada ratusan ribu buku, artikel, dialog, termasuk:
- WebText2 (perpustakaan besar yang berisi lebih dari 45 terabyte data teks)
- Cornell Movie Dialogs Corpus (kumpulan data yang berisi lebih dari 200.000 percakapan antara 10.000 karakter film dalam skrip film)
- Korpus Dialog Ubuntu (kumpulan 1.000.000 dialog multi-balik antara pengguna Ubuntu dan tim dukungan komunitas)
- miliaran baris kode dari GitHub
Pertama, GPT diizinkan untuk memproses semua data yang dapat diaksesnya tanpa bimbingan manusia, sehingga memungkinkannya untuk secara mandiri memahami peraturan dan koneksi yang mendikte ranah teks (itulah yang disebut "pembelajaran tanpa pengawasan").
Kemudian, untuk menyempurnakan model bahasa, sebuah teknik yang disebut pembelajaran penguatan dengan umpan balik manusia (RLHF) diterapkan:
- Pelatih AI manusia melakukan percakapan di mana mereka berperan sebagai pengguna dan asisten AI. Mereka memiliki akses ke saran yang ditulis oleh model untuk membantu menyusun tanggapan. Model ini dilatih menggunakan penyempurnaan yang diawasi untuk memprediksi pesan asisten berikutnya berdasarkan riwayat dialog.
- Untuk membuat model penghargaan untuk pembelajaran penguatan, data perbandingan dikumpulkan. Pelatih AI memberi peringkat pada beberapa respons model berdasarkan kualitas, dengan mempertimbangkan hal-hal seperti apakah respons tersebut masuk akal dan apakah respons tersebut membantu. Tanggapan yang dipilih menjadi kumpulan data dialog dengan pesan-pesan yang ditulis oleh model baru.
- Model hadiah dibuat menggunakan teknik yang disebut pemodelan hadiah, di mana model dilatih untuk memprediksi kualitas respons berdasarkan data perbandingan yang dikumpulkan pada langkah sebelumnya.
Pada akhirnya, ChatGPT telah belajar bagaimana merespons dalam situasi apa pun, memberikan jawaban yang tepat dan relevan, dan menghindari topik yang berpotensi membahayakan.
Arsitektur Transformer
Proses pelatihan ChatGPT melibatkan prediksi kata berikutnya dalam sebuah kalimat berdasarkan kata-kata sebelumnya. Untuk mencapai hal ini, arsitektur Transformer digunakan (ngomong-ngomong, T dalam ChatGPT adalah singkatan dari Transformer), yang terdiri dari beberapa lapisan mekanisme perhatian diri. Self-attention memungkinkan model untuk menimbang kata-kata yang berbeda dalam sebuah kalimat berdasarkan kepentingan dan relevansinya untuk memprediksi kata berikutnya secara akurat.
Jaringan saraf tiruan (JST) yang lebih tua membaca teks dari kiri ke kanan. Meskipun hal ini bekerja dengan baik ketika kata-kata yang terkait berdekatan, namun menjadi sulit ketika kata-kata tersebut berada di ujung kalimat yang berlawanan.
Oleh karena itu, apabila RNN bekerja dengan teks satu halaman, pada pertengahan paragraf ketiga, RNN sudah "melupakan" apa yang ada di bagian awal.
Sebaliknya, transformer mampu memproses setiap kata dalam kalimat secara simultan dan membandingkan setiap kata dengan kata lainnya. Hal ini memungkinkan mereka untuk memfokuskan "perhatian" mereka pada kata-kata yang paling relevan, terlepas dari posisinya dalam urutan input.
Tokenisasi
Penting untuk dicatat bahwa transformer tidak beroperasi pada kata-kata individual (mereka tidak dapat membaca seperti manusia). Sebaliknya, teks input dipecah menjadi token-token individual, termasuk kata-kata, tanda baca, dan token-token khusus. Token dalam ChatGPT adalah potongan teks yang direpresentasikan sebagai vektor (angka dengan arah dan posisi).
Kedekatan token-vektor dalam ruang menentukan tingkat asosiasi mereka: semakin dekat mereka, semakin terkait mereka. Lebih jauh lagi, perhatian dikodekan sebagai vektor, sehingga memungkinkan jaringan syaraf berbasis transformator untuk mempertahankan informasi penting dari bagian paragraf sebelumnya.
Ketika pengguna berinteraksi dengan ChatGPT, model menerima riwayat percakapan sebagai input, termasuk permintaan pengguna dan respons yang dihasilkan model. Masukan tersebut diberi token dan kemudian dimasukkan ke dalam jaringan saraf. Setiap token dikaitkan dengan sebuah embedding yang merepresentasikan maknanya dalam konteks percakapan.
GPT-3 dilatih dengan sekitar 500 miliar token, yang memungkinkan model bahasanya untuk lebih mudah memberikan makna dan memprediksi teks lanjutan yang masuk akal dengan memetakannya dalam ruang vektor. Banyak kata yang dipetakan ke dalam satu token, meskipun kata-kata yang lebih panjang atau lebih kompleks sering kali dipecah menjadi beberapa token. Rata-rata, token memiliki panjang sekitar empat karakter.
Selama tahap inferensi, di mana model menghasilkan respons, sebuah proses yang dikenal sebagai autoregresi digunakan. Ini berarti bahwa model memprediksi satu kata pada satu waktu sambil mengkondisikan riwayat percakapan dan kata-kata yang dihasilkan sebelumnya. Untuk memastikan respons yang dihasilkan koheren dan relevan, teknik seperti top-p sampling dan penskalaan suhu digunakan.
Singkatnya, parameter top-p memberikan model sebuah kumpulan opsi (token) untuk dipilih, sementara suhu menentukan probabilitas untuk memilih token tertentu. Ketika suhu diatur ke 0, model hanya akan memilih token yang paling "populer" (kata-kata yang paling sering ditemukan bersama dalam data teks yang dilatih ChatGPT):
Itu tidak selalu bagus. Temperatur yang lebih tinggi membuat hasil lebih beragam:
Lebih lanjut tentang parameter ChatGPT: