Verliesvrij, maar niet gratis: wanneer Speculative Decoding werkt
Speculative Decoding is een hot topic in LLM-inferentie.
Bedrijven zoals DSpark claimen versnellingen van 60% tot 85%. Google publiceert ook onderzoek over deze methode.
Het concept is simpel: een klein draft-model schrijft tokens. Een groot target-model verifieert deze in één keer. Dit maakt de generatie sneller.
Maar als engineer moet je jezelf twee vragen stellen:
- Verhoogt het hallucinaties?
- Verspilt het extra model rekenkracht?
Laten we naar de feiten kijken.
Ten eerste: de kwaliteit is verliesvrij. Het target-model verifieert elk token. Als het draft-model een fout maakt bij token 3, wijst het target-model dit af en genereert het vanaf dat punt opnieuw. De output is wiskundig identiek aan die van het target-model alleen. Het versterkt hallucinaties niet.
Ten tweede: de kosten zijn reëel. Een klein model kost veel minder om te draaien dan een groot model. Een 7B-model kost misschien 1/10e van een 70B-model.
Speculative Decoding is een gok.
- Bij een volledige hit bespaar je enorme hoeveelheden rekenkracht.
- Bij een volledige miss verlies je. Je draait het draft-model plus extra stappen van het target-model. Dit is trager dan standaard inferentie.
Om te winnen, moet je deze regel volgen: Het gemiddelde aantal geaccepteerde tokens moet groter zijn dan 1 plus de overhead van het draft-model.
Als je draft-model slecht is in een specifieke taak, daalt je acceptance rate. Als deze te laag wordt, maakt Speculative Decoding je systeem trager.
Hoe je beslist of je het moet gebruiken:
- Meet je acceptance rate. Vertrouw niet op generieke benchmarks. Gebruik je eigen data en taken.
- Controleer je type taak. Gebruik het voor voorspelbare taken zoals code-aanvulling. Vermijd het voor onvoorspelbare taken zoals creatief schrijven.
- Monitor je p99-latency. Een volledige miss veroorzaakt een piek in de latency.
De beste optimalisatie is niet degene die altijd wint. Het is degene waarvan je weet wanneer je hem moet uitzetten.
Gebruik het wanneer de hit rate hoog is. Stop met het gebruik wanneer de hit rate instort.
Optionele leercommunity: https://t.me/GyaanSetuAi