Speculative decoding nima? Katta model tez javob beradigan sirda
Kichik model chizib, katta model tekshiradi: bir urinishda bir nechta token. DeepSeek-V3, Medusa, EAGLE — spekulyativ dekodlash qanday ishlaydi va nega sifat buzilmaydi.
ChatGPT javobini so’zma-so’z yozib beradi — buni ko’rgan har kimning xayoliga keladigan birinchi savol: nega bu shunchalik sekin? Asosiy javob LLM arxitekturasida yashiringan: model autoregressiv — har bir yangi token uchun butun model orqali to’liq hisob-kitob qilinadi, ya’ni bir oldinga passda faqat BITTA token chiqadi. Javob ichida turgan hisob-kitob esa katta modelning vazifasi — o’qish, katta o’lchamdagi og’irliklarni xotiradan olib kelish.
Ushbu texnik bo’shliqlar seriyamizning 17-qismida — inference’ni arzonlashtirgan eng ommabop g’oyalardan biri: speculative decoding (spekulyativ dekodlash).
G’oya bir gapda
Kichik va tez «chizmatchi» (draft) model avval bir nechta token taklif qiladi, katta (target) model esa ularning hammasini bitta oldinga passda tekshiradi. Tasdiqlanganda — bir urinishda 1 ta emas, K+1 ta token chiqadi. Rad etilganda — birinchi xatodan keyin qayta boshlanadi, lekin hech narsa yo’qotilmaydi.
NVIDIA TensorRT-LLM hujjatidagi rasmiy ta’rif shu: «bir iteratsiyada bittadan ko’p token generatsiya qilish texnikalari to’plami — kichik batch’larda GPU to’liq ishlatilmayotgan holatda o’rtacha token kechikishini kamaytiradi».
Nega sifat buzilmaydi?
Bu eng chiroyli qismi. Tekshirish rejection sampling orqali boradi: katta model har bir taklif qilingan token uchun o’z ehtimollik taqsimotini chiqaradi va mos kelganini qabul qiladi, birinchi kelishmovchilikda esa o’z variantini qayta tanlaydi. Ya’ni yakuniy matn taqsimoti — katta model yolg’iz ishlaganidagi bilan bir xil (Modular hujjatida buni «natija target model yolg’iz ishlagandagi bilan bir xil» deb ta’kidlaydi). Kichik model faqat taxmin qiladi, qaror kattaniki.
Qanday usullar bor?
- Alohida draft model — klassik yo’l: kichik LLM taklif beradi (Leviathan va boshqalarning «Fast Inference from Transformers via Speculative Decoding» maqolasidan).
- Medusa boshlari — modelga qo’shimcha «boshlar» o’rgatiladi: birinchisi keyingi tokenni, ikkinchisi undan keyingini bashorat qiladi. Daraxt shaklidagi yo’llar bilan bir necha variant parallel tekshiriladi.
- EAGLE / EAGLE-3 — yashirin holatlar (hidden states)dan foydalanib draft quradigan bir qatlamli transformator.
- MTP (Multi-Token Prediction) — DeepSeek-V3’ning rasmiy yondashuvi: model o’qitishda o’zi «keyingi bir nechta tokenni» bashorat qilishga mashq qilinadi, va bu modul keyin speculative decoding uchun ishlatiladi. DeepSeek-V3 repoda buning afzalligi rasman yozilgan: MTP «model sifatiga foydali» va «inference tezlashtirish uchun speculative decoding’da ham ishlatilishi mumkin».
- N-gram / lookahead — neyro-dizaynsiz: prompt ichidagi takroriy kalit so’zlardan draft qilish.
vLLM, TensorRT-LLM va Modular MAX kabi serving-tizimlarining barchasi bu usullarni qo’llab-quvvatlaydi — bu allaqachon ijodiy g’oya emas, sanoat standarti.
Nega bu sizga qiziq?
- Tezlik 2-3 barobar oshadi (draft sifatiga qarab) — xuddi shu model, xuddi shu javoblar, kam kechikish.
- Bu MoE va kvantlash bilan bir xil yo’nalish: inference xarajatini kamaytirish — AI kompaniyalarning asosiy jangi. Prompt caching va Batch API bilan birga bu to’rtlik — arzon AI’ning texnik bazasi.
- DeepSeek-V3’ning MTP moduli ochiq modelda ham ishlashini ko’rsatadi: tezlik sir yopiq laboratoriyalarda emas.
Halol cheklovlar
- Acceptance rate — kalit so’z. Agar kichik model ko’p xato qilsa, tekshiruvlar behuda ketadi va tezlik umuman oshmadi — hatto tushadi.
- Yuqori yukda (ko’p parallel so’rov) GPU allaqachon to’lgan — foyda kamayadi. TensorRT-LLM ochiq yozadi: bu «kichik batch» muammosi uchun.
- Draft model tanlash/o’qitish — o’ziga xarajat. Shu sababli DeepSeek’ning MTP yo’li nafis: model o’zida «kichik o’zi»ni olib yuradi.
Xulosa: katta modelning og’irligi — uning aql-idroki uchun to’lov. Speculative decoding esa shu to’lovni javobning «oq koridor»larida chegirma bilan o’tkazish usuli. Keyingi qismlarda inference narxi va distillyatsiyani ko’ramiz.
Manbalar: NVIDIA TensorRT-LLM rasmiy hujjati (Speculative Sampling), DeepSeek-V3 rasmiy GitHub repozitoriysi (MTP), vLLM Ascend hujjatlari, Modular MAX hujjatlari. Seriya: «Texnik bo’shliqlar» 17-qism.