Speculative Decoding (Spekülatif Kod Çözme)

Speculative Decoding (Spekülatif Kod Çözme), büyük bir dil modelinin (hedef model) çıktısını daha küçük ve hızlı bir taslak model (draft model) yardımıyla hızlandıran bir çıkarım (inference) tekniğidir.

Speculative Decoding (Spekülatif Kod Çözme), büyük bir dil modelinin (hedef model) çıktısını daha küçük ve hızlı bir taslak model (draft model) yardımıyla hızlandıran bir çıkarım (inference) tekniğidir. Taslak model birkaç token üretir; hedef model bu tokenleri paralel olarak doğrular. Kabul edilen tokenler anında çıktıya eklenir. Matematiksel olarak çıktı kalitesi değişmez (lossless), ancak duvar saati süresi 2-4× kısalabilir.

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.