Enregistrez automatiquement SageMaker les modèles dans le SageMaker Model Registry - Amazon SageMaker

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.

Enregistrez automatiquement SageMaker les modèles dans le SageMaker Model Registry

Vous pouvez enregistrer MLflow des modèles et les enregistrer automatiquement dans SageMaker Model Registry en utilisant Python SDK ou directement via l'MLflowinterface utilisateur.

Note

N'utilisez pas d'espaces dans le nom d'un modèle. Même s'il MLflow prend en charge les noms de modèles avec des espaces, SageMaker Model Package ne le fait pas. Le processus d'enregistrement automatique échoue si vous utilisez des espaces dans le nom de votre modèle.

Enregistrez des modèles à l'aide du SageMaker Python SDK

create_registered_modelUtilisez-le au sein de votre MLflow client pour créer automatiquement un groupe de packages de modèles SageMaker correspondant à un MLflow modèle existant de votre choix.

import mlflow from mlflow import MlflowClient mlflow.set_tracking_uri(arn) client = MlflowClient() mlflow_model_name = 'AutoRegisteredModel' client.create_registered_model(mlflow_model_name, tags={"key1": "value1"})

mlflow.register_model()À utiliser pour enregistrer automatiquement un SageMaker modèle dans le registre des modèles pendant l'entraînement des modèles. Lors de l'enregistrement du MLflow modèle, un groupe de packages de modèles et une version de package de modèles correspondants sont créés dans SageMaker.

import mlflow.sklearn from mlflow.models import infer_signature from sklearn.datasets import make_regression from sklearn.ensemble import RandomForestRegressor mlflow.set_tracking_uri(arn) params = {"n_estimators": 3, "random_state": 42} X, y = make_regression(n_features=4, n_informative=2, random_state=0, shuffle=False) # Log MLflow entities with mlflow.start_run() as run: rfr = RandomForestRegressor(**params).fit(X, y) signature = infer_signature(X, rfr.predict(X)) mlflow.log_params(params) mlflow.sklearn.log_model(rfr, artifact_path="sklearn-model", signature=signature) model_uri = f"runs:/{run.info.run_id}/sklearn-model" mv = mlflow.register_model(model_uri, "RandomForestRegressionModel") print(f"Name: {mv.name}") print(f"Version: {mv.version}")

Enregistrer des modèles à l'aide de l'MLflowinterface utilisateur

Vous pouvez également enregistrer un modèle auprès du SageMaker Model Registry directement dans l'MLflowinterface utilisateur. Dans le menu Modèles de l'MLflowinterface utilisateur, choisissez Create Model. Tous les modèles nouvellement créés de cette manière sont ajoutés au registre des SageMaker modèles.

Création d'un registre de modèles dans l'MLflowinterface utilisateur.

Après avoir enregistré un modèle pendant le suivi des expériences, accédez à la page d'exécution dans l'MLflowinterface utilisateur. Choisissez le volet Artifacts et choisissez Enregistrer le modèle dans le coin supérieur droit pour enregistrer la version du modèle à la fois dans le registre des modèles MLflow et dans le registre des SageMaker modèles.

Création d'un registre de modèles dans l'MLflowinterface utilisateur.

Afficher les modèles enregistrés dans Studio

Sur la page d'accueil de SageMaker Studio, choisissez Modèles dans le volet de navigation de gauche pour afficher vos modèles enregistrés. Pour plus d'informations sur la prise en main de Studio, consultez Lancer Amazon SageMaker Studio.

MLflowmodèles enregistrés dans SageMaker Model Registry dans l'interface utilisateur de Studio.