“`html
Эффективное параллельное инференцирование LLM с помощью KV-Runahead
Большие языковые модели (LLM), в частности модели Generative Pre-trained Transformer (GPT), продемонстрировали высокую производительность в различных языковых задачах. Однако существуют вызовы в их архитектуре декодера, особенно во времени до первого токена (TTFT) и времени на генерацию каждого последующего токена (TPOT). TTFT, зависящее от обширного контекста пользователя, и TPOT, для быстрой генерации последующих токенов, побудили исследования в направлении решений, связанных с памятью, таких как разрежение и спекулятивное декодирование. Параллелизация через тензорные и последовательные методы решает вычислительные ограничения TTFT, но все еще не обладает оптимизацией для масштабируемого инференцирования LLM из-за неэффективностей в вычислении внимания и коммуникации.
Оптимизация инференцирования LLM
Инференцирование генеративной LLM включает фазу запроса, где генерируются начальные токены после получения контекста пользователя, и фазу расширения, используя кэшированные встраивания ключ-значение для ускорения генерации последующих токенов. Для минимизации TTFT для длинных контекстов важно эффективное управление кэшем KV и быстрое вычисление карты внимания. Различные методы оптимизации, такие как PagedAttention и CacheGen, решают эти вызовы. Техники параллелизации, такие как тензорная и последовательная параллелизация, направлены на оптимизацию вычислительных ограничений TTFT, с инновациями, такими как KV-Runahead, дополнительно улучшающими масштабируемость и балансировку нагрузки для повышения эффективности инференцирования.
Преимущества KV-Runahead
Исследователи Apple представляют технику параллелизации KV-Runahead, специально разработанную для инференцирования LLM для минимизации TTFT. Используя существующий механизм кэширования KV, KV-Runahead оптимизирует распределение популяции кэша KV между процессами, обеспечивая балансировку нагрузки на уровне контекста. Капитализируя на причинном вычислении внимания, встроенном в KV-кэш, KV-Runahead эффективно снижает вычислительные и коммуникационные затраты, что приводит к более низкому TTFT по сравнению с существующими методами. Важно отметить, что его реализация требует минимальных усилий по инженерной части, так как он повторно использует интерфейс кэша KV без значительных модификаций.
Эксперименты и результаты
Исследователи провели эксперименты на одном узле с 8× графическими процессорами NVidia A100 при высоких (300 ГБ/с) и низких (10 ГБ/с) условиях пропускной способности. KV-Runahead, использующий FP16 для инференцирования, был сравнен с техникой тензорной/последовательной параллелизации (TSP) и продемонстрировал превосходную производительность, последовательно превосходя TSP в различных сценариях. Различные варианты KV-Runahead, включая KVR-E с равномерным разделением контекста, KVR-S с поиском разделения и KVR-P с предсказанным разделением, были оценены на эффективность. KV-Runahead достигает значительного ускорения, особенно с длинными контекстами и большим количеством графических процессоров, даже превосходя TSP в сетях с низкой пропускной способностью. Кроме того, KV-Runahead проявляет устойчивость к неоднородной пропускной способности сети, демонстрируя преимущества своего механизма коммуникации.
В данной работе исследователи Apple представили KV-Runahead, эффективный параллельный метод инференцирования LLM, направленный на снижение времени до первого токена. KV-кэш достиг значительного ускорения, более чем на 60% в генерации первого токена по сравнению с существующими методами параллелизации. Кроме того, KV-Runahead демонстрирует повышенную устойчивость в сценариях с неоднородной пропускной способностью сети.
“`