Uzun bir PDF'i, saatlerce süren bir toplantı transkriptini ya da yüzlerce sayfalık bir raporu bir dil modeline verdiğinizi düşünün. Model başlangıçtaki bilgileri güzelce özetliyor, sondaki sonuç bölümünü de yakalıyor. Ama işin tam ortasında geçen o kritik cümle? Sanki hiç orada olmamış gibi. Eğer bu tanıdık geldiyse, aslında oldukça bilinen bir sorunla, Lost in the Middle ile tanışmışsınız demektir.
Lost in the Middle, büyük dil modellerinin (Large Language Models) uzun bir bağlam (context) ile çalışırken metnin ortasındaki bilgilere, başındaki ve sonundaki bilgilere kıyasla daha az önem verme eğilimidir. Yani modele ne kadar çok bilgi verirseniz verin, o bilginin nerede durduğu, ne kadar dikkate alınacağını doğrudan etkiler.
Model için başlangıç ve bitiş, bir hikayenin en akılda kalıcı yerleri gibidir. Ortadaki ayrıntılar ise, uzun bir konuşmanın ortasında dalıp giden bir dinleyicinin kaçırdığı cümlelere benzer. Bilgi orada durmaktadır, ama modelin dikkati oraya yeterince odaklanmaz. Sonuçta özet çıkarırken, soru yanıtlarken ya da karar verirken ortadaki kritik detaylar sessizce kaybolur.
Bu davranışın temelinde, dil modellerinin dikkat mekanizmasının (attention mechanism) uzun dizilerde nasıl davrandığı yatar. Bağlam penceresi (context window) büyüdükçe, modelin her token'a eşit ilgi göstermesi zorlaşır. Başındaki ve sonundaki tokenlar, konumları itibarıyla daha güçlü sinyaller taşırken, ortadaki tokenlar bu yoğunluğun içinde eriyip gider.
Bu problemi aşmanın en yaygın yollarından biri, uzun metni parçalara (chunk) bölmektir. Örneğin elinizde 2 saatlik bir video transkripti varsa, bunu tek seferde modele vermek yerine dörde bölebilirsiniz. Metni belli bir token sayısına, saniyeye ya da mantıksal bir kırılıma göre parçalara ayırırsınız.
Sonrasında iş şöyle işler:
Bu yaklaşımın amacı basittir: Modelin ortada kaybolmaması için, ona hiçbir zaman "orta" olacak kadar uzun bir metin vermemek. Her parça, kendi başına yeterince kısa olduğunda, model o parçanın tamamına eşit dikkat gösterebilir.
Ancak burada da yeni sorunlar doğar. Chunk sınırları bazen bir cümlenin ya da bir düşüncenin tam ortasından geçebilir. Bir chunk'ta başlayan bir bağlam, diğerinde tamamlanabilir. Bu yüzden chunking stratejisi, sorunun kendisi kadar önemli bir tasarım kararına dönüşür.
Lost in the Middle, sadece teknik bir merak konusu değil; doğrudan ürünlerin güvenilirliğini etkileyen bir sorundur. Kullanıcı bir dil modeline 100 sayfalık bir sözleşme yüklediğinde, modelin 47. sayfadaki maddeyi görmezden gelmesi kabul edilebilir bir hata değildir. Aynı şekilde, uzun bir müşteri görüşmesinden içgörü çıkaran bir üründe, konuşmanın ortasındaki en kritik itirazın kaçırılması, ürünün değer önerisini doğrudan çürütür.
Daha da önemlisi, bu sorun modeller büyüdükçe kendiliğinden çözülmüyor. Bağlam pencereleri milyonlarca token'a çıksa bile, dikkatin dağılımı hâlâ eşit değil. Yani "daha büyük bağlam" reklamının arkasında, çoğu zaman hâlâ ortayı unutan bir sistem duruyor. Bu da model sağlayıcısına güvenip ham metni doğrudan yollamak yerine, bilgiyi nasıl parçaladığınıza, sıraladığınıza ve modele nasıl sunduğunuza dair kararlar almanızı gerektiriyor.
Lost in the Middle'ı somutlaştırmak için birkaç tanıdık senaryoya bakmak yeterli.
Eğitim teknolojileri tarafında, uzun bir ders videosunun transkriptinden flash kartlar üretmek isteyen bir üründe, videonun ortasındaki konular sıklıkla eksik kalır. Videonun ilk 10 dakikasındaki tanımlar ve son 10 dakikasındaki özetler kartlara girer, ama ortadaki örnekler ve uygulamalar buharlaşır. Bu yüzden ekipler videoyu bölümlere ayırıp her bölüm için ayrı ayrı kart üretmeye yönelir.
Hukuk teknolojisi tarafında, uzun sözleşmelerden risk maddelerini tespit eden ürünler, dokümanın ortasındaki maddeleri gözden kaçırma riski taşır. Bu tür ürünler genellikle sözleşmeyi bölümlerine göre parçalayıp her bölümü ayrı bir analiz turuna sokar.
Müşteri destek transkriptlerinden içgörü çıkaran ürünlerde ise, uzun bir görüşmenin ortasında geçen "aslında beni asıl rahatsız eden şu..." cümlesi altın değerindedir ve tam da modelin en çok unuttuğu yerde durur. Burada da çözüm, görüşmeyi konuşma turlarına göre chunk'lara ayırıp her turu ayrı işlemekten geçer.
Eğer bir yapay zeka ürününün tasarımında ya da yönetiminde rol alıyorsanız, Lost in the Middle'ı sadece geliştiricilerin çözmesi gereken bir bug olarak görmemenizi öneririz. Bu, doğrudan ürün deneyimini şekillendiren bir sorundur.
Ürün yöneticiyseniz: "Modelin bağlam penceresi ne kadar?" sorusunu "Bilgiyi modele nasıl parçalayıp veriyoruz?" sorusuyla değiştirin. Chunking stratejisi, artık teknik bir detay değil, ürününüzün güvenilirlik vaadinin bir parçasıdır.
Tasarımcıysanız: Kullanıcıya bir özet ya da yanıt sunarken, o özetin kaynak metnin hangi bölümünden geldiğini görünür kılmayı düşünün. Kullanıcı, ortadaki bir bilginin dahil edilip edilmediğini doğrulayabilmeli. Kaynağa geri dönme, alıntı gösterme ve bölümlere göre gezinme gibi arayüz kararları, bu güvenin kurulmasında belirleyici olur.
AI üzerine çalışan ekiplerdeyseniz: Chunk boyutunu, örtüşme (overlap) miktarını ve chunk sırasını sistematik olarak test edin. Ortadaki bilginin kaybolup kaybolmadığını ölçen değerlendirme setleri oluşturun. Çünkü bu sorunu görmek için özel olarak bakmak gerekir; aksi halde metriklerinizin gölgesinde saklanmayı çok iyi başarır.
Lost in the Middle, dil modellerinin ne kadar bilgi aldığından çok, o bilginin nerede durduğuyla ilgilenmemiz gerektiğini hatırlatan bir olgudur. Bağlam penceresi büyüdükçe rahatlamak yerine, o bağlamı nasıl kurguladığımız üzerine daha çok düşünmek zorundayız; çünkü modelin gözünden kaçan ortayı, ancak biz tasarımla geri kazanabiliriz.
Lost in the middle. Yani... Çok uzun kontekstlerde kontekstin ortasını unutup ortasının kaybolması başındaki ve sonundaki şeyi daha çok değer vermesi gibi bir durum var. Bu tarz böyle uzun metinlerle çalışıyorsak metinleri chunklara bölmek, chunk dediğim işte metin buysa şurasını bir yere bölmek, burasını bir yere bölmek belli bir saniyeden veya token sayısından ayırabiliriz bunu. Atıyorum bu 2 saatlik videoyu 4'e bölüyorum. Bu 4 çankı sırasıyla işleyebilirim. Her seferinde burada ne olur? 4 tane LLM call yapılır. İşin sonunda bana şey döner. Buradaki... Flash kartlar bir şeyler döner. Burada belli başta tabi sorunlar var. Bu birincisi Lost in the Middle'ı... Bertaraf etmek için uzun metni sokup da aralarda bazı şeyleri kaçırmaması için böyle bir şey yapıyorum.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus sodales leo id commodo ornare.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus sodales leo id commodo ornare.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus sodales leo id commodo ornare.