Jendela konteks (atau “panjang konteks”) dari model bahasa besar (LLM) adalah jumlah teks, dalam token, yang dapat dipertimbangkan atau “diingat” oleh model sekaligus. Jendela konteks yang lebih besar memungkinkan model AI untuk memproses input yang lebih lama dan memasukkan jumlah informasi yang lebih besar ke dalam setiap hasil.
Jendela konteks LLM dapat dianggap setara dengan memori kerjanya. Solusi ini menentukan berapa lama percakapan yang dapat dilakukan tanpa melupakan detail dari awal pertukaran, sekaligus juga menentukan ukuran maksimum dokumen atau sampel kode yang dapat diproses sekaligus. Ketika prompt, percakapan, dokumen, atau basis kode melebihi jendela konteks model kecerdasan buatan, itu harus dipotong atau diringkas agar model dapat dilanjutkan.
Secara umum, meningkatkan ukuran jendela konteks LLM diterjemahkan ke peningkatan akurasi, lebih sedikit halusinasi, respons model yang lebih koheren, percakapan yang lebih lama, dan peningkatan kemampuan untuk menganalisis urutan data yang lebih panjang. Namun, peningkatan panjang konteks bukan tanpa kompromi: sering kali memerlukan peningkatan kebutuhan daya komputasi—dan karena itu meningkatnya biaya—dan potensi peningkatan kerentanan terhadap serangan musuh.
Dalam istilah dunia nyata, panjang konteks model bahasa diukur bukan dalam kata-kata, tetapi dalam token. Untuk memahami cara kerja jendela konteks dalam praktik, penting untuk memahami cara kerja token ini.
Cara LLM memproses bahasa pada dasarnya berbeda dari cara manusia melakukannya. Sedangkan unit informasi terkecil yang kami gunakan untuk mewakili bahasa adalah karaktertunggal—seperti huruf, angka, atau tanda baca—unit bahasa terkecil yang digunakan model AI adalah token. Untuk melatih model memahami bahasa, setiap token diberi nomor ID; nomor ID ini, bukan kata-kata atau bahkan token itu sendiri, digunakan untuk melatih model. Tokenisasi bahasa ini secara signifikan mengurangi daya komputasi yang diperlukan untuk memproses dan belajar dari teks.
Ada banyak variasi dalam jumlah teks yang dapat diwakili oleh satu token: sebuah token dapat mewakili satu karakter, bagian dari sebuah kata (seperti sufiks atau awalan), seluruh kata atau bahkan frasa multi-kata yang pendek. Pertimbangkan peran berbeda yang dimainkan oleh huruf "a" dalam contoh berikut ini:
“Jeff mengendarai sebuah mobil.”
Di sini, "" adalah sebuah kata yang utuh. Dalam situasi ini, ini akan diwakili oleh token yang berbeda.
“Jeff adalah seorangyang baik.”
Di sini, "" bukan kata, tetapi tambahannya secara signifikan mengubah arti kata tersebut. akan diwakili oleh dua token: token untuk dan satu lagi untuk .
"Jeff suka kucingnya."
Sini< adalah sebuah huruf di dalam kata "." Tidak membawa makna semantik untuk dirinya sendiri dan, oleh karena itu, tidak perlu diwakili oleh token yang berbeda.
Tidak ada “nilai tukar“ kata-ke-token yang tetap, dan model atau tokenizer yang berbeda-sebuah bagian modular dari model yang lebih besar yang bertanggung jawab atas tokenisasi—mungkin memberi token pada bagian tulisan yang sama secara berbeda. Tokenisasi yang efisien dapat membantu meningkatkan jumlah teks aktual yang sesuai dengan batas-batas jendela konteks. Tetapi untuk tujuan umum, perkiraan yang layak adalah sekitar 1,5 token per kata. Tokenizer Playgroundon Hugging Face adalah cara mudah untuk melihat dan bereksperimen dengan bagaimana model yang berbeda memberi token pada input teks.
Variasi dalam struktur dan representasi linguistik dalam data pelatihan dapat mengakibatkan beberapa bahasa lebih efisien dalam pemberian token dibandingkan bahasa lainnya. Sebagai contoh, sebuah penelitian pada Oktober 2024 jelajahi contoh kalimat yang sama yang diberi tanda dalam bahasa Inggris dan Telugu. Meskipun terjemahan Telugu memiliki karakter yang jauh lebih sedikit daripada yang setara dalam bahasa Inggrisnya, itu menghasilkan lebih dari 7 kali jumlah token dalam konteks.
Meskipun jendela konteks biasanya dikaitkan dengan LLM yang digunakan untuk peringkasan, menghasilkan teks, dan tugas pemrosesan bahasa alami (NLP) lainnya, panjang konteks sebagai pertimbangan teknis tidak eksklusif untuk model bahasa. Gagasan jendela konteks relevan dengan model machine learning apa pun yang menggunakan arsitektur transformator, yang terdiri dari sebagian besar model AI generatif modern, termasuk hampir semua LLM.
Model transformator menggunakan mekanisme perhatian mandiri untuk menghitung hubungan dan ketergantungan antara berbagai bagian input (seperti kata-kata di awal dan akhir paragraf). Secara matematis, mekanisme perhatian mandiri menghitung vektor bobot untuk setiap token dalam urutan teks, di mana setiap bobot merepresentasikan seberapa relevan token tersebut dengan token lain dalam urutan tersebut. LLM autoregresif secara iteratif berkonsultasi dengan bobot tersebut setiap kali menghasilkan kata berikutnya dari hasil. Ukuran jendela konteks menentukan jumlah maksimum token yang dapat "diperhatikan" oleh model pada satu waktu.
Perlu dicatat bahwa teks input pengguna yang sebenarnya seringkali bukan satu-satunya hal yang memakan ruang dalam jendela konteks model. Dalam banyak kasus, seperti dengan chatbot, model juga dilengkapi dengan "prompt sistem"—sering disembunyikan dari pengguna—yang mengkondisikan perilaku mereka dan mengatur aspek lain dari percakapan. Informasi tambahan yang diambil dari sumber data eksternal untuk Generasi dengan dukungan pengambilan data (RAG) juga disimpan dalam jendela konteks selama inferensi. Karakter khusus, jeda baris, dan ukuran pemformatan lainnya juga menghabiskan beberapa bagian dari konteks yang tersedia.
Perlu juga dicatat bahwa model bahasa bukan satu-satunya neural networks yang menggunakan transformer. Misalnya, beberapa model difusi yang digunakan untuk pembuatan gambar memasukkan perhatian diri ke dalam arsitektur mereka. Dalam kasus ini, konteks yang diperhatikan bukanlah antara token yang mewakili kata (atau bagian dari kata) dalam konten tertulis, tetapi antara piksel dalam gambar. Dalam model seperti itu, panjang konteks akan berlaku untuk jumlah piksel yang hubungannya harus dipahami model. Jendela konteksnya dapat dilampaui oleh gambar resolusi tinggi yang mengandung terlalu banyak piksel untuk diproses sekaligus.
Melengkapi model dengan jendela konteks besar memerlukan biaya, baik secara kiasan maupun harfiah. Persyaratan menghitung skala kuadrat dengan panjang urutan: misalnya, jika jumlah token input berlipat ganda, model membutuhkan daya pemrosesan 4 kali lebih banyak untuk menanganinya.
Demikian pula, peningkatan panjang konteks juga dapat memperlambat hasil. Setiap kali model memprediksi token berikutnya secara autoregresif dalam suatu urutan, model tersebut menghitung hubungan antara token tersebut dan setiap token sebelumnya dalam urutan tersebut. Inferensi mungkin relatif cepat di awal suatu urutan atau percakapan, tetapi secara bertahap menjadi lebih lambat seiring bertambahnya panjang konteks. Hal ini bermasalah untuk contoh penggunaan yang memerlukan inferensi hampir seketika dalam waktu nyata.
Kemajuan terbaru dalam panjang konteks rata-rata untuk model bahasa sebagian dimungkinkan oleh teknik-teknik baru untuk meningkatkan kecepatan inferensi dan efisiensi yang cukup untuk mengimbangi pengorbanan yang melekat. Teknik pengoptimalan ini telah memungkinkan LLM modern sumber terbuka yang kecil untuk menawarkan jendela konteks yang secara eksponensial lebih besar daripada model GPT-3.5 asli yang meluncurkan Chat GPT OpenAI pada akhir 2022.
Bahkan ketika langkah-langkah yang memadai diambil untuk mengimbangi kompensasi dalam kebutuhan komputasi dan kecepatan pemrosesan, memperluas batas panjang konteks model menimbulkan tantangan dan komplikasi tambahan.
Seperti orang-orang, LLM dapat kewalahan oleh banyak detail ekstra. Mereka juga bisa malas dan mengambil jalan pintas kognitif. Sebuah makalah tahun 2023 menemukan bahwa LLM tidak “dengan kuat memanfaatkan informasi dalam konteks input yang panjang.” Secara lebih spesifik, para penulis mengamati bahwa model memiliki kinerja terbaik ketika informasi yang relevan berada di awal atau akhir konteks input. Mereka juga mengamati bahwa kinerja menurun ketika model harus mempertimbangkan informasi dengan hati-hati di tengah konteks yang panjang.1
Metode baru untuk meningkatkan kemanjuran mekanisme self-attention transformator itu sendiri, seperti penyematan posisi putar (RoPE), bertujuan untuk memodifikasi pengodean posisi token dalam vektor perhatian. Penerapan luas metode berbasis RoPE telah menghasilkan peningkatan kinerja dan kecepatan pada tugas-tugas yang melibatkan token pada jarak yang jauh satu sama lain.
Penelitian yang sedang berlangsung telah menghasilkan sejumlah tolok ukur yang dirancang untuk mengukur kemampuan LLM dalam menemukan dan menggunakan informasi relevan secara efektif dengan bagian yang besar, seperti mencari jarum dalam tumpukan jerami (NIAH), RULER dan LongBench.
Jendela konteks yang lebih panjang mungkin juga memiliki efek yang tidak diinginkan untuk menyajikan permukaan serangan yang lebih panjang untuk prompt berlawanan. Penelitian terbaru dari Anthropic menunjukkan bahwa meningkatkan panjang konteks model juga meningkatkan kerentanannya terhadap "pembobolan" dan (kemudian) diprovokasi untuk menghasilkan respons yang berbahaya.2
Jendela konteks rata-rata dari model bahasa yang besar telah tumbuh secara eksponensial sejak transformer yang sudah terlatih generatif (GPT) asli dirilis. Hingga saat ini, setiap generasi LLM yang berurutan biasanya memerlukan panjang konteks yang jauh lebih panjang. Saat ini, jendela konteks terbesar yang ditawarkan oleh model komersial terkemuka adalah lebih dari 1 juta token. Masih harus dilihat apakah jendela konteks akan terus berkembang atau apakah kita sudah mendekati batas atas kebutuhan praktis.
Sebagai referensi, berikut ini adalah panjang konteks saat ini yang ditawarkan oleh beberapa model dan keluarga model yang sering dikutip per Oktober 2024.
Keluarga model o1 yang baru juga menawarkan jendela konteks 128.000 token, meskipun mereka menawarkan panjang konteks hasil yang lebih besar.
Model Llama asli memiliki panjang konteks maksimum 2.048 token, yang digandakan menjadi 4.096 token untuk Llama 2. Selama peluncurannya pada bulan April 2024, model Llama 3 menawarkan jendela konteks sekitar 8.000 token.
Panjang konteks Llama meningkat secara signifikan dengan peluncuran model Llama 3.1, yang menawarkan jendela konteks panjang 128.000 token. Model Llama 3.2 juga memiliki panjang konteks maksimum 128.000 token.
Mistral Large 2, model unggulan yang ditawarkan oleh Mistral AI, memiliki jendela konteks sebesar 128.000 token.
Seri model Gemini milik Google menawarkan apa yang saat ini merupakan jendela konteks terbesar di antara model bahasa komersial. Gemini 1.5 Pro, model andalan Google, menawarkan panjang konteks hingga 2 juta token. Model Gemini 1.5 lainnya, seperti Gemini 1.5 Flash, memiliki jendela konteks 1 juta token.
Model Claude terbaru Anthropic, seperti Claude 3.5 Sonnet, menawarkan jendela konteks standar sekitar 200.000 token. Pada awal September 2024, Anthropic mengumumkan bahwa model yang diakses melalui rencana “Claude Enterprise” yang baru akan menawarkan jendela konteks token 500.000 yang diperluas.
1. "Lost in the Middle: How Language Models Use Long Contexts," arXiv, 6 Juli 2023
2 "Many-shot jailbreaking," Anthropic, 2 April 2024
Rancang asisten dan agen AI yang dapat diskalakan dengan mudah, otomatiskan tugas berulang, dan sederhanakan proses kompleks dengan IBM watsonx Orchestrate.
Mempercepat nilai bisnis kecerdasan buatan dengan portofolio pustaka, layanan, dan aplikasi yang kuat dan fleksibel.
Temukan kembali alur kerja dan operasi yang penting dengan menambahkan AI untuk memaksimalkan pengalaman, pengambilan keputusan secara real-time, dan nilai bisnis.