Ein Paket für ein Modell erstellen (Boto3) - Amazon SageMaker

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Ein Paket für ein Modell erstellen (Boto3)

Sie können einen SageMaker Edge Manager-Paketierungsauftrag mit dem erstellen AWS SDK for Python (Boto3). Vergewissern Sie sich, bevor Sie fortfahren, dass Sie die Erfüllen der Voraussetzungen erfüllt haben.

Einen Edge-Paketerstellungsauftrag fordern Sie mit Hilfe von CreateEdgePackagingJob an. Sie müssen einen Namen für Ihren Edge-Paketierungsauftrag, den Namen Ihres SageMaker Neo-Kompilierungsauftrags, Ihre Rolle Amazon Resource Name (ARN), einen Namen für Ihr Modell, eine Version für Ihr Modell und den Amazon S3 S3-Bucket angeben, in URI dem Sie die Ausgabe Ihres Verpackungsjobs speichern möchten. Beachten Sie, dass bei Edge-Manager-Paketauftragsnamen und SageMaker Neo-Kompilierungsaufträgen Groß- und Kleinschreibung beachtet wird.

# Import AWS SDK for Python (Boto3) import boto3 # Create Edge client so you can submit a packaging job sagemaker_client = boto3.client("sagemaker", region_name='aws-region') sagemaker_client.create_edge_packaging_job( EdgePackagingJobName="edge-packaging-name", CompilationJobName="neo-compilation-name", RoleArn="arn:aws:iam::99999999999:role/rolename", ModelName="sample-model-name", ModelVersion="model-version", OutputConfig={ "S3OutputLocation": "s3://your-bucket/", } )

Sie können den Status eines Edge-Paketerstellungsauftrags mit Hilfe von DescribeEdgePackagingJob überprüfen, indem Sie den Namen des Edge-Paketerstellungsauftrags unter Berücksichtigung von Groß- und Kleinschreibung angeben:

response = sagemaker_client.describe_edge_packaging_job( EdgePackagingJobName="edge-packaging-name")

Dann wird ein Wörterbuch zurückgegeben, mit dem der Status des Paketerstellungsauftrags abgefragt werden kann:

# Optional - Poll every 30 sec to check completion status import time while True: response = sagemaker_client.describe_edge_packaging_job( EdgePackagingJobName="edge-packaging-name") if response['EdgePackagingJobStatus'] == 'Completed': break elif response['EdgePackagingJobStatus'] == 'Failed': raise RuntimeError('Packaging job failed') print('Packaging model...') time.sleep(30) print('Done!')

Eine Liste der Paketerstellungsaufträge erhalten Sie über ListEdgePackagingJobs. Sie können dies verwenden, um nach einem bestimmten Paketierungsauftrag API zu suchen. Geben Sie einen Teilnamen an, nach dem die Namen von Paketerstellungsaufträgen für NameContains gefiltert werden sollen, und einen Teilnamen für ModelNameContains nach dem die Aufträge gefiltert werden sollen, deren Modellname den von Ihnen angegebenen Namen enthält. Geben Sie außerdem an, nach welcher Spalte mit SortBy sortiert werden soll und in welcher Richtung nach SortOrder sortiert werden soll (entweder Ascending oder Descending).

sagemaker_client.list_edge_packaging_jobs( "NameContains": "sample", "ModelNameContains": "sample", "SortBy": "column-name", "SortOrder": "Descending" )

Um einen Paketerstellungsauftrag zu beenden, verwenden Sie den Namen Ihres Edge-Packing-Auftrags StopEdgePackagingJob und geben Sie ihn an.

sagemaker_client.stop_edge_packaging_job( EdgePackagingJobName="edge-packaging-name" )

Eine vollständige Liste von Edge Manager APIs finden Sie in der Boto3-Dokumentation.