Création de votre SageMaker ressource Amazon - AWS Marketplace

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.

Création de votre SageMaker ressource Amazon

Pour publier un package modèle ou un produit d'algorithme, vous devez créer la ressource de package de modèle ou la ressource d'algorithme correspondante sur Amazon SageMaker. Lorsque vous créez votre ressource pour un AWS Marketplace produit, celle-ci doit être certifiée par le biais d'une étape de validation. L'étape de validation nécessite que vous fournissiez des données pour tester votre paquetage de modèles ou votre ressource d'algorithme avant de pouvoir les publier. Les sections suivantes vous montrent comment créer votre SageMaker ressource, qu'il s'agisse d'une ressource de package modèle ou d'une ressource d'algorithme. Cela inclut la définition des spécifications de validation qui indiquent SageMaker comment effectuer la validation.

Note

Si vous n'avez pas encore créé les images de votre produit et ne les avez pas téléchargées sur Amazon Elastic Container Registry (AmazonECR), consultez Regrouper votre code sous forme d'images pour les produits d'apprentissage automatique dans AWS Marketplace et Téléchargement de vos images sur Amazon Elastic Container Registry pour savoir comment procéder.

Création de votre modèle de package

Les conditions suivantes sont requises pour créer un modèle de package pour AWS Marketplace :

Note

Ce qui suit concerne la création d'un modèle de produit d'emballage. Pour plus d'informations sur les modèles de packages dans SageMaker, consultez la section Créer une ressource de package de modèles.

Création des ressources du package modèle

Les procédures suivantes vous guident dans la création des ressources du package modèle.

Étape 1 : Pour créer les ressources du package modèle
  1. Ouvrez la SageMaker console Amazon.

  2. Vérifiez que vous vous trouvez dans la AWS région à partir de laquelle vous souhaitez publier en regardant en haut à droite de la page. Pour la publication, consultez la Pris en charge Régions AWS pour la publication section. L'image d'inférence que vous avez chargée sur Amazon ECR lors des étapes précédentes doit se trouver dans la même région.

  3. Dans le menu de navigation de gauche, choisissez Model packages.

  4. Sélectionnez Create model package (Créer un package de modèle).

Après avoir créé le package, vous devez définir les spécifications du package d'inférence.

Étape 2 : Pour définir les spécifications d'inférence
  1. Donnez un nom à votre modèle de package (par exemple, my-model-package).

  2. Pour Emplacement de l'image d'inférence, saisissez l'image URI d'inférence qui a été téléchargée sur Amazon. ECR Vous pouvez les récupérer URI en localisant votre image dans la ECRconsole Amazon.

  3. Si les artefacts de votre modèle issus de l'entraînement sont intégrés à votre logique dans votre image d'inférence, laissez le champ Emplacement des artefacts de données du modèle vide. Sinon, spécifiez l'emplacement complet sur Amazon S3 du fichier compressé (.tar.gz) des artefacts de votre modèle.

  4. À l'aide de la liste déroulante, choisissez les types d'instance pris en charge pour votre image d'inférence en temps réel (également appelée point de terminaison) et pour les tâches de transformation par lots.

  5. Choisissez Suivant.

Avant que votre modèle de package puisse être créé et publié, une validation est nécessaire pour garantir qu'il fonctionne comme prévu. Cela nécessite que vous exécutiez une tâche de transformation par lots avec les données de test que vous fournissez à des fins d'inférence. Les spécifications de validation indiquent SageMaker comment effectuer la validation.

Étape 3 : Pour définir les spécifications de validation
  1. Définissez Publier ce modèle de package AWS Marketplace sur Oui. Si vous définissez ce paramètre sur Non, vous ne pourrez pas publier ce modèle de package ultérieurement. Le fait de choisir Oui certifie votre modèle de package AWS Marketplace et nécessite l'étape de validation.

  2. Si c'est la première fois que ce processus est terminé, choisissez Créer un nouveau rôle pour le IAMrôle. Amazon SageMaker utilise ce rôle lorsqu'il déploie votre modèle de package. Cela inclut des actions, telles que l'extraction d'images depuis Amazon ECR et d'artefacts depuis Amazon S3. Vérifiez les paramètres, puis choisissez Create role. La création d'un rôle ici accorde les autorisations décrites par la AmazonSageMakerFullAccessIAMpolitique au rôle que vous créez.

  3. Modifiez-le JSONdans le profil de validation. Pour plus de détails sur les valeurs autorisées, consultez TransformJobDefinition.

    1. TransformInput.DataSource.S3Uri: Définissez l'endroit où vos données de test pour inférence sont stockées.

    2. TransformInput.ContentType: Spécifiez le type de contenu de vos données de test (par exemple application/jsontext/plain,image/png ,, ou toute autre valeur). SageMaker ne valide pas les données d'entrée réelles. Cette valeur est transmise au point de HTTP terminaison de votre conteneur dans la valeur Content-type d'en-tête.

    3. TransformInput.CompressionType: défini sur None si vos données de test à des fins d'inférence dans Amazon S3 ne sont pas compressées.

    4. TransformInput.SplitType: défini sur pour None transmettre chaque objet d'Amazon S3 dans son ensemble à des fins d'inférence.

    5. TransformOutput.S3OutputPath: défini sur l'emplacement où la sortie d'inférence est stockée.

    6. TransformOutput.AssembleWith: défini sur None pour générer chaque inférence sous forme d'objets distincts dans Amazon S3.

  4. Sélectionnez Create model package (Créer un package de modèle).

