Разобрать процесс

MLOps: модели в продакшене

Обученная модель – это половина дела. Вторая половина: воспроизводимые данные, версии, автотесты качества, деплой без ручных шагов, мониторинг дрейфа и понятный откат. Мы строим этот контур, чтобы модель продолжала работать через полгода, когда данные изменились, а автор уже занят другим.

Цена
от 250 000 ₽
Срок
4–6 недель
Работаем с
MLflow, Docker, Kubernetes
  • ВоспроизводимоТот же результат из тех же данных
  • ОткатВозврат к прошлой версии за минуты
  • ДрейфВидно до жалоб пользователей

Модель работает у автора на ноутбуке

Демо прошло хорошо, метрики понравились. Дальше выясняется, что превратить это в работающий сервис – отдельный проект.

Результат не воспроизводится

Тот же ноутбук на тех же данных даёт другие цифры. Непонятно, какая версия данных и параметров дала показанный результат.

Деплой руками по инструкции

Выкладка занимает день и делается одним человеком по памяти. При его отсутствии обновить модель некому.

Качество падает незаметно

Данные меняются, точность плывёт. Узнают об этом от бизнеса через месяцы, а не от мониторинга на второй неделе.

Откатиться некуда

Новая версия оказалась хуже, а прежней не сохранилось ни в артефактах, ни в реестре. Приходится переобучать в авральном режиме.

Что входит в контур

Реестр моделей и версии

Каждая версия хранится вместе с данными, параметрами и метриками, на которых обучалась. Всегда видно, что именно работает в проде сейчас.

Воспроизводимое обучение

Обучение запускается как пайплайн, а не как ноутбук. Тот же вход даёт тот же результат независимо от машины и человека.

Автоматический деплой

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

Мониторинг дрейфа

Отслеживаем распределение входных данных и качество предсказаний. Расхождение с обучающей выборкой поднимает тревогу до того, как её заметит бизнес.

Сервис предсказаний

Модель оборачивается в API с логированием запросов, ограничением нагрузки и понятным поведением при отказе. Логи потом становятся данными для переобучения.

Регулярное переобучение

Пайплайн переобучения по расписанию или по сигналу дрейфа, с той же проверкой качества перед выкладкой.

Как проходит работа

  1. Аудит текущего состояния

    1–2 недели

    Смотрим, как модель обучается и выкладывается сейчас, что хранится, что теряется. Обычно выясняется, что главная проблема не в инфраструктуре, а в данных – где они и кто их меняет.

  2. Данные и воспроизводимость

    2–4 недели

    Наводим порядок в источниках и версиях данных, переносим обучение в пайплайн, подключаем реестр моделей и логирование экспериментов.

  3. Сервис и деплой

    2–4 недели

    Оборачиваем модель в сервис, собираем конвейер выкладки с проверками качества и механизмом отката, разворачиваем в вашем окружении.

  4. Мониторинг и передача

    2–3 недели

    Подключаем дашборды качества и дрейфа, настраиваем оповещения, пишем регламент дежурства и обучаем вашу команду.

С чем мы работаем

MLflowDockerKubernetesAirflowDVCFastAPIPostgreSQLPrometheusGrafanaGitLab CI

Данные и доступы

Контур у вас

Пайплайны, хранилище моделей и мониторинг разворачиваются в вашей инфраструктуре.

Проверки перед выкладкой

Версия с метрикой ниже порога на контрольной выборке в работу не уходит.

Доступы по минимуму

Просим только те права, которые нужны для работы, и на время работы. После запуска наши учётные записи закрываются или передаются вашему администратору.

Что нужно от вас

Модель и данные

Текущая модель, данные, на которых её учили, и метрика, по которой судят о качестве.

Инфраструктура

Серверы или облако, где будет жить контур, и права на развёртывание.

Человек с вашей стороны

Один сотрудник, который знает процесс и может ответить, почему он устроен именно так. Без него настройка превращается в угадывание.

Чего мы делать не берёмся

  • Обещать качество модели

    MLOps делает выкладку воспроизводимой и следит за дрейфом, но качество самой модели зависит от данных и задачи.

  • Продавать оборудование

    Серверы и облачные мощности в смету наших работ не входят.

Сколько стоит MLOps-контур

