Partager des modèles, des composants et des environnements entre les espaces de travail avec des registres

Le registre Azure Machine Learning vous permet de collaborer entre les espaces de travail au sein de votre organisation. À l’aide de registres, vous pouvez partager des modèles, des composants et des environnements.

Il existe deux scénarios dans lesquels vous souhaitez utiliser le même ensemble de modèles, de composants et d’environnements dans plusieurs espaces de travail :

  • MLOps entre espaces de travail : vous effectuez l'apprentissage d’un modèle dans un espace de travail dev et devez le déployer dans test et les espaces de travail prod. Dans ce cas, vous souhaitez disposer d’une traçabilité de bout en bout entre les points de terminaison sur lesquels le modèle est déployé dans les espaces de travail test ou prod et du travail d’apprentissage, des métriques, du code, des données et de l’environnement utilisés pour effectuer l'apprentissage du modèle dans l’espace de travail dev.
  • Partager et réutiliser des modèles et des pipelines entre différentes équipes : le partage et la réutilisation améliorent la collaboration et la productivité. Dans ce scénario, vous pouvez publier un modèle entraîné et les composants et environnements associés utilisés pour effectuer l'apprentissage vers un catalogue central. À partir de là, les collègues des autres équipes peuvent rechercher et réutiliser les ressources que vous avez partagées dans leurs propres expériences.

Dans cet article, vous allez apprendre à :

  • Créer un environnement et un composant dans le registre.
  • Utiliser le composant du registre pour soumettre un travail d’apprentissage de modèle dans un espace de travail.
  • Inscrire le modèle entraîné dans le registre.
  • Déployer le modèle à partir du registre sur un point de terminaison en ligne dans l’espace de travail, puis à envoyer une requête d’inférence.

Prérequis

Avant de suivre les étapes décrites dans cet article, vérifiez que vous disposez des composants requis suivants :

  • Registre Azure Machine Learning pour partager des modèles, des composants et des environnements. Pour créer un registre, consultez Découvrir comment créer un registre.

  • Un espace de travail Azure Machine Learning. Si vous n’en avez pas, procédez comme suit dans le Guide de démarrage rapide : Créer des ressources d’espace de travail pour en créer un.

    Important

    La région Azure (emplacement) où vous créez votre espace de travail doit figurer dans la liste des régions prises en charge pour le registre Azure Machine Learning

  • Azure CLI et l’extension mlou le Kit de développement logiciel (SDK) Python Azure Machine Learning v2 :

    Pour installer Azure CLI et l’extension, consultez Installer, configurer et utiliser l’interface CLI (v2).

    Important

    • Les exemples CLI de cet article supposent que vous utilisez l’interpréteur de commandes Bash (ou compatible). Par exemple, à partir d’un système Linux ou d’un sous-système Windows pour Linux.

    • Les exemples supposent également que vous avez configuré les valeurs par défaut pour Azure CLI afin que vous n’ayez pas à spécifier les paramètres de votre abonnement, espace de travail, groupe de ressources ou emplacement. Pour définir les paramètres par défaut, utilisez les commandes suivantes. Remplacez les paramètres suivants par des valeurs pour votre configuration :

      • Remplacez <subscription> par l’identifiant de votre abonnement Azure.
      • Remplacez <workspace> par le nom de votre espace de travail Azure Machine Learning.
      • Remplacez <resource-group> par le groupe de ressources Azure qui contient votre espace de travail.
      • Remplacez <location> par la région Azure qui contient votre espace de travail.
      az account set --subscription <subscription>
      az configure --defaults workspace=<workspace> group=<resource-group> location=<location>
      

      Vous pouvez afficher les valeurs par défaut actuelles à l’aide de la commande az configure -l.

Cloner un dépôt d’exemples

Les exemples de code de cet article sont basés sur l’exemple nyc_taxi_data_regression dans le référentiel d’exemples. Pour utiliser ces fichiers dans votre environnement de développement, utilisez les commandes suivantes pour cloner le référentiel et modifier les répertoires pour l’exemple :

git clone https://github.com/Azure/azureml-examples
cd azureml-examples

Pour l’exemple de CLI, remplacez les répertoires cli/jobs/pipelines-with-components/nyc_taxi_data_regression par votre clone local du référentiel d’exemples.

cd cli/jobs/pipelines-with-components/nyc_taxi_data_regression

Créer une connexion SDK

Conseil

