Yapay Zeka

AI Inference Nedir? Yapay Zekâ Modelleri Eğitildikten Sonra Nasıl Çalışır?

Bir yapay zekâ modelinin geliştirilmesi ile kullanıcılara hizmet vermesi farklı süreçlerdir. Eğitim sırasında modelin parametreleri verilerden yararlanılarak güncellenir. Çıkarım sırasında ise model, mevcut parametrelerini kullanarak yeni girdiler üzerinde hesaplama yapar.

Bir modele soru sorduğunuzda model genellikle baştan eğitilmez. Sorunuz, ilgili konuşma geçmişi ve varsa ek bilgiler işlenerek yanıt oluşturulur.

Bu nedenle başarılı bir yapay zekâ uygulaması geliştirmek, yalnızca iyi bir model eğitmeyi gerektirmez. Modelin kabul edilebilir sürede, uygun maliyetle ve beklenen kalitede çalıştırılması da gerekir.

AI Inference Nedir?

AI Inference, Türkçede yapay zekâ çıkarımı olarak adlandırılır. Eğitilmiş modelin bir girdiden çıktı üretmesini ifade eder.

Çıktı her zaman metin değildir. Bir sınıflandırma etiketi, sayısal tahmin, görüntü, ses veya nesne konumu da olabilir.

Örneğin:

  • Bir e-postanın istenmeyen ileti olarak sınıflandırılması.
  • Fotoğraftaki ürünün tanınması.
  • Ses kaydının yazıya dönüştürülmesi.
  • Bir metnin başka dile çevrilmesi.
  • Belgeden özet hazırlanması.
  • Geçmiş verilere dayanarak talep tahmini yapılması.

Bu görevlerin tamamı aynı model yapısını veya aynı hesaplama yöntemini kullanmaz. Çıkarım, farklı yapay zekâ uygulamalarını kapsayan genel bir kavramdır.

Training ile Inference Arasındaki Fark Nedir?

Training, yani eğitim, modelin parametrelerinin veriler ve bir öğrenme hedefi doğrultusunda ayarlanmasıdır. Inference ise modelin mevcut parametreleriyle çıktı üretmesidir.

Özellik Training: Eğitim Inference: Çıkarım
Temel amaç Modelin davranışını öğrenme yoluyla geliştirmek Yeni girdiler için sonuç üretmek
Parametreler Eğitim sırasında güncellenir Standart çıkarımda genellikle sabit kalır
Kullanılan veri Eğitim örnekleri İşlenecek yeni girdi ve bağlam
Çalışma süresi Modele ve yönteme göre değişir Göreve ve altyapıya göre değişir
Örnek Görsellerle nesne tanıma modeli eğitmek Yeni fotoğraftaki nesneyi belirlemek

Eğitimin mutlaka haftalar sürdüğü veya çıkarımın her zaman anlık tamamlandığı söylenemez. Küçük bir model kısa sürede eğitilebilirken kapsamlı bir üretim görevi uzun sürebilir.

Ayrıca modeller yalnızca bir kez eğitilmek zorunda değildir. Yeniden eğitim, ince ayar ve başka uyarlama süreçleriyle güncellenebilirler. Eğitim ile çıkarım arasındaki temel ayrım, modelin öğrenilmesi ve mevcut modelin uygulanmasıdır. 

Büyük Dil Modellerinde Çıkarım Nasıl Çalışır?

Bir dil modeline gönderilen metin önce modelin işleyebileceği sayısal biçime dönüştürülür. Bu aşamada metin, token adı verilen birimlere ayrılır. Tokenlar kelime, kelime parçası veya noktalama işareti gibi birimler olabilir.

Sohbet uygulamasında yalnızca son kullanıcı mesajı işlenmeyebilir. Sistem talimatları, konuşma geçmişi ve ilgili belgeler de girdinin parçası olabilir.

Model bu girdiler üzerinde hesaplama yapar ve sonraki tokenlar için olasılıklar üretir. Kullanılan üretim yöntemine göre bir token seçilir; ardından süreç devam eder.

Her zaman en yüksek olasılıklı tokenın seçilmesi zorunlu değildir. Örnekleme yöntemleri de kullanılabilir. Bu nedenle aynı girdiye farklı çalıştırmalarda farklı yanıtlar üretilebilir.

Metnin kullanıcı ekranında parça parça görünmesi, üretimin devam ederken aktarılmasından kaynaklanabilir. Yanıtın gösterilmeye başlaması, tamamının hazır olduğu anlamına gelmez.

Prefill ve Decode Ne Anlama Gelir?

Otoregresif dil modellerinde çıkarım süreci genellikle iki aşamayla açıklanır.

Prefill, girişteki tokenların işlendiği aşamadır. Model, verilen metne ilişkin ara hesaplamaları oluşturur.

Decode ise yeni tokenların üretilmesidir. Her yeni token, önceki bağlama ve üretilen tokenlara dayanır.

