View a markdown version of this page

Modelltransformation mit dem Befehl modeltransform - Amazon Neptune

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.

Modelltransformation mit dem Befehl modeltransform

Mit dem Neptune-ML-Befehl modeltransform können Sie einen Modelltransformationsauftrag erstellen, seinen Status überprüfen, ihn beenden oder alle aktiven Modelltransformationsaufträge auflisten.

Erstellen eines Modelltransformationsauftrags mit dem Neptune-ML-Befehl modeltransform

Ein Neptune-ML-Befehl modeltransform zum Erstellen eines inkrementellen Transformationsauftrags ohne erneutes Modelltraining sieht wie folgt aus:

AWS CLI
aws neptunedata start-ml-model-transform-job \ --endpoint-url https://your-neptune-endpoint:port \ --id "(a unique model-transform job ID)" \ --data-processing-job-id "(the job-id of a completed data-processing job)" \ --ml-model-training-job-id "(the job-id of a completed model-training job)" \ --model-transform-output-s3-location "s3://(your S3 bucket)/neptune-model-transform"

Weitere Informationen finden Sie unter start-ml-model-transform-job in der AWS CLI Befehlsreferenz.

SDK
import boto3 from botocore.config import Config client = boto3.client( 'neptunedata', endpoint_url='https://your-neptune-endpoint:port', config=Config(read_timeout=None, retries={'total_max_attempts': 1}) ) response = client.start_ml_model_transform_job( id='(a unique model-transform job ID)', dataProcessingJobId='(the job-id of a completed data-processing job)', mlModelTrainingJobId='(the job-id of a completed model-training job)', modelTransformOutputS3Location='s3://(your S3 bucket)/neptune-model-transform' ) print(response)
awscurl
awscurl https://your-neptune-endpoint:port/ml/modeltransform \ --region us-east-1 \ --service neptune-db \ -X POST \ -H 'Content-Type: application/json' \ -d '{ "id" : "(a unique model-transform job ID)", "dataProcessingJobId" : "(the job-id of a completed data-processing job)", "mlModelTrainingJobId" : "(the job-id of a completed model-training job)", "modelTransformOutputS3Location" : "s3://(your S3 bucket)/neptune-model-transform" }'
Anmerkung

In diesem Beispiel wird davon ausgegangen, dass Ihre AWS Anmeldeinformationen in Ihrer Umgebung konfiguriert sind. Ersetze es us-east-1 durch die Region deines Neptun-Clusters.

curl
curl \ -X POST https://your-neptune-endpoint:port/ml/modeltransform \ -H 'Content-Type: application/json' \ -d '{ "id" : "(a unique model-transform job ID)", "dataProcessingJobId" : "(the job-id of a completed data-processing job)", "mlModelTrainingJobId" : "(the job-id of a completed model-training job)", "modelTransformOutputS3Location" : "s3://(your S3 bucket)/neptune-model-transform" }'

Ein Neptune modeltransform ML-Befehl zum Erstellen eines Jobs aus einem abgeschlossenen SageMaker AI-Trainingsjob sieht so aus:

AWS CLI
aws neptunedata start-ml-model-transform-job \ --endpoint-url https://your-neptune-endpoint:port \ --id "(a unique model-transform job ID)" \ --training-job-name "(name of a completed SageMaker training job)" \ --model-transform-output-s3-location "s3://(your S3 bucket)/neptune-model-transform"

Weitere Informationen finden Sie unter start-ml-model-transform-job in der AWS CLI Befehlsreferenz.

SDK
import boto3 from botocore.config import Config client = boto3.client( 'neptunedata', endpoint_url='https://your-neptune-endpoint:port', config=Config(read_timeout=None, retries={'total_max_attempts': 1}) ) response = client.start_ml_model_transform_job( id='(a unique model-transform job ID)', trainingJobName='(name of a completed SageMaker training job)', modelTransformOutputS3Location='s3://(your S3 bucket)/neptune-model-transform' ) print(response)
awscurl
awscurl https://your-neptune-endpoint:port/ml/modeltransform \ --region us-east-1 \ --service neptune-db \ -X POST \ -H 'Content-Type: application/json' \ -d '{ "id" : "(a unique model-transform job ID)", "trainingJobName" : "(name of a completed SageMaker training job)", "modelTransformOutputS3Location" : "s3://(your S3 bucket)/neptune-model-transform" }'
Anmerkung

