Création d'une ressource de package de modèle - Amazon SageMaker

Création d'une ressource de package de modèle

Pour créer une ressource de package de modèle que vous utiliserez pour créer des modèles déployables dans Amazon SageMaker et les publier sur AWS Marketplace, spécifiez les informations suivantes :

  • Le conteneur Docker qui contient le code d'inférence ou la ressource d'algorithme qui a été utilisée pour former le modèle.

  • L'emplacement des artefacts de modèles. Les artefacts de modèle peuvent être empaquetés dans le même conteneur Docker que le code d'inférence ou stockés dans Amazon S3.

  • Les types d'instances pris en charge par votre package de modèle pour les tâches d'inférence et de transformation par lots en temps réel.

  • Les profils de validation, qui sont des tâches de transformation par lots exécutées par SageMaker pour tester le code d'inférence du package de votre modèle.

    Vous devez valider les packages de modèle avant de les répertorier sur AWS Marketplace. Les acheteurs et les vendeurs peuvent ainsi être assurés du bon fonctionnement des produits dans Amazon SageMaker. Vous pouvez répertorier des produits sur AWS Marketplace uniquement si la validation aboutit.

    La procédure de validation utilise votre profil de validation et les exemples de données afin d'exécuter les tâches de validation ci-dessous :

    1. Création d'un modèle dans votre compte à l'aide de l'image d'inférence du package de modèle et des artefacts de modèle facultatifs qui sont stockés dans Amazon S3.

      Note

      Un package de modèle est spécifique à la région dans laquelle vous le créez. Le compartiment S3 où les artefacts de modèle sont stockés doit se trouver dans la même région que celle où vous avez créé le package de modèle.

    2. Création d'une tâche de transformation dans votre compte à l'aide du modèle afin de vérifier que votre image d'inférence fonctionne avec SageMaker.

    3. Créer un profil de validation.

    Note

    Dans votre profil de validation, fournissez uniquement les données que vous souhaitez exposer publiquement.

    La validation peut durer plusieurs heures. Pour voir le statut des tâches dans votre compte, dans la console SageMaker, consultez les pages Transform jobs (Tâches de transformation). En cas d'échec de la validation, vous pouvez accéder aux rapports d'analyse et de validation depuis la console SageMaker. Une fois les problèmes corrigés, recréez l'algorithme. Lorsque l'algorithme a le statut COMPLETED, recherchez-le dans la console SageMaker et démarrez le processus d'élaboration de liste.

    Note

    Pour publier le package de modèle sur AWS Marketplace, au moins un profil de validation est requis.

Vous pouvez créer un package de modèle à l'aide de la console SageMaker ou de l'API SageMaker.

Création d'une ressource de package de modèle (console)

