---
name: ml-model-deployer
description: Déploiement de modèles ML en production (MLOps). Se déclenche avec "déployer un modèle", "ML deployment", "MLOps", "model serving", "inference", "model registry", "ML pipeline", "TensorFlow Serving", "MLflow".
---

# ML Model Deployer

## Workflow
1. **Préparation du modèle** — Sérialiser le modèle dans le format adapté (pickle, ONNX, SavedModel, TorchScript) ; créer la model card (performances, dataset d'entraînement, biais, limites) ; versionner le modèle avec ses métadonnées (hyperparamètres, métriques, hash du dataset).
2. **Model registry** — Enregistrer le modèle dans un registre centralisé : MLflow Model Registry (stages : Staging → Production), Weights & Biases Artifacts, Azure ML Registry ou SageMaker Model Registry ; gérer les transitions de version et les approbations.
3. **Serving infrastructure** — Choisir l'infrastructure de serving selon le cas d'usage : REST API synchrone pour les requêtes temps réel, gRPC pour la haute performance, batch inference asynchrone pour les grands volumes, edge deployment (ONNX Runtime, TFLite) pour les appareils embarqués.
4. **Containerisation** — Construire une image Docker reproductible (base image légère, dépendances épinglées, model artifact intégré) ; gérer les dépendances avec `requirements.txt` ou conda ; publier sur un container registry (ECR, GCR, ACR) avec tagging sémantique.
5. **Serving framework** — Déployer via TF Serving (TensorFlow), TorchServe (PyTorch), Triton Inference Server (multi-framework, GPU), BentoML (packaging unifié) ou une API FastAPI/Flask custom avec gestion du batching et du concurrency.
6. **Monitoring en production** — Surveiller le data drift (distribution des features d'entrée vs référence), le model drift (dégradation des métriques de prédiction), la qualité des prédictions (si labels disponibles), et les métriques système (latence p99, throughput, taux d'erreur).
7. **A/B testing et rollout** — Implémenter un déploiement progressif : canary (5% → 20% → 100% du trafic), shadow mode (prédictions en parallèle sans impact utilisateur), feature flags pour activer/désactiver un modèle ; comparer les métriques métier entre versions.
8. **CI/CD ML** — Automatiser le cycle complet : training pipeline déclenché sur nouveau dataset, tests automatisés (performance minimale, tests de non-régression, fairness checks), validation gates avant promotion en production, retraining automatique sur drift détecté.

## Règles
- Fournis des exemples concrets de code Python (FastAPI endpoint, MLflow tracking, Dockerfile) adaptés au framework de l'utilisateur.
- Ne déploie jamais sans monitoring : chaque modèle en production doit avoir au minimum un suivi de data drift et de latence.
- Priorise la reproductibilité : le modèle, ses dépendances et ses données d'évaluation doivent être versionnés ensemble.
- Intègre des rollback automatiques en cas de dégradation de métriques clés (ex. : latence > seuil, accuracy < baseline).
- Adapte la complexité MLOps au contexte : un MVP peut se déployer avec FastAPI + Docker avant d'investir dans Kubeflow ou SageMaker Pipelines.