In diesem Beispiel wird davon ausgegangen, dass Ihre AWS Anmeldeinformationen in Ihrer Umgebung konfiguriert sind. Ersetze es us-east-1 durch die Region deines Neptun-Clusters.

curl
curl \ -X POST https://your-neptune-endpoint:port/ml/modeltransform \ -H 'Content-Type: application/json' \ -d '{ "id" : "(a unique model-transform job ID)", "trainingJobName" : "(name of a completed SageMaker training job)", "modelTransformOutputS3Location" : "s3://(your S3 bucket)/neptune-model-transform" }'

Ein Neptune-ML-Befehl modeltransform zum Erstellen eines Auftrags mit einer benutzerdefinierten Modellimplementierung sieht wie folgt aus:

AWS CLI
aws neptunedata start-ml-model-transform-job \ --endpoint-url https://your-neptune-endpoint:port \ --id "(a unique model-transform job ID)" \ --training-job-name "(name of a completed SageMaker training job)" \ --model-transform-output-s3-location "s3://(your Amazon S3 bucket)/neptune-model-transform/" \ --custom-model-transform-parameters '{ "sourceS3DirectoryPath": "s3://(your Amazon S3 bucket)/(path to your Python module)", "transformEntryPointScript": "(your transform script entry-point name in the Python module)" }'

Weitere Informationen finden Sie unter start-ml-model-transform-job in der AWS CLI Befehlsreferenz.

SDK
import boto3 from botocore.config import Config client = boto3.client( 'neptunedata', endpoint_url='https://your-neptune-endpoint:port', config=Config(read_timeout=None, retries={'total_max_attempts': 1}) ) response = client.start_ml_model_transform_job( id='(a unique model-transform job ID)', trainingJobName='(name of a completed SageMaker training job)', modelTransformOutputS3Location='s3://(your Amazon S3 bucket)/neptune-model-transform/', customModelTransformParameters={ 'sourceS3DirectoryPath': 's3://(your Amazon S3 bucket)/(path to your Python module)', 'transformEntryPointScript': '(your transform script entry-point name in the Python module)' } ) print(response)
awscurl
awscurl https://your-neptune-endpoint:port/ml/modeltransform \ --region us-east-1 \ --service neptune-db \ -X POST \ -H 'Content-Type: application/json' \ -d '{ "id" : "(a unique model-transform job ID)", "trainingJobName" : "(name of a completed SageMaker training job)", "modelTransformOutputS3Location" : "s3://(your Amazon S3 bucket)/neptune-model-transform/", "customModelTransformParameters" : { "sourceS3DirectoryPath": "s3://(your Amazon S3 bucket)/(path to your Python module)", "transformEntryPointScript": "(your transform script entry-point name in the Python module)" } }'
Anmerkung

In diesem Beispiel wird davon ausgegangen, dass Ihre AWS Anmeldeinformationen in Ihrer Umgebung konfiguriert sind. Ersetze es us-east-1 durch die Region deines Neptun-Clusters.