Cette étape est nécessaire uniquement lors de l’utilisation du Kit de développement logiciel (SDK) Python.

Créez une connexion cliente à la fois à l’espace de travail et au registre Azure Machine Learning :

ml_client_workspace = MLClient( credential=credential,
    subscription_id = "<workspace-subscription>",
    resource_group_name = "<workspace-resource-group",
    workspace_name = "<workspace-name>")
print(ml_client_workspace)

ml_client_registry = MLClient(credential=credential,
                        registry_name="<REGISTRY_NAME>",
                        registry_location="<REGISTRY_REGION>")
print(ml_client_registry)

Créer un environnement dans le registre

Les environnements définissent le conteneur Docker et les dépendances Python nécessaires pour exécuter des travaux d’apprentissage ou déployer des modèles. Pour plus d'informations sur les environnements, consultez la documentation suivante :

Conseil

La même commande CLI az ml environment create peut être utilisée pour créer des environnements dans un espace de travail ou un registre. L’exécution de la commande avec la commande --workspace-name crée l’environnement dans un espace de travail, tandis que l’exécution de la commande avec --registry-name crée l’environnement dans le registre.

Nous allons créer un environnement qui utilise l’image Docker python:3.8 et installe les packages Python nécessaires pour exécuter un travail d’apprentissage à l’aide de l’infrastructure SciKit Learn. Si vous avez cloné les exemples de référentiel et que vous êtes dans le dossier cli/jobs/pipelines-with-components/nyc_taxi_data_regression, vous devez pouvoir voir le fichier de définition d’environnement env_train.yml qui fait référence au fichier Docker env_train/Dockerfile. env_train.yml est affiché ci-dessous pour votre référence :

$schema: https://azuremlschemas.azureedge.net/latest/environment.schema.json
name: SKLearnEnv
version: 1
build:
  path: ./env_train

Créez l’environnement à l’aide de az ml environment create comme suit.

az ml environment create --file env_train.yml --registry-name <registry-name>

Si vous obtenez une erreur indiquant qu’un environnement avec ce nom et cette version existent déjà dans le registre, vous pouvez modifier le champ version dans env_train.yml ou spécifier une version différente sur l’interface CLI qui remplace la valeur de version dans env_train.yml.

# use shell epoch time as the version
version=$(date +%s)
az ml environment create --file env_train.yml --registry-name <registry-name> --set version=$version

Conseil

version=$(date +%s) fonctionne uniquement dans Linux. Remplacez $version par un nombre aléatoire si cela ne fonctionne pas.

Notez name et version de l’environnement de la sortie de la commande az ml environment create et utilisez-les avec les commandes az ml environment show comme suit. Vous aurez besoin de name et version dans la section suivante lorsque vous créez un composant dans le registre.

az ml environment show --name SKLearnEnv --version 1 --registry-name <registry-name>

Conseil

Si vous avez utilisé un nom ou une version d’environnement différente, remplacez les paramètres --name et --version en conséquence.

Vous pouvez également utiliser az ml environment list --registry-name <registry-name> pour répertorier tous les environnements dans le registre.

Vous pouvez parcourir tous les environnements dans Azure Machine Learning Studio. Veillez à accéder à l’interface utilisateur globale et à rechercher l’entrée Registres.

Capture d’écran des environnements dans le registre.

Créer un composant dans le registre

Les composants sont des blocs de construction réutilisables de pipelines Machine Learning dans Azure Machine Learning. Vous pouvez packager le code, la commande, l’environnement, l’interface d’entrée et l’interface de sortie de l’étape d’un pipeline individuel dans un composant. Vous pouvez ensuite réutiliser le composant sur plusieurs pipelines sans avoir à vous soucier du portage des dépendances et du code chaque fois que vous écrivez un autre pipeline.

La création d’un composant dans un espace de travail vous permet d’utiliser le composant dans n’importe quel travail de pipeline au sein de cet espace de travail. La création d’un composant dans un registre vous permet d’utiliser le composant dans n’importe quel pipeline dans n’importe quel espace de travail au sein de votre organisation. La création de composants dans un registre est un excellent moyen de créer des utilitaires réutilisables modulaires ou des tâches d’apprentissage partagées qui peuvent être utilisées à des fins d’expérimentation par différentes équipes au sein de votre organisation.

Pour plus d'informations sur les composants, consultez la documentation suivante :