Bu ayrım, performansı anlamaya yardımcı olur. Çok uzun bir belge, ilk yanıtın başlamasından önce daha fazla girdi işleme gerektirebilir. Çok uzun bir cevap ise üretim aşamasını uzatabilir.

Dolayısıyla “model hızlı mı?” sorusunun tek bir cevabı yoktur. Uzun girdilerdeki davranış ile uzun çıktı üretimindeki davranış ayrı incelenmelidir.

Kullanıcı Deneyiminde Hangi Hız Ölçütleri Önemlidir?

Çıkarım performansı farklı göstergelerle ölçülür.

İlk tokena kadar geçen süre, yanıtın başlaması için ne kadar beklendiğini gösterir. Etkileşimli sohbetlerde bu süre önemlidir.

Token üretim hızı, yanıt başladıktan sonra metnin ne kadar hızlı üretildiğini ifade eder.

Toplam tamamlanma süresi, isteğin gönderilmesinden çıktının bitmesine kadar geçen zamandır.

İş hacmi, sistemin belirli sürede kaç isteği veya ne kadar çıktıyı işleyebildiğini gösterir.

Bu ölçütler aynı yönde değişmeyebilir. Bir sunucu daha fazla isteği birlikte işleyerek toplam kapasitesini artırırken tek kullanıcının bekleme süresi uzayabilir.

Bu nedenle performans hedefi, uygulamanın ihtiyacına göre belirlenmelidir. Canlı sesli asistanda kısa gecikme önemliyken gece çalışan toplu belge işleme görevinde toplam kapasite daha belirleyici olabilir.

Çıkarım Sırasında Model Yeni Bilgi Öğrenir mi?

Standart çıkarımda modelin parametreleri genellikle güncellenmez. Ancak model, kendisine sunulan yeni bilgileri yanıtında kullanabilir.

Örneğin kullanıcı bir tablo yüklediğinde model tablodaki değerleri inceleyebilir. Bu, tablonun modelin parametrelerine kalıcı olarak işlendiği anlamına gelmez.

Benzer şekilde bir uygulamanın kullanıcı tercihlerini veritabanında saklaması, modelin yeniden eğitilmesinden farklıdır. Uygulama bu bilgileri sonraki isteklere ekleyebilir.

Konuşma bağlamını kullanmak, dışarıda bilgi saklamak ve model parametrelerini güncellemek farklı süreçlerdir. Bu ayrım, yapay zekânın “hatırlaması” veya “öğrenmesi” hakkında yapılan açıklamaları daha anlaşılır hâle getirir.

AI Inference Neden Maliyet Oluşturur?

Her çıkarım isteği işlem gücü, bellek ve enerji kullanır. Tek bir çağrının maliyeti düşük olsa bile çok sayıda çağrı toplam tüketimi artırabilir.

Dil modellerinde maliyeti etkileyebilen unsurlar arasında model büyüklüğü, girdi uzunluğu, üretilen çıktı miktarı ve eş zamanlı istek sayısı bulunur.

Ayrıca bir uygulama, kullanıcıya tek cevap vermek için birden fazla model çağrısı yapabilir. Araştırma yapan bir ajan; planlama, belge değerlendirme ve sonuç hazırlama aşamalarında ayrı çıkarımlar gerçekleştirebilir.

Bu nedenle yalnızca tek model çağrısına bakmak, uygulamanın gerçek maliyetini açıklamayabilir. Başarıyla tamamlanan görev başına toplam kaynak tüketimi de değerlendirilmelidir.

Yapay Zekâ Çıkarımı Nasıl Hızlandırılır?

KV Cache

Transformer tabanlı otoregresif modellerde, önceki tokenlara ilişkin bazı dikkat hesaplamaları yeniden kullanılabilir.

KV Cache, bu ara değerlerin saklanmasını sağlayarak aynı bilgilerin tekrar hesaplanmasını azaltır. Ancak önbellek de bellek tüketir. Uzun bağlamlar ve çok sayıda eş zamanlı istek, bu tüketimi artırabilir.

KV Cache, hazır yanıtların saklandığı bir cevap önbelleği değildir. Modelin üretim sırasında kullandığı ara hesaplamalarla ilgilidir. 

Quantization

Quantization, modelin bazı sayısal değerlerini daha düşük hassasiyetle temsil eden yöntemleri kapsar.

Bu yaklaşım bellek ihtiyacını azaltabilir ve uygun donanımda işlem verimliliğini geliştirebilir. Ancak sonuç; kullanılan yönteme, modele ve donanım desteğine bağlıdır.

Daha düşük hassasiyetin yanıt kalitesini nasıl etkilediği test edilmelidir. Her sıkıştırma düzeyi her görev için aynı sonucu vermez. 

İstekleri Birlikte İşleme

Birden fazla isteğin birlikte işlenmesi, donanımın daha verimli kullanılmasına yardımcı olabilir. Sürekli gruplama yaklaşımlarında tamamlanan isteklerin yerine yenileri alınarak kapasiteden yararlanılabilir.

