La distribuzione di SageMaker è ora disponibile su Amazon SageMaker Studio
SageMaker distribuito su SageMaker Studio.
SageMaker Distribution è un’immagine Docker pre-costruita che contiene molti pacchetti popolari per l’apprendimento automatico (ML), la scienza dei dati e la visualizzazione dei dati. Questo include framework di apprendimento profondo come PyTorch, TensorFlow e Keras; pacchetti Python popolari come NumPy, scikit-learn e pandas; e IDE come JupyterLab. Inoltre, SageMaker Distribution supporta conda, micromamba e pip come gestori di pacchetti Python.
Nel maggio 2023, abbiamo lanciato SageMaker Distribution come progetto open-source a JupyterCon. Questo lancio ti ha aiutato a utilizzare SageMaker Distribution per eseguire esperimenti nei tuoi ambienti locali. Ora stiamo fornendo nativamente quell’immagine in Amazon SageMaker Studio in modo che tu possa ottenere i vantaggi di prestazioni elevate, calcolo e sicurezza nell’esecuzione dei tuoi esperimenti su Amazon SageMaker.
Rispetto al precedente lancio open-source, hai le seguenti funzionalità aggiuntive:
- L’immagine open-source è ora disponibile come immagine first-party in SageMaker Studio. Ora puoi semplicemente scegliere l’immagine open-source di SageMaker Distribution dall’elenco quando scegli un’immagine e un kernel per i tuoi notebook, senza dover creare un’immagine personalizzata.
- Il pacchetto SageMaker Python SDK è ora integrato nell’immagine.
In questo post, mostriamo le funzionalità e i vantaggi dell’utilizzo dell’immagine di SageMaker Distribution.
- Crea un avatar personalizzato con l’uso dell’IA generativa utilizzando Amazon SageMaker
- Il Machine Learning e la tecnologia Blockchain potrebbero aiutare a contrastare la diffusione delle fake news
- Hack della Procrastinazione Trasforma i Progetti in Giochi Video (con ChatGPT)
Utilizzare SageMaker Distribution in SageMaker Studio
Se hai accesso a un dominio Studio esistente, puoi avviare SageMaker Studio. Per creare un dominio Studio, segui le istruzioni in Onboard to Amazon SageMaker Domain.
- Nell’interfaccia utente di SageMaker Studio, scegli File dalla barra dei menu, scegli Nuovo e scegli Notebook.
- Quando richiesto per l’immagine e l’istanza, scegli l’immagine SageMaker Distribution v0 CPU o SageMaker Distribution v0 GPU.
- Scegli il tuo Kernel, quindi scegli Seleziona.
Ora puoi iniziare a eseguire i tuoi comandi senza dover installare pacchetti e framework di apprendimento automatico comuni! Puoi anche eseguire notebook che utilizzano framework supportati come PyTorch e TensorFlow dal repository di esempi di SageMaker, senza dover cambiare i kernel attivi.
Eseguire il codice in remoto utilizzando SageMaker Distribution
Nell’annuncio della versione beta pubblica, abbiamo discusso la transizione dei notebook dagli ambienti di calcolo locali a SageMaker Studio e l’operazionalizzazione del notebook utilizzando i job di notebook.
Inoltre, puoi eseguire direttamente il codice del tuo notebook locale come un job di addestramento di SageMaker semplicemente aggiungendo un decoratore @remote
alla tua funzione.
Proviamo un esempio. Aggiungi il seguente codice al tuo notebook Studio in esecuzione sull’immagine di SageMaker Distribution:
from sagemaker.remote_function import remote
@remote(instance_type="ml.m5.xlarge", dependencies='./requirements.txt')
def divide(x, y):
return x / y
divide(2, 3.0)
Quando esegui la cella, la funzione verrà eseguita come un job di addestramento remoto di SageMaker su un notebook ml.m5.xlarge, e l’SDK sceglie automaticamente l’immagine di SageMaker Distribution come immagine di addestramento in Amazon Elastic Container Registry (Amazon ECR). Per carichi di lavoro di apprendimento profondo, puoi anche eseguire lo script su più istanze parallele.
Riprodurre gli ambienti Conda da SageMaker Distribution altrove
SageMaker Distribution è disponibile come immagine Docker pubblica. Tuttavia, per i data scientist che sono più familiari con gli ambienti Conda rispetto a Docker, il repository GitHub fornisce anche i file di ambiente per ogni versione dell’immagine in modo da poter creare ambienti Conda per le versioni CPU e GPU.
Gli artefatti di build per ogni versione sono archiviati nella directory sagemaker-distribution/build_artifacts. Per creare lo stesso ambiente di una delle versioni disponibili di SageMaker Distribution, esegui i seguenti comandi, sostituendo il parametro --file
con i file di ambiente corretti:
conda create --name conda-sagemaker-distribution \
--file sagemaker-distribution/build_artifacts/v0/v0.2/v0.2.1/cpu.env.out
# attiva l'ambiente
conda activate conda-sagemaker-distribution
Personalizza l’immagine di distribuzione di SageMaker open-source
L’immagine di distribuzione di SageMaker open-source contiene i pacchetti più comunemente utilizzati per la data science e l’apprendimento automatico. Tuttavia, i data scientist potrebbero avere bisogno di accedere a pacchetti aggiuntivi e i clienti aziendali potrebbero avere pacchetti proprietari che forniscono funzionalità aggiuntive per i propri utenti. In tali casi, ci sono diverse opzioni per avere un ambiente di runtime con tutti i pacchetti necessari. In ordine di complessità crescente, sono elencati come segue:
- È possibile installare i pacchetti direttamente sul notebook. Consigliamo Conda e micromamba, ma pip funziona anche.
- I data scientist che conoscono Conda per la gestione dei pacchetti possono riprodurre l’ambiente Conda da SageMaker Distribution altrove e installare e gestire pacchetti aggiuntivi in quell’ambiente in futuro.
- Se gli amministratori desiderano un ambiente di runtime ripetibile e controllato per i propri utenti, possono estendere le immagini Docker di SageMaker Distribution e mantenere la propria immagine personalizzata. Consulta Porta la tua immagine SageMaker per istruzioni dettagliate su come creare e utilizzare un’immagine personalizzata in Studio.
Pulizia
Se hai sperimentato con SageMaker Studio, interrompi tutte le app di Studio per evitare di pagare per l’utilizzo di calcolo inutilizzato. Consulta Interrompere e aggiornare le app di Studio per le istruzioni.
Conclusioni
Oggi abbiamo annunciato il lancio dell’immagine di distribuzione di SageMaker open-source all’interno di SageMaker Studio. Ti abbiamo mostrato come utilizzare l’immagine in SageMaker Studio come una delle immagini di prima parte disponibili, come operazionalizzare i tuoi script utilizzando il decoratore @remote del SDK Python di SageMaker, come riprodurre gli ambienti Conda da SageMaker Distribution al di fuori di Studio e come personalizzare l’immagine. Ti invitiamo a provare SageMaker Distribution e a condividere i tuoi feedback attraverso GitHub!
Riferimenti aggiuntivi
- Documentazione di SageMaker-distribution
- Contributi di AWS a JupyterCon nel 2023
- Inizia su SageMaker Studio