Was ist Spekulatives Dekodieren?
Schnelle Antwort
Spekulatives Dekodieren kombiniert ein kleines Draft-Modell mit einem größeren Zielmodell. Das Draft-Modell schlägt mehrere Tokens im Voraus vor, und das Zielmodell prüft sie alle in einem parallelen Forward-Pass statt in einem sequenziellen Durchgang pro Token, was die Generierung beschleunigt, wenn die Vorschläge akzeptiert werden.
- ▸Ein kleines Draft-Modell schlägt mehrere Tokens vor, bevor das Hauptmodell dran ist.
- ▸Das größere Zielmodell prüft die vorgeschlagenen Tokens in einem einzigen parallelen Durchgang.
- ▸Die Ausgabequalität entspricht exakt der des Zielmodells — spekulatives Dekodieren ändert nicht, was erzeugt wird, nur wie schnell.
Aktualisiert: 14. Juli 2026
Wichtigste Punkte
- ✓Ein kleines Draft-Modell schlägt Tokens vor; das größere Zielmodell prüft sie in einem parallelen Durchgang
- ✓Die Ausgabequalität ist identisch mit dem alleinigen Betrieb des Zielmodells — nur die Geschwindigkeit ändert sich
- ✓Der Geschwindigkeitsgewinn ist am größten bei vorhersehbarem Text (Code, repetitive Struktur), wo das Draft-Modell häufiger richtig rät
- ✓Das Draft-Modell muss denselben Tokenizer und Vokabular wie das Zielmodell verwenden
So funktioniert es
Ein Draft-Modell, deutlich kleiner und schneller als das Zielmodell, erzeugt eine kurze Folge von Kandidaten-Tokens. Das Zielmodell bewertet diese gesamte Folge dann in einem einzigen Forward-Pass, akzeptiert Tokens, die mit dem übereinstimmen, was es selbst erzeugt hätte, und verwirft den Rest — inklusive allem, was nach der ersten Abweichung erzeugt wurde.
Da die parallele Prüfung mehrerer Tokens auf dem Zielmodell ungefähr gleich viel kostet wie die sequenzielle Erzeugung eines einzigen Tokens, führen akzeptierte Vorschläge direkt zu einem Geschwindigkeitsgewinn, ohne die endgültige Ausgabe zu verändern. Das Zielmodell hat immer das letzte Wort — ein falscher Vorschlag des Draft-Modells kostet nur die (kurze) Zeit für seine Erzeugung und landet nie in der Ausgabe.
Wann Spekulatives Dekodieren am meisten hilft
Setzen Sie spekulatives Dekodieren ein, wenn Sie Code, strukturierte Daten oder anderen vorhersehbaren Text erzeugen, bei dem die Vorschläge des Draft-Modells häufig akzeptiert werden und der Geschwindigkeitsgewinn am größten ist. Nutzen Sie es, wenn Sie bereits durch die Generierungsgeschwindigkeit begrenzt sind und nicht durch die Verarbeitung des Prompts, da spekulatives Dekodieren gezielt den Token-für-Token-Generierungsschritt beschleunigt.
Verzichten Sie auf spekulatives Dekodieren bei hochkreativem, unvorhersehbarem Text (offene Fiktion, Brainstorming), bei dem die Vorschläge des Draft-Modells seltener akzeptiert werden und der Geschwindigkeitsgewinn schrumpft — der zusätzliche Aufwand für das Draft-Modell kann den Gewinn im schlechtesten Fall sogar zunichtemachen. Verzichten Sie ebenfalls darauf, wenn kein kompatibles kleineres Modell aus derselben Modellfamilie als Draft-Modell verfügbar ist.
Ein Draft-Modell einrichten
Das Draft-Modell muss denselben Tokenizer und dasselbe Vokabular wie das Zielmodell verwenden — die Kombination von Modellen aus unterschiedlichen Familien (oder sogar unterschiedlichen Größen eines Modells, bei dem sich das Vokabular zwischen Versionen geändert hat) funktioniert nicht. Am gängigsten ist ein kleineres Modell aus derselben Familie wie das Zielmodell (zum Beispiel ein Modell der 1B-Klasse als Draft für ein Modell der 13B-Klasse aus derselben Familie).
Mehrere lokale Inferenz-Tools (darunter llama.cpp) unterstützen spekulatives Dekodieren nativ — die Einrichtung erfordert in der Regel nur die Angabe von Ziel- und Draft-Modell beim Start, ohne Änderungen daran, wie Sie das Modell anschließend prompten.