curl
curl \ -X POST https://your-neptune-endpoint:port/ml/modeltransform \ -H 'Content-Type: application/json' \ -d '{ "id" : "(a unique model-transform job ID)", "trainingJobName" : "(name of a completed SageMaker training job)", "modelTransformOutputS3Location" : "s3://(your Amazon S3 bucket)/neptune-model-transform/", "customModelTransformParameters" : { "sourceS3DirectoryPath": "s3://(your Amazon S3 bucket)/(path to your Python module)", "transformEntryPointScript": "(your transform script entry-point name in the Python module)" } }'
Parameter für die Erstellung eines modeltransform-Auftrags
  • id   –   (Optional) Eine eindeutige ID für den neuen Auftrag.

    Typ: Zeichenfolge. Standardwert: eine automatisch generierte UUID.

  • dataProcessingJobId   –   Die Auftrags-ID eines abgeschlossenen Datenverarbeitungsauftrags.

    Typ: Zeichenfolge.

    Hinweis: Sie müssen entweder dataProcessingJobId und mlModelTrainingJobId oder trainingJobName angeben.

  • mlModelTrainingJobId   –   Die Auftrags-ID eines abgeschlossenen Modelltrainingsauftrags.

    Typ: Zeichenfolge.

    Hinweis: Sie müssen entweder dataProcessingJobId und mlModelTrainingJobId oder trainingJobName angeben.

  • trainingJobName— Der Name eines abgeschlossenen SageMaker KI-Schulungsjobs.

    Typ: Zeichenfolge.

    Hinweis: Sie müssen entweder die Parameter dataProcessingJobId und mlModelTrainingJobId oder den Parameter trainingJobName angeben.

  • sagemakerIamRoleArn— (Optional) Der ARN einer IAM-Rolle für die SageMaker KI-Ausführung.

    Typ: Zeichenfolge. Hinweis: Er muss in der DB-Cluster-Parametergruppe aufgelistet werden, andernfalls tritt ein Fehler auf.

  • neptuneIamRoleArn— (Optional) Der ARN einer IAM-Rolle, die Neptune Zugriff auf SageMaker KI- und Amazon S3 S3-Ressourcen bietet.

    Typ: Zeichenfolge. Hinweis: Er muss in der DB-Cluster-Parametergruppe aufgelistet werden, andernfalls tritt ein Fehler auf.

  • customModelTransformParameters   –   (Optional) Informationen zur Konfiguration einer Modelltransformation anhand eines benutzerdefinierten Modells. Das customModelTransformParameters-Objekt enthält die folgenden Felder, deren Werte mit den gespeicherten Modellparametern aus dem Trainingsauftrag kompatibel sein müssen:

    • sourceS3DirectoryPath   –   (Erforderlich) Der Pfad zum Amazon-S3-Speicherort des Python-Moduls, das Ihr Modell implementiert. Dieser Pfad muss auf einen gültigen, vorhandenen Amazon-S3-Speicherort verweisen, der mindestens ein Trainingsskript, ein Transformationsskript und die Datei model-hpo-configuration.json enthält.

    • transformEntryPointScript   –   (Optional) Der Name des Einstiegspunkts in Ihrem Modul für ein Skript, das ausgeführt werden soll, nachdem das beste Modell aus der Hyperparametersuche identifiziert wurde, um die für die Modellbereitstellung notwendigen Modellartefakte zu berechnen. Es sollte ohne Befehlszeilenargumente ausgeführt werden können.

      Standardwert: transform.py.

  • baseProcessingInstanceType   –   (Optional) Der Typ der ML-Instance, die zur Vorbereitung und Verwaltung des Trainings von ML-Modellen verwendet wird.

    Typ: Zeichenfolge. Hinweis: Diese CPU-Instance wird anhand der Speicheranforderungen für die Verarbeitung von Transformationsdaten und Transformationsmodell ausgewählt. Siehe Auswahl einer Instance für Modelltraining und Modelltransformation.

  • baseProcessingInstanceVolumeSizeInGB   –   (Optional) Die Größe des Festplatten-Volumes der Trainings-Instance. Da sowohl Eingabedaten als auch das Ausgabemodell auf der Festplatte gespeichert werden, muss das Volume groß genug für beide Datensätze sein.

    Typ: Ganzzahl. Standardwert: 0.

    Hinweis: Wenn nicht angegeben oder 0, wählt Neptune ML die Größe des Festplatten-Volumes anhand der im Datenverarbeitungsschritt generierten Empfehlung aus. Siehe Auswahl einer Instance für Modelltraining und Modelltransformation.

  • subnets— (Optional) Die Subnetze in IDs der Neptune VPC.

    Typ: Auflistung von Zeichenfolgen. Standardwert: keiner.

  • securityGroupIds— (Optional) Die VPC-Sicherheitsgruppe IDs.

    Typ: Auflistung von Zeichenfolgen. Standardwert: keiner.

  • volumeEncryptionKMSKey— (Optional) Der Schlüssel AWS Key Management Service (AWS KMS), den SageMaker KI verwendet, um Daten auf dem Speichervolume zu verschlüsseln, das den ML-Compute-Instances zugeordnet ist, die den Transformationsjob ausführen.

    Typ: Zeichenfolge. Standardwert: keiner.

  • enableInterContainerTrafficEncryption   –   (Optional) Aktiviert oder deaktiviert die Verschlüsselung des Datenverkehrs zwischen Containern bei Trainings- oder Hyperparameter-Optimierungsaufträgen.

    Typ: boolescher Wert. Standardwert: True.

    Anmerkung

    Der Parameter enableInterContainerTrafficEncryption ist nur in Engine-Version 1.2.0.2.R3 verfügbar.

  • s3OutputEncryptionKMSKey— (Optional) Der Schlüssel AWS Key Management Service (AWS KMS), den SageMaker AI verwendet, um die Ausgabe des Verarbeitungsjobs zu verschlüsseln.

    Typ: Zeichenfolge. Standardwert: keiner.

