fast_forward Speculative Decoding Nasıl Çalışır?
Süreç iki modele dayanır: Taslak model (küçük, hızlı) ve Hedef model (büyük, kaliteli). Her adımda: (1) Taslak model γ token üretir (genellikle γ=4-8). (2) Hedef model bu tokenleri tek seferde paralel işleyip olasılık dağılımlarını hesaplar. (3) Spekülatif örnekleme kuralına göre tokenler kabul/ret edilir. (4) İlk ret noktasından sonra hedef modelin öngörüsü alınır. Tüm bu süreç hedef modelin tek token üretme süresine yakın tamamlanır.
Yaygın Uygulamalar
compress Küçük Taslak Model
Örneğin Llama 70B için Llama 7B taslak olur. Aynı tokenizer ve vokabüler paylaşılması şarttır. vLLM ve llama.cpp bu yaklaşımı destekler.
device_hub Medusa
Tek modele birden fazla taslak kafa (head) ekler; ayrı model gerekmez. Her kafa bir sonraki pozisyonu tahmin eder. Küçük bellek yüküyle hızlanma sağlar.
speed EAGLE / EAGLE-2
Hedef modelin gizli katman aktivasyonlarından beslenen taslak kafa. Çok yüksek kabul oranıyla 3-4× hızlanma. Açık kaynak; HuggingFace'de mevcuttur.
quiz Sık Sorulan Sorular
- check_circle Çıktı kalitesi düşer mi?: Hayır. Orijinal spekülatif örnekleme matematiksel olarak hedef modelin örneklemesiyle eşdeğerdir (lossless). Greedy veya temperature örneklemede çıktı aynıdır.
- check_circle Tüm modeller için uygun mu?: En etkilidir: yavaş otoregresif modeller + düşük batch size + yüksek kabul oranı gerektiren dağılım benzeri modeller. Çok kısa üretimde veya yüksek temperature'da kazanım azalır.
- check_circle Nerede kullanılıyor?: Google'ın Gemini API, Anthropic'in Claude API, vLLM, llama.cpp ve SGLang; speculative decoding'i production'da kullanmaktadır.