Assurez-vous d’être dans le dossier cli/jobs/pipelines-with-components/nyc_taxi_data_regression. Vous trouverez le fichier de définition de composant train.yml qui empaquette un script d’entraînement Scikit Learn train_src/train.py et l’environnement organisé AzureML-sklearn-0.24-ubuntu18.04-py37-cpu. Nous allons utiliser l’environnement Scikit Learn créé à l’étape précédente au lieu de l’environnement organisé. Vous pouvez modifier le champ environment dans train.yml pour faire référence à votre environnement Scikit Learn. Le fichier de définition de composant résultant train.yml est similaire à l’exemple suivant :

# <component>
$schema: https://azuremlschemas.azureedge.net/latest/commandComponent.schema.json
name: train_linear_regression_model
display_name: TrainLinearRegressionModel
version: 1
type: command
inputs:
  training_data: 
    type: uri_folder
  test_split_ratio:
    type: number
    min: 0
    max: 1
    default: 0.2
outputs:
  model_output:
    type: mlflow_model
  test_data:
    type: uri_folder
code: ./train_src
environment: azureml://registries/<registry-name>/environments/SKLearnEnv/versions/1`
command: >-
  python train.py 
  --training_data ${{inputs.training_data}} 
  --test_data ${{outputs.test_data}} 
  --model_output ${{outputs.model_output}}
  --test_split_ratio ${{inputs.test_split_ratio}}

Si vous avez utilisé un nom ou une version différente, la représentation plus générique ressemble à ceci : environment: azureml://registries/<registry-name>/environments/<sklearn-environment-name>/versions/<sklearn-environment-version>. Veillez donc à remplacer <registry-name>, <sklearn-environment-name> et <sklearn-environment-version> en conséquence. Vous exécutez ensuite la commande az ml component create pour créer le composant comme suit.

az ml component create --file train.yml --registry-name <registry-name>

Conseil

La même commande CLI az ml component create peut être utilisée pour créer des environnements dans un espace de travail ou un registre. L’exécution de la commande avec la commande --workspace-name crée le composant dans un espace de travail, tandis que l’exécution de la commande avec --registry-name crée l’environnement dans le registre.

Si vous préférez ne pas modifier train.yml, vous pouvez remplacer le nom de l’environnement dans l’interface CLI comme suit :

az ml component create --file train.yml --registry-name <registry-name>` --set environment=azureml://registries/<registry-name>/environments/SKLearnEnv/versions/1
# or if you used a different name or version, replace `<sklearn-environment-name>` and `<sklearn-environment-version>` accordingly
az ml component create --file train.yml --registry-name <registry-name>` --set environment=azureml://registries/<registry-name>/environments/<sklearn-environment-name>/versions/<sklearn-environment-version>

Conseil

Si vous obtenez une erreur indiquant que le nom du composant existe déjà dans le registre, vous pouvez modifier la version dans train.yml ou remplacer la version sur l’interface CLI par une version aléatoire.

Notez name et version du composant de la sortie de la commande az ml component create et utilisez-les avec les commandes az ml component show comme suit. Vous aurez besoin de name et version dans la section suivante lorsque vous créez et envoyez un travail d’apprentissage dans l’espace de travail.

az ml component show --name <component_name> --version <component_version> --registry-name <registry-name>

Vous pouvez également utiliser az ml component list --registry-name <registry-name> pour répertorier tous les composants dans le registre.

Vous pouvez parcourir tous les composants dans Azure Machine Learning Studio. Veillez à accéder à l’interface utilisateur globale et à rechercher l’entrée Registres.

Capture d’écran des composants du registre.

Exécuter un travail de pipeline dans un espace de travail à l’aide d’un composant à partir du registre

Lors de l’exécution d’un travail de pipeline qui utilise un composant à partir d’un registre, les ressources de calcul et les données d’apprentissage sont locales à l’espace de travail. Pour plus d'informations sur l’exécution des travaux, consultez la documentation suivante :

Nous allons exécuter un travail de pipeline avec le composant d’apprentissage Scikit Learn créé dans la section précédente pour effectuer l'apprentissage d’un modèle. Vérifiez que vous êtes dans le dossier cli/jobs/pipelines-with-components/nyc_taxi_data_regression. Le jeu de données d’apprentissage se trouve dans le dossier data_transformed. Modifiez la section component dans la section train_job du fichier single-job-pipeline.yml pour faire référence au composant d’apprentissage créé dans la section précédente. Le single-job-pipeline.yml résultant est illustré ci-dessous.

