View a markdown version of this page

Trasformazione dei modelli con il comando modeltransform - Amazon Neptune

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Trasformazione dei modelli con il comando modeltransform

È possibile utilizzare il comando modeltransform in Neptune ML per creare un processo di trasformazione dei modelli, controllarne lo stato, arrestarlo o elencare tutti i processi di trasformazione dei modelli attivi.

Creazione di un processo di trasformazione dei modelli con il comando modeltransform in Neptune ML

Un comando modeltransform in Neptune ML per la creazione di un processo di trasformazione incrementale senza riaddestramento dei modelli ha il seguente aspetto:

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"

Per ulteriori informazioni, vedere start-ml-model-transform-job nel AWS CLI Command Reference.

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" }'
Nota

Questo esempio presuppone che le AWS credenziali siano configurate nel proprio ambiente. Sostituisci us-east-1 con la regione del tuo cluster Neptune.

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" }'

Un comando Neptune modeltransform ML per creare un lavoro da un lavoro di formazione AI SageMaker completato ha il seguente aspetto:

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"

Per ulteriori informazioni, vedere start-ml-model-transform-job nel Command Reference. AWS CLI

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" }'
Nota

Questo esempio presuppone che le AWS credenziali siano configurate nel proprio ambiente. Sostituisci us-east-1 con la regione del tuo cluster Neptune.

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" }'

Un comando modeltransform in Neptune ML per la creazione di un processo che usa l'implementazione di un modello personalizzato ha il seguente aspetto:

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)" }'

Per ulteriori informazioni, vedere start-ml-model-transform-job nel Command Reference. AWS CLI

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)" } }'
Nota

Questo esempio presuppone che le AWS credenziali siano configurate nel proprio ambiente. Sostituisci us-east-1 con la regione del tuo cluster Neptune.

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)" } }'
Parametri per il comando modeltransform per la creazione del processo
  • id (facoltativo): identificatore univoco per il nuovo processo.

    Tipo: stringa. Impostazione predefinita: un UUID generato automaticamente.

  • dataProcessingJobId: ID di un processo di elaborazione dei dati completato.

    Tipo: stringa.

    Nota: è necessario includere sia dataProcessingJobId che mlModelTrainingJobId, o trainingJobName.

  • mlModelTrainingJobId: ID di un processo di addestramento del modello completato.

    Tipo: stringa.

    Nota: è necessario includere sia dataProcessingJobId che mlModelTrainingJobId, o trainingJobName.

  • trainingJobName— Il nome di un lavoro di formazione sull' SageMaker intelligenza artificiale completato.

    Tipo: stringa.

    Nota: è necessario includere entrambi i parametri dataProcessingJobId e mlModelTrainingJobId oppure il parametro trainingJobName.

  • sagemakerIamRoleArn— (Facoltativo) L'ARN di un ruolo IAM per l'esecuzione dell' SageMaker IA.

    Tipo: stringa. Nota: deve essere elencato nel gruppo di parametri del cluster database o si verificherà un errore.

  • neptuneIamRoleArn— (Facoltativo) L'ARN di un ruolo IAM che fornisce a Neptune l'accesso alle risorse AI e SageMaker Amazon S3.

    Tipo: stringa. Nota: deve essere elencato nel gruppo di parametri del cluster database o si verificherà un errore.

  • customModelTransformParameters (facoltativo): informazioni di configurazione per una trasformazione del modello mediante un modello personalizzato. L'oggetto customModelTransformParameters contiene i seguenti campi, che devono avere valori compatibili con i parametri del modello salvati durante il processo di addestramento:

    • sourceS3DirectoryPath (obbligatorio): percorso della posizione Amazon S3 in cui si trova il modulo Python che implementa il modello. Deve indicare una posizione Amazon S3 esistente valida che contenga almeno uno script di addestramento, uno script di trasformazione e un file model-hpo-configuration.json.

    • transformEntryPointScript (facoltativo): nome del punto di ingresso nel modulo di uno script che deve essere eseguito dopo aver identificato il modello migliore ottenuto dalla ricerca degli iperparametri, in modo da calcolare gli artefatti del modello necessari per l'implementazione del modello. Deve poter essere eseguito senza argomenti della riga di comando.

      Default: transform.py

  • baseProcessingInstanceType (facoltativo): tipo di istanza ML utilizzata nella preparazione e nella gestione dell'addestramento dei modelli ML.

    Tipo: stringa. Nota: si tratta di un'istanza CPU scelta in base ai requisiti di memoria per l'elaborazione dei dati e del modello di trasformazione. Per informazioni, consulta Selezione di un'istanza per l'addestramento e la trasformazione del modello.

  • baseProcessingInstanceVolumeSizeInGB (facoltativo): dimensioni del volume del disco dell'istanza di addestramento. Sia i dati di input che il modello di output vengono archiviati su disco, quindi le dimensioni del volume devono essere sufficientemente grandi da contenere entrambi i set di dati.

    Tipo: numero intero. Default: 0

    Nota: se non è specificato o è pari a 0, Neptune ML seleziona le dimensioni del volume del disco in base alla raccomandazione generata nella fase di elaborazione dati. Per informazioni, consulta Selezione di un'istanza per l'addestramento e la trasformazione del modello.

  • subnets— (Facoltativo) Le sottoreti IDs del VPC di Neptune.

    Tipo: elenco di stringhe. Impostazione predefinita: none.

  • securityGroupIds— (Facoltativo) Il gruppo di sicurezza VPC. IDs

    Tipo: elenco di stringhe. Impostazione predefinita: none.

  • volumeEncryptionKMSKey— (Facoltativo) La chiave AWS Key Management Service (AWS KMS) utilizzata da SageMaker AI per crittografare i dati sul volume di archiviazione collegato alle istanze di calcolo ML che eseguono il processo di trasformazione.

    Tipo: stringa. Impostazione predefinita: none.

  • enableInterContainerTrafficEncryption (facoltativo): abilita o disabilita la crittografia del traffico tra container nei processi di addestramento o di ottimizzazione degli iperparametri.

    Tipo: booleano. Impostazione predefinita: True.

    Nota

    Il parametro enableInterContainerTrafficEncryption è disponibile solo nel rilascio del motore 1.2.0.2.R3.

  • s3OutputEncryptionKMSKey— (Facoltativo) La chiave AWS Key Management Service (AWS KMS) utilizzata dall' SageMaker IA per crittografare l'output del processo di elaborazione.

    Tipo: stringa. Impostazione predefinita: none.

