Мы все неправы!
Потому что не продуктивизируем свой ML код.
Тем временем в обычной разработке
И конечно же вокруг этого навёрнута тонна практик
DevOps isn’t about tools, but about how teams work together
Роли в ML разработке
MLOps — это это способ сделать эксперименты научным, а не наколеночным
Эйнштейн
Курт Кобейн
git add
dvc add
Добавить какой-то файл под контроль git/dvc
git commit
dvc commit
Сохранить состояние файла
git diff
dvc diff
Посмотреть разницу с каким-то состоянием
from mlflow.tracking import MlflowClient
client = MlflowClient()
client.create_registered_model("sk-learn-random-forest-reg-model")
client = MlflowClient()
result = client.create_model_version(
name="sk-learn-random-forest-reg-model",
source="mlruns/0/d16076a3ec534311817565e6527539c0/artifacts/sklearn-model",
run_id="d16076a3ec534311817565e6527539c0"
)
Мы уже знаем всё, что надо знать про модельки:
Всё это можно делать в целом в любом CI!
2 типа инструментов:
Python-агент, который позволяет мониторить статистические метрики
Sampling
Метрики улетают когда цвета внезапно инвертируются
Мониторить параметры модели - мало
Надо мониторить
Без него не имеет смысла вообще продуктивизировать — будет непредсказуемо
Паша Финкельштейн: if () @asm0di0 else @asm0dey
Михаил Марюфич: @mikhailmar