Einrichten des vorgefertigten AWS SageMaker-Modells
Warren Marusiak
Senior Technical Evangelist
Um zu demonstrieren, wie Anwendungen mit Jira Software und verschiedenen verbundenen Tools entwickelt, bereitgestellt und verwaltet werden können, hat unser Team ImageLabeller entwickelt. Dabei handelt es sich um eine einfache Demo-Anwendung, die auf AWS basiert und maschinelles Lernen nutzt, um Images mit Stichwörtern zu versehen.
Auf dieser Seite wird das Einrichten eines vordefinierten AWS SageMaker-Modells erläutert. Dies ist eine Voraussetzung für die erfolgreiche Verarbeitung von Images durch ImageLabeller. Wir empfehlen dir, vorab die Seite zur ImageLabeller-Architektur zu lesen, um mehr über den Kontext zu erfahren.
Logge dich bei der AWS-Konsole ein, und navigiere zu Amazon SageMaker.
Navigiere zu Amazon SageMaker Studio.
Wähle Quick start > Execution role > Create an IAM role (Schnellstart > Ausführungsrollen > IAM-Rolle erstellen) aus.
Klicke auf Create role (Rolle erstellen). Klicke dann auf Submit (Senden).
Die Einrichtung von SageMaker dauert einige Zeit. Wenn sie abgeschlossen ist, klicke auf Open Studio (Studio öffnen).
Klicke auf Go to SageMaker JumpStart (Zu SageMaker JumpStart wechseln).
Klicke auf Inception V3.
Ändere die Angabe unter Machine Type (Rechnertyp) in "ml.m5.large", ändere den Eintrag unter Endpoint Name (Endpunktname) in einen besser lesbaren Namen wie "image-labeller-endpoint", und klicke dann auf Deploy (Bereitstellen).
AWS SageMaker beginnt mit dem Deployment des Modells.
Wenn das Deployment abgeschlossen ist, klicke auf Open Notebook (Notebook öffnen).
Führe alle drei Notebook-Blöcke aus, um zu überprüfen, ob alles funktioniert. Notiere den unter endpoint_name angegebenen Namen in query_endpoint.Du musst diesen Namen und die Region, in der sich dein AWS SageMaker-Notebook befindet, zum AWS Lambda InvokeLabeller hinzufügen.
Informationen zur Verwendung von Jupyter-Notebooks findest du in der Dokumentation.
Öffne die InvokeLabeller-Datei "src/app.py" und suche nach "query_endpoint". Ändere die Einträge unter "endpoint_name" (Endpunktname) und "client region_name" (Client-Regionsname) so, dass sie zu deinem AWS SageMaker-Notebook passen.
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
Diesen Artikel teilen
Nächstes Thema
Lesenswert
Füge diese Ressourcen deinen Lesezeichen hinzu, um mehr über DevOps-Teams und fortlaufende Updates zu DevOps bei Atlassian zu erfahren.