Proses inferensi ketika model menjawab pertanyaan di Chat GPT?
Proses inferensi dalam model seperti GPT ketika menjawab pertanyaan melibatkan beberapa langkah teknis di mana model mengambil input (pertanyaan) dan menghasilkan output (jawaban). Berikut adalah langkah-langkah proses inferensi:
1. Penerimaan Input (Pertanyaan)
- Tokenisasi:
Pertama, pertanyaan yang diajukan oleh pengguna diubah menjadi format yang
dapat diproses oleh model. Teks pertanyaan dipecah menjadi token, yang
merupakan representasi numerik dari kata, sub-kata, atau karakter.
Contoh: Misalkan pertanyaannya adalah "What is
AI?" maka akan diubah menjadi urutan token seperti [tok1, tok2, tok3].
- Input
Embedding: Token yang dihasilkan kemudian dikonversi menjadi vektor
embedding. Vektor embedding adalah representasi numerik yang mengandung
informasi semantik tentang kata-kata dalam pertanyaan.
2. Proses Forward Pass
- Positional
Encoding: Karena model Transformer tidak memiliki pengertian tentang
urutan data secara alami, informasi tentang posisi setiap token dalam
urutan (seperti kata pertama, kedua, dll.) ditambahkan ke embedding.
- Self-Attention
Mechanism: Selama self-attention, setiap token
"memperhatikan" token lain dalam urutan untuk memahami
konteksnya. Ini berarti model mengevaluasi pentingnya setiap token dalam
hubungan dengan token lainnya di dalam pertanyaan.
- Query,
Key, dan Value Vectors: Untuk setiap token, model menghitung vektor
query, key, dan value yang digunakan untuk menentukan bagaimana setiap
token mempengaruhi token lainnya.
- Attention
Scores: Model menghitung skor perhatian untuk menentukan relevansi
antara setiap pasangan token.
- Weighted
Sum: Menggunakan skor perhatian, model menghitung sum berimbang dari
value vectors untuk setiap token, menghasilkan representasi kontekstual
dari token tersebut.
- Feed-Forward
Neural Network (FFN): Hasil dari self-attention diteruskan melalui
jaringan saraf feed-forward, yang kemudian menghasilkan output yang lebih
kaya untuk setiap token.
- Residual
Connections dan Layer Normalization: Hasil dari setiap lapisan
ditambahkan kembali ke input awal lapisan tersebut (residual connection)
dan dinormalisasi, membantu stabilitas pelatihan dan inferensi.
3. Output Generasi (Jawaban)
- Decoder
(Jika Diperlukan): Pada model seperti GPT yang berbasis
auto-regressive, jawaban dihasilkan token demi token. Setiap token
dihasilkan berdasarkan konteks token sebelumnya dan input pertanyaan.
- Token
Prediction: Model memprediksi token berikutnya dalam jawaban
berdasarkan urutan input dan token yang sudah dihasilkan sebelumnya.
- Logits
Calculation: Model menghasilkan logits, yang merupakan vektor skor
untuk setiap kemungkinan token berikutnya.
- Softmax:
Skor logits ini dilewatkan melalui fungsi softmax untuk menghasilkan
probabilitas distribusi atas semua token dalam vocabulary.
- Token
Selection: Berdasarkan distribusi probabilitas, token dengan
probabilitas tertinggi dipilih sebagai token berikutnya.
- Iterative
Process: Proses ini berulang sampai model mencapai token akhir atau
batas panjang jawaban yang telah ditentukan.
4. Pembuatan Jawaban Akhir
- Detokenisasi:
Token-token yang dihasilkan digabungkan dan dikonversi kembali menjadi
teks yang dapat dibaca oleh manusia, membentuk jawaban akhir.
Contoh: Jika token yang dihasilkan adalah [tokA, tokB, tokC],
maka akan dikonversi kembali menjadi jawaban seperti "Artificial
Intelligence is...".
5. Output dan Pengiriman Jawaban
- Final
Output: Jawaban akhir dikirimkan kembali ke pengguna sebagai hasil
dari inferensi. Jawaban ini merupakan hasil dari proses kompleks di mana
model mempertimbangkan konteks pertanyaan dan menggunakan informasi yang
telah dipelajarinya selama pelatihan untuk menghasilkan respon yang
relevan.
6. Optimisasi Selama Inferensi
- Beam
Search (Jika Diperlukan): Alih-alih hanya memilih token dengan
probabilitas tertinggi pada setiap langkah, model dapat menggunakan teknik
beam search untuk mempertimbangkan beberapa kemungkinan jalur jawaban dan
memilih jalur yang paling menjanjikan secara keseluruhan.
- Temperature
and Top-k Sampling: Pengaturan temperature dapat digunakan untuk
mengontrol diversitas jawaban, sementara top-k sampling membatasi prediksi
hanya pada beberapa token teratas, menghindari token dengan probabilitas
sangat rendah.
7. Feedback Loop (Jika Diperlukan)
- Dalam
beberapa aplikasi, ada kemungkinan feedback loop di mana jawaban yang
dihasilkan diperiksa, dan jika ada ketidaksesuaian, model mungkin
dipanggil kembali dengan pertanyaan yang sedikit dimodifikasi atau dengan
petunjuk tambahan untuk menghasilkan jawaban yang lebih baik.
Dengan proses ini, model GPT mampu menjawab pertanyaan
dengan mempertimbangkan konteks penuh dari input, menghasilkan jawaban yang
relevan dan informatif. Proses inferensi ini terjadi dalam hitungan milidetik,
memungkinkan interaksi real-time antara pengguna dan model.