Lost in the Middle (Ortada Kaybolma Fenomeni)

LLM'lerin uzun bağlamlarda başa ve sona dikkat ederken ortadaki bilgiyi gözden kaçırdığı; RAG sistem tasarımını etkileyen pozisyonel önyargı fenomeni.

"Lost in the Middle" (Ortada Kaybolma), büyük dil modellerinin (LLM) uzun bağlamlardaki bilgiyi konumuna göre farklı ağırlıkta işlediğini ortaya koyan bir fenomendir. Nelson F. Liu ve arkadaşları tarafından 2023 yılında yayımlanan "Lost in the Middle: How Language Models Use Long Contexts" makalesiyle sistematik biçimde belgelenmiştir. Araştırma, LLM'lerin bağlamın başına (primacy bias) ve sonuna (recency bias) yerleştirilen bilgiye çok daha fazla dikkat ettiğini, ancak bağlamın ortasındaki bilgiyi büyük ölçüde görmezden geldiğini göstermiştir. Bu etki, bağlam uzunluğu arttıkça güçlenir; onlarca belgenin sıralandığı çok belgeli soru-cevap (multi-document QA) görevlerinde kritik bir sorun haline gelir. Bu bulgunun RAG (Retrieval-Augmented Generation) sistemleri için doğrudan pratik sonuçları vardır: alınan belgelerin bağlama yerleştirilme sırası, modelin nihai doğruluğunu önemli ölçüde etkiler. En ilgili belgeler bağlamın başına veya sonuna yerleştirildiğinde model doğruluğu artarken ortaya yerleştirildiğinde düşer. Bu nedenle modern RAG sistemleri, yüksek puanlı sonuçları bağlamın iki ucuna yerleştiren "çift uç sıralama" (bi-positional ranking) stratejilerini benimsemiştir. Fenomenin kökeni dikkat mekanizmasının pozisyonel önyargılarına dayanmaktadır: eğitim verilerinin doğal yapısında metinlerin başı ve sonu genellikle daha fazla bilgi yoğunluğu içerdiğinden model bu konumlara ağırlık vermeyi öğrenir. Flash Attention ve rotary position encoding (RoPE) gibi teknik geliştirmeler uzun bağlam işlemeyi iyileştirmiş olsa da pozisyonel önyargı tamamen ortadan kalkmamıştır. Türkiye'de RAG tabanlı müşteri hizmetleri ve belge sorgulama sistemleri geliştiren ekipler bu fenomeni göz önünde bulundurarak belge sıralama stratejilerini yapılandırmalıdır. Uzun politika belgeleri veya hukuki metinlere dayanan sistemlerde "ortada kaybolma" etkisi yanıltıcı yanıtlara yol açabilir. Bu bağlamda bağlam penceresini (context window) gereksiz bilgiyle doldurmak yerine bağlam sıkıştırma (context compression) ve seçici bellek (selective memory) yaklaşımlarıyla yalnızca en ilgili pasajların bağlama eklenmesi önerilmektedir.

Fenomen Nasıl Ortaya Çıktı?

Liu ve ark. (2023), birden fazla pasajdan oluşan çok belgeli soru-cevap (multi-document QA) deneylerinde modellere farklı pozisyonlarda doğru belge sundu. Sonuçlar, doğruluk skorunun U şeklinde bir eğri izlediğini ortaya koydu: bağlamların başına ve sonuna yerleştirilen belgeler yüksek doğrulukla işlendi, ancak ortaya yerleştirildiğinde aynı belge için performans belirgin biçimde düştü. 20 belge içeren bir bağlamda ortadaki pozisyonda doğru yanıt oranı başta olanın yarı yarısına inebiliyordu. Bu bulgu, primacy bias (başlangıç önceliği) ve recency bias (son yakın önceliği) olmak üzere iki birbirini destekleyen eğilimin sonucudur. Dikkat mekanizmasının başlangıç ve bitiş tokenlerine olan doğal çekim, uzun bağlamda ortada kalan bilgi parçalarını etkin biçimde görmezden gelir.

RAG Sistemlerine Etkisi

  • check_circle Klasik Sıralama Sorunu: Retrieval skoruna göre sıralama yapıldığında yüksek puanlı ama ortaya düşen belgeler modelin dikkatinden kaçabilir; bu durum RAG yanıt kalitesini düşürür.
  • check_circle Çift Uç Sıralama (Bi-positional): En alakalı belge bağlam başına, ikinci en alakalı belge sonuna, geri kalanlar ortaya yerleştirilir. Bu düzen pozisyonel önyargı ile uyumlu ve hata toleransını arttırır.
  • check_circle Belge Sayısını Sınırla: Retrieval aşamasında yalnızca en alakalı k belge seçilmeli; bağlamı gereksiz içerikle doldurmak hem ortadaki bilgiye erişimi hem de gecikmeyi olumsuz etkiler.
  • check_circle Özet + Cevap Stratejisi: Uzun bağlamı sormadan önce modelden özet çıkarması istenir; ardından özet üzerinden yanıt üretilir. Bu iki aşamalı yaklaşım bazı sistemlerde doğruluğu arttırır.

