Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Modification de la disponibilité d'Amazon SageMaker Model Monitor
Note
Amazon SageMaker Model Monitor n'est plus ouvert aux nouveaux clients. Les clients existants peuvent continuer à utiliser le service normalement. AWS continue d'investir dans l'amélioration de la sécurité et de la disponibilité de Model Monitor, mais nous ne prévoyons pas d'introduire de nouvelles fonctionnalités.
Open-source SageMaker Solutions de surveillance par IA + Amazon QuickSight + Amazon CloudWatch
La combinaison des solutions open source de surveillance Amazon SageMaker AI, des tableaux de bord de QuickSight gouvernance Amazon et CloudWatch d'Amazon remplace Amazon SageMaker Model Monitor.
Les solutions open source de surveillance Amazon SageMaker AI (publiées dans l'aws-samples GitHub organisation
La surveillance par inférence avec Amazon QuickSight ajoute une couche de gouvernance au-dessus de vos pipelines d'inférence de production pour une surveillance prédictive et en temps réel. Il suit en permanence les prévisions et les indicateurs de qualité des données, gère la vérité sur le terrain différée et visualise les tendances de dérive et de performance des modèles dans les tableaux de bord exécutifs. Cette solution combine les applications SageMaker AI MLflow et Evidently AI pour l'analyse statistique de la dérive avec un lac de données Athena Iceberg, EventBridge-triggered Lambda pour les analyses planifiées, des alertes SNS et des tableaux de bord. QuickSight
Amazon CloudWatch fournit une surveillance au niveau du système et au niveau des inférences avec des mesures améliorées pour les SageMaker terminaux, notamment la latence d'invocation, les erreurs de modèle, CPU/GPU l'utilisation et des mesures personnalisées avec des alarmes de détection d'anomalies.
Remplacement d'Amazon SageMaker Model Monitor par des solutions open source QuickSight, et CloudWatch
Cette section vous explique comment remplacer votre déploiement Amazon SageMaker Model Monitor existant à l'aide des solutions open source de surveillance Amazon SageMaker AI (AI MLflow Apps + Evidently SageMaker AI), des tableaux de bord de QuickSight gouvernance Amazon et d'Amazon. CloudWatch Cette solution prend en charge des fonctionnalités équivalentes et étendues pour la surveillance de la qualité des données, la surveillance de la qualité des modèles, la détection de la dérive de biais, la détection de la dérive d'attribution des fonctionnalités et la surveillance des performances du système pour les modèles déployés sur Amazon SageMaker AI.
Suppression du Model Monitor
Arrêtez Model Monitor pour de nouveaux programmes de surveillance
Si votre flux de travail inclut la création de calendriers de surveillance à l'aide du DefaultModelMonitor ModelQualityMonitorModelBiasMonitor,, ou ModelExplainabilityMonitor des classes du SDK SageMaker Python ou de l'CreateMonitoringScheduleAPI, passez aux alternatives décrites dans la section Configuration des remplacements ci-dessous.
Supprimer les programmes de surveillance existants
Les planifications de surveillance font apparaître les instances de traitement des tâches (exemple :ml.m5.xlarge) selon un calendrier récurrent. Leur suppression permet d'éliminer les coûts de calcul permanents.
À l'aide du SDK SageMaker Python :
import sagemaker from sagemaker.model_monitor import DefaultModelMonitor session = sagemaker.Session() # List all monitoring schedules schedules = session.sagemaker_client.list_monitoring_schedules() # Delete each schedule for schedule in schedules['MonitoringScheduleSummaries']: schedule_name = schedule['MonitoringScheduleName'] print(f"Deleting monitoring schedule: {schedule_name}") session.sagemaker_client.delete_monitoring_schedule( MonitoringScheduleName=schedule_name )
À l'aide de AWS CLI :
# List all monitoring schedules aws sagemaker list-monitoring-schedules # Delete a specific monitoring schedule aws sagemaker delete-monitoring-schedule \ --monitoring-schedule-name "my-data-quality-monitor"
Note
La suppression d'un calendrier de surveillance arrête également le calendrier s'il n'a pas déjà été arrêté. Cela ne supprime pas l'historique d'exécution des tâches du calendrier de surveillance.
Configuration des remplacements
Choix d'une solution de surveillance
Le référentiel
| Solution | Type d'inférence | Déploiement | Orientation de la surveillance | Idéal pour |
|---|---|---|---|---|
| Pipeline de surveillance prédictive par lots de ML | Transformation par lots | 2 carnets (expérience + SageMaker Pipeline) | Dérive de qualité des données et des modèles | Prédictions périodiques par lots |
| Surveillance prédictive des terminaux de machine learning | Real-time point de terminaison (capture de données) | Carnet de notes + CDK Lambda | Dérive de qualité des données et des modèles | Real-time points de terminaison mis à l'échelle avec CDK |
| Real-Time Surveillance des inférences avec Evidently AI + SNS | Real-time point de terminaison (capture de données) | Carnet d'atelier (référence) | Dérive de qualité des données et des modèles | Alertes par e-mail légères sur un terminal existant |
| Real-Time Surveillance des inférences à l'aide de tableaux de bord QuickSight | Real-time point de terminaison | Carnets + scripts (Lac Athéna Iceberg) | Dérive + performance + vérité au sol différée | Tableaux de bord de gouvernance de la production (voir méta-surveillance ci-dessous) |
| Surveillance par inférence LLM | Real-time point de terminaison (capture de données) | CDK (fonctions pas à pas + Lambda) | Évaluations génératives de l'IA (sécurité, pertinence, fluidité, etc.) | Surveillance de la sécurité et de la qualité LLM |
| SageMaker Observabilité des ressources avec Grafana | Real-time point de terminaison | Carnet de notes unique (Amazon Managed Grafana) | GPU/CPU/memory + coût | Multi-model optimisation des coûts et des capacités |
| Observabilité de la qualité LLM avec Grafana | Real-time point de terminaison | Carnet (Grafana + CloudWatch géré) | Sécurité, pertinence, ton, qualité composite | Détection de régression de la qualité de sortie LLM |
Débuter avec les solutions de surveillance
Les points de départ recommandés pour remplacer la surveillance de la qualité des données et des modèles de Model Monitor sont le pipeline de surveillance par lots Predictive ML (pour les charges de travail batch/Batch Transform) et la solution Predictive ML Endpoint Monitoring (pour les terminaux en temps réel). Les deux utilisent le jeu de données UCI Bank Marketing prêt à l'emploi, vous pouvez donc les exécuter de bout en bout avant de les adapter à votre propre modèle.
Pipeline de surveillance par lots Predictive ML (deux ordinateurs portables, exécutés en séquence) :
-
Expérimentation (
predictive_ml_experimentation_data_model_monitoring_evidently.ipynb) : entraîne un modèle XGBoost avec le suivi MLflow, exécute l'inférence Batch Transform, puis exécute EvidentlyDataDriftPresetet enregistre toutes les métriques etDataSummaryPresettous les HTML/JSON rapports dans votre application MLflow.ClassificationPreset -
Automatisation du pipeline (
batch_monitoring_pipeline.ipynb) : opérationnalise le flux de travail dans un SageMaker pipeline avec aTransformStepet EvidentlyProcessingSteps, une rubrique SNS pour les alertes et un calendrier. EventBridge Dans la section 2, définissezbaseline_s3_uri,production_s3_urimlflow_app_name,mlflow_experiment_name(correspond au bloc-notes 1)notification_email, etschedule_expression(par exemple,rate(1 day)). Confirmez l'abonnement à la messagerie SNS avant la première exécution. Les seuils de dérive sont actifsscripts/monitoring_processor.py(par défaut : alerte lorsque plus de 30 % des fonctionnalités dérivent).
Surveillance prédictive des terminaux ML (bloc-notes, puis CDK optionnel pour l'échelle) : ouvrezml_experimentation_with_data_model_monitoring_evidently_realtime.ipynb, définissez mlflow_app_name dans la section 2 et exécutez les sections 1 à 8. Cela entraîne le modèle, déploie un point de terminaison en temps réel avec capture de données et s'exécute Evidently par DataDriftPreset rapport à la base de référence et ClassificationPreset à la réalité du terrain.
Pour évoluer, déployez les deux fonctions Docker-based Lambda (dérive des données et qualité du modèle) avec CDK. Depuiscdk/, exécuteznpm install, exportez les variables imprimées dans la Section 9 (ENDPOINT_NAMEBUCKETPREFIX,BASELINE_KEY,CAPTURE_PREFIX,GROUND_TRUTH_KEY,MLFLOW_TRACKING_URI, MLFLOW_EXPERIMENTFEATURE_COLUMNS, facultatifSNS_TOPIC_ARN), puis exécutez bash scripts/deploy.sh (s'exécute cdk bootstrap automatiquement).
Activez EventBridge les notifications S3 sur le bucket et ajoutez des déclencheurs S3 : dérive des données en s3:ObjectCreated:* dessous${PREFIX}/data-capture/, qualité du modèle inférieure${PREFIX}/data/ground_truth/.
aws s3api put-bucket-notification-configuration \ --bucket <your-sagemaker-bucket> \ --notification-configuration '{"EventBridgeConfiguration": {}}'
La qualité du modèle Lambda alerte via SNS lorsqu'une métrique tombe en dessous de son seuil (par défaut : F1 0,70, précision 0,80, ROC AUC 0,75 ; remplacer par,,). THRESHOLD_F1 THRESHOLD_ACCURACY THRESHOLD_ROC_AUC
La qualité du modèle Lambda alerte via SNS lorsqu'une métrique tombe en dessous de son seuil (par défaut : F1 0,70, précision 0,80, ROC AUC 0,75 ; remplacer par,,). THRESHOLD_F1 THRESHOLD_ACCURACY THRESHOLD_ROC_AUC
Comme alternative légère à un terminal existant, la solution Real-Time Inference Monitoring with Evidently AI + SNS ajoute une seule étape de FrameworkProcessor traitement (EvidentlyMonitoring) plus un EventBridge planificateur et une rubrique SNS, sans lac de données ni tableau de bord. Il s'agit d'une référence à la section 8 du bloc-notes 06 de l'atelier amazon-sagemaker-from-idea-production. drifted_columns_share dépassement DriftThreshold (par défaut0.05) ou en cas de CriticalFeatures dérive configurée.
Remplacer la surveillance de la qualité des données
La surveillance de la qualité des données de Model Monitor détecte la dérive statistique des caractéristiques d'entrée en comparant les données d'inférence en direct à une base de données d'entraînement. Il calcule les statistiques (moyenne, écart type, minimum, maximum, nombre unique) et vérifie les contraintes (type de données, exhaustivité, plages de valeurs) à l'aide d'un Deequ-based moteur fonctionnant sur des tâches de traitement planifiées.
Option 1 : Open-source solutions avec Evidently AI
Les solutions de surveillance utilisent l'IA d'Evidently DataDriftPreset pour détecter la dérive des caractéristiques, en calculant les statistiques PSI (indice de stabilité de la population) et KS pour chaque caractéristique. La base de formation est lue comme jeu de données de référence et les données d'inférence récentes comme ensemble de données actuel. Les solutions par lots et terminaux permettent également de détecter DataSummaryPreset des problèmes de qualité des données (valeurs manquantes, valeurs aberrantes, contrôles d'intégrité), correspondant étroitement aux contrôles de contraintes de Model Monitor. Les scores de dérive sont comparés à des seuils configurables, enregistrés dans une application SageMaker AI MLflow en même temps que les mesures d'entraînement, et présentés sous forme de rapports HTML interactifs.
Ce remplacement est hautement évolutif et entièrement personnalisable :
-
Évolutif : le calcul passe à zéro en cas d'inactivité. EventBridge-triggered Lambda exécute une analyse de dérive selon un calendrier, et le partitionnement des tables Athena Iceberg permet de réduire les coûts de numérisation à mesure que le volume de données augmente. High-volume les déploiements évoluent de manière linéaire sans capacité réservée.
-
Personnalisable : vous contrôlez les préréglages de dérive, les seuils par fonctionnalité, les fenêtres rétrospectives et la planification via une centrale.
config.yamlVous pouvez ajouter des tests de dérive spécifiques à un domaine au-delà du PSI (par exemple, des KPI commerciaux tels que les variations du taux d'approbation). -
Lignage unifié : les métriques de dérive sont co-localisées avec les métriques d'entraînement dans la même application SageMaker AI MLflow, ce qui permet d'obtenir un lignage complet des modèles et une analyse des tendances de dérive.
Consultez les solutions de surveillance open source Amazon SageMaker AI
Option 2 : mesures CloudWatch personnalisées Amazon + détection des anomalies
Pour une surveillance légère de la qualité des données sans le pipeline de surveillance complet, publiez des mesures personnalisées CloudWatch et utilisez des alarmes de détection d'anomalies. Reportez-vous à la section Utilisation de la détection des CloudWatch anomalies pour connaître les étapes détaillées.
Remplacer la surveillance de la qualité des modèles
La surveillance de la qualité des modèles de Model Monitor permet de suivre la précision des prévisions en fusionnant les étiquettes de vérité de base de S3 avec les prédictions des terminaux et les mesures informatiques (exactitude, précision, rappel, F1, AUC, RMSE, MAE) selon un calendrier.
Option 1 : Open-source solutions avec Evidently AI
Les solutions de surveillance utilisent l'IA d'Evidently ClassificationPreset pour le calculROC-AUC, la précision, le rappel, la F1 et la matrice de confusion chaque fois que la vérité sur le terrain est disponible. Les solutions incluent un modèle permettant de concilier la vérité de terrain différée avec les prédictions par identification d'inférence, qui permet de remédier à la latence des étiquettes dans le monde réel qui rend difficile la surveillance de la qualité des modèles.
Option 2 : mesures CloudWatch personnalisées
Publiez les indicateurs de qualité des modèles CloudWatch lorsque la vérité sur le terrain sera disponible.
Remplacer la surveillance de la dérive du biais
La surveillance de la dérive des biais de Model Monitor détecte l'évolution des indicateurs d'équité au fil du temps en comparant les prévisions en temps réel à une base de biais sur les attributs protégés.
Segment-sliced métriques avec Evidently AI, enregistrées dans MLflow et QuickSight
Suivez les biais en calculant les indicateurs de performance et de résultats par segment d'attributs protégés (par exemple, par genderage_band, ouregion) et en les comparant à la base de formation. La même méthode ClassificationPreset utilisée évidemment pour la qualité du modèle est exécutée par segment, et les mesures par segment qui en résultent (taux de sélection, taux true/false positifs precision/recall) sont enregistrées dans l'application SageMaker AI MLflow et affichées dans le tableau de bord de gouvernance. QuickSight
Définissez vos propres seuils d'équité (par exemple, écart maximum acceptable dans le taux de sélection ou taux de vrais positifs entre les segments) et alertez via Amazon SNS lorsqu'un écart dépasse le seuil, en utilisant le même schéma EventBridge + Lambda que celui utilisé pour surveiller la qualité des données et des modèles. Comme tout est open source et s'exécute sur votre compte, vous contrôlez quels attributs sont surveillés et quelles définitions d'équité s'appliquent.
Méta-surveillance par inférence avec Amazon QuickSight (surveillance prédictive et en temps réel)
Les modèles prédictifs peuvent se dégrader silencieusement en production. Les responsables de la gestion des fraudes commencent à constater des pics de faux positifs, les agents de crédit voient les demandes qui auraient dû être signalées et les planificateurs se retrouvent avec des stocks excédentaires en raison d'une demande surestimée. Meta-monitoring fournit aux équipes un feedback continu sur les performances des modèles de production et les alerte dès que la qualité du modèle ou une dérive des données apparaît, afin qu'elles puissent mettre à niveau les modèles de manière proactive.
Cette solution associe des services AWS gérés (Amazon SageMaker AI, Amazon Athena, AWS
Lambda, Amazon SQS, Amazon SNS, Amazon, Amazon QuickSight) à des outils de machine learning open source (SageMaker AI MLflow Apps EventBridge, Evidently AI) pour créer un système de surveillance prêt pour la production. Dans le référentiel des solutions de surveillance, il s'agit de la solution Real-Time Inference Monitoring with QuickSight Dashboards ; l'implémentation de référence complète se trouve sur sample-mlops-bestpractices
Prérequis :
-
Un domaine SageMaker IA avec un serveur de suivi MLflow.
-
Un rôle SageMaker d'exécution avec des autorisations pour S3, Athena, Lambda, SQS, SNS et EventBridge (le référentiel inclut les politiques et/aides IAM en ligne exactes).
create_or_update_sagemaker_rolecreate_lambda_role -
Un compartiment S3 pour le stockage des données.
-
Python 3.12+ et le gestionnaire de
uvpackages (pour le script/CLI chemin) ; un abonnement QuickSight Enterprise pour le tableau de bord de gouvernance.
Choisissez un chemin de configuration :
Option A (recommandée pour les nouveaux utilisateurs) : Si vous n'avez pas de SageMaker domaine, déployez le CloudFormation modèle danscloudformation/. Il fournit le SageMaker domaine, le profil utilisateur, JupyterLab l'espace, le serveur de suivi MLflow, le compartiment S3 et le VPC compatible, clone automatiquement le dépôt et écrit un fichier renseigné .env lors du premier lancement.
Option B (domaines existants) : si vous possédez déjà un SageMaker domaine avec un serveur de suivi MLflow, clonez le dépôt JupyterLab et .env remplissez-le manuellement.
Configuration
Organisez une formation pour vous préparer à la surveillance. Vous pouvez tout piloter à partir des trois blocs-notes de SageMaker Studio ou utiliser les commandes CLI équivalentes (chaque cellule du bloc-notes correspond à une python main.py ... commande pour CI/CD). Si vous exécutez l'exemple de bout en bout, vous n'avez pas besoin de le modifier config.yaml ; le remplissage .env et l'utilisation des valeurs par défaut fonctionnent. Si vous avez déjà déployé un modèle, adaptez le pipeline de formation à vos propres étapes et assurez-vous que le point de terminaison d'inférence transmet les enregistrements de prédiction à Amazon SQS.