Pour créer un package de modèle dans la console SageMaker :

  1. Ouvrez la console SageMaker à l'adresse https://console.aws.amazon.com/sagemaker/.

  2. Choisissez Model packages (Packages de modèle), puis Create model package (Créer un package de modèle).

  3. Sur la page Inference specifications (Spécifications d'inférence), fournissez les informations suivantes :

    1. Sous Model package name (Nom du package de modèle), attribuez un nom au package de modèle. Le nom du package de modèle doit être unique dans votre compte et dans la région AWS. Il doit comporter entre 1 et 64 caractères. Les caractères valides sont : a-z, A-Z, 0-9 et le trait d'union (-).

    2. Tapez une description pour votre package de modèle. Cette description s'affiche dans la console SageMaker et sur AWS Marketplace.

    3. Sous Inference specification options (Options de spécification d'inférence), choisissez Provide the location of the inference image and model artifacts (Préciser l'emplacement de l'image d'inférence et des artefacts de modèles) afin de créer un package de modèle à l'aide d'un conteneur d'inférence et d'artefacts de modèles. Choisissez Provide the algorithm used for training and its model artifacts (Préciser l'algorithme utilisé pour l'entraînement et ses artefacts de modèles) afin de créer un package de modèle à partir d'une ressource d'algorithme que vous avez créée ou à laquelle vous vous êtes abonné sur AWS Marketplace.

    4. Si vous avez choisi Provide the location of the inference image and model artifacts (Préciser l'emplacement de l'image d'inférence et des artefacts de modèles) comme Inference specification options (Options de spécification d'inférence), fournissez les informations suivantes dans les champs Container definition (Définition de conteneur) et Supported resources (Ressources prises en charge) :

      1. Sous Location of inference image (Emplacement de l'image d'inférence), tapez le chemin d'accès à l'image qui contient le code d'inférence. L'image doit être stockée en tant que conteneur Docker dans Amazon ECR.

      2. Sous Location of model data artifacts (Emplacement des artefacts de données de modèles), tapez l'emplacement dans S3 où sont stockés les artefacts de modèles.

      3. Sous Container DNS host name (Nom d'hôte DNS du conteneur), tapez le nom de l'hôte DNS à utiliser pour votre conteneur.

      4. Sous Supported instance types for real-time inference (Types d'instances pris en charge pour l'inférence en temps réel), choisissez les types d'instances pris en charge par votre package de modèle pour l'inférence en temps réel à partir des points de terminaison hébergés par SageMaker.

      5. Sous Supported instance types for batch transform jobs (Types d'instances pris en charge pour les tâches de transformation par lots), choisissez les types d'instances pris en charge par votre package de modèle pour les tâches de transformation par lots.

      6. Sous Supported content types (Types de contenu pris en charge), saisissez les types de contenu attendus par votre package de modèle pour les demandes d'inférence.

      7. Sous Supported response MIME types (Types MIME de réponse pris en charge), tapez les types MIME utilisés par votre modèle pour fournir des inférences.

    5. Si vous avez choisi Provide the algorithm used for training and its model artifacts (Préciser l'algorithme utilisé pour l'entraînement et ses artefacts de modèles) comme Inference specification options (Options de spécification d'inférence), fournissez les informations suivantes :

      1. Sous Algorithm ARN (ARN de l'algorithme), saisissez l'ARN (Amazon Resource Name) de la ressource d'algorithme à utiliser pour créer le package de modèle.

      2. Sous Location of model data artifacts (Emplacement des artefacts de données de modèles), tapez l'emplacement dans S3 où sont stockés les artefacts de modèles.

    6. Choisissez Suivant.

  4. Sur la page Validation and scanning (Validation et analyse), fournissez les informations suivantes :

    1. Sous Publish this model package on AWS Marketplace (Publier ce package de modèle), choisissez Oui pour publier le package de modèle sur AWS Marketplace.

    2. Sous Validate this model package (Valider ce package de modèle), choisissez Yes (Oui) pour que SageMaker exécute les tâches de transformation par lots que vous spécifiez afin de tester le code d'inférence de votre package de modèle.

      Note

      Votre package de modèle doit être validé pour pouvoir être publié sur AWS Marketplace.

    3. Sous IAM role (Rôle IAM), choisissez un rôle IAM qui détient les autorisations requises pour exécuter les tâches de transformation par lots dans SageMaker, ou choisissez Create a new role (Créer un rôle) afin que SageMaker crée un rôle avec la politique gérée AmazonSageMakerFullAccess attachée. Pour plus d'informations, consultez Rôles SageMaker.

    4. Sous Validation profile (Profil de validation), spécifiez ce qui suit :

      • Un nom pour le profil de validation.

      • Une définition de tâche de transformation. Il s'agit d'un bloc JSON qui décrit une tâche de transformation par lots. Ce paramètre a le même format que le paramètre d'entrée TransformJobDefinition de l'API CreateAlgorithm.

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

Création d'une ressource de package de modèle (API)

Pour créer un package de modèle à l'aide de l'API SageMaker, appelez l'API CreateModelPackage.