Attachement d’une image SageMaker personnalisée dans Amazon SageMaker Studio Classic - Amazon SageMaker AI

Attachement d’une image SageMaker personnalisée dans Amazon SageMaker Studio Classic

Important

Les politiques IAM personnalisées qui autorisent Amazon SageMaker Studio ou Amazon SageMaker Studio Classic à créer des ressources Amazon SageMaker doivent également accorder des autorisations pour ajouter des balises à ces ressources. L’autorisation d’ajouter des balises aux ressources est requise, car Studio et Studio Classic balisent automatiquement toutes les ressources qu’ils créent. Si une politique IAM autorise Studio et Studio Classic à créer des ressources mais n’autorise pas le balisage, des erreurs « AccessDenied » peuvent se produire lors de la tentative de création de ressources. Pour plus d’informations, consultez Octroi d’autorisations pour baliser les ressources SageMaker AI.

Les Politiques gérées par AWS pour Amazon SageMaker AI qui autorisent la création de ressources SageMaker incluent déjà des autorisations permettant d’ajouter des balises lors de la création de ces ressources.

Important

Depuis le 30 novembre 2023, l’expérience Amazon SageMaker Studio précédente s’appelle désormais Amazon SageMaker Studio Classic. La section suivante est spécifique à l’utilisation de l’application Studio Classic. Pour en savoir plus sur l’utilisation de l’expérience Studio mise à jour, consultez Amazon SageMaker Studio.

Pour utiliser une image SageMaker personnalisée, vous devez attacher une version de l’image à votre domaine ou votre espace partagé. Lorsque vous attachez une version de l’image, elle apparaît dans le Lanceur SageMaker Studio Classic et est disponible dans la liste déroulante Sélectionner une image, que les utilisateurs utilisent pour lancer une activité ou modifier l’image utilisée par un bloc-notes.

Pour mettre une image SageMaker personnalisée à la disposition de tous les utilisateurs d’un domaine, attachez l’image au domaine. Pour mettre une image à la disposition de tous les utilisateurs d'un espace partagé, vous pouvez l'attacher à l'espace partagé. Pour rendre une image accessible à un seul utilisateur, vous devez l’attacher au profil de l’utilisateur. Lorsque vous attachez une image, SageMaker AI utilise par défaut la dernière version de l’image. Vous pouvez également attacher une version d’image spécifique. Après avoir attaché la version, vous pouvez choisir la version dans le Lanceur SageMaker AI ou le sélecteur d’image lorsque vous lancez un bloc-notes.

Le nombre de versions d’image pouvant être attachées à n’importe quel moment est limité. Après avoir atteint la limite, vous devez détacher une version afin d’attacher une autre version de l’image.

Les sections suivantes illustrent comment attacher une image SageMaker personnalisée à votre domaine à l’aide de la console SageMaker AI ou de l’AWS CLI. Vous ne pouvez attacher une image personnalisée à un espace partagé qu’à l’aide d’AWS CLI.

Attachement de l’image SageMaker à un domaine

Attachement de l’image SageMaker à l’aide de la console

Cette rubrique décrit comment attacher une version d’image SageMaker personnalisée existante à votre domaine à l’aide du panneau de configuration de SageMaker AI. Vous pouvez également créer une version d’image et une image SageMaker personnalisées, puis attacher cette version à votre domaine. Pour connaître la procédure de création d’une image et d’une version d’image, consultez Création d’une image SageMaker personnalisée pour Amazon SageMaker Studio Classic.

