Vincoli e considerazioni - 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à.

Vincoli e considerazioni

Esamina i seguenti vincoli per assicurarti che i processi relativi al notebook vengano completati correttamente. Studio utilizza Papermill per eseguire notebook. Potrebbe essere necessario aggiornare i notebook Jupyter per adattarli ai requisiti di Papermill. Esistono anche restrizioni sul contenuto degli LCC script e dettagli importanti da comprendere sulla configurazione. VPC

JupyterLab versione

JupyterLab sono supportate le versioni 3.0 e successive.

Installazione di pacchetti che richiedono il riavvio del kernel

Papermill non supporta le chiamate pip install per installare pacchetti che richiedono il riavvio del kernel. In questa situazione, utilizza pip install in uno script di inizializzazione. Per l'installazione di un pacchetto che non richiede il riavvio del kernel, è comunque possibile includere pip install nel notebook.

Nomi del kernel e delle lingue registrati con Jupyter

Papermill registra un traduttore per kernel e lingue specifici. Se utilizzate la vostra istanza (BYOI), utilizzate un nome kernel standard come mostrato nel seguente frammento:

papermill_translators.register("python", PythonTranslator) papermill_translators.register("R", RTranslator) papermill_translators.register("scala", ScalaTranslator) papermill_translators.register("julia", JuliaTranslator) papermill_translators.register("matlab", MatlabTranslator) papermill_translators.register(".net-csharp", CSharpTranslator) papermill_translators.register(".net-fsharp", FSharpTranslator) papermill_translators.register(".net-powershell", PowershellTranslator) papermill_translators.register("pysparkkernel", PythonTranslator) papermill_translators.register("sparkkernel", ScalaTranslator) papermill_translators.register("sparkrkernel", RTranslator) papermill_translators.register("bash", BashTranslator)

Limiti relativi a parametri e variabili di ambiente

Limiti relativi a parametri e variabili di ambiente. Quando crei il processo relativo al notebook, questo riceve i parametri e le variabili di ambiente specificati. È possibile passare fino a 100 parametri. Ogni nome di parametro può contenere fino a 256 caratteri e il valore associato può contenere fino a 2500 caratteri. Se si passano variabili di ambiente, è possibile passarne fino a 28. Il nome della variabile e il valore associato possono contenere fino a 512 caratteri. Se hai bisogno di più di 28 variabili di ambiente, usa variabili di ambiente aggiuntive in uno script di inizializzazione che non ha limiti al numero di variabili di ambiente che puoi usare.

Visualizzazione dei job e delle relative definizioni

Visualizzazione dei lavori e delle definizioni dei lavori. Se pianifichi i lavori relativi al JupyterLab notebook nell'interfaccia utente di Studio, puoi visualizzare i lavori relativi al notebook e le relative definizioni nell'interfaccia utente di Studio. Se hai pianificato il tuo lavoro sul notebook con SageMaker PythonSDK, puoi solo visualizzare i tuoi lavori: la fase di lavoro del notebook SageMaker SDK Python non crea definizioni di lavoro. Per visualizzare i lavori, è inoltre necessario fornire tag aggiuntivi all'istanza di notebook job step. Per informazioni dettagliate, consultare Visualizza i tuoi lavori su notebook nella dashboard dell'interfaccia utente di Studio.

Immagine

È necessario gestire i vincoli relativi all'immagine a seconda che si eseguano i processi notebook in Studio o la fase di lavoro del SDK notebook SageMaker Python in una pipeline.

Vincoli di immagine per Notebook Jobs (Studio) SageMaker

Supporto per immagini e kernel. Il driver che avvia il processo relativo al notebook presuppone quanto segue:

  • Un ambiente di runtime Python di base è installato nelle immagini Studio o bring-your-own (BYO) ed è l'impostazione predefinita nella shell.

  • L'ambiente di runtime Python di base include il client Jupyter con le specifiche del kernel configurate correttamente.

  • L'ambiente di runtime Python di base include la funzione pip che consente al processo relativo al notebook di installare le dipendenze del sistema.

  • Per immagini con più ambienti, lo script di inizializzazione dovrebbe passare all'ambiente corretto specifico del kernel prima di installare pacchetti specifici per il notebook. È necessario tornare all'ambiente di runtime Python predefinito, se diverso dall'ambiente di runtime del kernel, dopo aver configurato l'ambiente di runtime Python del kernel.

