Вопрос проверяет способность масштабировать ресурсоёмкие сервисы с предсказуемой производительностью.
ML-нагрузка часто неравномерна и ресурсоёмка, поэтому масштабирование должно быть гибким. Обычно разделяют онлайн-инференс и офлайн-обработку. Используют горизонтальное масштабирование и очереди задач. Автоскейлинг настраивают по метрикам CPU, памяти или длине очереди. Важно контролировать холодный старт моделей.
Масштабирование ML-сервисов — это управление количеством и размером вычислительных ресурсов для обработки инференса и обучения моделей.
Разделение типов нагрузки
Онлайн-инференс: низкая задержка.
Офлайн-задачи: высокая пропускная способность.
Очереди задач
Сглаживание пиков нагрузки.
Контроль параллелизма.
Горизонтальное масштабирование
Несколько реплик сервиса.
Балансировка запросов.
Автоскейлинг
Масштабирование по метрикам.
Предотвращение перерасхода ресурсов.
Оптимизация моделей
Квантование, батчинг инференса.
Снижение времени обработки.
ML-сервисы масштабируются эффективнее всего через очереди, горизонтальное масштабирование и метрики, а не за счёт “больших” инстансов.