LLM'lerde Bağlam Penceresi (Context Window) Neden Önemli?

müfettiş

Moderatör
Katılım
20 Ocak 2024
Mesajlar
325
Tepkime puanı
1
Puanları
18
Yapay zeka dünyasında bir modelin ne kadar "akıllı" olduğu genellikle parametre sayısı ile ölçülse de, modelin ne kadar "işlevsel" olduğu büyük oranda Bağlam Penceresi (Context Window) kapasitesine bağlıdır. Bağlam penceresi, bir dil modelinin bir seferde işleyebileceği, "aklında tutabileceği" ve üzerinde işlem yapabileceği toplam veri miktarını ifade eder. Eğer bir LLM'i bir çalışan olarak düşünürseniz, bağlam penceresi o çalışanın masasının büyüklüğüdür. Masanın üzerine ne kadar çok dosya sığarsa, çalışan o kadar çok bilgiyi ilişkilendirebilir ve karmaşık kararlar verebilir.

1. Bağlam Penceresi Nedir? (Teknik Temel)​

Bağlam penceresi, modelin bir yanıt üretirken dikkate aldığı token (kelime parçacıkları) dizisidir. Bu sadece sizin gönderdiğiniz son soruyu değil, sohbet geçmişini, sisteme yüklenen belgeleri ve modelin kendi verdiği önceki yanıtları da kapsar.
LLM'ler "stateless" (durumsuz) yapılardır. Yani, her yeni girdi gönderdiğinizde model aslında geçmişi hatırlamaz; bunun yerine tüm sohbet geçmişi her seferinde modele yeniden gönderilir. Bağlam penceresi dolduğunda, model en eski bilgileri "unutmaya" başlar. Bu durum, karmaşık projelerde veya uzun kitap analizlerinde ciddi kopukluklara yol açar.

2. Neden Önemli? Temel Kullanım Alanları​

Bağlam penceresinin büyüklüğü, yapay zekanın kullanım senaryolarını doğrudan belirler.

A. Uzun Doküman Analizi ve Hukuk​

Eskiden 2.000 - 4.000 token kapasiteli modeller varken, bir hukuk sözleşmesini parçalara ayırıp özetlemek gerekiyordu. Bugün Gemini 1.5 Pro gibi 1 milyon hatta 2 milyon token kapasiteli modeller, binlerce sayfalık dokümanları veya yüzlerce saatlik ses kayıtlarını tek seferde işleyebilir. Bu, "300 sayfalık bu sözleşmede bizim aleyhimize olan maddeleri bul" dediğinizde modelin tüm metni aynı anda "görebilmesi" anlamına gelir.

B. Yazılım Geliştirme (Codebase)​

Yazılımcılar için bağlam penceresi hayati önem taşır. Bir hatayı (bug) çözmek için sadece ilgili fonksiyonu değil, o fonksiyonun çağrıldığı tüm dosyaları modele göstermeniz gerekebilir. Geniş bir bağlam penceresi, tüm projenin (codebase) modele yüklenmesine ve modelin dosyalar arası ilişkileri anlayarak kod yazmasına olanak tanır.

C. Kişiselleştirilmiş Asistanlar​

Bir yapay zeka asistanıyla aylar süren bir etkileşim içinde olduğunuzu hayal edin. Eğer bağlam penceresi darsa, model üç gün önce konuştuğunuz önemli bir detayı unutacaktır. Geniş pencereler, "sürekli hafıza" illüzyonunu daha gerçekçi kılar.

3. "İğne Samanlıkta" (Needle In A Haystack) Testi​

Bağlam penceresinin sadece büyük olması yetmez; modelin bu pencerenin her noktasına eşit derecede hakim olması gerekir. Yapay zeka literatüründe buna "Needle In A Haystack" testi denir.
  • Testin Amacı: Binlerce sayfalık bir metnin tam ortasına rastgele, alakasız bir bilgi (iğne) yerleştirilir.
  • Değerlendirme: Modelden bu bilgiyi bulması istenir.
  • Sorun: Bazı modeller, bağlam penceresinin başında ve sonunda verilen bilgileri iyi hatırlar (Recency ve Primacy etkisi), ancak orta kısımlardaki bilgileri kaçırabilir.

4. Bağlam Penceresini Verimli Kullanma Stratejileri​

Büyük bir bağlam penceresi maliyetli olabilir (hem işlem gücü hem de para açısından). Bu yüzden verimlilik stratejileri geliştirilmiştir:
  1. RAG (Retrieval-Augmented Generation): Tüm kütüphaneyi modele yüklemek yerine, sadece soruyla ilgili kısımları bir veritabanından bulup (vektör arama) bağlam penceresine dahil etmek.
  2. Özetleme: Sohbet geçmişi çok uzadığında, geçmişi özetleyerek bağlam penceresinde yer açmak.
  3. Token Yönetimi: Gereksiz boşlukları, durak kelimelerini (stop words) temizleyerek "alanı" korumak.

5. Gelecek: Sonsuz Bağlam Penceresi Mümkün mü?​

Teknoloji dünyası, bağlam penceresini genişletmek için Transformer mimarisindeki "Self-Attention" (Öz-Dikkat) mekanizmasının karesel maliyetini (O(n2)) düşürmeye çalışıyor.
  • Flash Attention: Bellek kullanımını optimize ederek hızı artırır.
  • Sparse Attention: Sadece önemli token'lara odaklanarak işlem yükünü hafifletir.
  • Ring Attention: Veriyi birden fazla GPU'ya dağıtarak devasa boyutlara ulaşılmasını sağlar.
Bu gelişmeler, gelecekte sadece metinlerin değil, tüm işletim sistemlerinin veya video arşivlerinin bir LLM bağlam penceresine sığdırılabileceğini gösteriyor.

6. Karşılaştırmalı Kapasite Tablosu (Temsili)​

ModelYaklaşık Kapasite (Token)Karşılık Gelen Metin
GPT-3.54,000Yaklaşık 10-15 sayfa
GPT-4o128,000Bir roman (300 sayfa)
Gemini 1.5 Pro2,000,0001 saatlik video veya 10.000 sayfa
Claude 3.5 Sonnet200,000Birkaç teknik rapor
 
Geri
Üst