Context Window Evrimi: 4K'dan 1M'a 5 Yılda Ne Oldu?
GPT-2'nin 1024 token'ından Gemini 2.5'in 2M token'ına. Context window neden bu kadar hızlı büyüdü? Bu derste evrimsel tarihçeyi, teknik kırılma noktalarını (RoPE, ALiBi, sliding window, ring attention) ve uzun context'in maliyet-performans dengesini öğreneceksin.
Şükrü Yusuf KAYA
16 dakikalık okuma
OrtaContext Window Evrimi: 4K → 2M, 5 Yılda 2000× Büyüme
2019'da GPT-2 piyasaya çıktığında context window'u 1024 token'dı — yaklaşık 4 paragraf. Bugün Gemini 2.5 Pro 2M token alıyor — bir orta uzunluklu romanın 4 katı.
Bu, 5 yılda 2000 kat büyüme. Moore yasasından çok daha hızlı. Nasıl mümkün oldu? Cevap: bir matematiksel buluş değil, 5-6 kümülatif buluş.
Bu derste her birini sırayla göreceğiz çünkü caching ile uzun context arasındaki ilişkiyi anlamak için gerekli temel.
Önce: Context Window Tam Olarak Nedir?#
Context window = modelin bir seferde "görebileceği" maksimum token sayısı. System prompt + tools + history + RAG context + user query + output, hepsi bu pencereye sığmak zorunda.
Sığmazsa: truncation (eskileri at) veya error (provider patlat).
Net vs Gross Context
Context window kullanılabilir alanın hepsi değil. Output rezerve edilir: 200K context'li Claude'da maksimum ~64K output var. Yani input için ~136K alan kalıyor.
Evrimsel Tablo#
| Yıl | Model | Context | Çığır Açan Teknik | Notlar |
|---|---|---|---|---|
| 2019 | GPT-2 | 1024 | Vanilla attention | Sabit pozisyon embedding |
| 2020 | GPT-3 | 2048 → 4096 | Daha büyük embedding | Hâlâ vanilla attention |
| 2021 | LongFormer | 4096 | Sliding window + global tokens | Sparse attention |
| 2022 | GPT-3.5 | 4K → 16K | RoPE (Rotary Position Emb) | Pozisyonel scale edilebilir |
| 2023 | Claude 1 | 100K | Constitutional AI + caching | İlk büyük sıçrama |
| 2023 | GPT-4 | 8K → 32K → 128K | RoPE + altyapı | Birkaç adımda büyüdü |
| 2024 | Gemini 1.5 Pro | 1M (sonra 2M) | Ring attention + MoE | Uzun context'te ilk gerçek lider |
| 2024 | Claude 3 | 200K | Verimli attention + caching | Caching API'si geldi |
| 2025 | Llama 3.1 | 128K | RoPE scaling + GQA | Open-source liderlik |
| 2025 | MiniMax-01 | 4M | Lightning Attention + sparse | Çinli açık model |
| 2026 | Claude 4.7 | 1M | Hybrid attention + caching v2 | Şu an yazıldığı tarih |
Burada (R_{\theta, m}) m pozisyonu için rotation matrix. Sihir: attention skorunda göreceli mesafe belirir:
Yani pozisyon farkı ((m-n)) attention'a girer, mutlak pozisyon değil. Sonuç: train sırasında görmediğin uzunluklara extrapolation mümkün.
Tüm modern modeller RoPE kullanıyor: Llama, Claude, Gemini, GPT-4, Qwen, Mistral...
RoPE'un Süper Gücü
RoPE scaling teknikleri (YaRN, NTK-aware, Position Interpolation) ile 8K bir modeli 32K'ya extend etmek mümkün. Llama 3.1'in 128K'sı bu sayede.
2. Efficient Attention — FlashAttention, Sliding Window, Sparse#
Vanilla attention'ın hesaplama maliyeti (O(n^2)). 128K context için 128K × 128K = 16 milyar entry — RAM bombası.
Üç ana strateji:
a) FlashAttention — Aynı matematik, daha akıllı bellek erişimi
- IO-aware: GPU SRAM'i ana RAM yerine kullan
- Aynı sonuç, 2-4× hız + %50 daha az RAM
- Caching ile dolaylı ilişki: cache'lenmiş tokenları okurken bu hız kazançlarını alıyorsun
b) Sliding Window Attention — Her token sadece son N komşusuna bakar
- Mistral 7B 4K sliding window kullanır
- (O(n \cdot w)) maliyet (w = window)
- Sorun: uzak bağıntıları kaybeder
c) Sparse/Mixture Attention — Bazı tokenlar global, bazıları local
- LongFormer paradigması
- Gemini'nin uzun context'inin altında bu var (büyük olasılıkla)
- "Attention sinks": ilk birkaç token her şeyle bağlantılı kalır
3. Ring Attention — Distributed Long Context (2024)#
Gemini 1.5 Pro'nun 1M context'i nasıl mümkün oldu? Cevap: tek GPU'ya sığmıyor zaten. Ring attention ile çoklu GPU arasında "halka" halinde dağıtılıyor.
Her GPU contextin bir parçasını tutuyor; attention hesaplaması halkayı dolaşıyor. (O(n)) bellek per GPU, toplam (O(n^2)) hesaplama ama paralel.
Pratik etkisi: 1M context'li bir sorgu 1M / 128K = ~8 GPU gerektiriyor. Bu yüzden Gemini 1M sorgusu sana 8 kat fazla maliyetle geliyor. (Gemini'nin pricing tablosuna dikkatlice bak — 128K üzeri sorgular daha pahalı.)
200K-1M arası hybrid attention. Detaylar kapalı kaynak ama:
- Local window + global token mimarisi olası
- Caching ile derin entegrasyon (Modül 3)
- 200K → 1M geçişinde fiyat ~2× artıyor (efficient mimari)
Maliyet-Performans Eğrisi#
Uzun context bedava değil. Üç boyutta maliyet artıyor:
- Para — Provider'lar 128K üzeri sorguları ek ücretlendiriyor (Gemini açıkça, diğerleri dolaylı)
- Latency — 1M context prefill ~10-30 saniye sürüyor (caching olmadan)
- Quality — "Lost in the middle": context büyüdükçe ortadaki bilgiyi unutuyor (Modül 5 + 6)
İşte tam burada caching devreye giriyor. Cache ile:
- Para → fresh input fiyatından %90 indirim
- Latency → 10sn'den 1sn'ye düşüyor (prefill atlanıyor)
- Quality → değişmiyor (input değişmediği için)
Kritik Sezgi
Anahtar fikir: Uzun context'i mümkün kılan teknik buluşlar (RoPE, FlashAttention, Ring Attention), o uzun context'i ucuz kılan teknolojiyle (caching) birlikte gelmek zorundaydı. Yoksa kimse 1M token sorgu yapmazdı. Caching, uzun context'in enabling technology'si.
Mini Egzersiz: Hangi Strateji Hangi Senaryoya?#
Boşluk doldur · text
1. 100 sayfa PDF'i tek seferde sorgulamak için: ____ context modeli + cache
2. Sliding window attention'ın zayıf yanı: ____ bağıntıları kaybeder
3. RoPE'un en büyük gücü: ____ pozisyonlara extrapolation
4. Ring attention neden çok GPU gerektirir: tek GPU'ya ____
5. Cache, uzun context'i karşılayan teknolojidir çünkü: ____ azaltırCaching Üzerine Etki#
Şimdi tüm bunların ne anlama geldiğini birleştirelim:
| Context Boyutu | Caching ETKİSİ | Kullanım Stratejisi |
|---|---|---|
| < 4K | Düşük | Caching opsiyonel, çoğunlukla overhead |
| 4K-32K | Orta | Conversational caching iyi gider |
| 32K-200K | Yüksek | RAG + caching kombinasyonu kritik |
| 200K-1M | Kritik | Caching olmadan ekonomik olarak yapılamaz |
| > 1M | Olmazsa olmaz | Provider'lar zaten zorluyor |
✓ Pekiştir#
Bir Sonraki Derste#
"Context is the new system prompt" — bu paradigma değişimini ve RAG vs Fine-tuning vs Caching üçgenindeki kararı detaylıca işleyeceğiz.
Sık Sorulan Sorular
Hayır, çoğu görevde aralarında ciddi fark yok. Asıl fark: Llama açık kaynak (self-host), Claude proprietary (managed). Self-hosting'de cache mekanizması farklı (vLLM/SGLang — Modül 10).
Yorumlar & Soru-Cevap
(0)Yorum yazmak için giriş yap.
Yorumlar yükleniyor...
İlgili İçerikler
1. Temeller — Context Penceresi Ekonomisi
Bu Eğitim Hakkında ve Prompt Caching Neden Önemli?
Öğrenmeye Başla1. Temeller — Context Penceresi Ekonomisi
Token Ekonomisi 101: Input vs Output Cost Asimetrisi
Öğrenmeye Başla1. Temeller — Context Penceresi Ekonomisi