Abrufen des Status eines Modelltransformationsauftrags mit dem Neptune-ML-Befehl modeltransform

Dies ist ein Beispiel für den Neptune-ML-Befehl modeltransform für den Abruf des Status eines Auftrags:

AWS CLI
aws neptunedata get-ml-model-transform-job \ --endpoint-url https://your-neptune-endpoint:port \ --id "(the job ID)"

Weitere Informationen finden Sie unter get-ml-model-transform-job in der AWS CLI Befehlsreferenz.

SDK
import boto3 from botocore.config import Config client = boto3.client( 'neptunedata', endpoint_url='https://your-neptune-endpoint:port', config=Config(read_timeout=None, retries={'total_max_attempts': 1}) ) response = client.get_ml_model_transform_job( id='(the job ID)' ) print(response)
awscurl
awscurl https://your-neptune-endpoint:port/ml/modeltransform/(the job ID) \ --region us-east-1 \ --service neptune-db \ -X GET
Anmerkung

In diesem Beispiel wird davon ausgegangen, dass Ihre AWS Anmeldeinformationen in Ihrer Umgebung konfiguriert sind. Ersetze es us-east-1 durch die Region deines Neptun-Clusters.

curl
curl -s \ "https://your-neptune-endpoint:port/ml/modeltransform/(the job ID)" \ | python -m json.tool
Parameter für den Abruf des Status des modeltransform-Auftrags
  • id   –   (Erforderlich) Die eindeutige ID des Modelltransformationsauftrags.

    Typ: Zeichenfolge.

  • neptuneIamRoleArn— (Optional) Der ARN einer IAM-Rolle, die Neptune Zugriff auf SageMaker KI- und Amazon S3 S3-Ressourcen bietet.

    Typ: Zeichenfolge. Hinweis: Er muss in der DB-Cluster-Parametergruppe aufgelistet werden, andernfalls tritt ein Fehler auf.

Stoppen eines Modelltransformationsauftrags mit dem Neptune-ML-Befehl modeltransform

Dies ist ein Beispiel für den Neptune-ML-Befehl modeltransform für das Stoppen eines Auftrags:

AWS CLI
aws neptunedata cancel-ml-model-transform-job \ --endpoint-url https://your-neptune-endpoint:port \ --id "(the job ID)"

Um auch Amazon S3 S3-Artefakte zu bereinigen:

aws neptunedata cancel-ml-model-transform-job \ --endpoint-url https://your-neptune-endpoint:port \ --id "(the job ID)" \ --clean

Weitere Informationen finden Sie unter cancel-ml-model-transform-job in der AWS CLI Befehlsreferenz.

SDK
import boto3 from botocore.config import Config client = boto3.client( 'neptunedata', endpoint_url='https://your-neptune-endpoint:port', config=Config(read_timeout=None, retries={'total_max_attempts': 1}) ) response = client.cancel_ml_model_transform_job( id='(the job ID)', clean=True ) print(response)
awscurl
awscurl https://your-neptune-endpoint:port/ml/modeltransform/(the job ID) \ --region us-east-1 \ --service neptune-db \ -X DELETE

