глоссарий

Continuous batching

Continuous batching

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

Почему он важен? В классическом батчинге модель работала только тогда, когда собиралась целая группа запросов. Медленные ответы задерживали всех, а GPU простаивал. Continuous batching позволяет модели на каждом шаге переключаться между тысячами активных диалогов. В результате один сервер обслуживает гораздо больше пользователей одновременно, а время ответа сокращается.

Интуитивно это похоже на конвейер. Традиционный батчинг это касса, где кассир обслуживает только одного покупателя до конца, пока остальные ждут. Непрерывный батчинг это движущаяся лента: каждый запрос продвигается на один токен за цикл, завершившиеся уходят, а на их место встают новые. Поэтому даже очень длинные генерации не мешают коротким ответам.

Пример: онлайн-чат поддержки. Если одновременно приходит 500 сообщений, модель с непрерывным батчингом обрабатывает их все в одном потоке. Она по очереди генерирует токен для каждого диалога. Пользователь с простым вопросом получает ответ за секунды, а сложный запрос не блокирует остальных.

Итог: continuous batching это одна из самых важных инженерных идей в современных ИИ-системах. Она без изменения самой модели делает сервисы в разы быстрее и дешевле, поэтому именно она стоит за массовым внедрением ассистентов и чат-ботов.