Rechner für die Beschleunigung durch spekulatives Dekodieren
Eingaben
| Akzeptanzrate | 70 % |
|---|---|
| Entwurfs-Token pro Zyklus | 5 |
| Kostenverhältnis des Entwurfs | 15 % |
Rechner für die Beschleunigung durch spekulatives Dekodieren
Schätzt die Dekodierbeschleunigung durch spekulatives Sampling: Geben Sie die Akzeptanzrate des Entwurfsmodells, die Entwurfs-Token pro Zyklus und die relativen Entwurfskosten ein, um die erwartete Zahl akzeptierter Token und die tatsächliche Beschleunigung zu erhalten.
Eingaben
Entwurfsmodell
Ergebnisse
Geben Sie einen Wert ein, um die Ergebnisse zu sehen.
Details
Beschleunigung durch spekulatives Dekodieren
Spekulatives Dekodieren beschleunigt die Generierung von Sprachmodellen, indem ein kleines, günstiges Entwurfsmodell mehrere Token im Voraus rät, die das große Zielmodell anschließend auf einmal verifiziert. Sind die Vermutungen richtig, erzeugt das Zielmodell mehrere Token zum Preis eines einzigen Vorwärtsdurchlaufs; sind sie falsch, fällt es auf das gewöhnliche Dekodieren zurück. Dieser Rechner schätzt die resultierende Beschleunigung aus drei Größen: wie oft Entwurfs-Token akzeptiert werden, wie viele pro Zyklus vorgeschlagen werden und wie teuer das Entwurfsmodell im Verhältnis zum Zielmodell ist.
Funktionsweise
In einem normalen Dekoder läuft das Zielmodell einmal pro Token. Spekulatives Dekodieren lässt stattdessen das Entwurfsmodell Token vorschlagen und führt das Zielmodell dann einmal aus, um sie parallel zu prüfen. Das Zielmodell akzeptiert jedes vorgeschlagene Token, solange es mit dem übereinstimmt, was das Zielmodell selbst gesampelt hätte, stoppt bei der ersten Abweichung und sampelt diese Position aus seiner eigenen Verteilung neu. Da abgelehnte Token aus dem Zielmodell korrigiert werden, ist die Ausgabe statistisch identisch mit dem einfachen Dekodieren — das Verfahren tauscht zusätzliche Entwurfsrechenleistung gegen weniger teure Zieldurchläufe ein, ohne zu verändern, was das Modell sagt.
Die Formel
Wird jedes Token unabhängig mit Wahrscheinlichkeit akzeptiert, beträgt die erwartete Zahl der pro Zieldurchlauf erzeugten Token
τ=1−α1−αγ+1Das wäre die Beschleunigung, wenn das Entwurfsmodell kostenlos wäre. Berechnet man jedem Entwurfsdurchlauf einen Bruchteil eines Zieldurchlaufs, ergibt sich die tatsächliche Beschleunigung gegenüber dem gewöhnlichen Dekodieren zu
S=(γc+1)(1−α)1−αγ+1Der Zähler belohnt Akzeptanz und längere Vorschläge; der Nenner bestraft den Entwurfsaufwand, den diese Vorschläge kosten.
Rechenbeispiel
Angenommen, das Entwurfsmodell wird zu 70 % der Zeit akzeptiert, schlägt 5 Token pro Zyklus vor, und jeder Entwurfsdurchlauf kostet 15 % eines Zieldurchlaufs:
τS=1−0.71−0.76=0.30.8824≈2.94=(5×0.15+1)(0.3)0.8824=0.5250.8824≈1.68Jeder Zieldurchlauf liefert im Mittel fast drei Token, doch nach Bezahlung von fünf Entwurfsdurchläufen liegt die realisierte Beschleunigung bei etwa 1,7×. Eine Akzeptanz von 90 % würde sie deutlich über 2× heben, während ein schwereres Entwurfsmodell — etwa 40 % der Kosten des Zielmodells — einen großen Teil des Gewinns wieder zunichtemachen würde.
Die Konfiguration wählen
Zwei Stellgrößen dominieren. Die Akzeptanzrate steigt, wenn das Entwurfsmodell eng auf das Zielmodell abgestimmt ist, weshalb Entwürfe meist kleinere Modelle derselben Familie oder Destillationen des Zielmodells sind. Die Entwurfslänge hat ein Optimum: Da sich die Akzeptanz multiplikativ verstärkt, sinkt die Wahrscheinlichkeit, dass ein ganzer Durchlauf überlebt, geometrisch, sodass jenseits einer Handvoll Token die zusätzlichen Entwurfskosten die seltenen langen Akzeptanzen überwiegen. Das Durchfahren der Zahl der Entwurfs-Token hier zeigt, wo die Beschleunigung für eine gegebene Akzeptanzrate ihr Maximum erreicht. Wie die verbesserte Geschwindigkeit pro Token in die Antwortzeit von Anfang bis Ende einfließt, zeigt der Inferenz-Latenz-Rechner.
Häufig gestellte Fragen (FAQ)
Was ist die Akzeptanzrate?
Nachdem das Entwurfsmodell eine Folge von Token vorgeschlagen hat, prüft das Zielmodell sie und akzeptiert jedes einzelne, solange es mit dem übereinstimmt, was das Zielmodell selbst gesampelt hätte. Die Akzeptanzrate ist die Wahrscheinlichkeit dieser Übereinstimmung pro Token.
Sie steigt, wenn das Entwurfsmodell gut auf das Zielmodell abgestimmt ist — etwa eine kleinere Variante derselben Familie oder ein Modell, das auf dessen Nachahmung feinjustiert wurde — und sinkt bei schwierigem oder verteilungsfremdem Text.
Entscheidend ist, dass spekulatives Dekodieren exakt arbeitet: Abgelehnte Token werden aus dem Zielmodell neu gesampelt, sodass die Ausgabeverteilung identisch mit dem gewöhnlichen Dekodieren ist.
Warum verringern die Kosten des Entwurfsmodells die Beschleunigung?
In jedem Zyklus läuft das Entwurfsmodell mehrmals, um Token vorzuschlagen, und das Zielmodell einmal, um sie zu verifizieren. Wäre das Entwurfsmodell kostenlos, entspräche die Beschleunigung der erwarteten Zahl akzeptierter Token pro Zieldurchlauf. In Wirklichkeit benötigt jeder Entwurfsdurchlauf Zeit, sodass der Nenner die Entwurfs-Token multipliziert mit ihren relativen Kosten hinzufügt.
Ein zu großes Entwurfsmodell zehrt seinen eigenen Nutzen auf, weshalb wirksame Entwürfe weit kleiner als das Zielmodell sind.
Wie viele Entwurfs-Token sollten pro Zyklus vorgeschlagen werden?
Es gibt ein Optimum. Mehr vorgeschlagene Token heben den besten Fall, doch da sich die Akzeptanz multiplikativ verstärkt, sinkt die Wahrscheinlichkeit, dass der gesamte Durchlauf überlebt, geometrisch — sobald ein Token abgelehnt wird, werden alle späteren Vorschläge dieses Zyklus verworfen.
Jenseits einer Handvoll Token überwiegen die zusätzlichen Entwurfskosten die seltenen langen Akzeptanzen. Das Optimum hängt von der Akzeptanzrate und den Entwurfskosten ab; das Ausprobieren einiger Werte hier zeigt, wo die Beschleunigung ihr Maximum erreicht.
Haftungsausschluss
Dies ist ein vereinfachtes Modell, das eine konstante Akzeptanzrate pro Token und feste relative Entwurfskosten annimmt. Die tatsächliche Akzeptanz variiert mit dem Text und der Sampling-Temperatur, und die Verifikation verursacht hier nicht erfasste Mehrkosten, sodass gemessene Beschleunigungen abweichen. Verwenden Sie den Wert, um Konfigurationen zu vergleichen, nicht als exakte Vorhersage.