Больше половины моделей, показанных на пилоте, никогда не доходят до промышленной эксплуатации. Причина редко в качестве модели: чаще нет ответа на вопросы, кто отвечает за её работу, как понять, что она стала хуже, и что делать, когда это произойдёт. MLOps — это про ответы на эти вопросы.
Чем модель отличается от обычного кода
- Результат зависит не только от кода, но и от данных, на которых модель обучали.
- Модель может ошибаться, не падая. Обычная программа при сбое даёт ошибку, модель просто выдаёт неверный ответ уверенным тоном.
- Качество деградирует со временем, даже если код не менялся: меняется реальность за окном.
- Воспроизвести результат нельзя без тех же данных и тех же параметров обучения.
Дрейф данных
Главная причина деградации. Модель обучили на прошлогодних заявках, а в этом году изменился ассортимент, формулировки или сезон. Формально всё работает, метрики никто не смотрит, а доля ошибок растёт месяцами, пока это не замечают пользователи.
Модель без мониторинга качества — это система, которая портится молча. Это хуже, чем система, которая ломается громко.
Что входит в MLOps на практике
- Версионирование данных и моделей. Для каждой версии в эксплуатации известно, на каких данных и с какими параметрами она обучена.
- Воспроизводимое обучение. Запуск обучения одной командой, с тем же результатом.
- Проверки перед выкаткой. Модель не попадает в продуктив, если на контрольной выборке она хуже предыдущей.
- Мониторинг качества в бою. Отслеживание не только доступности сервиса, но и распределения входных данных и доли спорных ответов.
- Обратная связь от людей. Исправления операторов сохраняются и становятся данными для следующего обучения.
- Откат. Возможность вернуть предыдущую версию модели за минуты.
Когда MLOps не нужен
Если модель одна, обновляется раз в год и её ошибки не стоят дорого, полноценная инфраструктура будет дороже пользы. Достаточно версионирования и простого отчёта о качестве. MLOps начинает окупаться, когда моделей несколько, они обновляются регулярно или их ошибки имеют цену.
С чего начать
- Зафиксируйте метрику качества и порог, ниже которого модель считается непригодной.
- Соберите контрольную выборку и не трогайте её — на ней сравниваются все версии.
- Складывайте исправления операторов в отдельное хранилище с первого дня эксплуатации.
- Настройте отчёт о качестве хотя бы раз в неделю, даже если он приходит письмом.
- Опишите, кто получает сигнал о деградации и что делает дальше.
Частые вопросы
Нужен ли отдельный человек под MLOps?
На одну-две модели обычно нет: практики встраиваются в работу команды. Отдельная роль появляется, когда моделей больше пяти.
Как часто нужно переобучать модель?
Не по календарю, а по метрике. Переобучение запускается, когда качество на контрольной выборке или доля спорных случаев выходит за порог.
Можно ли делать всё это в закрытом контуре?
Да. Все компоненты — хранение данных, обучение, реестр моделей, мониторинг — разворачиваются на своём оборудовании.
Смотрите также: разработка AI-решений и разбор: вывод пилота в эксплуатацию.