Как сделать ИИ-помощников быстрее и дешевле: аллокация ресурсов для обслуживания LLM-сервисов
Исследователи предложили математическую модель SARA, которая помогает оптимально распределять вычислительные ресурсы между компонентами LLM-сервисов — и обещает прирост полезной пропускной способности на 26,6% при тех же затратах.
Сервисы на основе больших языковых моделей потребляют колоссальные объёмы вычислительных ресурсов, и ключ к их ускорению лежит не в покупке более мощного железа, а в умном распределении того, что уже есть.
Проблема, о которой редко говорят
Каждый раз, когда вы задаёте вопрос голосовому помощнику, генерируете изображение через нейросеть или просите чат-бота написать текст, за кулисами происходит сложная цепочка вычислений. Запрос проходит через несколько стадий обработки, каждая из которых предъявляет свои требования к процессорам, памяти и сети. И если одна стадия становится узким местом, пользователь получает задержку — ту самую секунду-две, которые превращаются в нервное ожидание.
С ростом популярности мультимодальных сервисов и «агентных» ИИ-систем, которые не просто отвечают на вопросы, а выполняют цепочки действий, проблема становится острее. Контекстные окна увеличиваются, модели становятся сложнее, а пользователи — нетерпеливее.
Что такое SARA и зачем она нужна
Группа исследователей под руководством Шиконга Лю (Shicong Liu) опубликовала на arXiv статью, в которой описывает фреймворк SARA — сокращение от SLO-Aware Resource Allocation. Если перевести на человеческий: это система, которая умеет распределять вычислительные ресурсы между компонентами LLM-сервиса так, чтобы при фиксированном бюджете получить максимум полезной производительности.
Полезная производительность (goodput) — это не просто скорость обработки запросов, а количество запросов, обработанных с соблюдением заранее оговорённых требований к качеству сервиса. Эти требования называются SLO — Service Level Objectives. Грубо говоря, SLO отвечает на вопрос: «За какое время пользователь гарантированно получит ответ?»
Как устроена обработка запроса в LLM
Чтобы понять, что именно оптимизирует SARA, нужно разобраться, как языковая модель обрабатывает запрос на практике. В современных высокопроизводительных системах этот процесс разделён на три стадии:
Префил (prefill) — модель анализирует входной запрос пользователя, превращая его во внутреннее представление. Это вычислительно тяжёлая операция, которая сильно нагружает процессоры (GPU). Чем длиннее запрос и больше контекст, тем больше работы.
Передача кэша (KV cache transfer) — внутреннее представление (так называемый кэш ключ-значение) передаётся от одного блока оборудования к другому. Здесь критична пропускная способность сети и шин данных.
Декод (decode) — модель постепенно генерирует ответ, символ за символом. Эта стадия потребляет много высокоскоростной памяти (HBM — High Bandwidth Memory), потому что модель должна удерживать в памяти весь предыдущий контекст.
Каждая из этих стадий — это, по сути, отдельное «узкое место», и оптимизация одной из них может не дать ничего, если ограничение возникает где-то в другом месте.
Математика вместо угадывания
Большинство существующих систем распределения ресурсов для LLM-сервисов полагаются на эмпирические подходы: профилирование конкретного оборудования, перебор конфигураций или эвристические правила планирования. Это работает, но неэффективно — как перебор вариантов вместо решения уравнения.
Авторы SARA применили теорию массового обслуживания — классический раздел прикладной математики, который изучает очереди. Каждую стадию они смоделировали как типичную систему очередей:
- Префил — как очередь с несколькими серверами (модель M/G/k), где ограничение — вычислительная мощность GPU.
- Передача кэша — как очередь с одним сервером (модель M/G/1), где ограничение — пропускная способность канала.
- Декод — как обобщённый процесс рождения-гибели, где ограничение — объём и скорость памяти HBM.
Анализ этих моделей позволяет предсказать, как поведётся система при разных объёмах нагрузки, и рассчитать минимальные требования к ресурсам для выполнения заданных SLO.
Что это даёт на практике
Согласно результатам моделирования и аппаратных тестов, SARA предсказывает метрики SLO на каждой стадии с ошибкой менее 5%. А главное — обеспечивает рост полезной пропускной способности в среднем на 26,6% по сравнению с лучшими существующими методами при том же бюджете на оборудование.
На практике это означает: без покупки дополнительных серверов и без реконфигурации кластера можно обрабатывать заметно больше запросов в единицу времени, при этом пользователи не почувствуют ухудшения скорости.
Для провайдеров облачных ИИ-сервисов это прямая экономия. Арендная стоимость GPU-кластеров исчисляется десятками тысяч долларов в месяц, и 26% прироста эффективности при тех же затратах — это серьёзная сумма на годовом горизонте.
Практические ограничения
Впрочем, важно понимать контекст. SARA — это академическая работа, а не готовый продукт. Авторы признают, что их модель опирается на определённые допущения о характере нагрузки. В реальных продакшн-системах трафик может быть значительно более нерегулярным, а взаимодействие между стадиями — сложнее, чем предполагает математическая модель.
Кроме того, 26,6% прироста — это результат в контролируемых условиях симуляции и на конкретных аппаратных конфигурациях. Реальные условия эксплуатации могут дать как лучшие, так и худшие результаты.
Тем не менее сам подход — использовать аналитические модели вместо грубого перебора — выглядит перспективным. По мере того как рынок ИИ-сервисов растёт, а стоимость инфраструктуры остаётся высокой, подобные оптимизации будут становиться всё более востребованными.
Что это значит для обычного пользователя
Если вы пользуетесь любым ИИ-сервисом — будь то чат-ассистент, генератор изображений или инструмент для написания кода — вы прямо заинтересованы в том, чтобы провайдеры применяли подобные оптимизации. Более быстрые ответы, более стабильная работа в часы пик и, в конечном счёте, более низкие цены на подписки — всё это становится возможным, когда инфраструктура работает эффективнее.
SARA — это не революция и не готовое решение «под ключ». Это шаг в направлении, где за обслуживанием нейросетей стоит не инженерная интуиция и brute force, а строгая математика. И, судя по результатам, шаг довольно уверенный.