Налаштування Model Registry для керування версіями моделей
Model Registry – централізоване сховище метаданих ML-моделей: версій, артефактів, метрик, стадій життєвого циклу. Без нього команди зберігають моделі у вигляді файлів на shared дисках, втрачають зв'язок між версією коду та вагами моделі, не знають що саме зараз працює у продакшені.
Що дає Model Registry
- Єдиний каталог всіх навчених моделей з метриками та параметрами
- Управління стадіями:
Staging → Production → Archived - Історія переходів між версіями із зазначенням автора та причини
- API для програмного просування моделі у production
- Інтеграція з CI/CD для автоматичного деплою при зміні стадії
MLflow Model Registry
MLflow Registry – найбільш популярний open-source варіант. Розгортається поверх існуючого MLflow Tracking Server.
Реєстрація моделі після навчання:
import mlflow
with mlflow.start_run():
# ... обучение ...
mlflow.sklearn.log_model(
model,
artifact_path="model",
registered_model_name="fraud-detector-v2"
)
Управління стадіями через API:
client = mlflow.MlflowClient()
client.transition_model_version_stage(
name="fraud-detector-v2",
version=3,
stage="Production",
archive_existing_versions=True
)
Завантаження production-моделі в інференс-сервісі:
model = mlflow.pyfunc.load_model(
model_uri="models:/fraud-detector-v2/Production"
)
Альтернативи та enterprise-варіанти
Weights & Biases (W&B) Artifacts — зручний для команд, які вже використовують W&B для трекінгу експериментів. Підтримує lineage між датасетами та моделями.
Vertex AI Model Registry — керований сервіс GCP з інтеграцією у Vertex AI Pipelines та Vertex AI Endpoints.
SageMaker Model Registry — аналог для AWS, тісно інтегрований із SageMaker Pipelines та Code Pipeline.
Hugging Face Hub — де-факто стандарт для LLM та трансформерів, підтримує private репозиторії та команди.
Процес впровадження за 1 тиждень
День 1-2: Розгортання MLflow з PostgreSQL backend та S3 artifact store. Налаштування автентифікації.
День 3: Додавання mlflow.log_model() та mlflow.register_model() у існуючі навчальні скрипти.
День 4: Налаштування approval workflow - webhook або GitHub Action, який вимагає ручного підтвердження перед просуванням у Production.
День 5: Інтеграція в інференс-сервіс - завантаження моделі по стадії, а не по дорозі до файлу. Налаштування алертів при зміні версії у Production.
Ключові практики
Кожна версія моделі повинна містити: хеш датасета (через DVC), версію коду (git commit), метрики на валідаційній та тестовій вибірці, інформацію про hardware (GPU тип, кількість). Це забезпечує повну відтворюваність та спрощує debugging у деградації моделі у продакшені.







