Einrichten des vorgefertigten AWS SageMaker-Modells

Logge dich bei der AWS-Konsole ein, und navigiere zu Amazon SageMaker.

Screenshot: AWS-Konsole

Navigiere zu Amazon SageMaker Studio.

Screenshot: Amazon SageMaker Studio

Wähle Quick start > Execution role > Create an IAM role (Schnellstart > Ausführungsrollen > IAM-Rolle erstellen) aus.

Screenshot: Schnellstart

Klicke auf Create role (Rolle erstellen). Klicke dann auf Submit (Senden).

Screenshot: Erstellen einer IAM-Rolle

Die Einrichtung von SageMaker dauert einige Zeit. Wenn sie abgeschlossen ist, klicke auf Open Studio (Studio öffnen).

Screenshot: Post-Setup

Klicke auf Go to SageMaker JumpStart (Zu SageMaker JumpStart wechseln).

Screenshot: SageMaker JumpStart

Klicke auf Inception V3.

Screenshot: Vision-Modelle

Ä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).

Screenshot: Deployment-Modell

AWS SageMaker beginnt mit dem Deployment des Modells.

Screenshot: Beginn des Deployments

Wenn das Deployment abgeschlossen ist, klicke auf Open Notebook (Notebook öffnen).

Screenshot: Endpunktstatus

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.

Screenshot: Endpunktanfrage

Ö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

Nachdem die SageMaker-Konfiguration nun abgeschlossen ist, besteht der nächste Schritt darin, ImageLabeller mit Bitbucket, GitHub oder GitLab bereitzustellen.

Für dich empfohlen

DevOps-Community

DevOps-Lernpfad

Kostenlos loslegen