Bulut tabanlı yapay zekâ hizmetlerini kullanan herkesin aklındaki soru şu: Benim gönderdiğim metin, başka birinin ekranına düşebilir mi? Cloudflare’in 26 Ekim’de yayımladığı olay raporu, bunun teorik bir endişe olmadığını gösterdi. Şirket, Workers AI platformunda sunduğu GLM-5.3 modelinde, bazı müşterilere giden yanıtların aynı modeli kısa süre önce kullanan başka müşterilerin isteklerinden veri içerdiğini açıkladı.
Ne oldu?
Raporda, Z.ai’nin ajan tabanlı kodlama için geliştirdiği GLM-5.3 modelinin Workers AI’da 27 Ağustos’ta yayına girdiği ve sorunun ilk günden itibaren var olduğu belirtiliyor. 27 Ağustos ile 9 Eylül arasında toplam 155 yanıt etkilendi. Hepsi, 681.280 tokendan uzun, yani son derece uzun istemlere verilen yanıtlardı.
Sorunu 8 Eylül’de Knostic’ten güvenlik araştırmacısı Gadi Evron, Cloudflare’in HackerOne hata ödül programı üzerinden bildirdi. Cloudflare ertesi gün sorunu iki bağımsız hesapla yeniden üretti, olay ilan etti ve modeli kısa süre içinde erişime kapattı. Düzeltilmiş yapılandırma ve yamalı çıkarım motoruyla model aynı gün akşam yeniden açıldı. Şirket, kendi testleri ve araştırmacının denemeleri dışındaki isteklerin olağan uzun bağlam kullanımıyla uyumlu olduğunu ve kasıtlı bir istismar kanıtı bulmadığını açıkladı. Workers AI’daki başka hiçbir modelin etkilenmediği de vurgulanıyor.
İki hata üst üste geldi
Raporda olay iki ayrı sorunun birleşimi olarak anlatılıyor. Birincisi bir yapılandırma hatası: Model 1.048.576 tokenlık bağlam penceresiyle sunulmuş, ancak istemi işleyen GPU’lardaki KV önbellek alanı yalnızca 681.280 token alabiliyordu. Cloudflare bu uyumsuzluğun yayından önce farkında olduğunu, motorun sığmayan istemler için hata döndüreceğini varsaydığını ve uzun bağlam testleri başarılı yanıt döndürdüğü için sorun görmediğini kabul ediyor. Şirket, testlerde yalnızca yanıt kodlarını ve performansı ölçtüğünü, modelin çıktısının tutarlılığını kontrol etmediğini “kritik bir boşluk” olarak tanımlıyor.
İkinci sorun, Cloudflare’in kullandığı açık kaynak çıkarım motoru SGLang’deki bir hata. İstemin işlenmesi ile yanıtın üretilmesinin farklı GPU gruplarına bölündüğü yapılandırmada, sığmayan bir istem reddedilmiş olarak işaretlenip tek tokenlık bir yer tutucuyla değiştiriliyordu; ama istek iptal edilip hata döndürülmek yerine işlem devam ediyordu. Yanıtı üreten taraf, önbellek sayfalarının bu isteğin verisiyle doldurulduğunu varsayıyordu; oysa sayfaların çoğunda önceki isteklerden kalan veriler duruyordu. Sonuçta kullanıcı hata yerine başarılı ve tutarlı görünen, ancak başka kullanıcıların istemlerinden ve yarım kalmış yanıtlarından parçalar içeren bir yanıt alıyordu.
KV önbellek neden bu kadar hassas?
Büyük dil modelleri bir istemi işlerken ara sonuçları GPU belleğinde “KV önbellek” adı verilen sabit boyutlu sayfalarda tutuyor. Cloudflare’in açıklamasına göre bu sayfalar, performans kaybını önlemek için istekler arasında sıfırlanmıyor; bir sonraki istek sayfayı devraldığında üzerine yazıyor. Bu yaklaşım sektörde yaygın, ancak hangi sayfanın hangi isteğe ait olduğunu doğru izleme sorumluluğunu tamamen çıkarım motoruna yüklüyor. Bu takipte yaşanan tek bir hata, bir kullanıcının verisinin başka bir kullanıcının yanıtına sızması anlamına gelebiliyor.
Neler düzeltildi?
Cloudflare, önbellek alanını yaklaşık 2,04 milyon tokene, yani bağlam penceresinin yaklaşık iki katına çıkardığını ve motoru, reddedilen istekleri veri aktarımından önce hata ile sonlandıracak şekilde yamaladığını açıkladı. SGLang ekibi de ilgili düzeltmeleri yayımladı. Cloudflare, SGLang kullanan tüm işletmecilere 0.5.22 veya daha yeni sürüme geçmelerini öneriyor. Şirket ayrıca her önbellek sayfasının sahipliğini okuma anında kontrol eden bir mekanizma ve aktarım protokolünün güvenliğini biçimsel yöntemlerle kanıtlama üzerinde çalıştığını belirtiyor.
Cevapsız kalan sorular
Rapor ayrıntılı olsa da bazı sorular açık kalıyor. Etkilenen müşterilere tek tek nasıl ve ne zaman bilgi verildiği ya da sızan içeriğin kişisel veri içerip içermediği raporda yer almıyor. Ayrıca bildirilen sorunun benzeri, Cloudflare’in olay sırasında fark ettiği üzere, SGLang’e Temmuz başında başka bir kullanıcı tarafından da raporlanmıştı.
Yapay zekâ okuryazarlığı açısından: Neyi sorgulamalıyız?
- Bir yapay zekâ hizmetine gönderdiğimiz belgeler, kod ve müşteri bilgileri hangi altyapıda, kimlerle paylaşılan donanımda işleniyor?
- “Hata vermedi” demek, sonucun doğru ve bize ait olduğu anlamına geliyor mu?
- Hassas verileri yapay zekâya göndermeden önce anonimleştiriyor ya da en aza indiriyor muyuz?
- Kullandığımız hizmetin olay raporlarını ve güvenlik duyurularını takip ediyor muyuz?
Bu olay, yapay zekâ güvenliğinin yalnızca modelin ne söylediğiyle değil, onu çalıştıran altyapının ne kadar sağlam olduğuyla da ilgili olduğunu hatırlatıyor. Cloudflare’in olayı ayrıntılı ve koordineli biçimde açıklaması olumlu bir örnek; ancak kullanıcılar için ders açık: Paylaşımlı bulut altyapısında “kimse görmez” varsayımı her zaman geçerli değil.
Kaynak: Cloudflare, SGLang, Knostic







