Articoli
Tutorial
Guide interattive
Configurazione del modello pre-addestrato AWS SageMaker
Warren Marusiak
Senior Technical Evangelist
Per fornire una dimostrazione di come sviluppare, distribuire e gestire applicazioni utilizzando Jira Software e vari strumenti connessi, il nostro team ha creato ImageLabeller, una semplice applicazione demo basata su AWS che utilizza l'apprendimento automatico per applicare etichette alle immagini.
In questa pagina viene spiegato come configurare un modello predefinito AWS SageMaker, un prerequisito per la corretta elaborazione delle immagini in ImageLabeller. Prima di iniziare, ti consigliamo di leggere la pagina sull'architettura di ImageLabeller per contestualizzare i contenuti.
Accedi alla console AWS e passa ad Amazon SageMaker.
Passa ad Amazon SageMaker Studio.
Scegli Quick start > Execution role > Create an IAM role (Avvio rapido > Ruolo esecuzione > Crea un ruolo IAM).
Clicca su Create role (Crea ruolo), quindi clicca su Submit (Invia).
La configurazione di SageMaker richiederà del tempo. Al termine, clicca su Open Studio (Apri Studio).
Clicca su Go to SageMaker JumpStart (Vai a SageMake JumpStart).
Individua l'opzione Inception V3 e clicca su di essa.
Imposta Machine Type (Tipo di macchina) su ml.m5.large, modifica Endpoint Name (Nome endpoint) utilizzando un nome più leggibile come "endpoint-image-labeller" e clicca su Deploy (Distribuisci).
AWS SageMaker avvierà la distribuzione del modello.
Clicca su Open Notebook (Apri notebook) al termine della distribuzione.
Esegui tutti e tre i blocchi di codice del notebook per verificarne il corretto funzionamento. Prendi nota dell'endpoint_name in query_endpoint. Dovrai aggiungerlo all'AWS Lambda InvokeLabeller, unitamente alla regione in cui si trova il notebook AWS SageMaker.
Per informazioni su come utilizzare i notebook Jupyter, leggi la documentazione.
Apri il file src/app.py di InvokeLabeller e cerca query_endpoint. Modifica la voce endpoint_name e la voce region_name del client in modo che corrispondano al notebook AWS SageMaker utilizzato.
def query_endpoint(img):
endpoint_name = 'jumpstart-dft-image-labeller-endpoint'
client = boto3.client(service_name='runtime.sagemaker', region_name='us-west-1')
response = client.invoke_endpoint(EndpointName=endpoint_name, ContentType='application/x-image', Body=img)
model_predictions = json.loads(response['Body'].read())['predictions'][0]
return model_predictions
Condividi l'articolo
Argomento successivo
Letture consigliate
Aggiungi ai preferiti queste risorse per ricevere informazioni sui tipi di team DevOps e aggiornamenti continui su DevOps in Atlassian.