ELDR: умный routing для распределённого обслуживания больших мультиэкспертных моделей

В распределённом LLM serving разные запросы обрабатываются в два этапа: сначала prefill на одних GPU, потом decode на других. После prefill каждый запрос отправляется на decode рабочего на основе его текущей нагрузки. Однако для мультиэкспертных моделей (MoE) этого недостаточно: два рабочих с одинаковой нагрузкой могут работать с разной скоростью, потому что каждый decode шаг загружает в память веса всех активных экспертов, а их набор зависит от конкретного запроса.
Исследователи предложили ELDR (Expert-Locality-Aware Decode Routing), которая учитывает эту особенность. Идея проста: по экспертам, которые активировались на prefill, можно предсказать, какие эксперты будут активны на decode. ELDR строит из этих данных «экспертную сигнатуру» запроса, а затем оффлайн разделяет пространство сигнатур по decode рабочим с помощью K-means кластеризации. При поступлении нового запроса система отправляет его на самый свободный рабочий среди тех, чья сигнатура лучше всего совпадает с сигнатурой запроса.
Для сохранения точности сигнатур при prefix caching (когда блоки KV кеша переиспользуются) ELDR ведёт специальный сигнатурный кеш, синхронизированный с блоком KV кеша. Метод реализован в vLLM и протестирован на развёртываниях до 40 GPU. На трёх разных MoE моделях и двух типах рабочих нагрузок ELDR показал медиану TPOT (time per output token, время на токен) на 5.9, 13.9% ниже, чем лучший из четырёх baseline методов на основе балансировки нагрузки. При этом результаты модели остаются неизменными.
Ключевые факты
- ELDR предсказывает, какие эксперты активируются на decode фазе, по экспертам, активированным на prefill, и строит экспертную сигнатуру запроса
- Offline K-means разделяет пространство сигнатур по decode рабочим; online routing отправляет запрос на наименее нагруженного из лучше всего подходящих
- Сигнатурный кеш, синхронизированный с KV кешем, обеспечивает точность сигнатур при использовании prefix caching
- На системах до 40 GPU и трёх MoE моделях ELDR снижает median TPOT на 5.9, 13.9% против лучшего baseline для балансировки нагрузки
- Реализован в vLLM, выход модели не меняется, это чистая инфраструктурная оптимизация
Почему это важно
Распределённое serving (разделение prefill и decode на разные рабочие) становится стандартом для больших языковых моделей, потому что prefill и decode имеют разные требования к GPU. Для мультиэкспертных моделей (MoE) существующие методы распределения нагрузки смотрят только на количество запросов, но игнорируют, что разные запросы могут активировать разные наборы экспертов. Это создаёт скрытую дисбалансировку: рабочий может выглядеть свободным, но загружаться медленно, потому что его batch содержит много редких экспертов. Уменьшить задержку за счёт более умного routing означает более дешёвое и быстрое обслуживание больших моделей.
Кому это важно
Компании и системы, работающие с большими MoE моделями в production (OpenAI, Google, Meta, Mistral и другие создатели MoE). Разработчики инфраструктуры для LLM serving, использующие или рассматривающие vLLM. Облачные платформы и компании, оптимизирующие стоимость служб LLM API. Исследователи, работающие над масштабированием и эффективностью больших моделей.
Как это применить
ELDR реализована в vLLM, значит она может быть интегрирована в существующие системы serving на его основе. Требуется профилировать экспертные активации на prefill для целевых рабочих нагрузок, построить кластеры сигнатур (оффлайн), и переключить routing на ELDR вместо простого load balancing. Результат зависит от конкретного MoE: на системах с большим разбросом в активации экспертов (разные запросы используют сильно разные наборы экспертов) эффект будет больше.
Можно ли доверять
Работа исследовательская, опубликована на HuggingFace Papers (arxiv). Авторы (Sangjin Choi и соавторы) реализовали метод в vLLM, что добавляет практической ценности. Эксперименты проведены на реальных мультиэкспертных моделях и системах (до 40 GPU), а не только на симуляциях. Результаты консервативны (5.9, 13.9%, не огромные числа) и тестированы на нескольких моделях и нагрузках, что повышает доверие.
Риски и подводные камни
Эффект ELDR сильно зависит от паттернов активации экспертов в целевой нагрузке: если все запросы активируют примерно одинаковые эксперты, прирост будет минимальным. Сигнатурный кеш добавляет память и сложность; нужно убедиться, что он не станет узким местом. Метод требует профилирования и оффлайн кластеризации под конкретную модель и рабочую нагрузку, это нельзя просто включить в любой системе. На небольших системах (менее 10 GPU) или при низком объёме запросов overhead от ELDR может перевешить выгоду.
«ELDR уменьшает медиану времени на токен на 5.9, 13.9% против самого сильного из четырёх базовых методов балансировки нагрузки на трёх MoE моделях и двух типах рабочих нагрузок, при неизменном выводе модели.»
— Результаты ELDR на реальных развёртываниях до 40 GPU