$schema: https://azuremlschemas.azureedge.net/latest/pipelineJob.schema.json
type: pipeline
display_name: nyc_taxi_data_regression_single_job
description: Single job pipeline to train regression model based on nyc taxi dataset

jobs:
  train_job:
    type: command
    component: azureml://registries/<registry-name>/component/train_linear_regression_model/versions/1
    compute: azureml:cpu-cluster
    inputs:
      training_data: 
        type: uri_folder
        path: ./data_transformed
    outputs:
      model_output: 
        type: mlflow_model
      test_data: 

L’aspect clé est que ce pipeline va s’exécuter dans un espace de travail à l’aide d’un composant qui n’est pas dans l’espace de travail spécifique. Le composant se trouve dans un registre qui peut être utilisé avec n’importe quel espace de travail de votre organisation. Vous pouvez exécuter ce travail de formation dans n’importe quel espace de travail auquel vous avez accès sans avoir à vous soucier de rendre le code et l’environnement d’apprentissage disponibles dans cet espace de travail.

Avertissement

  • Avant d’exécuter le travail de pipeline, vérifiez que l’espace de travail dans lequel vous exécuterez le travail se trouve dans une région Azure prise en charge par le registre dans lequel vous avez créé le composant.
  • Vérifiez que l’espace de travail a un cluster de calcul portant le nom cpu-cluster ou modifiez le champ compute sous jobs.train_job.compute par le nom de votre calcul.

Exécutez le travail de pipeline avec la commande az ml job create.

az ml job create --file single-job-pipeline.yml 

Conseil

Si vous n’avez pas configuré l’espace de travail et le groupe de ressources par défaut, comme expliqué dans la section Prérequis, vous devez spécifier les paramètres --workspace-name et --resource-group pour que az ml job create fonctionne.

Vous pouvez également ignorer la modification single-job-pipeline.yml et remplacer le nom du composant utilisé par train_job dans l’interface CLI.

az ml job create --file single-job-pipeline.yml --set jobs.train_job.component=azureml://registries/<registry-name>/component/train_linear_regression_model/versions/1

Étant donné que le composant utilisé dans le travail d’apprentissage est partagé par le biais d’un registre, vous pouvez envoyer le travail à n’importe quel espace de travail auquel vous avez accès dans votre organisation, même entre différents abonnements. Par exemple, si vous avez dev-workspace, test-workspace et prod-workspace, l’exécution du travail d’apprentissage dans ces trois espaces de travail est aussi simple que l’exécution de trois commandes az ml job create.

az ml job create --file single-job-pipeline.yml --workspace-name dev-workspace --resource-group <resource-group-of-dev-workspace>
az ml job create --file single-job-pipeline.yml --workspace-name test-workspace --resource-group <resource-group-of-test-workspace>
az ml job create --file single-job-pipeline.yml --workspace-name prod-workspace --resource-group <resource-group-of-prod-workspace>

Dans Azure Machine Learning Studio, sélectionnez le lien de point de terminaison dans la sortie du travail pour afficher le travail. Ici, vous pouvez analyser les métriques d’apprentissage, vérifier que le travail utilise le composant et l’environnement à partir du registre et passer en revue le modèle entraîné. Notez le name du travail de la sortie ou recherchez les mêmes informations dans la présentation du travail dans Azure Machine Learning Studio. Vous aurez besoin de ces informations pour télécharger le modèle entraîné dans la section suivante sur la création de modèles dans le registre.

Capture d’écran du pipeline dans Azure Machine Learning studio.

Créer un modèle dans le registre

Dans cette section, vous allez apprendre à créer des modèles dans un registre. Passez en revue la gestion des modèles pour en savoir plus sur la gestion des modèles dans Azure Machine Learning. Nous allons examiner deux façons différentes de créer un modèle dans un registre. Tout d’abord, à partir de fichiers locaux. Ensuite, en copiant un modèle inscrit dans l’espace de travail dans un registre.

Dans les deux options, vous allez créer un modèle avec le format MLflow, ce qui vous aidera à déployer ce modèle pour l’inférence sans écrire de code d’inférence.

Créer un modèle dans le registre à partir de fichiers locaux

Téléchargez le modèle, qui est disponible comme sortie de train_job en remplaçant <job-name> par le nom du travail de la section précédente. Le modèle avec les fichiers de métadonnées MLflow doit être disponible dans le ./artifacts/model/.

