MLOps est le point de friction entre Data Science et Data Engineering. En entretien, on évalue la capacité à industrialiser un modèle ML : versioning, déploiement, monitoring et retraining automatisé.
Un Data Scientist qui ne peut pas déployer ses modèles en production est un coût, pas une valeur. MLOps est le pont entre le notebook de recherche et le système de production fiable. En entretien, on distingue les profils qui ont réellement industrialisé des modèles de ceux qui ont seulement entraîné des modèles.
Décrivez les 3 niveaux de maturité MLOps (MLOps 0, 1, 2). À quel niveau se situe votre organisation actuelle ?
Signal GO Senior : le candidat sait identifier le niveau de maturité de son organisation et peut expliquer les étapes pour progresser vers le niveau supérieur.
Quelle est la différence entre MLflow Tracking, MLflow Model Registry et MLflow Serving ?
import mlflow
import mlflow.sklearn
from sklearn.ensemble import RandomForestClassifier
# MLflow Tracking : loguer les expériences
with mlflow.start_run(run_name="RF_v2_features_v3"):
mlflow.log_param("n_estimators", 100)
mlflow.log_param("max_depth", 5)
model = RandomForestClassifier(n_estimators=100, max_depth=5)
model.fit(X_train, y_train)
accuracy = model.score(X_test, y_test)
mlflow.log_metric("accuracy", accuracy)
mlflow.log_metric("f1_score", f1)
# Loguer le modèle avec sa signature
mlflow.sklearn.log_model(
model,
"random_forest",
signature=infer_signature(X_train, model.predict(X_train))
)
# MLflow Model Registry : promouvoir vers production
client = mlflow.tracking.MlflowClient()
client.transition_model_version_stage(
name="churn_predictor",
version=3,
stage="Production" # Staging → Production
)Qu'est-ce qu'un test de modèle ML dans un pipeline CI/CD ? Quels types de tests implémentez-vous ?
# Exemple de test de performance dans un pipeline CI
def test_model_performance():
model = load_model("models/churn_v3")
X_test, y_test = load_validation_set()
score = f1_score(y_test, model.predict(X_test))
baseline = 0.82 # performance du modèle en production actuel
assert score >= baseline * 0.98, (
f"Nouveau modèle trop faible: {score:.3f} vs baseline {baseline:.3f}"
)Quelles sont les différentes stratégies de déploiement d'un modèle ML ? Dans quel cas choisissez-vous chacune ?
| Stratégie | Description | Cas d'usage |
|---|---|---|
| Batch scoring | Pipeline planifié, prédictions en lot stockées en base | Recommandations email nocturnes, scoring client mensuel |
| Real-time API | FastAPI/Flask, prédiction à la demande, faible latence | Score crédit en temps réel, détection de fraude |
| Streaming | Kafka + modèle embarqué, prédiction sur chaque event | Anomaly detection temps réel, IoT |
| Embedded model | Modèle dans l'application (mobile, edge) | NLP offline, vision par ordinateur sur device |
Qu'est-ce que le concept drift et le data drift ? Comment les détectez-vous en production ?
À quoi sert un feature store ? Dans quel cas en avez-vous besoin ?
| Niveau | Maîtrise attendue | Signal GO | NO-GO |
|---|---|---|---|
| Junior | MLflow Tracking, déploiement manuel d'une API FastAPI, containerisation Docker | A loggué des expériences avec MLflow, a dockerisé un modèle, comprend le concept de train/test split | Ne sait pas ce qu'est MLflow, n'a jamais déployé un modèle hors du notebook |
| Confirmé | MLflow Registry, CI/CD ML basique, tests de performance, batch vs real-time | A promu un modèle via MLflow Registry, a écrit des tests de performance, a déployé en batch et en API | Ne sait pas différencier batch scoring et real-time, n'a pas de tests sur ses modèles |
| Senior | Pipeline CI/CD complet, monitoring drift, canary deployment, feature store | A implémenté la détection de data drift, a fait du canary deployment, connaît les feature stores | Ne sait pas ce qu'est le data drift, n'a jamais mis en place de monitoring de modèle |
| Lead | Architecture MLOps 2, standards équipe, A/B testing rigoureux, gouvernance des modèles | A défini l'architecture MLOps de son équipe, a mis en place des A/B tests rigoureux avec analyse d'impact business | Ne peut pas expliquer comment passer de MLOps 0 à MLOps 2 dans son contexte |
Premier entretien gratuit. Rapport GO/NO-GO sous 48h.