Il driver che avvia il processo relativo al notebook è uno script bash e Bash v4 deve essere disponibile in /bin/bash.

Privilegi di root su bring-your-own-images ()BYOI. È necessario disporre dei privilegi root sulle proprie immagini di Studio, come utente root o tramite accesso sudo. Se non sei un utente root ma accedi ai privilegi di root tramite sudo, usa 1000/100 come UID/GID.

Vincoli di immagine per i lavori su notebook Python SageMaker SDK

La fase di lavoro del notebook supporta le seguenti immagini:

  • SageMaker Immagini di distribuzione elencate in SageMaker Immagini Amazon disponibili per l'uso con Studio Classic.

  • Un'immagine personalizzata basata sulle immagini di SageMaker distribuzione nell'elenco precedente. Utilizzate un'immagine di SageMaker distribuzione come base.

  • Un'immagine personalizzata (BYOI) preinstallata con le dipendenze dei job del notebook (ad es. sagemaker-headless-execution-driver L'immagine deve soddisfare i seguenti requisiti:

    • L'immagine è preinstallata con le dipendenze dei lavori del notebook.

    • Un ambiente di runtime Python di base è installato ed è predefinito nell'ambiente shell.

    • L'ambiente di runtime Python di base include il client Jupyter con le specifiche del kernel configurate correttamente.

    • Hai i privilegi di root, come utente root o tramite sudo access. Se non sei un utente root ma accedi ai privilegi di root tramite sudo, usa 1000/100 come UID/GID.

VPCsottoreti utilizzate durante la creazione di posti di lavoro

Se utilizzi unVPC, Studio utilizza le tue sottoreti private per creare il tuo lavoro. Specifica da una a cinque sottoreti private (e da 1 a 15 gruppi di sicurezza).

Se utilizzi una VPC con sottoreti private, devi scegliere una delle seguenti opzioni per assicurarti che il lavoro del notebook possa connettersi a servizi o risorse dipendenti:

  • Se il job richiede l'accesso a un AWS servizio che supporta gli VPC endpoint di interfaccia, crea un endpoint per connetterti al servizio. Per un elenco di servizi che supportano gli endpoint di interfaccia, consulta AWS Servizi che si integrano con. AWS PrivateLink Per informazioni sulla creazione di un VPC endpoint di interfaccia, consulta Accedere a un AWS servizio utilizzando un endpoint di interfaccia VPC. Come minimo, deve essere fornito un gateway VPC endpoint Amazon S3.

  • Se un notebook richiede l'accesso a un AWS servizio che non supporta gli VPC endpoint di interfaccia o a una risorsa esterna AWS, crea un NAT gateway e configura i gruppi di sicurezza per consentire le connessioni in uscita. Per informazioni sulla configurazione di un NAT gateway per il tuoVPC, consulta VPCcon sottoreti pubbliche e private (NAT) nella Guida per l'utente di Amazon Virtual Private Cloud.

Limiti del servizio

Poiché il notebook Job Scheduler è basato EventBridge sui servizi SageMaker Pipelines, SageMaker Training e Amazon, i tuoi lavori notebook sono soggetti alle quote specifiche del servizio. Se si superano queste quote, è possibile che vengano visualizzati messaggi di errore relativi a questi servizi. Ad esempio, esistono dei limiti relativi al numero di pipeline che è possibile eseguire contemporaneamente e al numero di regole che è possibile configurare per un singolo bus di eventi. Per ulteriori informazioni sulle SageMaker quote, consulta Amazon SageMaker Endpoints and Quotas. Per ulteriori informazioni sulle EventBridge quote, consulta Amazon EventBridge Quotas.