# fetch the name of the train_job by listing all child jobs of the pipeline job
train_job_name=$(az ml job list --parent-job-name <job-name> --query [0].name | sed 's/\"//g')
# download the default outputs of the train_job
az ml job download --name $train_job_name 
# review the model files
ls -l ./artifacts/model/

Conseil

Si vous n’avez pas configuré l’espace de travail et le groupe de ressources par défaut, comme expliqué dans la section Prérequis, vous devez spécifier les paramètres --workspace-name et --resource-group pour que az ml model create fonctionne.

Avertissement

La sortie de az ml job list est passée à sed. Cela fonctionne uniquement sur les interpréteurs de commandes Linux. Si vous êtes sur Windows, exécutez az ml job list --parent-job-name <job-name> --query [0].name et supprimez les guillemets que vous voyez dans le nom du travail d’apprentissage.

Si vous ne parvenez pas à télécharger le modèle, vous pouvez trouver un exemple de modèle MLflow entraîné par le travail d’apprentissage dans la section précédente dans le dossier cli/jobs/pipelines-with-components/nyc_taxi_data_regression/artifacts/model/.

Inscrire le modèle dans le registre :

# create model in registry
az ml model create --name nyc-taxi-model --version 1 --type mlflow_model --path ./artifacts/model/ --registry-name <registry-name>

Conseil

  • Utilisez un nombre aléatoire pour le paramètre version si vous obtenez une erreur indiquant que le nom et la version du modèle existent.
  • La même commande CLI az ml model create peut être utilisée pour créer des modèles dans un espace de travail ou un registre. L’exécution de la commande avec la commande --workspace-name crée le modèle dans un espace de travail, tandis que l’exécution de la commande avec --registry-name crée le modèle dans le registre.

Partager un modèle d’un espace de travail dans le registre

Dans ce flux de travail, vous créerez d’abord le modèle dans l’espace de travail, puis le partagerez dans le registre. Ce flux de travail est utile lorsque vous souhaitez tester le modèle dans l’espace de travail avant de le partager. Par exemple, déployez-le sur des points de terminaison, essayez l’inférence avec certaines données de test, puis copiez le modèle dans un registre si tout semble correct. Ce flux de travail peut également être utile lorsque vous développez une série de modèles à l’aide de différentes techniques, infrastructures ou différents paramètres et que vous souhaitez promouvoir un seul d’entre eux dans le registre en tant que candidat de production.

Vérifiez que vous disposez du nom du travail de pipeline de la section précédente et remplacez-le dans la commande pour récupérer le nom du travail d’apprentissage ci-dessous. Vous allez ensuite inscrire le modèle de la sortie du travail d’apprentissage dans l’espace de travail. Notez comment le paramètre --path fait référence à la sortie de train_job avec la syntaxe azureml://jobs/$train_job_name/outputs/artifacts/paths/model.

# fetch the name of the train_job by listing all child jobs of the pipeline job
train_job_name=$(az ml job list --parent-job-name <job-name> --workspace-name <workspace-name> --resource-group <workspace-resource-group> --query [0].name | sed 's/\"//g')
# create model in workspace
az ml model create --name nyc-taxi-model --version 1 --type mlflow_model --path azureml://jobs/$train_job_name/outputs/artifacts/paths/model 

Conseil

  • Utilisez un nombre aléatoire pour le paramètre version si vous obtenez une erreur indiquant que le nom et la version du modèle existent.
  • Si vous n’avez pas configuré l’espace de travail et le groupe de ressources par défaut, comme expliqué dans la section Prérequis, vous devez spécifier les paramètres --workspace-name et --resource-group pour que az ml model create fonctionne.

Notez le nom et la version du modèle. Vous pouvez vérifier si le modèle est inscrit dans l’espace de travail en le parcourant dans l’interface utilisateur de Studio ou en utilisant la commande az ml model show --name nyc-taxi-model --version $model_version.

Ensuite, vous partagerez désormais le modèle de l’espace de travail dans le registre.

# share model registered in workspace to registry
az ml model share --name nyc-taxi-model --version 1 --registry-name <registry-name> --share-with-name <new-name> --share-with-version <new-version>

