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à.
Repository privato per le dipendenze di runtime
È possibile utilizzare comandi o script di pre-esecuzione per configurare un gestore delle dipendenze come pip o conda nel proprio ambiente di lavoro. Per ottenere l'isolamento della rete, utilizzate una di queste opzioni per reindirizzare i gestori delle dipendenze ad accedere ai vostri repository privati ed eseguire funzioni remote all'interno di un. VPC I comandi o lo script di pre-esecuzione verranno eseguiti prima dell'esecuzione della funzione remota. Puoi definirle con il decoratore @remote, the o all'interno di un RemoteExecutor
API file di configurazione.
Le seguenti sezioni mostrano come accedere a un repository privato Python Package Index (PyPI) gestito con. AWS CodeArtifact Nelle sezioni viene inoltre illustrato come accedere a un canale conda personalizzato ospitato su Amazon Simple Storage Service (Amazon S3).
Come usare un repository PyPI personalizzato gestito con AWS CodeArtifact
Per utilizzare CodeArtifact per gestire un repository PyPI personalizzato, sono richiesti i seguenti prerequisiti:
-
Il repository PyPI privato dovrebbe essere già stato creato. Puoi utilizzarlo AWS CodeArtifact per creare e gestire i tuoi archivi di pacchetti privati. Per ulteriori informazioni CodeArtifact, consulta la Guida per l'CodeArtifact utente.
-
VPCDovresti avere accesso al tuo CodeArtifact repository. Per consentire una connessione dal tuo VPC al tuo CodeArtifact repository, devi fare quanto segue:
-
Crea VPC endpoint per. CodeArtifact
-
Crea un endpoint gateway Amazon S3 per il tuoVPC, che CodeArtifact consenta di archiviare gli asset dei pacchetti.
-
Il seguente esempio di comando di pre-esecuzione mostra come configurare pip nel processo di formazione SageMaker AI in modo che punti al tuo repository. CodeArtifact Per ulteriori informazioni, consulta Configurare e utilizzare pip con. CodeArtifact
# use a requirements.txt file to import dependencies @remote( instance_type="
ml.m5.large
" image_uri = "my_base_python:latest
", dependencies = './requirements.txt', pre_execution_commands=[ "aws codeartifact login --tool pip --domainmy-org
--domain-owner <000000000000
> --repositorymy-codeartifact-python-repo
--endpoint-urlhttps://vpce-xxxxx.api.codeartifact.us-east-1.vpce.amazonaws.com
" ] ) def matrix_multiply(a, b): return np.matmul(a, b)
Come utilizzare un canale conda personalizzato ospitato su Amazon S3
Per utilizzare Amazon S3 per gestire un repository conda personalizzato sono necessari i seguenti prerequisiti:
-
Il canale conda privato deve essere già configurato nel bucket Amazon S3 e tutti i pacchetti dipendenti devono essere indicizzati e caricati nel bucket Amazon S3. Per istruzioni su come indicizzare i pacchetti conda, consulta Creating custom channels
. -
VPCDovresti avere accesso al bucket Amazon S3. Per ulteriori informazioni, consulta Endpoints for Amazon S3.
-
L'ambiente conda di base nell'immagine del processo dovrebbe aver installato
boto3
. Per controllare l'ambiente, inserisci quanto segue nel prompt di Anaconda per verificare cheboto3
compaia nell'elenco generato.conda list -n base
-
L'immagine del processo deve essere installata con conda, non con mamba
. Per controllare l'ambiente, assicurati che il prompt di codice precedente non restituisca mamba
.
Il seguente esempio di comandi di pre-esecuzione mostra come configurare conda nel processo di SageMaker formazione in modo che punti al tuo canale privato su Amazon S3. I comandi di pre-esecuzione rimuovono il canale predefinito e aggiungono canali personalizzati a un file di configurazione conda. .condarc
# specify your dependencies inside a conda yaml file @remote( instance_type="
ml.m5.large
" image_uri = "my_base_python:latest
", dependencies = "./environment.yml", pre_execution_commands=[ "conda config --remove channels 'defaults'" "conda config --add channels 's3://my_bucket/my-conda-repository/conda-forge/'", "conda config --add channels 's3://my_bucket/my-conda-repository/main/'" ] ) def matrix_multiply(a, b): return np.matmul(a, b)