SageMaker extrait l'image d'inférence d'AmazonECR, copie tous les artefacts dans le conteneur d'inférence et exécute une tâche de transformation par lots en utilisant vos données de test à des fins d'inférence. Une fois la validation réussie, le statut passe à Terminé.

Note

L'étape de validation n'évalue pas la précision du modèle à l'aide de vos données de test. L'étape de validation vérifie si le conteneur fonctionne et répond comme prévu.

Vous avez terminé de créer les ressources de votre modèle de produit. Passez au Publier votre produit dans AWS Marketplace.

Création de votre algorithme

Les conditions suivantes sont requises pour créer un algorithme pour AWS Marketplace :

  • Une image d'inférence, stockée sur Amazon ECR

  • Une image d'entraînement, stockée sur Amazon ECR

  • Vos données de test pour l'entraînement, stockées dans Amazon S3

  • Vos données de test à des fins d'inférence, stockées dans Amazon S3

Note

La procédure pas à pas suivante permet de créer un produit algorithmique. Pour plus d'informations, voir Création d'une ressource d'algorithme.

Création des ressources de l'algorithme

Les procédures suivantes vous permettent de créer les ressources de votre package d'algorithmes.

Étape 1 : Pour créer les ressources de l'algorithme
  1. Ouvrez la SageMaker console Amazon.

  2. Vérifiez que vous vous trouvez dans la AWS région à partir de laquelle vous souhaitez publier en regardant en haut à droite de la page (voirPris en charge Régions AWS pour la publication). Les images d'entraînement et d'inférence que vous avez chargées sur Amazon ECR lors des étapes précédentes doivent se trouver dans cette même région.

  3. Dans le menu de navigation de gauche, sélectionnez Algorithmes.

  4. Choisissez Create algorithm (Créer un algorithme).

Après avoir créé le package d'algorithmes, vous devez définir les spécifications pour l'entraînement et le réglage de votre modèle.

Étape 2 : Pour définir les spécifications d'entraînement et de réglage
  1. Entrez le nom de votre algorithme (par exemple, my-algorithm).

  2. Pour l'image de formation, collez l'URIemplacement complet de votre image d'entraînement qui a été téléchargée sur AmazonECR. Vous pouvez les récupérer URI en localisant votre image dans la ECRconsole Amazon.

  3. À l'aide de la liste déroulante, choisissez les types d'instances d'entraînement compatibles avec votre image d'entraînement.

  4. Dans la section Spécification du canal, ajoutez un canal pour chaque jeu de données d'entrée pris en charge par votre algorithme, jusqu'à 20 canaux de sources d'entrée. Pour plus d'informations, voir Configuration des données d'entrée.

  5. Choisissez Suivant.

  6. Si votre algorithme prend en charge les hyperparamètres et le réglage des hyperparamètres, vous devez spécifier les paramètres de réglage.

  7. Choisissez Suivant.

Note

Nous recommandons vivement que votre algorithme prenne en charge le réglage des hyperparamètres et rende les paramètres appropriés réglables. Cela permet aux data scientists d'ajuster les modèles pour obtenir les meilleurs résultats.

Après avoir défini les paramètres de réglage, le cas échéant, vous devez définir les spécifications de votre image d'inférence.

Étape 3 : Pour définir les spécifications de l'image d'inférence
  1. Pour Emplacement de l'image d'inférence, collez l'image URI d'inférence qui a été téléchargée sur Amazon. ECR Vous pouvez les récupérer URI en localisant votre image dans la ECRconsole Amazon.

  2. À l'aide de la liste déroulante, choisissez les types d'instance pris en charge pour votre image d'inférence à la fois pour les tâches d'inférence en temps réel (également appelées endpoints) et de transformation par lots.

  3. Choisissez Suivant.

