От модели до ML-микросервиса
Что должен сделать ML-инженер, чтобы довести модель до production-сервиса: интерфейс, артефакт, Docker, мониторинг и обновления?
Короткий ответ
Нужно зафиксировать API, формат модели, preprocessing/postprocessing, окружение, Docker/requirements, rollout, мониторинг качества и периодическое обновление данных или модели.
Полный разбор
Production ownership начинается с контракта: какие поля приходят на вход, какой JSON или protobuf выходит, какие ошибки возможны и какие SLA нужны. Модель сохраняется в воспроизводимом формате, например ONNX или pickle/joblib с явной версией зависимостей, а preprocessing должен быть тем же, что на обучении.
Дальше сервис упаковывается в Docker, получает health checks, logging, метрики latency/error rate и model-specific monitoring. Если модель работает с базой или batch-обновлениями, нужно описать расписание, idempotency и контроль качества обновленных данных.
На интервью полезно показать, что ML-инженер отвечает не только за fit/predict, но и за контракт, воспроизводимость, rollback и наблюдаемость.
Теория
ML production - это управление контрактом между моделью, данными и потребителями сервиса.
Типичные ошибки
- Считать deploy последней командой, а не частью lifecycle.
- Не версионировать preprocessing и модель вместе.
- Не продумать rollback и мониторинг data drift.
Как отвечать на собеседовании
- Проговори API contract before model details.
- Назови monitoring и rollback как обязательные элементы.