Crea un'immagine personalizzata SageMaker - Amazon SageMaker

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Crea un'immagine personalizzata SageMaker

Importante

IAMLe politiche personalizzate che consentono ad Amazon SageMaker Studio o Amazon SageMaker Studio Classic di creare SageMaker risorse Amazon devono inoltre concedere le autorizzazioni per aggiungere tag a tali risorse. L'autorizzazione per aggiungere tag alle risorse è necessaria perché Studio e Studio Classic taggano automaticamente tutte le risorse che creano. Se una IAM politica consente a Studio e Studio Classic di creare risorse ma non consente l'aggiunta di tag, si possono verificare errori AccessDenied "" durante il tentativo di creare risorse. Per ulteriori informazioni, consulta Fornisci le autorizzazioni per etichettare le risorse SageMaker.

AWS Policy gestite per Amazon SageMakerche concedono le autorizzazioni per creare SageMaker risorse includono già le autorizzazioni per aggiungere tag durante la creazione di tali risorse.

Importante

A partire dal 30 novembre 2023, la precedente esperienza Amazon SageMaker Studio è ora denominata Amazon SageMaker Studio Classic. La sezione seguente è specifica per l'utilizzo dell'applicazione Studio Classic. Per informazioni sull'utilizzo dell'esperienza Studio aggiornata, consultaAmazon SageMaker Studio.

Questo argomento descrive come creare un' SageMaker immagine personalizzata utilizzando la SageMaker console o AWS CLI.

Quando si crea un'immagine dalla console, viene creata SageMaker anche una versione iniziale dell'immagine. La versione dell'immagine rappresenta un'immagine del contenitore in Amazon Elastic Container Registry (ECR). L'immagine del contenitore deve soddisfare i requisiti per essere utilizzata in Amazon SageMaker Studio Classic. Per ulteriori informazioni, consulta Specifiche SageMaker dell'immagine personalizzate. Per informazioni su come testare l'immagine localmente e risolvere i problemi più comuni, consulta il repository SageMaker Studio Classic Custom Image Samples.

Dopo aver creato SageMaker l'immagine personalizzata, è necessario allegarla al dominio o allo spazio condiviso per utilizzarla con Studio Classic. Per ulteriori informazioni, consulta Allega un' SageMaker immagine personalizzata.

Crea un' SageMaker immagine dalla console

La sezione seguente mostra come creare un' SageMaker immagine personalizzata dalla SageMaker console.

Per creare un'immagine
  1. Apri la SageMaker console Amazon all'indirizzo https://console.aws.amazon.com/sagemaker/.

  2. Nel pannello di navigazione sinistro scegli Configurazioni admin.

  3. In Configurazioni admin, scegli Immagini.

  4. Nella pagina Immagini personalizzate, scegli Crea immagine.

  5. Per Image source, inserisci il percorso di registro dell'immagine del contenitore in AmazonECR. Il percorso si presenta nel formato seguente:

    acct-id.dkr.ecr.region.amazonaws.com/repo-name[:tag] or [@digest]

  6. Seleziona Successivo.

  7. In Proprietà dell’immagine, inserisci quanto segue:

    • Nome immagine: il nome deve essere univoco per il tuo account nella Regione AWS corrente.

    • (Facoltativo) Nome visualizzato: il nome visualizzato nell'interfaccia utente di Studio Classic. Se non fornito, viene visualizzato Image name.

    • (Facoltativo) Descrizione: descrizione dell’immagine.

    • IAMruolo: al ruolo deve essere associata la AmazonSageMakerFullAccesspolitica. Usa il menu a discesa per selezionare una delle seguenti opzioni:

      • Crea un nuovo ruolo: specifica eventuali bucket Amazon Simple Storage Service (Amazon S3) a cui desideri che gli utenti dei tuoi notebook abbiano accesso. Se preferisci non consentire l'accesso ad altri bucket, scegli Nessuno.

        SageMaker associa la AmazonSageMakerFullAccess politica al ruolo. Il ruolo consente agli utenti dei tuoi notebook di accedere ai bucket S3 elencati accanto ai segni di spunta.

      • Inserisci un IAM ruolo personalizzatoARN: inserisci l'Amazon Resource Name (ARN) del tuo IAM ruolo.

      • Usa un ruolo esistente: scegli dell’elenco uno dei tuoi ruoli già esistenti.

    • (Facoltativo) Tagga l’immagine: scegli Aggiungi nuovo tag. Puoi aggiungere fino a 50 tag. I tag sono ricercabili utilizzando l'interfaccia utente di Studio Classic, la SageMaker console o il SageMaker SearchAPI.

  8. Scegli Invia.

