Введение
Online Inference (онлайн-инференс) – режим работы ML-модели, при котором предсказание формируется немедленно в ответ на входящий запрос, как правило в течение миллисекунд или секунд. Модель развёртывается как постоянно работающий сервис, принимающий запросы через REST или gRPC API. В отличие от Batch Inference, онлайн-режим требует поддержания постоянной инфраструктуры и оптимизации под минимальную задержку.
История и контекст
Online Inference стал массовым явлением с распространением ML в потребительских интернет-сервисах в 2010-х годах. Netflix, Amazon, Spotify – первые компании, внедрившие real-time ML-инференс для рекомендательных систем в масштабе. С 2015 года появились специализированные платформы для сервинга моделей: TensorFlow Serving, TorchServe, Triton Inference Server (NVIDIA), KServe. Сегодня online inference является стандартной частью любой production ML-системы.
Как это работает
Типичная архитектура Online Inference Service:
- Preprocessing – получение признаков из Feature Store или вычисление на лету: нормализация, токенизация, эмбеддинги.
- Model serving – запуск модели (GPU/CPU) и получение вектора предсказаний или скора.
- Postprocessing – преобразование вывода модели в бизнес-ответ (ранжирование, порог, форматирование).
- Logging – асинхронная запись запроса и предсказания для мониторинга и последующей переразметки.
Ключевые метрики онлайн-инференса: P95 latency (задержка на 95-м перцентиле), throughput (запросов в секунду), availability (доступность), cost per inference.
Оптимизации для снижения latency
- Квантизация модели (INT8, FP16) – снижает вычислительную нагрузку.
- Batching с динамической группировкой запросов – амортизация накладных расходов GPU.
- Кэширование результатов для повторяющихся запросов.
- Model pruning – уменьшение размера модели без значительной потери качества.
Где применяется
- Рекомендательные системы – real-time ранжирование товаров/контента при загрузке страницы.
- Антифрод – скоринг каждой транзакции в момент её совершения (задержка <50 мс).
- NLP-сервисы – классификация текста, NER, генерация ответов в чат-ботах.
- Компьютерное зрение – детектирование объектов в видеопотоке реального времени.
- Голосовые ассистенты – распознавание речи и синтез ответа в диалоговом режиме.
Преимущества и ограничения
Преимущества: немедленный ответ пользователю; возможность использования актуальных данных в момент запроса; поддержка интерактивных сценариев.
Ограничения: значительно дороже Batch Inference – требует постоянно работающей инфраструктуры (GPU-серверы); сложная инженерия для обеспечения SLA по latency; масштабирование под пиковую нагрузку требует auto-scaling.
Связь с другими понятиями
Online Inference противопоставляется Batch Inference: пакетный режим дешевле, но не подходит для реального времени. Prediction Service – конкретная реализация Online Inference как микросервиса. Feature Store обеспечивает low-latency доступ к признакам для онлайн-инференса. Мониторинг модели логирует каждый запрос и ответ для отслеживания качества. KubeFlow KServe – одна из платформ для развёртывания Online Inference сервисов.