Dikkat Pozisyonlarına Göre Performans

  • check_circle Bağlamların Başı (Primacy Bias): İlk birkaç belge için doğruluk en yüksektir. Sistem talimatları ve başlangıç belgelerini modeller güçlü biçimde ağırlıklandırır.
  • check_circle Bağlamların Ortası: 20-40 belgeden oluşan bağlamlarda ortadaki pozisyonlar en düşük doğruluk oranını gösterir; orta bölgede bulunan kritik bilgi gözden kaçabilir.
  • check_circle Bağlamların Sonu (Recency Bias): Bitiş tokenlerine olan eğilim nedeniyle son belgelere erişim başarısız genellikle başa yakın performansa sahip; sohbet geçmişinde son mesajlar hep net işlenir.
  • check_circle Pratik Uzunluk Sınırı: Modelin fiilen kullandığı bağlam büyüklüğü desteklenen pencere boyutundan düşük olabilir; 128K token desteği olan bir model ortadaki 30-60K tokenlik bölümde hatalı sonuç üretebilir.

Teknik Geliştirmeler ve Sınırlar

Flash Attention, rotary position encoding (RoPE) ve ALiBi gibi pozisyonel kodlama yöntemleri uzun bağlamlı işleme kapasitesini artırmıştır. Gemini 1.5 Pro ve Claude 3 Opus gibi modeller milyonlarca token uzunluğunda bağlam penceresini destekliyor; ancak bu pencerenin tamamında tutarlı dikkat sağlamak hala zor. Ulongformer ve BigBird kayan pencere dikkati kısa mesafeli ilişkilere odaklanırken genel bağlam anlayışını gerçek anlamda çözmez. Yeni nesil araştırmalar pozisyon farkındalı ince ayar (position-aware fine-tuning) ve ağırlıklı pozisyonel softmax ile fenomeni azaltmayı denese de U eğrisi günümüzde standart transformer modellerinde gözlemlenmeye devam etmekte; konu aktif araştırma gündeminde kalmaya devam etmektedir.

Ortada Kaybolma Sorununa Karşı Stratejiler

  • check_circle Bi-positional Ranking: En önemli belgeleri bağlam penceresinin başına ve sonuna yerleştirin; orta bölgeyi daha az kritik içerikle doldurun.
  • check_circle Bağlam Uzunluğunu Kısıtla: Retrieval aşamasında yalnızca en alakalı k belgeyi seçin; gereksiz içerikle bağlamı doldurmak ortadaki bilgiye erişimi azaltır.
  • check_circle Özet-Sonra-Cevap: Uzun bağlamı sormadan önce modelden özet çıkartmasını isteyin, ardından özet üzerinden cevap üretilmesini sağlayın.
  • check_circle Sorgu Odaklı Chunking: Belgeleri sorguyla anlamsal olarak en yakın parçalara bölün (chunk); kaba belge sınırlarından ziyade sorguya özel pasajları retrieve edin.

Sık Sorulan Sorular

  • check_circle Bu sorun fine-tuning ile çözülebilir mi? Kısmen. Uzun bağlamlı veri üzerinde ince ayar, orta-bağlamlarda performansı iyileştirebilir. Ancak altta yatan dikkat mekanizması değiştirilmeden tam çözüm zordur; pozisyonel kodlama değişiklikleri daha kalıcı sonuç verir.
  • check_circle Gemini ve Claude 1M token bağlamında bu sorun var mı? Büyük model sağlayıcıları pozisyonel performansı iyileştirdiğini bildirse de araştırmalar U eğrisinin hala mevcut olduğunu göstermektedir; tam bağlamlarda tutarlı dikkat hala açık bir araştırma sorusudur.
  • check_circle RAG sistemini nasıl tasarlamalıyım? En alakalı belgeleri bağlam başına koy, ardından düşük öncelikli belgeler, en sona ikinci en alakalı belge yerleşecek biçimde bi-positional ranking uygula. Toplam belge sayısını makul tutmaya (5-10) çalış.
  • check_circle Needle-in-a-Haystack testi ile ilişkisi nedir? Needle-in-a-Haystack, uzun bir bağlamda gizlenen kısa bir bilgi parçasının bulunup bulunamadığını ölçer. Lost in the Middle'ın standart kıyaslama protokolü olup modelin orta-bağlamda zayıflığını doğrudan sergilemektedir.
  • check_circle Bu sorun LLM kodu okumada da geçerli mi? Evet. Uzun kod tabanlarında ortadaki fonksiyonlar ya da modül tanımları gözden kaçabilir. Bu nedenle büyük codebase analizlerinde chunking ve retrieval-augmented yaklaşımlar tercih edilmektedir.
  • check_circle Flash Attention bu sorunu çözer mi? Flash Attention bellek verimliliği sağlar ve daha uzun bağlam işlemesini pratik kılar; ancak pozisyonel önyargıyı ortadan kaldırmaz. IO optimize edilmiş dikkat hesaplama fenomenin kaynağı olan pozisyonel eğilimi değiştirmez.