«Одна модель в продакшн» – от 250 000 ₽, «Полный контур» – от 550 000 ₽, «Платформа для команды» – от 1 200 000 ₽. Указана начальная цена. Каждый проект индивидуален, поэтому итоговая сумма может отличаться: изредка она выходит ниже, но обычно окончательную цену формируем после подробного обсуждения и плана задач. Цена зависит от числа моделей и от того, разворачиваемся ли мы в облаке или в вашем закрытом контуре.

Одна модель в продакшн

от 250 000 ₽
Срок: 4–6 недель
  • Сервис предсказаний с API
  • Реестр версий и артефактов
  • Деплой с проверкой качества
  • Базовый мониторинг

Полный контур

от 550 000 ₽
Срок: от 2 месяцев
  • Пайплайны обучения и данных
  • Мониторинг дрейфа и оповещения
  • Автоматический откат версий
  • Регулярное переобучение
  • Месяц сопровождения

Платформа для команды

от 1 200 000 ₽
Срок: от 4 месяцев
  • Несколько моделей и команд
  • Развёртывание в закрытом контуре
  • Разграничение доступа и аудит
  • Обучение вашей команды
  • Квартал сопровождения
Сравнить уровни таблицей
Уровни работы: что входит, срок и начальная цена
УровеньЧто входитСрокЦена
Одна модель в продакшнСервис предсказаний с API, Реестр версий и артефактов, Деплой с проверкой качества, Базовый мониторинг4–6 недельот 250 000 ₽
Полный контурПайплайны обучения и данных, Мониторинг дрейфа и оповещения, Автоматический откат версий, Регулярное переобучение, Месяц сопровожденияот 2 месяцевот 550 000 ₽
Платформа для командыНесколько моделей и команд, Развёртывание в закрытом контуре, Разграничение доступа и аудит, Обучение вашей команды, Квартал сопровожденияот 4 месяцевот 1 200 000 ₽

Вопросы

Частые вопросы

Если вашего вопроса здесь нет, спросите – ответим тем же порядком.

У нас одна модель, нужен ли нам MLOps?
Полноценная платформа – нет. Но даже одной модели нужны три вещи: воспроизводимое обучение, возможность откатиться и мониторинг качества. Без них модель живёт до первого изменения данных, и это вопрос месяцев, а не лет. Мы делаем именно этот минимум в базовом варианте.
Что такое дрейф и почему он важен?
Дрейф – расхождение между данными, на которых модель училась, и теми, что приходят сейчас. Появился новый канал продаж, изменился ассортимент, сменилась сезонность – и модель, не меняясь, начинает ошибаться чаще. Мониторинг ловит это по распределению входов раньше, чем ошибки станут заметны в бизнес-метриках.
Можно ли развернуть всё в закрытом контуре?
Да, весь стек, который мы используем, ставится на ваши серверы без обращения к внешним сервисам. Это дороже по настройке и требует ваших ресурсов на поддержку инфраструктуры, но для данных, которые нельзя выпускать наружу, вариант единственный.
Вы работаете с моделями, которые писали не вы?
Да, это типичный случай: модель написана вашим специалистом или прошлым подрядчиком, а вывести в прод некому. Начинаем с аудита кода и данных – иногда выясняется, что модель нужно переписывать, и мы говорим об этом сразу, а не после сборки контура вокруг неё.
Кто дежурит по моделям после запуска?
По договорённости. Мы можем взять сопровождение на себя или передать вашей команде с регламентом: что означает каждое оповещение, какие действия и в каком порядке. Второй вариант дешевле и надёжнее в долгую, но требует, чтобы у вас был кому дежурить.
Сколько стоит MLOps?
Вывод одной модели в продакшн с базовым мониторингом – от 250 000 ₽ и 4–6 недель. Полный контур с пайплайнами, дрейфом и переобучением – от 550 000 ₽. Платформа на несколько моделей в закрытом контуре – от 1 200 000 ₽. Указана начальная цена. Каждый проект индивидуален, поэтому итоговая сумма может отличаться: изредка она выходит ниже, но обычно окончательную цену формируем после подробного обсуждения и плана задач.

Материал обновлён

Разберём ваш процесс бесплатно

Расскажите, где теряется время или заявки. На созвоне за 30–45 минут разберём один-два процесса и честно скажем, есть ли смысл их автоматизировать.

Разбор процесса

Опишите задачу письмом или пройдите короткий опрос в боте: где теряется время или заявки. Отвечает тот, кто проектирует и внедряет, и предлагает время для разбора.

Разобрать процесс