Pour attacher une image existante
  1. Ouvrez la console Amazon SageMaker AI à l’adresse https://console.aws.amazon.com/sagemaker/.

  2. Dans le panneau de navigation de gauche, choisissez Configurations d’administrateur.

  3. Sous Configurations d’administrateur, choisissez Domaines.

  4. Sur la page Domaines, sélectionnez le domaine auquel attacher l’image.

  5. Sur la page Domain details (Détails du domaine), sélectionnez l’onglet Environment (Environnement).

  6. Dans l’onglet Environnement, sous Images personnalisées SageMaker Studio Classic attachées au domaine, choisissez Attacher une image.

  7. Pour Source de l’image, choisissez Image existante.

  8. Choisissez une image existante dans la liste.

  9. Choisissez une version de l'image dans la liste.

  10. Choisissez Suivant.

  11. Vérifiez les valeurs pour Image name (Nom de l'image), Image display name (Nom d'affichage de l'image) et Description.

  12. Choisissez le rôle IAM. Pour plus d’informations, consultez Création d’une image SageMaker personnalisée pour Amazon SageMaker Studio Classic.

  13. (Facultatif) Ajoutez des balises pour l’image.

  14. Spécifiez le chemin de montage EFS. Il s'agit du chemin d'accès dans l'image pour monter le répertoire de base Amazon Elastic File System (EFS) de l'utilisateur.

  15. Pour Image type (Type d'image), sélectionnez SageMaker Studio image (Image SageMaker Studio).

  16. Pour Kernel name (Nom du noyau), saisissez le nom d’un noyau existant dans l’image. Pour obtenir des informations sur la façon d’obtenir les informations du noyau à partir de l’image, consultez DEVELOPMENT dans le référentiel des exemples d’images personnalisées SageMaker Studio Classic. Pour plus d’informations, consultez les sections Découverte du noyau et Données utilisateur de Personnalisation des spécifications d’une image SageMaker pour Amazon SageMaker Studio Classic.

  17. (Facultatif) Pour Nom d’affichage du noyau, saisissez le nom d’affichage du noyau.

  18. Choisissez Add kernel (Ajouter le noyau).

  19. Sélectionnez Soumettre.

    1. Attendez que la version de l’image soit attachée au domaine. Lorsqu’elle est attachée, la version s’affiche dans la liste Custom images (Images personnalisées) et est brièvement mise en surbrillance.

Attachement de l'image SageMaker à l'aide de l'interface AWS CLI

Les sections suivantes illustrent comment attacher une image SageMaker personnalisée lors de la création d'un nouveau domaine ou de la mise à jour de votre domaine existant à l'aide de l'interface AWS CLI.

Attacher l’image SageMaker à un nouveau domaine

La section suivante illustre comment créer un nouveau domaine avec la version attachée. Cette procédure exige que vous spécifiiez les informations Amazon Virtual Private Cloud (Amazon VPC) et le rôle d'exécution requis pour créer le domaine. Pour créer le domaine et attacher l’image SageMaker personnalisée, procédez comme suit :

  • Obtenez votre ID de VPC et vos ID de sous-réseau par défaut.

  • Créez le fichier de configuration du domaine, qui spécifie l'image.

  • Créez le domaine avec le fichier de configuration.

Pour ajouter l'image SageMaker personnalisée à votre domaine
  1. Obtenez votre ID de VPC par défaut.

    aws ec2 describe-vpcs \ --filters Name=isDefault,Values=true \ --query "Vpcs[0].VpcId" --output text

    La réponse devrait être similaire à ce qui suit.

    vpc-xxxxxxxx
  2. Obtenez vos ID de sous-réseau par défaut à l’aide de l’ID de VPC indiqué à l’étape précédente.

    aws ec2 describe-subnets \ --filters Name=vpc-id,Values=<vpc-id> \ --query "Subnets[*].SubnetId" --output json

    La réponse devrait être similaire à ce qui suit.

    [ "subnet-b55171dd", "subnet-8a5f99c6", "subnet-e88d1392" ]
  3. Créez un fichier de configuration nommé create-domain-input.json. Insérez l'ID de VPC, les ID de sous-réseau, ImageName et AppImageConfigName dans les étapes précédentes. Étant donné que ImageVersionNumber n'est pas spécifié, la dernière version de l'image est utilisée, qui est la seule version dans ce cas.

    { "DomainName": "domain-with-custom-image", "VpcId": "<vpc-id>", "SubnetIds": [ "<subnet-ids>" ], "DefaultUserSettings": { "ExecutionRole": "<execution-role>", "KernelGatewayAppSettings": { "CustomImages": [ { "ImageName": "custom-image", "AppImageConfigName": "custom-image-config" } ] } }, "AuthMode": "IAM" }
  4. Créez le domaine avec l’image SageMaker personnalisée attachée.

    aws sagemaker create-domain \ --cli-input-json file://create-domain-input.json

    La réponse devrait être similaire à ce qui suit.

    { "DomainArn": "arn:aws:sagemaker:us-east-2:acct-id:domain/d-xxxxxxxxxxxx", "Url": "https://d-xxxxxxxxxxxx.studio.us-east-2.sagemaker.aws/..." }

Attacher l’image SageMaker à votre domaine actuel

Si vous avez intégré un domaine SageMaker AI, vous pouvez attacher l’image personnalisée à votre domaine actuel. Pour plus d’informations sur l’intégration à un domaine SageMaker AI, consultez Présentation du domaine Amazon SageMaker AI. Vous n’avez pas besoin de spécifier les informations de VPC ni le rôle d’exécution lorsque vous attachez une image personnalisée à votre domaine actuel. Après avoir attaché la version, vous devez supprimer toutes les applications de votre domaine et rouvrir Studio Classic. Pour obtenir des informations sur la suppression des applis, consultez Suppression d’un domaine Amazon SageMaker AI.

Pour ajouter l’image SageMaker personnalisée à votre domaine actuel, procédez comme suit.

  • Obtenez votre DomainID à partir du panneau de configuration de SageMaker AI.

  • Utilisez le DomainID pour obtenir les DefaultUserSettings du domaine.

  • Ajoutez ImageName et AppImageConfig en tant que CustomImage aux DefaultUserSettings.

  • Mettez à jour votre domaine pour inclure l'image personnalisée.

Pour ajouter l’image SageMaker personnalisée à votre domaine
  1. Ouvrez la console Amazon SageMaker AI à l’adresse https://console.aws.amazon.com/sagemaker/.

  2. Dans le panneau de navigation de gauche, choisissez Configurations d’administrateur.

  3. Sous Configurations d’administrateur, choisissez Domaines.

  4. Sur la page Domaines, sélectionnez le domaine auquel attacher l’image.

  5. Sur la page Domain details (Détails du domaine), sélectionnez l'onglet Domain settings (Paramètres du domaine).

  6. Dans l'onglet Domain settings (Paramètres du domaine), sous General settings (Paramètres généraux), recherchez le DomainId. L’ID est au format suivant : d-xxxxxxxxxxxx.

  7. Utilisez l’ID de domaine pour obtenir la description du domaine.

    aws sagemaker describe-domain \ --domain-id <d-xxxxxxxxxxxx>

    La réponse devrait être similaire à ce qui suit.

    { "DomainId": "d-xxxxxxxxxxxx", "DefaultUserSettings": { "KernelGatewayAppSettings": { "CustomImages": [ ], ... } } }
  8. Enregistrez la section des paramètres utilisateur par défaut de la réponse dans un fichier nommé default-user-settings.json.

  9. Insérer la ImageName et AppImageConfigName des étapes précédentes en tant qu'image personnalisée. Étant donné que ImageVersionNumber n'est pas spécifié, la dernière version de l'image est utilisée, qui est la seule version dans ce cas.

    { "DefaultUserSettings": { "KernelGatewayAppSettings": { "CustomImages": [ { "ImageName": "string", "AppImageConfigName": "string" } ], ... } } }
  10. Utilisez l’ID de domaine et le fichier de paramètres utilisateur par défaut pour mettre à jour votre domaine.

    aws sagemaker update-domain \ --domain-id <d-xxxxxxxxxxxx> \ --cli-input-json file://default-user-settings.json

    La réponse devrait être similaire à ce qui suit.

    { "DomainArn": "arn:aws:sagemaker:us-east-2:acct-id:domain/d-xxxxxxxxxxxx" }

Attacher l'image SageMaker à un espace partagé

Vous ne pouvez attacher l’image SageMaker à un espace partagé qu’à l’aide d’AWS CLI. Après avoir attaché la version, vous devez supprimer toutes les applications de votre espace partagé et rouvrir Studio Classic. Pour obtenir des informations sur la suppression des applis, consultez Suppression d’un domaine Amazon SageMaker AI.

Pour ajouter l’image SageMaker à un espace partagé, procédez comme suit.

  • Obtenez votre DomainID à partir du panneau de configuration de SageMaker AI.

  • Utilisez le DomainID pour obtenir les DefaultSpaceSettings du domaine.

  • Ajoutez ImageName et AppImageConfig en tant que CustomImage aux DefaultSpaceSettings.

  • Mettez à jour votre domaine de sorte à inclure l'image personnalisée pour l'espace partagé.

Pour ajouter l’image SageMaker personnalisée à votre espace partagé
  1. Ouvrez la console Amazon SageMaker AI à l’adresse https://console.aws.amazon.com/sagemaker/.

  2. Dans le panneau de navigation de gauche, choisissez Configurations d’administrateur.

  3. Sous Configurations d’administrateur, choisissez Domaines.

  4. Sur la page Domaines, sélectionnez le domaine auquel attacher l’image.

  5. Sur la page Domain details (Détails du domaine), sélectionnez l'onglet Domain settings (Paramètres du domaine).

  6. Dans l'onglet Domain settings (Paramètres du domaine), sous General settings (Paramètres généraux), recherchez le DomainId. L’ID est au format suivant : d-xxxxxxxxxxxx.

  7. Utilisez l’ID de domaine pour obtenir la description du domaine.

    aws sagemaker describe-domain \ --domain-id <d-xxxxxxxxxxxx>

    La réponse devrait être similaire à ce qui suit.

    { "DomainId": "d-xxxxxxxxxxxx", ... "DefaultSpaceSettings": { "KernelGatewayAppSettings": { "CustomImages": [ ], ... } } }
  8. Enregistrez la section des paramètres d'espace par défaut de la réponse dans un fichier nommé default-space-settings.json.

  9. Insérer la ImageName et AppImageConfigName des étapes précédentes en tant qu’image personnalisée. Étant donné que ImageVersionNumber n’est pas spécifié, la dernière version de l’image est utilisée, qui est la seule version dans ce cas.

    { "DefaultSpaceSettings": { "KernelGatewayAppSettings": { "CustomImages": [ { "ImageName": "string", "AppImageConfigName": "string" } ], ... } } }
  10. Utilisez l'ID de domaine et le fichier des paramètres d'espace par défaut pour mettre à jour votre domaine.

    aws sagemaker update-domain \ --domain-id <d-xxxxxxxxxxxx> \ --cli-input-json file://default-space-settings.json

    La réponse devrait être similaire à ce qui suit.

    { "DomainArn": "arn:aws:sagemaker:us-east-2:acct-id:domain/d-xxxxxxxxxxxx" }

Affichage de l’image attachée dans SageMaker AI

Une fois que vous avez créé l’image SageMaker personnalisée et l’avez attachée à votre domaine, l’image apparaît dans l’onglet Environnement du domaine. Vous pouvez uniquement visualiser les images attachées pour les espaces partagés à l’aide d’AWS CLI en utilisant la commande suivante.

aws sagemaker describe-domain \ --domain-id <d-xxxxxxxxxxxx>