AMD GPU'larda vLLM ile Spekülatif Kod Çözme (Speculative Decoding)
İçindekiler
TL;DR
Spekülatif kod çözme (speculative decoding), vLLM motorunun tek bir hedef model geçişinde birden fazla taslak belirteci doğrulamasını sağlar. Çıktı belirteç verimi; taslak yöntemine, öneri uzunluğuna, model ailesine, taslak kontrol noktasına, iş yüküne ve kabul davranışına göre değişiklik gösterir.
Giriş
Büyük dil modellerini (LLM) geniş ölçekte sunmak (serving) dikkatli optimizasyon gerektirir. Standart otoregresif kod çözme temel referanstır: model bir belirteç üretir, bunu diziye ekler ve sonraki belirteç için bu güncellenmiş diziyi kullanır. Bu süreç basit ve güvenilirdir; ancak çıktıların katı bir soldan sağa sırayla üretilmesi gerektiğinden sunum döngüsü her defasında tek bir kesinleşmiş belirteç ilerletir.
Spekülatif kod çözme, bu temel üzerine bir taslak-ve-doğrula (draft-and-verify) mekanizması kurar. Hafif bir taslak bileşen aday gelecekteki belirteçleri önerir; asıl hedef model ise bu adayları kesinleştirmeden önce doğrular. Birden çok taslak belirteç kabul edildiğinde, hedef modelin çıktı davranışı korunarak tek bir doğrulama adımında birden fazla çıktı belirteci sisteme işlenir.
Beş Spekülatif Taslak Yaklaşımı
Taslak bileşeninin hedef modelden bilgi alma biçimine ve aday belirteçlerin oluşturulma yöntemine göre öne çıkan beş yaklaşım şunlardır:
- native MTP: Model mimarisine doğrudan entegre edilmiş çoklu belirteç tahmini.
- Gemma 4 MTP: Gemma mimarisi için optimize edilmiş çoklu belirteç üretim mekanizması.
- EAGLE-3: Üst katman özelliklerini kullanarak aday belirteçler üreten yapı.
- DFlash: Belirteçleri bloklar halinde hızlı ve paralel tahmin eden yöntem.
- DSpark: Hibrit ve otoregresif yaklaşımları birleştiren esnek taslak modeli.
Bu yöntemler; adayların ardışık, otoregresif, paralel ya da hibrit bir yaklaşımla üretilmesine göre farklılık gösterir.
Standart Otoregresif Kod Çözme Süreci
Standart otoregresif kod çözmede her adım yalnızca tek bir yeni belirteç üretir ve kesinleştirir. Örneğin, 4 belirteçlik bir çıktı için 4 ardışık döngü gerekir:
- Adım 1: bağlam → model → T1
- Adım 2: bağlam + T1 → model → T2
- Adım 3: bağlam + T1 T2 → model → T3
- Adım 4: bağlam + T1 T2 T3 → model → T4
Her adımın ardından üretilen belirteç sıradaki adımın girdisi olur. Uzun üretimlerde bu adım adım döngü gecikmeyi domine eder ve servis verimini sınırlar.
Spekülatif Kod Çözmenin Temel Fikri
Spekülatif kod çözme orijinal hedef modelin yerini almaz. Nihai çıktıdan sorumlu hedef modeli korur ve önüne hızlı bir öneri aşaması yerleştirir. Süreç iki parçadan oluşur:
- Taslak (Draft): Hafif bileşen olası birkaç aday belirteci hızla önerir.
- Doğrulama (Verify): Hedef model bu adayları tek adımda inceler ve onaylananları sıraya dahil eder.
Donanım Ortamı ve Pratik Çıkarımlar
AMD Instinct™ MI300X ve MI355X GPU'larında açık kaynaklı ROCm™ platformu üzerinde yapılan testler, spekülatif çıkarımın LLM sunumundaki hızlandırma potansiyelini doğrulamaktadır. Yazılım geliştiriciler için en kritik pratik çıkarım; öneri uzunluğunu iş yüküne göre ayarlamak ve üretim hattında kabul oranlarını (acceptance rate) yakından izlemektir. Böylece taslak oluşturma maliyeti telafi edilerek optimum çıkarım performansı elde edilir.
Orijinal kaynağa buradan ulaşabilirsiniz.
Bu konuyu derinlemesine öğrenmek isterseniz: Ölçeklendirme ve Optimizasyon modülüne göz atın.
Bu konuyu daha derinlemesine öğrenmek ister misin?
Edumints'teki ücretsiz kursları incele ve bugün başla.
Kurslara Göz At →