Bu süreçte bellek yönetimi önemlidir. PagedAttention araştırması, KV önbelleğinin daha verimli yönetilmesini ve bellek israfının azaltılmasını ele alır. 

Speculative Decoding

Bu yaklaşımda, yaygın bir tasarım olarak daha küçük bir model birkaç tokenlık taslak üretir. Hedef model, önerilen tokenları denetleyerek uygun olanları kabul eder.

Belirli yöntemler, hedef modelin çıktı dağılımını koruyarak hızlanma sağlamayı amaçlar. Kazanç; taslakların kabul oranına ve sistemin çalışma koşullarına bağlıdır. Buradaki denetim, üretilen bilginin gerçek dünyada doğru olduğunun kontrolü değildir. 

FlashAttention

FlashAttention, dikkat mekanizmasının hesaplanması sırasında bellek erişimini daha verimli düzenleyen bir yöntemdir.

Amaç, aynı dikkat işlemini donanımın bellek yapısından daha iyi yararlanarak gerçekleştirmektir. Modelin gerçek bilgileri doğrulamasını sağlayan bir teknik değildir. 

Çıkarım Bulutta mı, Cihazda mı Yapılır?

Çıkarım; veri merkezinde, kurum içi sunucuda veya kullanıcının cihazında gerçekleştirilebilir.

Bulut altyapısı büyük modellere ve paylaşılan kapasiteye erişim sağlayabilir. Buna karşılık ağ gecikmesi, hizmet maliyeti ve verilerin hangi ortamda işlendiği değerlendirilmelidir.

Cihaz üzerinde çıkarımda uygun model yerel donanımda çalışır. Böylece bazı görevler internet bağlantısı olmadan yürütülebilir. Ancak kullanılabilir bellek, enerji tüketimi ve model boyutu sınırlayıcı olabilir.

Her çıkarım görevi büyük GPU kümeleri gerektirmez. Modele göre CPU, GPU, NPU veya başka hızlandırıcılar kullanılabilir.

Bir Örnek: Müşteri Mesajlarını Sınıflandırmak

Bir işletmenin günlük müşteri mesajlarını “teslimat”, “iade”, “ürün bilgisi” ve “diğer” başlıklarına ayırmak istediğini düşünelim.

Bu görev için eğitilmiş veya uygun biçimde yönlendirilmiş bir model, her yeni mesajı işleyerek kategori üretebilir. Yeni mesajı sınıflandırmak çıkarımdır.

Sistem hatalı kategorileri toplarsa bu kayıtlar ileride değerlendirme veya eğitim verisi olarak kullanılabilir. Ancak hataların kaydedilmesi, çalışan modelin kendiliğinden güncellendiğini göstermez.

Bu uygulamada çok uzun cevaplar üreten büyük bir model yerine kısa ve tutarlı kategori çıktısı veren uygun bir model yeterli olabilir. Başarı, yalnızca hızla değil, doğru sınıflandırma oranı ve işlem maliyetiyle birlikte ölçülmelidir.

Sık Sorulan Sorular

AI Inference her zaman gerçek zamanlı mı çalışır?

Hayır. Etkileşimli uygulamalarda anlık yanıt hedeflenebilir; toplu işler daha sonra işlenebilir.

Çıkarım için GPU zorunlu mu?

Hayır. Donanım ihtiyacı modele ve performans hedefine bağlıdır.

Bir sohbet sırasında model yeniden eğitilir mi?

Standart kullanımda genellikle hayır. Konuşma bilgilerini bağlam olarak kullanması, parametrelerinin güncellenmesiyle aynı değildir.

Daha hızlı çıkarım daha doğru yanıt anlamına gelir mi?

Hayır. Hız ve doğruluk ayrı ölçütlerdir. Optimizasyon sonrasında kalite ayrıca değerlendirilmelidir.

Çıkarım maliyeti zamanla kesin olarak düşer mi?

Birim işlem verimliliği gelişebilir; ancak daha büyük modeller, uzun görevler ve artan kullanım toplam maliyeti yükseltebilir. Kesin bir düşüş varsayılmamalıdır.

Kaynaklar

Cloudflare – AI Inference vs. Training, Hugging Face Transformers – How Caching Works, Hugging Face Transformers – Quantization Concepts, Efficient Memory Management for Large Language Model Serving with PagedAttention, Fast Inference from Transformers via Speculative Decoding, FlashAttention: Fast and Memory-Efficient Exact Attention with IO-Awareness.

Editör Notu

Bu içerik, kamuya açık teknoloji, yapay zekâ ve dijital dönüşüm kaynaklarından yararlanılarak hazırlanmış bir araştırma ve değerlendirme yazısıdır. İçerikte yer alan görüşler editoryal yorum niteliğindedir. Çıkarım performansı ve maliyeti; modele, donanıma, iş yüküne ve kullanılan optimizasyonlara bağlıdır. Güncel teknik dokümanların ve gerçek kullanım ölçümlerinin birlikte değerlendirilmesi önerilir.