Ouroboros: Spekulative Dekodierung mit verbessertem Entwurf durch große Modelle
Ouroboros: Speculative Decoding with Large Model Enhanced Drafting
February 21, 2024
Autoren: Weilin Zhao, Yuxiang Huang, Xu Han, Chaojun Xiao, Zhiyuan Liu, Maosong Sun
cs.AI
Zusammenfassung
Drafting-then-verifying-Decodierungsmethoden wie spekulatives Decodieren sind weit verbreitete, trainingsfreie Methoden, um die Inferenz großer Sprachmodelle (LLMs) zu beschleunigen. Anstatt einen autoregressiven Prozess zur sequenziellen Dekodierung von Tokens zu verwenden, erstellt das spekulative Decodieren zunächst Entwürfe mit einem effizienten kleinen Modell. Anschließend müssen die LLMs eine Überprüfung und Korrektur in nicht-autoregressiver Weise durchführen, um den Zeitaufwand zu minimieren. Die Generierung längerer Entwürfe kann zu noch signifikanteren Beschleunigungen führen, sofern sie verifiziert werden, verursacht jedoch auch erhebliche Versuchs- und Fehlerkosten, wenn sie scheitert. Aufgrund der hohen Wahrscheinlichkeit von Verifizierungsfehlern können bestehende Decodierungsmethoden nicht zu viel Inhalt auf einmal für die Überprüfung erstellen, was zu einer suboptimalen Inferenzbeschleunigung führt. In diesem Artikel stellen wir Ouroboros vor, das einen Phrasenkandidatenpool aus dem Verifizierungsprozess der LLMs erstellt, um Kandidaten für die Entwurfsgenerierung des kleinen Modells bereitzustellen. Dadurch kann Ouroboros die Effizienz und Wirksamkeit der initialen Entwürfe weiter verbessern. Die experimentellen Ergebnisse typischer Textgenerierungsaufgaben zeigen, dass Ouroboros Beschleunigungen von bis zu 1,9x und 2,8x im Vergleich zu Lookahead-Decodierung und spekulativer Decodierung erreicht. Der Quellcode von Ouroboros ist unter https://github.com/thunlp/Ouroboros verfügbar.
English
Drafting-then-verifying decoding methods such as speculative decoding are
widely adopted training-free methods to accelerate the inference of large
language models (LLMs). Instead of employing an autoregressive process to
decode tokens sequentially, speculative decoding initially creates drafts with
an efficient small model. Then LLMs are required to conduct verification and
correction in a non-autoregressive fashion to minimize time overhead.
Generating longer drafts can lead to even more significant speedups once
verified, but also incurs substantial trial and error costs if it fails.
Suffering from the high verification failure probability, existing decoding
methods cannot draft too much content for verification at one time, achieving
sub-optimal inference acceleration. In this paper, we introduce Ouroboros,
which constructs a phrase candidate pool from the verification process of LLMs
to provide candidates for draft generation of the small model. Thereby,
Ouroboros can further improve the efficiency and effectiveness of the initial
drafts. The experimental results on typical text generation tasks show that
Ouroboros achieves speedups of up to 1.9x and 2.8x compared to lookahead
decoding and speculative decoding, respectively. The source code of Ouroboros
is available at https://github.com/thunlp/Ouroboros.