RadarMakale Bülteniai üretimi

Makale Bülteni — DuoAttention

Dikkat başlıklarını arama ve akış olarak ayrıştırıp KV cache boyutunu yüzde yetmiş azaltarak tek GPU'da milyonluk bağlamı çözdüren çalışma.

MIT HAN Lab ekibi tarafından ICLR 2025’te sunulan “DuoAttention: Efficient Long-Context LLM Inference with Retrieval and Streaming Heads” başlıklı akademik makale, uzun bağlamlı yapay zeka çıkarımındaki en masraflı fiziksel tıkanıklığa, yani KV cache bellek patlamasına zarif bir mühendislik neşteri vuruyor1. Pratikte bu çalışma, bir dil modeline yüz binlerce token’lık bir veri tabanını veya teknik şartnameyi verdiğinizde, GPU belleğini tüketen milyarlarca önbellek vektörünü körü körüne saklama alışkanlığına son veriyor. Dikkat başlıklarının tamamının uzun mesafeli arama yapmadığını, çoğunun sadece yakın kelimelerle ilgilendiğini kanıtlayarak, modelin doğruluk kabiliyetini sıfır kayıpla korurken donanım ihtiyacını üçte bire indirmeyi başarıyor.

Akademik iddianın ötesinde gerçek dünya çıkarım tablolarına baktığımızda ortaya konan kapasite kazanımı oldukça çarpıcıdır. Makale, Llama-3 ve Mistral gibi popüler mimarilerde doğruluk kaybı yaşamaksızın %70 KV cache tasarrufu ve tek A100’de 3,3 milyon token bağlam vadederken, bu ölçümler doğrudan kurumsal standart olan NVIDIA A100-80GB sunucular üzerinde kanıtlanmış durumda. Açık kaynak kod cephesinde ise mit-han-lab/duo-attention resmi deposunda son commit 3 hafta önce, 760 yıldız ve 18 açık issue ile geliştiricilerin doğrudan deneyebileceği çalışan bir altyapı yer alıyor2.

İddia ve Gerçeklik: DuoAttention

Büyük dil modellerinde dizilim uzunluğu yüz bin token seviyesini aştığında, model ağırlıkları sabit kalsa bile her bir token için saklanan Key ve Value tensörleri devasa boyutlara ulaşır. Llama-3-8B modelinde bir milyon token bağlam işlemek, tek bir kullanıcı için yüz otuz gigabayttan fazla VRAM rezerve etmek demektir; bu da tek bir 80 GB GPU’nun fiziksel kapasitesini aşar. Geçmişteki StreamingLLM veya H2O gibi önbellek budama yöntemleri tüm başlıklara körlemesine aynı pencere kısıtını uyguladığı için, metnin derinliklerindeki kritik olguları arama testlerinde (Needle In A Haystack) modeller anında çakılıyordu. DuoAttention makalesinin getirdiği ana sistem tezi, dikkat başlıklarının uzmanlaşma desenine dayanır.

Yazarlar, uzun bağlamlı modellerdeki dikkat başlıklarının homojen olmadığını ve doğal olarak iki gruba ayrıldığını keşfetti: Başlıkların sadece yüzde yirmi beş ile kırkı uzak geçmişteki bilgileri tarayan “arama başlıkları” (retrieval heads) iken, kalan yüzde altmış ile yetmiş beşi sadece yerel sözdizimsel bağlamı takip eden “akış başlıkları” (streaming heads) olarak görev yapmaktadır. DuoAttention, akış başlıklarının geçmiş KV önbelleğini tamamen silerek yalnızca sabit boyutlu küçük bir kayan pencere (sliding window) ve birkaç başlangıç token’ı (attention sinks) tutar. Arama başlıkları ise tam KV önbelleğiyle çalışmaya devam eder. Böylece arama yeteneği kusursuz korunurken bellek ayak izi yüzde yetmiş oranında erir. Ancak bir sistem mimarı için madalyonun diğer yüzündeki altyapı bedelleri dikkatle incelenmelidir.

