ChatPaper.aiChatPaper

Ouroboros: Спекулятивное декодирование с улучшенным созданием черновиков с использованием крупных моделей

Ouroboros: Speculative Decoding with Large Model Enhanced Drafting

February 21, 2024
Авторы: Weilin Zhao, Yuxiang Huang, Xu Han, Chaojun Xiao, Zhiyuan Liu, Maosong Sun
cs.AI

Аннотация

Методы декодирования с предварительным составлением и последующей проверкой, такие как спекулятивное декодирование, широко применяются как методы, не требующие обучения, для ускорения вывода больших языковых моделей (LLM). Вместо использования авторегрессивного процесса для последовательного декодирования токенов, спекулятивное декодирование сначала создает черновики с помощью эффективной небольшой модели. Затем LLM требуется провести проверку и исправление в неавторегрессивном режиме, чтобы минимизировать временные затраты. Генерация более длинных черновиков может привести к еще более значительному ускорению после проверки, но также влечет за собой существенные затраты на пробы и ошибки в случае неудачи. Из-за высокой вероятности неудачной проверки существующие методы декодирования не могут создавать слишком много контента для проверки за один раз, что приводит к субоптимальному ускорению вывода. В данной статье мы представляем Ouroboros, который создает пул кандидатов из фраз на основе процесса проверки LLM, чтобы предоставить кандидатов для генерации черновиков небольшой модели. Таким образом, Ouroboros может дополнительно повысить эффективность и результативность начальных черновиков. Результаты экспериментов на типичных задачах генерации текста показывают, что Ouroboros достигает ускорения до 1.9x и 2.8x по сравнению с опережающим декодированием и спекулятивным декодированием соответственно. Исходный код Ouroboros доступен по адресу https://github.com/thunlp/Ouroboros.
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.
PDF71December 15, 2024