Oggi, molti clienti AWS stanno costruendo piattaforme di machine learning (ML) pronte per l'azienda Servizio Amazon Elastic Kubernetes (Amazon EKS) utilizzando Kubeflow su AWS (una distribuzione di Kubeflow specifica per AWS) in molti casi d'uso, tra cui visione artificiale, comprensione del linguaggio naturale, traduzione vocale e modellazione finanziaria.
Grazie alla ultima versione di Kubeflow open source v1.6.1, la community di Kubeflow continua a supportare questa adozione su larga scala di Kubeflow per i casi d'uso aziendali. L'ultima versione include molte nuove entusiasmanti funzionalità come il supporto per Kubernetes v1.22, l'SDK Python combinato per PyTorch, MXNet, MPI, XGBoost nell'operatore di formazione distribuito di Kubeflow, i nuovi ClusterServingRuntime e ServingRuntime CRD per il servizio modello e molti altri.
I contributi di AWS a Kubeflow con il recente lancio di Kubeflow su AWS 1.6.1 supportano tutte le funzionalità Kubeflow open source upstream e includono molte nuove integrazioni con i servizi AWS altamente ottimizzati, nativi per il cloud e pronti per l'impresa che ti aiuteranno a creare prodotti altamente affidabili, sistemi ML sicuri, portatili e scalabili.
In questo post, discutiamo delle nuove funzionalità di Kubeflow su AWS v1.6.1 e mettiamo in evidenza tre importanti integrazioni che sono state raggruppate su un'unica piattaforma per offrirti:
- Infrastructure as Code (IaaC) soluzione one-click che automatizza l'installazione end-to-end di Kubeflow, inclusa la creazione di cluster EKS
- Supporto per la formazione distribuita su Amazon Sage Maker utilizzando Operatori Amazon SageMaker per Kubernetes (ACK) e Componenti SageMaker per pipeline Kubeflow e localmente su Kubernetes utilizzando Operatori di formazione Kubeflow. Molti clienti utilizzano questa capacità per creare architetture ibride di machine learning in cui sfruttano sia il calcolo Kubernetes per la fase di sperimentazione sia SageMaker per eseguire carichi di lavoro su scala di produzione.
- Monitoraggio e osservabilità migliorati per i carichi di lavoro ML tra cui Amazon EKS, parametri Kubeflow e registri delle applicazioni utilizzando Prometheus, Grafana e Amazon Cloud Watch integrazioni
Il caso d'uso in questo blog si concentrerà in particolare sull'integrazione di SageMaker con Kubeflow su AWS che potrebbe essere aggiunta ai tuoi flussi di lavoro Kubernetes esistenti consentendoti di creare architetture ibride di machine learning.
Kubeflow su AWS
Kubeflow su AWS 1.6.1 fornisce un percorso chiaro per utilizzare Kubeflow, con l'aggiunta dei seguenti servizi AWS oltre alle funzionalità esistenti:
- Integrazione di SageMaker con Kubeflow per eseguire flussi di lavoro ML ibridi utilizzando SageMaker Operators for Kubernetes (ACK) e SageMaker Components for Kubeflow Pipelines.
- Le opzioni di distribuzione automatizzata sono state migliorate e semplificate utilizzando gli script Kustomize e i grafici Helm.
- Aggiunto il supporto per la distribuzione con un clic di Infrastructure as Code (IaC) per Kubeflow su AWS utilizzando Terraform per tutti i servizi disponibili opzioni di distribuzione. Questo script automatizza la creazione delle seguenti risorse AWS:
- Supporto per Collegamento privato AWS per Amazon S3 che consente agli utenti della regione non commerciale di connettersi ai rispettivi endpoint S3.
- Aggiunta integrazione con Servizio gestito da Amazon per Prometheus (AMP) e Grafana gestita da Amazon per monitorare i parametri con Kubeflow su AWS.
- Contenitori del server notebook Kubeflow aggiornati con le ultime immagini del contenitore di deep learning basate su TensorFlow 2.10.0 e PyTorch 1.12.1.
- Integrazione con i DLC AWS per l'esecuzione distribuita formazione ed inferenza carichi di lavoro.
Il seguente diagramma dell'architettura è una rapida istantanea di tutte le integrazioni di servizi (incluse quelle già menzionate) disponibili per il controllo Kubeflow e i componenti del piano dati in Kubeflow su AWS. Il piano di controllo Kubeflow è installato su Amazon EKS, che è un servizio container gestito utilizzato per eseguire e ridimensionare le applicazioni Kubernetes nel cloud. Queste integrazioni di servizi AWS ti consentono di disaccoppiare parti critiche del piano di controllo Kubeflow da Kubernetes, fornendo un design sicuro, scalabile, resiliente e ottimizzato in termini di costi. Per maggiori dettagli sul valore che queste integrazioni di servizi aggiungono rispetto a Kubeflow open source, fare riferimento a Crea e distribuisci un sistema di machine learning scalabile su Kubernetes con Kubeflow su AWS.
Discutiamo in modo più dettagliato su come le funzionalità chiave di Kubeflow su AWS 1.6.1 potrebbero essere utili per la tua organizzazione.
Dettagli sulle funzionalità di Kubeflow su AWS
Con la versione Kubeflow 1.6.1, abbiamo cercato di fornire strumenti migliori per diversi tipi di clienti che rendono facile iniziare con Kubeflow, indipendentemente dalle opzioni scelte. Questi strumenti forniscono un buon punto di partenza e possono essere modificati per soddisfare le tue esatte esigenze.
Opzioni di distribuzione
Forniamo diverse opzioni di implementazione per diversi casi d'uso dei clienti. Qui puoi scegliere con quali servizi AWS vuoi integrare la tua distribuzione Kubeflow. Se decidi di modificare le opzioni di distribuzione in un secondo momento, ti consigliamo di eseguire una nuova installazione per la nuova distribuzione. Sono disponibili le seguenti opzioni di distribuzione:
Se desideri distribuire Kubeflow con modifiche minime, considera il vaniglia opzione di distribuzione. Tutte le opzioni di distribuzione disponibili possono essere installate utilizzando Kustomize, Helm o Terraform.
Disponiamo inoltre di diverse distribuzioni di componenti aggiuntivi che possono essere installate in cima a una qualsiasi di queste opzioni di implementazione:
Opzioni di installazione
Dopo aver deciso quale opzione di distribuzione si adatta meglio alle tue esigenze, puoi scegliere come installare queste distribuzioni. Nel tentativo di servire allo stesso modo esperti e nuovi arrivati, abbiamo diversi livelli di automazione e configurazione.
Opzione 1: Terraform (IaC)
Questo crea un cluster EKS e tutte le relative risorse dell'infrastruttura AWS, quindi distribuisce Kubeflow tutto in un unico comando utilizzando Terraform. Internamente, questo utilizza i progetti EKS e i grafici Helm.
Questa opzione presenta i seguenti vantaggi:
- Fornisce flessibilità alle aziende per distribuire Amazon EKS e Kubeflow con un solo comando senza doversi preoccupare delle configurazioni specifiche dei componenti Kubeflow. Ciò contribuirà enormemente ad accelerare la valutazione della tecnologia, la prototipazione e il ciclo di vita dello sviluppo del prodotto, fornendo la flessibilità necessaria per utilizzare i moduli terraform e modificarli per soddisfare qualsiasi esigenza specifica del progetto.
- Molte organizzazioni oggi che hanno Terraform al centro della loro strategia cloud possono ora utilizzare Kubeflow sulla soluzione AWS Terraform per raggiungere i propri obiettivi cloud.
Opzione 2: Kustomize o grafici Helm:
Questa opzione ti consente di distribuire Kubeflow in un processo in due fasi:
- Crea risorse AWS come Amazon EKS, Amazon RDS, Amazon S3 e Amazon Cognito, tramite gli script automatizzati inclusi nella distribuzione AWS o manualmente seguendo un passo-passo guida.
- Installa le distribuzioni Kubeflow utilizzando i grafici Helm o Kustomize.
Questa opzione presenta i seguenti vantaggi:
- L'obiettivo principale di questa opzione di installazione è fornire configurazioni Kubernetes correlate a Kubeflow. Pertanto, puoi scegliere di creare o importare cluster EKS esistenti o una qualsiasi delle risorse AWS correlate come Amazon RDS, Amazon S3 e Amazon Cognito e configurarli e gestirli in modo che funzionino con Kubeflow su AWS.
- È più facile passare da un manifest Kustomize Kubeflow open source alla distribuzione AWS Kubeflow.
Il diagramma seguente illustra le architetture di entrambe le opzioni.
Integrazione con SageMaker
SageMaker è un servizio completamente gestito progettato e ottimizzato specificamente per la gestione dei flussi di lavoro ML. Rimuove il lavoro pesante indifferenziato della gestione dell'infrastruttura ed elimina la necessità di investire in IT e DevOps per gestire i cluster per la creazione di modelli di ML, la formazione e l'inferenza.
Molti clienti AWS che hanno requisiti di portabilità o restrizioni standard in locale utilizzano Amazon EKS per configurare pipeline ML ripetibili che eseguono carichi di lavoro di addestramento e inferenza. Tuttavia, ciò richiede agli sviluppatori di scrivere codice personalizzato per ottimizzare l'infrastruttura ML sottostante, fornire disponibilità e affidabilità elevate e rispettare i requisiti normativi e di sicurezza appropriati. Questi clienti desiderano quindi utilizzare SageMaker per un'infrastruttura gestita e ottimizzata in termini di costi per l'addestramento e le distribuzioni dei modelli e continuare a utilizzare Kubernetes per l'orchestrazione e le pipeline ML per mantenere la standardizzazione e la portabilità.
Per soddisfare questa esigenza, AWS ti consente di addestrare, mettere a punto e distribuire modelli in SageMaker da Amazon EKS utilizzando le due opzioni seguenti:
- Operatori ACK di Amazon SageMaker per Kubernetes, che si basano su Controller AWS per Kubernetes quadro (ACK). ACK è la strategia AWS che introduce la standardizzazione per la creazione di controller personalizzati Kubernetes che consentono agli utenti Kubernetes di eseguire il provisioning di risorse AWS come database o code di messaggi semplicemente utilizzando l'API Kubernetes. Gli operatori ACK di SageMaker rendono più facile per gli sviluppatori ML e i data scientist che utilizzano Kubernetes come piano di controllo addestrare, mettere a punto e distribuire modelli ML in SageMaker senza accedere alla console SageMaker.
- I Componenti SageMaker per pipeline Kubeflow, che ti consentono di integrare SageMaker con la portabilità e l'orchestrazione di Kubeflow Pipelines. Con i componenti SageMaker, ogni lavoro nel flusso di lavoro della pipeline viene eseguito su SageMaker anziché sul cluster Kubernetes locale. Ciò consente di creare e monitorare processi di formazione, messa a punto, implementazione degli endpoint e trasformazione in batch nativi di SageMaker dalle tue pipeline Kubeflow, consentendoti quindi di spostare il calcolo completo, inclusa l'elaborazione dei dati e i processi di formazione, dal cluster Kubernetes al servizio gestito ottimizzato per l'apprendimento automatico di SageMaker.
A partire da Kubeflow su AWS v1.6.1, tutte le opzioni di distribuzione Kubeflow disponibili riuniscono entrambe le opzioni di integrazione di Amazon SageMaker per impostazione predefinita su un'unica piattaforma. Ciò significa che ora puoi inviare i lavori SageMaker utilizzando gli operatori ACK SageMaker da un server notebook Kubeflow stesso inviando la risorsa SageMaker personalizzata o dalla fase della pipeline Kubeflow utilizzando i componenti SageMaker.
Esistono due versioni dei componenti SageMaker: Boto3 (AWS SDK for AWS SDK for Python) e componenti della versione 1 basati su SageMaker Operator for K8s (ACK). I nuovi componenti SageMaker versione 2 supportano le più recenti API di formazione SageMaker e continueremo ad aggiungere altre funzionalità SageMaker a questa versione del componente. Tuttavia, hai la flessibilità di combinare la versione 2 dei componenti Sagemaker per la formazione e la versione 2 per altre funzionalità di SageMaker come l'ottimizzazione degli iperparametri, l'elaborazione dei processi, l'hosting e molto altro.
Integrazione con Prometeo e Grafana
Prometheus è uno strumento di aggregazione di metriche open source che puoi configurare per l'esecuzione su cluster Kubernetes. Durante l'esecuzione su cluster Kubernetes, un server Prometheus principale esegue periodicamente lo scraping degli endpoint pod.
I componenti Kubeflow, come Kubeflow Pipelines (KFP) e Notebook, emettono metriche Prometheus per consentire il monitoraggio delle risorse dei componenti come il numero di esperimenti in esecuzione o il conteggio dei notebook.
Queste metriche possono essere aggregate da un server Prometheus in esecuzione nel cluster Kubernetes e interrogate utilizzando Prometheus Query Language (PromQL). Per maggiori dettagli sulle funzionalità supportate da Prometheus, consulta il Documentazione Prometeo.
La distribuzione Kubeflow su AWS fornisce supporto per l'integrazione con i seguenti servizi gestiti da AWS:
- Amazon Managed Prometheus (AMP) che è un Prometeo-servizio di monitoraggio compatibile per l'infrastruttura dei container e le metriche dell'applicazione per i container che rende facile per i clienti monitorare in modo sicuro gli ambienti dei container su larga scala. Utilizzando AMP, puoi visualizzare, analizzare e inviare allarmi su parametri, log e tracce raccolti da più origini dati nel tuo sistema di osservabilità, tra cui AWS, ISV di terze parti e altre risorse nel tuo portafoglio IT.
- Amazon Managed Grafana, un servizio di visualizzazione dei dati completamente gestito e sicuro basato sull'open source graminacee progetto, che consente ai clienti di interrogare, correlare e visualizzare istantaneamente metriche operative, registri e tracce per le loro applicazioni da più origini dati. Amazon Managed Grafana alleggerisce la gestione operativa di Grafana ridimensionando automaticamente l'infrastruttura di elaborazione e database all'aumentare delle richieste di utilizzo, con aggiornamenti automatici delle versioni e patch di sicurezza.
La distribuzione Kubeflow su AWS fornisce supporto per l'integrazione di Amazon Managed Service for Prometheus e Amazon Managed Grafana per facilitare l'acquisizione e la visualizzazione dei parametri Prometheus in modo sicuro e su larga scala.
Le seguenti metriche vengono acquisite e possono essere visualizzate:
- Metriche emesse da componenti Kubeflow come Kubeflow Pipelines e il server Notebook
- Kubeflow metriche del piano di controllo
Per configurare Amazon Managed Service per Prometheus e Amazon Managed Grafana per il tuo cluster Kubeflow, fai riferimento a Utilizza Prometheus, Amazon Managed Service for Prometheus e Amazon Managed Grafana per monitorare i parametri con Kubeflow su AWS.
Panoramica della soluzione
In questo caso d'uso, utilizziamo la distribuzione Vanilla Kubeflow utilizzando l'opzione di installazione Terraform. Al termine dell'installazione, accediamo alla dashboard di Kubeflow. Dalla dashboard, avviamo un server notebook Kubeflow Jupyter per creare una pipeline Kubeflow che utilizza SageMaker per eseguire l'addestramento distribuito per un modello di classificazione delle immagini e un endpoint SageMaker per la distribuzione del modello.
Prerequisiti
Assicurati di soddisfare i seguenti prerequisiti:
- Si dispone di un Account AWS.
- Assicurati di essere nel file
us-west-2
Region per eseguire questo esempio. - Usa Google Chrome per interagire con il Console di gestione AWS e KubeFlow.
- Assicurati che il tuo account abbia il limite del tipo di risorsa SageMaker Training per ml.p3.2xlarge aumentato a 2 utilizzando la console Service Quotas.
- Facoltativamente, puoi usare AWS Cloud9, un ambiente di sviluppo integrato (IDE) basato su cloud che consente di completare tutto il lavoro dal tuo browser web. Per le istruzioni di configurazione, fare riferimento a Configura Cloud9 IDE. Seleziona Ubuntu Server 18.04 come piattaforma nelle impostazioni di AWS Cloud9.Quindi dal tuo ambiente AWS Cloud9, scegli il segno più e apri un nuovo terminale.
Configura anche un file Interfaccia della riga di comando di AWS (AWS CLI). Per fare ciò, è necessario un ID chiave di accesso e una chiave di accesso segreta di un Gestione dell'identità e dell'accesso di AWS (SONO) Utente account con privilegi di amministratore (allegare la policy gestita esistente) e accesso programmatico. Vedere il codice seguente:
Verifica le autorizzazioni che cloud9 utilizzerà per chiamare le risorse AWS.
Verifica dall'output seguente di vedere l'arn dell'utente admin che hai configurato nel profilo AWS CLI. In questo esempio è "kubeflow-user"
Installa Amazon EKS e Kubeflow su AWS
Per installare Amazon EKS e Kubeflow su AWS, completa i seguenti passaggi:
- Configura il tuo ambiente per la distribuzione di Kubeflow su AWS:
- Distribuisci la versione vanilla di Kubeflow su AWS e le relative risorse AWS come EKS utilizzando Terraform. Tieni presente che i volumi EBS utilizzati nel gruppo di nodi EKS non sono crittografati per impostazione predefinita:
Imposta le autorizzazioni Kubeflow
- Aggiungi autorizzazioni al pod Notebook e al pod del componente Pipeline per effettuare chiamate API SageMaker, S3 e IAM utilizzando
kubeflow_iam_permissions.sh
script. - Crea il ruolo di esecuzione SageMaker per consentire al processo di addestramento SageMaker di accedere al set di dati di addestramento dal servizio S3 utilizzando
sagemaker_role.sh
script.
Accedi alla dashboard di Kubeflow
Per accedere al dashboard di Kubeflow, completare i seguenti passaggi:
- Puoi eseguire il dashboard Kubeflow localmente nell'ambiente Cloud9 senza esporre i tuoi URL a Internet pubblico eseguendo i comandi seguenti.
- Scegli Anteprima dell'applicazione in esecuzione.
- Scegli l'icona nell'angolo della dashboard di Kubeflow per aprirla come scheda separata in Chrome.
- Immettere le credenziali predefinite (
user@example.com/12341234
) per accedere alla dashboard di Kubeflow.
Configurare Kubeflow nell'ambiente AWS
Una volta effettuato l'accesso alla dashboard di Kubeflow, assicurati di disporre dello spazio dei nomi corretto (kubeflow-user-example-com
) scelto. Completa i seguenti passaggi per configurare il tuo ambiente Kubeflow su AWS:
- Nella dashboard di Kubeflow, scegli Notebook nel pannello di navigazione.
- Scegli Nuovo notebook.
- Nel Nome, accedere
aws-nb
. - Nel Immagine di Jupyter Docket, scegli l'immagine
jupyter-pytorch:1.12.0-cpu-py38-ubuntu20.04-ec2-2022-09-20
(l'ultimo disponibilejupyter-pytorch
immagine DLC). - Nel CPU, accedere
1
. - Nel Memorie, accedere
5
. - Nel GPU, lascia come Nessuna.
- Non apportare modifiche al Area di lavoro ed Volumi di dati .
- Seleziona Consenti l'accesso alle pipeline Kubeflow nel Configurazioni sezione e scegliere Avvia.
- Verifica che il tuo taccuino sia stato creato correttamente (potrebbero essere necessari un paio di minuti).
- Scegli Connettiti per accedere a JupyterLab.
- Clona il repository inserendo
https://github.com/aws-samples/eks-kubeflow-cloudformation-quick-start.git
nel Clona un repository campo. - Scegli clone.
Eseguire un esempio di training distribuito
Dopo aver configurato il notebook Jupyter, puoi eseguire l'intera demo utilizzando i seguenti passaggi di alto livello dalla cartella eks-kubeflow-cloudformation-quick-start/workshop/pytorch-distributed-training
nel repository clonato:
- Esegui lo script di addestramento PyTorch Distributed Data Parallel (DDP). – Fare riferimento allo script di formazione PyTorch DDP
cifar10-distributed-gpu-final.py
, che include una rete neurale convoluzionale di esempio e la logica per distribuire l'addestramento su un cluster CPU e GPU multi-nodo. - Crea una pipeline Kubeflow – Eseguire il taccuino
STEP1.0_create_pipeline_k8s_sagemaker.ipynb
per creare una pipeline che esegue e distribuisce i modelli su SageMaker. Assicurati di installare la libreria SageMaker come parte della prima cella del notebook e riavvia il kernel prima di eseguire il resto delle celle del notebook. - Richiama un endpoint SageMaker – Eseguire il taccuino
STEP1.1_invoke_sagemaker_endpoint.ipynb
per richiamare e testare l'endpoint di inferenza del modello SageMaker creato nel notebook precedente.
Nelle sezioni successive, discuteremo in dettaglio ciascuno di questi passaggi.
Esegui lo script di addestramento PyTorch DDP
Come parte del training distribuito, formiamo un modello di classificazione creato da una semplice rete neurale convoluzionale che opera sul set di dati CIFAR10. Il copione di formazione cifar10-distributed-gpu-final.py
contiene solo le librerie open source ed è compatibile per l'esecuzione su entrambi i cluster di formazione Kubernetes e SageMaker su dispositivi GPU o istanze CPU. Diamo un'occhiata ad alcuni aspetti importanti dello script di formazione prima di eseguire i nostri esempi di notebook.
Usiamo il torch.distributed
modulo, che contiene il supporto PyTorch e le primitive di comunicazione per il parallelismo multiprocesso tra i nodi del cluster:
Creiamo un semplice modello di classificazione delle immagini utilizzando una combinazione di strati convoluzionali, max pooling e lineari a cui a relu
la funzione di attivazione viene applicata nel passaggio in avanti dell'addestramento del modello:
Se il cluster di formazione dispone di GPU, lo script esegue il training sui dispositivi CUDA e la variabile del dispositivo contiene il dispositivo CUDA predefinito:
Prima di eseguire la formazione distribuita utilizzando PyTorch DistributedDataParallel
per eseguire l'elaborazione distribuita su più nodi, è necessario inizializzare l'ambiente distribuito chiamando init_process_group
. Viene inizializzato su ogni macchina del cluster di addestramento.
Istanziamo il modello classificatore e copiamo il modello sul dispositivo di destinazione. Se la formazione distribuita è abilitata per l'esecuzione su più nodi, il DistributedDataParallel
class viene utilizzata come oggetto wrapper attorno all'oggetto modello, che consente l'addestramento distribuito sincrono su più macchine. I dati di input vengono suddivisi sulla dimensione batch e una replica del modello viene posizionata su ogni macchina e ogni dispositivo. Vedere il seguente codice:
Crea una pipeline Kubeflow
Il taccuino utilizza il SDK delle pipeline Kubeflow e il set fornito di pacchetti Python per specificare ed eseguire le pipeline del flusso di lavoro ML. Come parte di questo SDK, utilizziamo il decoratore di pacchetti DSL (Domain-Specific Language). dsl.pipeline
, che decora le funzioni Python per restituire una pipeline.
La pipeline Kubeflow utilizza il componente SageMaker V2 per inviare la formazione a SageMaker utilizzando gli operatori ACK di SageMaker. La creazione e la distribuzione del modello SageMaker utilizza il componente SageMaker V1, che sono componenti SageMaker basati su Boto3. Usiamo una combinazione di entrambi i componenti in questo esempio per dimostrare la flessibilità che hai nella scelta.
- Carica i componenti SageMaker utilizzando il seguente codice:
Nel codice seguente, creiamo la pipeline Kubeflow in cui eseguiamo l'addestramento distribuito di SageMaker utilizzando due
ml.p3.2xlarge
istanze:Dopo che la pipeline è stata definita, puoi compilare la pipeline in base a una specifica Argo YAML utilizzando l'SDK di Kubeflow Pipelines
kfp.compiler
pacchetto. Puoi eseguire questa pipeline utilizzando il client Kubeflow Pipelines SDK, che chiama l'endpoint del servizio Pipelines e passa le intestazioni di autenticazione appropriate direttamente dal notebook. Vedere il seguente codice: - Scegliere il Dettagli dell'esecuzione collegamento sotto l'ultima cella per visualizzare la pipeline Kubeflow. Lo screenshot seguente mostra i dettagli della nostra pipeline per il componente di addestramento e distribuzione di SageMaker.
- Scegli la fase del lavoro di formazione e sul Registri scheda, scegli il collegamento ai log di CloudWatch per accedere ai log di SageMaker.
Lo screenshot seguente mostra i log di CloudWatch per ciascuna delle due istanze ml.p3.2xlarge. - Scegli uno dei gruppi per vedere i log.
- Cattura l'endpoint SageMaker scegliendo il file Sagemaker – Modello di distribuzione passo e copiando il file
endpoint_name
valore dell'artefatto di output.
Richiama un endpoint SageMaker
Il notebook STEP1.1_invoke_sagemaker_endpoint.ipynb
richiama l'endpoint di inferenza SageMaker creato nel passaggio precedente. Assicurati di aggiornare il nome dell'endpoint:
ripulire
Per ripulire le tue risorse, completa i seguenti passaggi:
- Esegui i seguenti comandi in AWS Cloud9 per eliminare le risorse AWS:
- Elimina ruolo IAM "
sagemakerrole
” utilizzando il seguente comando AWS CLI: - Elimina l'endpoint SageMaker utilizzando il seguente comando AWS CLI:
Sommario
In questo post, abbiamo evidenziato il valore che Kubeflow su AWS 1.6.1 fornisce attraverso integrazioni di servizi gestiti da AWS nativi per soddisfare le esigenze di casi d'uso di AI e ML a livello aziendale. Puoi scegliere tra diverse opzioni di distribuzione per installare Kubeflow su AWS con varie integrazioni di servizi utilizzando Terraform, Kustomize o Helm. Il caso d'uso in questo post ha dimostrato un'integrazione Kubeflow con SageMaker che utilizza un cluster di addestramento gestito da SageMaker per eseguire l'addestramento distribuito per un modello di classificazione delle immagini e un endpoint SageMaker per la distribuzione del modello.
Abbiamo anche messo a disposizione un esempio di pipeline di esempio che utilizza i componenti SageMaker più recenti; puoi eseguirlo direttamente dalla dashboard di Kubeflow. Questa pipeline richiede il Dati Amazon S3 ed Ruolo IAM di esecuzione di SageMaker come input richiesti.
Per iniziare con Kubeflow su AWS, fai riferimento alle opzioni di distribuzione integrate in AWS disponibili in Kubeflow su AWS. Puoi seguire il Repository di AWS Labs per tenere traccia di tutti i contributi AWS a Kubeflow. Ci puoi trovare anche sul Canale Kubeflow #AWS Slack; il tuo feedback ci aiuterà a stabilire la priorità delle funzionalità successive per contribuire al progetto Kubeflow.
Circa gli autori
Kanwaljit Khurmi è Senior Solutions Architect presso Amazon Web Services. Collabora con i clienti AWS per fornire guida e assistenza tecnica aiutandoli a migliorare il valore delle loro soluzioni quando utilizzano AWS. Kanwaljit è specializzato nell'aiutare i clienti con applicazioni containerizzate e di apprendimento automatico.
Kartik Kalamadi è un Software Development Engineer presso Amazon AI. Attualmente focalizzato su progetti open source di Machine Learning Kubernetes come Kubeflow e AWS SageMaker Controller per k8s. Nel mio tempo libero mi piace giocare ai giochi per PC e giocherellare con la realtà virtuale usando il motore Unity.
Raul Kharse è un Software Development Engineer presso Amazon Web Services. Il suo lavoro si concentra sull'integrazione dei servizi AWS con piattaforme ML Ops containerizzate open source per migliorarne la scalabilità, l'affidabilità e la sicurezza. Oltre a concentrarsi sulle richieste di funzionalità dei clienti, a Rahul piace anche sperimentare gli ultimi sviluppi tecnologici nel campo.
- Avanzato (300)
- AI
- oh arte
- generatore d'arte
- un robot
- Amazon Sage Maker
- intelligenza artificiale
- certificazione di intelligenza artificiale
- intelligenza artificiale nel settore bancario
- robot di intelligenza artificiale
- robot di intelligenza artificiale
- software di intelligenza artificiale
- Apprendimento automatico di AWS
- blockchain
- conferenza blockchain ai
- geniale
- intelligenza artificiale conversazionale
- criptoconferenza ai
- dall's
- apprendimento profondo
- google ai
- Kubeflow
- machine learning
- Platone
- platone ai
- Platone Data Intelligence
- Gioco di Platone
- PlatoneDati
- gioco di plato
- scala ai
- sintassi
- zefiro