Ускорение инференса больших языковых моделей

Для ускорения генерации текста большими языковыми моделями (LLM) применяют различные алгоритмы, нацеленные на сокращение количества вычислений, необходимых для генерации каждого токена. Эти методы эксплуатируют неоднородность процесса генерации текста, когда некоторые токены предсказуемы, а другие требуют полных вычислений.
Ускорение инференса больших языковых моделей
Изображение носит иллюстративный характер

Спекулятивный декодинг использует «драфт» модель, меньшую и более быструю, для предсказания последовательности токенов. Затем эти «спекулятивные» токены проверяются основной моделью, и принимаются или отклоняются с определенной вероятностью. Lookahead декодинг идет дальше, используя хеш-таблицы для хранения и повторного использования принятых последовательностей токенов, дополнительно повышая стабильность и скорость.

Другие подходы, такие как early exit и skip decode, требуют переобучения модели и добавления дополнительных слоев или модификации процесса обучения, что является более сложным, но может привести к существенному ускорению. Методы, основанные на предсказании нескольких токенов за раз, такие как Medusa и Eagle, достигают высокой скорости за счет обучения дополнительных голов или «тушки» модели, предсказывающих несколько токенов, что позволяет эффективнее использовать ресурсы. Eagle использует идею спекулятивного декодирования, обучая небольшую тушку и комбинируя ее с весами основной модели.

Выбор конкретного метода зависит от доступных ресурсов, возможности дообучения модели и поддерживаемых фреймворков. Lookahead является хорошим вариантом, когда нет ресурсов на обучение. Спекулятивный декодинг прост в реализации при наличии draft модели. Методы Eagle/Medusa, хоть и сложнее, при наличии ресурсов могут обеспечить наибольшее ускорение.


Новое на сайте