Recupero dello stato di un processo di trasformazione dei modelli con il comando modeltransform in Neptune ML

Un comando modeltransform di esempio in Neptune ML per lo stato di un processo ha il seguente aspetto:

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

Per ulteriori informazioni, vedere get-ml-model-transform-job nel AWS CLI Command Reference.

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
Nota

Questo esempio presuppone che le AWS credenziali siano configurate nel proprio ambiente. Sostituisci us-east-1 con la regione del tuo cluster Neptune.

curl
curl -s \ "https://your-neptune-endpoint:port/ml/modeltransform/(the job ID)" \ | python -m json.tool
Parametri per il comando modeltransform per lo stato del processo
  • id (obbligatorio): identificatore univoco del processo di trasformazione dei modelli.

    Tipo: stringa.

  • neptuneIamRoleArn— (Facoltativo) L'ARN di un ruolo IAM che fornisce a Neptune l'accesso alle risorse AI e SageMaker Amazon S3.

    Tipo: stringa. Nota: deve essere elencato nel gruppo di parametri del cluster database o si verificherà un errore.

Arresto di un processo di trasformazione dei modelli con il comando modeltransform in Neptune ML

Un comando modeltransform di esempio in Neptune ML per l'arresto di un processo ha il seguente aspetto:

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

Per pulire anche gli artefatti di Amazon S3:

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

Per ulteriori informazioni, consulta cancel-ml-model-transform-job nel Command Reference. AWS CLI

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

Per pulire anche gli artefatti di Amazon S3:

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

Questo esempio presuppone che le AWS credenziali siano configurate nel tuo ambiente. Sostituisci us-east-1 con la regione del tuo cluster Neptune.

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

Oppure questo:

curl -s \ -X DELETE "https://your-neptune-endpoint:port/ml/modeltransform/(the job ID)?clean=true"
Parametri per il comando modeltransform per l'arresto del processo
  • id (obbligatorio): identificatore univoco del processo di trasformazione dei modelli.

    Tipo: stringa.

  • neptuneIamRoleArn— (Facoltativo) L'ARN di un ruolo IAM che fornisce a Neptune l'accesso alle risorse AI e SageMaker Amazon S3.

    Tipo: stringa. Nota: deve essere elencato nel gruppo di parametri del cluster database o si verificherà un errore.

  • clean (facoltativo): questo flag specifica che tutti gli artefatti Amazon S3 devono essere eliminati quando il processo viene arrestato.

    Tipo: Boolean Default: FALSE

Elenco dei processi di trasformazione dei modelli attivi con il comando modeltransform in Neptune ML

Un comando modeltransform di esempio in Neptune ML per l'elenco dei processi attivi ha il seguente aspetto:

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

Per limitare il numero di risultati:

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

Per ulteriori informazioni, vedere list-ml-model-transform-jobs nel AWS CLI Command Reference.

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

Per limitare il numero di risultati:

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

Questo esempio presuppone che le AWS credenziali siano configurate nell'ambiente in uso. Sostituisci us-east-1 con la regione del tuo cluster Neptune.

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

Oppure questo:

curl -s "https://your-neptune-endpoint:port/ml/modeltransform?maxItems=3" | python -m json.tool
Parametri per il comando modeltransform per l'elenco dei processi
  • maxItems (facoltativo): numero massimo di elementi da restituire.

    Tipo: numero intero. Default: 10 Valore massimo consentito: 1024.

  • neptuneIamRoleArn— (Facoltativo) L'ARN di un ruolo IAM che fornisce a Neptune l'accesso alle risorse AI e SageMaker Amazon S3.

    Tipo: stringa. Nota: deve essere elencato nel gruppo di parametri del cluster database o si verificherà un errore.