DuoAttention genel geçer bir sıfır kurulum kütüphanesi değildir; hangi başlığın akış hangisinin arama başlığı olduğunu tespit etmek için modelin iki bin adımlık sentetik bir kalibrasyon sürecinden geçirilmesi zorunludur. Dahası üretim motorlarında heterojen başlık yönetimi büyük bir sistem zorluğudur. Bir katmandaki otuz iki başlıktan sekizinin yüz bin token, yirmi dördünün ise iki yüz elli altı token önbellek tutması, standart vLLM paged attention blok yöneticilerinde parçalanma yaratabilmektedir. Özel asimetrik bellek düzeni gereklidir.

Kod ve Entegrasyon Haritası

DuoAttention, Song Han’ın ekibi tarafından araştırma simülasyonlarının ötesine geçirilerek doğrudan FlashAttention-2 ve Triton ile optimize edilmiş çalışan bir çıkarım çatısı olarak açık kaynak dünyasına sunuldu2. Kod tabanı incelendiğinde, akış ve arama başlıklarını tek bir matmul çekirdeğinde verimli bir şekilde birleştiren özel CUDA çekirdekleri ve HuggingFace modellerini otomatik kalibre eden modüler betikler göze çarpmaktadır.

Açık kaynak dünyasında projenin benimsenebilirliği oldukça yüksektir. Llama-3-8B, Mistral-7B ve Llama-2 aileleri için önceden profillenmiş başlık haritaları depoda hazır olarak paylaşılmıştır3. Bu sayede mühendisler kendi kalibrasyonlarını yapmadan hazır ağırlıklarla doğrudan yüzde yetmiş bellek tasarrufuna ulaşabilmektedir. Ancak entegrasyon hattında sistem mühendislerinin yönetmesi gereken operasyonel sürtünmeler bulunmaktadır.

Hacker News ve GitHub tartışmalarında geliştiriciler, vLLM ve SGLang gibi endüstri standardı motorların bellek yöneticilerinin henüz başlık bazında asimetrik KV tahsisini yerel olarak desteklememesinden dert yanmaktadır. Tam verimlilik elde etmek için ekiplerin MIT HAN Lab’in özel motor çatısını kullanması gerekmektedir; ana akım motorlara entegrasyon için PR süreçleri sürmektedir. Yine de uzun bağlamlı modellerde donanım faturasını doğrudan üçte bire indiren en pratik ve en kararlı açık kaynak çözüm DuoAttention’dır.

Ticari Etki: Kimin İşine Yarar?

DuoAttention teknolojisi, özellikle yüz binlerce satırlık kurumsal dokümanları analiz eden kurumsal RAG sistemleri, uzun sözleşmeleri inceleyen hukuk yazılımları ve saatler süren ses kayıtlarını işleyen transkripsiyon servisleri için doğrudan bir kâr marjı kurtarıcısıdır. Eskiden sekiz adet A100 GPU gerektiren yüz bin token’lık bir analiz hattını tek bir GPU üzerinde çalıştırmak, start-up’ların aylık sunucu faturalarını doğrudan yüzde yetmiş oranında aşağı çeker.

Aynı zamanda şirket içi sunucularda veri güvenliği nedeniyle modeller barındıran BT departmanları için mevcut donanımı yükseltmeden eşzamanlı aktif kullanıcı sayısını iki katına çıkarmak büyük bir sermaye tasarrufu yaratır. Model doğruluğundan feragat etmeden milyonluk bağlam seviyelerine çıkabilmek, küçük ekiplerin büyük teknoloji devleriyle doğrudan rekabet etmesini sağlar.

Buna karşın kullanıcıların yalnızca kısa sorular sorduğu klasik arama botları ve basit müşteri hizmetleri servisleri için DuoAttention devreye almak anlamsız bir operasyonel yüktür. Zaten birkaç yüz token’lık bağlamlarda KV cache bir darboğaz oluşturmadığından, başlık kalibrasyonuyla uğraşmaya değecek bir getiri doğmaz. Özetle DuoAttention, uzun bağlamlı modelleri üretime alırken GPU VRAM duvarına toslayan ve donanım bütçesini rasyonelleştirmek isteyen tüm pragmatik mühendislik ekipleri için günümüzün en etkili bellek amortisörüdür.

Kaynaklar

  1. DuoAttention: Efficient Long-Context LLM Inference with Retrieval and Streaming Heads — arXiv
  2. DuoAttention Official Repository — MIT HAN Lab GitHub
  3. DuoAttention Paper and Discussion — Hugging Face