Classi di modelli

L'SDK Vertex AI include la classe Model per lavorare con un modello che addestra e poi utilizzi per le previsioni. L'SDK include anche la classe ModelEvaluation per valutare le metriche sui modelli AutoML addestrati. Per ulteriori informazioni sui modelli, consulta Addestrare e utilizzare modelli personalizzati.

Model

La classe Model rappresenta un modello addestrato registrato in Vertex AI Model Registry. Si usa un modello addestrato per generare previsioni.

Utilizza il metodo aiplatform.Model() per trovare e restituire un riferimento a un modello. Puoi specificare un modello tramite il nome o l'ID. Poiché più modelli in un progetto possono condividere lo stesso nome, ti consigliamo di specificare un modello con il relativo ID modello. Il seguente esempio di codice mostra come utilizzare un ID modello per trovare e restituire un riferimento a un modello esistente:

MODEL_ID="my-sample-model-ID"
model = aiplatform.Model(model_name=MODEL_ID)

Dopo aver ottenuto un riferimento a un modello addestrato, puoi utilizzare le proprietà e i metodi della Model per lavorarci e ottenere previsioni.

Crea un modello registrato

Per creare una risorsa del modello registrata in Vertex AI Model Registry, chiama il metodo run in una classe job di addestramento. I seguenti metodi creano un modello, lo addestrano, lo registrano in Vertex AI Model Registry, quindi restituiscono un riferimento al modello.

Il seguente codice campione mostra come creare una risorsa CustomTrainingJob e quindi utilizzare il relativo metodo run per creare un modello, addestrare il modello, registrare il modello nel Vertex AI Model Registry e restituire un riferimento al modello:

# Create a custom training job using a script
job = aiplatform.CustomTrainingJob(
    display_name="my-training-job",
    script_path="task.py",
    container_uri="us-docker.pkg.dev/vertex-ai/training/tf-cpu.2-8:latest",
    requirements=["google-cloud-bigquery>=2.20.0", "db-dtypes", "protobuf<3.20.0"],
    model_serving_container_image_uri="us-docker.pkg.dev/vertex-ai/prediction/tf2-cpu.2-8:latest",
)

# Create and train your model using a BigQuery dataset. The method
# returns a reference to the trained model.
model = job.run(
    dataset=dataset,
    model_display_name="my-model-name",
    bigquery_destination=f"bq://{project_id}",
    args=CMDARGS,
)

Crea un modello non registrato

Per creare un modello non registrato in Vertex AI Model Registry, utilizza la classe CustomJob e il relativo metodo run. Il metodo CustomJob.run addestra un modello, ma non lo registra in Vertex AI Model Registry e non restituisce un riferimento al modello.

Se utilizzi la classe CustomJob, devi utilizzare uno script per scrivere il modello in una località, ad esempio un bucket Cloud Storage. Per ulteriori informazioni, consulta Esportare un modello ML addestrato.

Registra un modello

Se hai un modello non registrato in Vertex AI Model Registry, devi registrarlo in modo da poterne gestire il ciclo di vita. Vertex AI Model Registry è un repository centrale che fornisce una panoramica dei modelli per poterli gestire. Per ulteriori informazioni, consulta Introduzione a Vertex AI Model Registry.

L'SDK Vertex AI include i seguenti metodi per importare un modello in Vertex AI Model Registry. Fai clic su uno dei metodi per saperne di più nella guida di riferimento per l'SDK Vertex AI.

Deployment di un modello

Dopo aver registrato un modello, devi eseguirne il deployment in un endpoint prima di poterlo utilizzare per le previsioni. Utilizza il metodo Model.deploy per eseguire il deployment del modello in un Endpoint. Per ulteriori informazioni, consulta Eseguire il deployment di un modello in un endpoint.

ModelEvaluation

Utilizza la classe ModelEvaluation per ottenere le metriche di valutazione per i modelli AutoML, come precisione e richiamo, al fine di determinare le prestazioni dei tuoi modelli. Per ulteriori informazioni, consulta Valutazione dei modelli in Vertex AI.

Il seguente esempio di codice mostra come elencare tutte le valutazioni per un modello con ID modello model-id che si trova in un progetto con ID progetto my-project nella regione us-central1:

model = aiplatform.Model('projects/my-project/locations/us-central1/models/{model-id}')

evaluations = model.list_model_evaluations()

Il seguente esempio di codice mostra come ottenere la valutazione di un modello con ID modello model-id che si trova in un progetto con ID my-project nella regione us-central1:

model = aiplatform.Model('projects/my-project/locations/us-central1/models/{model-id}')

# Return the first evaluation with no arguments. You can also specify a model
# using its model ID.
evaluation = model.get_model_evaluation()

eval_metrics = evaluation.metrics

Per creare un riferimento alla valutazione di un modello, utilizza il nome risorsa o l'ID modello e l'ID valutazione. Il seguente esempio di codice mostra come creare un riferimento alla valutazione di un modello utilizzando il nome della risorsa:

evaluation = aiplatform.ModelEvaluation(
  evaluation_name='projects/my-project/locations/us-central1/
    models/{model-id}/evaluations/{evaluation-id}')

eval_metrics = evaluation.metrics

Il seguente esempio di codice mostra come creare un riferimento alla valutazione di un modello utilizzando l'ID modello e l'ID valutazione:

evaluation.metrics = aiplatform.ModelEvaluation(
  evaluation_name={evaluation-id},
  model_id={model-id})

eval_metrics = evaluation.metrics

Passaggi successivi