Um auch Amazon S3 S3-Artefakte zu bereinigen:

awscurl "https://your-neptune-endpoint:port/ml/modeltransform/(the job ID)?clean=true" \ --region us-east-1 \ --service neptune-db \ -X DELETE
Anmerkung

In diesem Beispiel wird davon ausgegangen, dass Ihre AWS Anmeldeinformationen in Ihrer Umgebung konfiguriert sind. Ersetze es us-east-1 durch die Region deines Neptun-Clusters.

curl
curl -s \ -X DELETE "https://your-neptune-endpoint:port/ml/modeltransform/(the job ID)"

Oder:

curl -s \ -X DELETE "https://your-neptune-endpoint:port/ml/modeltransform/(the job ID)?clean=true"
Parameter für das Stoppen eines modeltransform-Auftrags
  • id   –   (Erforderlich) Die eindeutige ID des Modelltransformationsauftrags.

    Typ: Zeichenfolge.

  • neptuneIamRoleArn— (Optional) Der ARN einer IAM-Rolle, die Neptune Zugriff auf SageMaker KI- und Amazon S3 S3-Ressourcen bietet.

    Typ: Zeichenfolge. Hinweis: Er muss in der DB-Cluster-Parametergruppe aufgelistet werden, andernfalls tritt ein Fehler auf.

  • clean   –   (Optional) Dieses Flag gibt an, dass alle Amazon-S3-Artefakte gelöscht werden sollen, wenn der Auftrag gestoppt wird.

    Typ: boolescher Wert. Standardwert: FALSE.

Auflisten aktiver Modelltransformationsaufträge mit dem Neptune-ML-Befehl modeltransform

Dies ist ein Beispiel für den Neptune-ML-Befehl modeltransform für das Auflisten aktiver Aufträge:

AWS CLI
aws neptunedata list-ml-model-transform-jobs \ --endpoint-url https://your-neptune-endpoint:port

Um die Anzahl der Ergebnisse zu begrenzen:

aws neptunedata list-ml-model-transform-jobs \ --endpoint-url https://your-neptune-endpoint:port \ --max-items 3

Weitere Informationen finden Sie unter list-ml-model-transform-jobs in der AWS CLI Befehlsreferenz.

SDK
import boto3 from botocore.config import Config client = boto3.client( 'neptunedata', endpoint_url='https://your-neptune-endpoint:port', config=Config(read_timeout=None, retries={'total_max_attempts': 1}) ) response = client.list_ml_model_transform_jobs( maxItems=3 ) print(response)
awscurl
awscurl https://your-neptune-endpoint:port/ml/modeltransform \ --region us-east-1 \ --service neptune-db \ -X GET

Um die Anzahl der Ergebnisse zu begrenzen:

awscurl "https://your-neptune-endpoint:port/ml/modeltransform?maxItems=3" \ --region us-east-1 \ --service neptune-db \ -X GET
Anmerkung

In diesem Beispiel wird davon ausgegangen, dass Ihre AWS Anmeldeinformationen in Ihrer Umgebung konfiguriert sind. Ersetze es us-east-1 durch die Region deines Neptun-Clusters.

curl
curl -s "https://your-neptune-endpoint:port/ml/modeltransform" | python -m json.tool

Oder:

curl -s "https://your-neptune-endpoint:port/ml/modeltransform?maxItems=3" | python -m json.tool
Parameter für das Auflisten von modeltransform-Aufträgen
  • maxItems   –   (Optional) Die maximale Anzahl der Elemente, die zurückgegeben werden sollen.

    Typ: Ganzzahl. Standardwert: 10. Maximal zulässiger Wert: 1024.

  • neptuneIamRoleArn— (Optional) Der ARN einer IAM-Rolle, die Neptune Zugriff auf SageMaker KI- und Amazon S3 S3-Ressourcen bietet.

    Typ: Zeichenfolge. Hinweis: Er muss in der DB-Cluster-Parametergruppe aufgelistet werden, andernfalls tritt ein Fehler auf.