Conseil

  • Veillez à utiliser le nom et la version du modèle appropriés si vous l’avez modifié dans la commande az ml model create.
  • La commande ci-dessus dispose de deux paramètres facultatifs « --share-with-name » et « --share-with-version ». S’ils ne sont pas fournis, le nouveau modèle aura les mêmes nom et version que le modèle partagé. Notez name et version du modèle de la sortie de la commande az ml model create et utilisez-les avec les commandes az ml model show comme suit. Vous aurez besoin de name et version dans la section suivante lorsque vous déployez le modèle sur un point de terminaison en ligne pour l’inférence.
az ml model show --name <model_name> --version <model_version> --registry-name <registry-name>

Vous pouvez également utiliser az ml model list --registry-name <registry-name> pour répertorier tous les modèles du registre ou parcourir tous les composants de l’interface utilisateur d’Azure Machine Learning Studio. Veillez à accéder à l’interface utilisateur globale et recherchez le hub Registres.

La capture d’écran suivante montre un modèle dans un registre dans Azure Machine Learning Studio. Si vous avez créé un modèle à partir de la sortie du travail, puis copié le modèle de l’espace de travail vers le registre, vous verrez que le modèle a un lien vers le travail qui a effectué l’apprentissage du modèle. Vous pouvez utiliser ce lien pour accéder au travail d’apprentissage pour passer en revue le code, l’environnement et les données utilisés pour effectuer l'apprentissage du modèle.

Capture d’écran des modèles dans le registre.

Déployer un modèle à partir d’un registre vers un point de terminaison en ligne dans l’espace de travail

Dans la dernière section, vous allez déployer un modèle à partir du registre vers un point de terminaison en ligne dans un espace de travail. Vous pouvez choisir de déployer n’importe quel espace de travail auquel vous avez accès dans votre organisation, à condition que l’emplacement de l’espace de travail soit l’un des emplacements pris en charge par le registre. Cette fonctionnalité est utile si vous avez effectué l'apprentissage d’un modèle dans un espace de travail dev et que vous devez maintenant déployer le modèle sur l’espace de travail test ou prod, tout en conservant les informations de traçabilité concernant le code, l’environnement et les données utilisées pour effectuer l'apprentissage du modèle.

Les points de terminaison en ligne vous permettent de déployer les modèles et d’envoyer des demandes d’inférence via les API REST. Pour plus d’informations, consultez Comment déployer et scorer un modèle Machine Learning en utilisant un point de terminaison en ligne.

Créez un point de terminaison en ligne.

az ml online-endpoint create --name reg-ep-1234

Mettez à jour la ligne model:deploy.yml disponible dans le dossier cli/jobs/pipelines-with-components/nyc_taxi_data_regression pour faire référence au nom et à la version du modèle à partir de l’étape précédente. Créez un déploiement en ligne sur le point de terminaison en ligne. deploy.yml est affiché ci-dessous pour votre référence.

$schema: https://azuremlschemas.azureedge.net/latest/managedOnlineDeployment.schema.json
name: demo
endpoint_name: reg-ep-1234
model: azureml://registries/<registry-name>/models/nyc-taxi-model/versions/1
instance_type: Standard_DS2_v2
instance_count: 1

Créez le déploiement en ligne. Le déploiement prend plusieurs minutes.

az ml online-deployment create --file deploy.yml --all-traffic

Récupérez l’URI de scoring et envoyez un exemple de demande de scoring. Des exemples de données pour la demande de scoring sont disponibles dans scoring-data.json dans le dossier cli/jobs/pipelines-with-components/nyc_taxi_data_regression.

ENDPOINT_KEY=$(az ml online-endpoint get-credentials -n reg-ep-1234 -o tsv --query primaryKey)
SCORING_URI=$(az ml online-endpoint show -n reg-ep-1234 -o tsv --query scoring_uri)
curl --request POST "$SCORING_URI" --header "Authorization: Bearer $ENDPOINT_KEY" --header 'Content-Type: application/json' --data @./scoring-data.json

Conseil

  • La commande curl fonctionne uniquement sur Linux.
  • Si vous n’avez pas configuré l’espace de travail et le groupe de ressources par défaut, comme expliqué dans la section Prérequis, vous devez spécifier les paramètres --workspace-name et --resource-group pour que les commandes az ml online-endpoint et az ml online-deployment fonctionnent.

Nettoyer les ressources

Si vous ne comptez pas utiliser le déploiement, vous devriez le supprimer pour réduire les coûts. L’exemple suivant supprime le point de terminaison et tous les déploiements sous-jacents :

az ml online-endpoint delete --name reg-ep-1234 --yes --no-wait

Étapes suivantes