Context window (bağlam penceresi) nedir?
Context window, dil modelinin tek seferde dikkate alabildiği toplam metindir. Soru, sohbet geçmişi, belgeler ve cevap aynı sınıra girer.
Context window nedir?
Context window, Türkçesiyle bağlam penceresi, bir dil modelinin tek seferde dikkate alabildiği toplam metin miktarıdır. Bu miktara sizin yazdığınız soru, sohbetin önceki mesajları, modele verilen belgeler ve modelin yazdığı cevap birlikte girer. Ölçü birimi kelime ya da sayfa değil, token sayısıdır.
Bir benzetmeyle: model, önüne konan kâğıtları okuyabilen ama masası sınırlı büyüklükte olan biri gibidir. Masaya sığmayan sayfa okunmaz. Pencere dolduğunda uygulama en eski mesajları ya keser ya da özetler; model onları artık görmez.
Pencere büyüdükçe ne değişir?
İlk sohbet modellerinin penceresi birkaç bin tokenla sınırlıydı. Bugün yüz binlerce, bazı modellerde milyonu aşan pencereler var. Uzun bir sözleşmeyi, bir kitabı ya da bir yazılım projesinin büyük kısmını tek seferde modele vermek artık mümkün.
Büyük pencere her sorunu çözmez. Uzun girdilerde modeller metnin başındaki ve sonundaki bilgiyi ortadakinden daha iyi kullanma eğilimindedir; araştırmacılar bu etkiye "lost in the middle" (ortada kaybolma) diyor. Pencereyi doldurmak ayrıca ücreti ve cevap süresini artırır, çünkü model her istekte bütün metni yeniden işler.
Bağlam penceresi hafıza mıdır?
Hayır, ikisi sık karıştırılır. Pencere, o anki konuşmada modelin gözünün önünde duran metindir ve sohbet kapanınca içindekiler gider. Konuşmalar arasında hatırlama için ayrı bir memory (hafıza) katmanı gerekir: bilgiler bir yerde saklanır ve gerektiğinde pencereye geri konur.
Pencereyi verimli kullanmak
Pratikte pencereye hangi metni koyduğunuz, pencerenin boyutundan daha çok fark yaratır. Yüzlerce sayfalık bir arşivin tamamını göndermek yerine soruyla ilgili parçaları seçip vermek (RAG bunu yapar), uzun sohbetleri ara ara özetlemek ve system prompt metnini kısa tutmak hem cevabın kalitesini hem maliyeti iyileştirir.