La nuova immagine viene visualizzata nell'elenco Immagini personalizzate ed evidenziata per qualche secondo. Una volta che l'immagine è stata creata con successo, puoi scegliere il nome dell'immagine per visualizzarne le proprietà o scegliere Crea versione per crearne un'altra versione.

Per creare un'altra versione dell'immagine
  1. Scegli Crea versione sulla stessa riga dell'immagine.

  2. Per Image source, inserisci il percorso del registro dell'immagine del ECR contenitore Amazon. L'immagine del contenitore non deve essere la stessa immagine utilizzata in una versione precedente dell' SageMaker immagine.

Crea un' SageMaker immagine da AWS CLI

Per creare SageMaker un'immagine dall'immagine del contenitore, effettuate le seguenti operazioni utilizzando il AWS CLI.

  • Creazione di Image.

  • Creazione di ImageVersion.

  • Creazione di un file di configurazione.

  • Creazione di AppImageConfig.

Per creare le entità SageMaker dell'immagine
  1. Crea un' SageMaker immagine.

    aws sagemaker create-image \ --image-name custom-image \ --role-arn arn:aws:iam::<acct-id>:role/service-role/<execution-role>

    Il risultato dovrebbe essere simile al seguente.

    { "ImageArn": "arn:aws:sagemaker:us-east-2:acct-id:image/custom-image" }
  2. Crea una versione SageMaker dell'immagine dall'immagine del contenitore.

    aws sagemaker create-image-version \ --image-name custom-image \ --base-image <acct-id>.dkr.ecr.<region>.amazonaws.com/smstudio-custom:custom-image

    Il risultato dovrebbe essere simile al seguente.

    { "ImageVersionArn": "arn:aws:sagemaker:us-east-2:acct-id:image-version/custom-image/1" }
  3. Verifica che la versione dell'immagine sia stata creata correttamente.

    aws sagemaker describe-image-version \ --image-name custom-image \ --version-number 1

    Il risultato dovrebbe essere simile al seguente.

    { "ImageVersionArn": "arn:aws:sagemaker:us-east-2:acct-id:image-version/custom-image/1", "ImageVersionStatus": "CREATED" }
    Nota

    Se l’esito è "ImageVersionStatus": "CREATED_FAILED", l’esito include anche il motivo dell'errore. Un problema di autorizzazioni è una causa di errore comune. Puoi anche controllare CloudWatch i log di Amazon se riscontri un errore durante l'avvio o l'esecuzione dell' KernelGateway app per un'immagine personalizzata. Il nome del gruppo di log è /aws/sagemaker/studio. Il nome del flusso di log è $domainID/$userProfileName/KernelGateway/$appName.

  4. Creazione di un file di configurazione denominato app-image-config-input.json. Il Name valore di KernelSpecs deve corrispondere al nome dell'immagine kernelSpec disponibile nell'immagine associata a questaAppImageConfig. Questo valore prevede la distinzione tra lettere maiuscole e minuscole. È possibile trovare ciò che è disponibile kernelSpecs in un'immagine eseguendo l'esecuzione jupyter-kernelspec list da una shell all'interno del contenitore. MountPathè il percorso all'interno dell'immagine per montare la tua home directory Amazon Elastic File System (AmazonEFS). Deve essere diverso dal percorso che usi all'interno del contenitore perché quel percorso verrà sovrascritto quando la EFS tua home directory Amazon verrà montata.

    Nota

    Le combinazioni seguenti DefaultUID e DefaultGID sono gli unici valori accettati:

    • PredefinitoUID: 1000 e predefinitoGID: 100

    • PredefinitoUID: 0 e predefinitoGID: 0

    { "AppImageConfigName": "custom-image-config", "KernelGatewayImageConfig": { "KernelSpecs": [ { "Name": "python3", "DisplayName": "Python 3 (ipykernel)" } ], "FileSystemConfig": { "MountPath": "/home/sagemaker-user", "DefaultUid": 1000, "DefaultGid": 100 } } }
  5. Crea AppImageConfig utilizzando il file creato nel passaggio precedente.

    aws sagemaker create-app-image-config \ --cli-input-json file://app-image-config-input.json

    Il risultato dovrebbe essere simile al seguente.

    { "AppImageConfigArn": "arn:aws:sagemaker:us-east-2:acct-id:app-image-config/custom-image-config" }