Avant que votre algorithme puisse être créé et publié, une validation est nécessaire pour garantir qu'il fonctionne comme prévu. Cela nécessite que vous exécutiez à la fois une tâche d'entraînement avec des données de test pour l'entraînement et une tâche de transformation par lots avec les données de test à des fins d'inférence que vous fournissez. Les spécifications de validation indiquent SageMaker comment effectuer la validation.

Étape 4 : Pour définir les spécifications de validation
  1. Définissez Publier cet algorithme AWS Marketplace sur Oui. Si vous définissez ce paramètre sur Non, vous ne pourrez pas publier cet algorithme ultérieurement. Si vous choisissez Oui, votre algorithme est certifié AWS Marketplace et nécessite la spécification de validation.

  2. Si c'est la première fois que vous créez un package de machine learning pour AWS Marketplace, choisissez Create a new role for the IAMrole. Amazon SageMaker utilise ce rôle lors de l'entraînement de votre algorithme et du déploiement du package modèle suivant. Cela inclut des actions telles que l'extraction d'images depuis AmazonECR, le stockage d'artefacts dans Amazon S3 et la copie de données de formation depuis Amazon S3. Vérifiez les paramètres, puis choisissez Create role. La création d'un rôle ici accorde les autorisations décrites par la AmazonSageMakerFullAccessIAMpolitique au rôle que vous créez.

  3. Modifiez le JSONfichier dans le profil de validation pour la définition des tâches de formation. Pour plus d'informations sur les valeurs autorisées, consultez TrainingJobDefinition.

    1. InputDataConfig: Dans ce JSON tableau, ajoutez un objet Channel pour chaque canal que vous avez spécifié lors de l'étape de spécification de l'entraînement. Pour chaque canal, spécifiez où sont stockées vos données de test pour l'entraînement.

    2. OutputDataConfig: Une fois la formation terminée, les artefacts du modèle figurant dans le chemin du répertoire du conteneur de formation /opt/ml/model/ sont compressés et copiés sur Amazon S3. Spécifiez l'emplacement Amazon S3 où le fichier compressé (.tar.gz) est stocké.

  4. Modifiez le JSON fichier dans le profil de validation pour la définition de la tâche de transformation. Pour plus d'informations sur les valeurs autorisées, consultez TransformJobDefinition.

    1. TransformInput.DataSource.S3Uri: Définissez l'endroit où vos données de test pour inférence sont stockées.

    2. TransformInput.ContentType: Spécifiez le type de contenu de vos données de test. Par exemple,application/json, text/plainimage/png, ou toute autre valeur. Amazon SageMaker ne valide pas les données d'entrée réelles. Cette valeur est transmise au point de HTTP terminaison de votre conteneur dans la valeur Content-type d'en-tête.

    3. TransformInput.CompressionType: défini sur None si vos données de test à des fins d'inférence dans Amazon S3 ne sont pas compressées.

    4. TransformInput.SplitType: Choisissez la manière dont vous souhaitez que les objets soient divisés dans S3. Par exemple, None transmet chaque objet d'Amazon S3 dans son ensemble à des fins d'inférence. Pour plus de détails, consultez SplitTypele Amazon SageMaker API Reference.

    5. TransformOutput.S3OutputPath: défini sur l'emplacement où la sortie d'inférence est stockée.

    6. TransformOutput.AssembleWith: défini sur None pour générer chaque inférence sous forme d'objets distincts dans Amazon S3.

  5. Choisissez Créer un package d'algorithmes.

SageMaker extrait l'image d'entraînement d'AmazonECR, exécute une tâche d'entraînement de test à l'aide de vos données et stocke les artefacts du modèle dans Amazon S3. Il extrait ensuite l'image d'inférence d'AmazonECR, copie les artefacts d'Amazon S3 dans le conteneur d'inférence et exécute une tâche de transformation par lots en utilisant vos données de test à des fins d'inférence. Une fois la validation réussie, le statut passe à Terminé.

Note

L'étape de validation n'évalue pas la précision de l'entraînement ou du modèle à l'aide de vos données de test. L'étape de validation vérifie si les conteneurs fonctionnent et répondent comme prévu.

L'étape de validation valide uniquement le traitement par lots. C'est à vous de valider que le traitement en temps réel fonctionne avec votre produit.

Vous avez terminé de créer les ressources de votre produit algorithmique. Passez au Publier votre produit dans AWS Marketplace.