04 · MLOps-цикл и реестры4.1–4.2 · ML для инженера и lifecycle4.2.2средний

DevOps vs MLOps: что общего и что добавляет ML

Зачем это нужно

Вы уже знаете CI/CD, Docker, Kubernetes, Helm из блока 3. MLOps — не «другая профессия», а расширение DevOps под специфику машинного обучения: данные, эксперименты, модели, drift. Понимание границы помогает не изобретать велосипед (Git, pipelines) и не игнорировать ML-риски (невоспроизводимость, silent degradation).

Основные идеи

DevOps — культурно-технический набор практик.

  • Автоматизация сборки, тестов, деплоя.

  • Инфраструктура как код.

  • Observability: metrics, logs, traces.

  • Быстрая обратная связь, blameless postmortems.

MLOps = DevOps + ML-specific concerns.

Область DevOps MLOps (добавка)
Артефакт Docker image, binary + model weights, datasets
Тесты unit, integration + data validation, model perf smoke
Версионирование Git tag + experiment ID, dataset version
Деплой Rolling update + canary по model version, shadow
Мониторинг CPU, errors, latency + prediction drift, data quality
Откат Previous image tag + previous model + feature schema compat

Не дублировать, а расширять. Jenkins остаётся CI. Argo CD остаётся GitOps. Добавляются ClearML (experiments), MMS (registry), Argo Workflows (train/batch), специализированные dashboards.

CD4ML (Continuous Delivery for ML). Идея ThoughtWorks / industry: pipeline доставляет не только код, но и модель и данные через те же quality gates. Каждый merge может триггерить переобучение — если команда созрела; на старте — scheduled retrain.

Команды и границы ответственности.

  • Platform / SRE — кластер, observability stack, общие Helm charts.

  • MLE — serving, feature pipeline, integration с MMS.

  • DS — эксперименты, метрики offline, model card.

  • Shared — Definition of Done, incident process.

MLOps-инженер часто на стыке: не обязан быть лучшим DS, но обязан понимать, что такое train/serving skew.

Зрелость. Уровень 0: модель вручную копируют на сервер. Уровень 1: CI для API. Уровень 2: experiment tracking + automated train. Уровень 3: full CD4ML с мониторингом drift и auto-retrain с guardrails. Курс ведёт к уровню 2–3 в учебном контуре.

Anti-patterns.

  • «MLOps = только Kubeflow» — инструмент не заменяет процессы.

  • «DevOps команда задеплоит pickle» — без контрактов и тестов.

  • «DS сам в prod kubectl apply» — без audit и rollback.

Как это выглядит на практике

Компания уже делает DevOps для микросервисов заказов. Запускают fraud ML:

Берут из DevOps as-is: Git, Jenkins, Harbor registry, Kubernetes, Argo CD, Prometheus, Loki, Istio.

Добавляют для ML:

  1. ClearML Server — логирование экспериментов DS.

  2. MMS — реестр «какая модель approved для prod».

  3. Argo Workflows — nightly retrain job.

  4. Great Expectations / custom checks — schema данных на входе train pipeline.

  5. Grafana dashboard — inference latency и distribution of scores (drift proxy).

Incident: latency выросла. DevOps playbook: проверить pods, HPA, DB. MLOps дополнение: не вырос ли размер батча? не изменилась ли схема фич от upstream? Champion model version совпадает с MMS?

Retro: один runbook объединяет infra + model checks — меньше ping-pong между командами.

Что сделать после занятия

  • Составьте таблицу «у нас уже есть из DevOps» / «нужно добавить для ML» для учебного контура.

  • Выберите один ML-specific риск (drift, skew, wrong sklearn version) и опишите, какой gate его ловит.

  • Прочитайте MLOps maturity model (Microsoft) и оцените свой проект по уровню 0–3.

Официальные материалы