Tracking classes

L'SDK Agent Platform per Python include classi che facilitano la visualizzazione, le misurazioni e il monitoraggio. Queste classi possono essere raggruppate in tre tipi:

  • Classi che utilizzano i metadati per monitorare le risorse nel flusso di lavoro di machine learning (ML)
  • Classi utilizzate per gli esperimenti su Agent Platform
  • Classi utilizzate per un'istanza di Vertex AI TensorBoard di Agent Platform

Gli argomenti seguenti forniscono una panoramica delle classi correlate al monitoraggio di un flusso di lavoro ML nell'SDK Agent Platform per Python.

Classi di metadati

Puoi utilizzare l'SDK Agent Platform per Python per creare metadati ML di Gemini Enterprise Agent Platform che ti aiutano a monitorare e analizzare i metadati nel flusso di lavoro ML. Per saperne di più, consulta Introduzione ai metadati ML di Gemini Enterprise Agent Platform.

Artifact {: id="artifact-class"}

La classe Artifact rappresenta i metadati di un artefatto in Gemini Enterprise Agent Platform. Un artefatto è un'entità discreta o un insieme di dati prodotto da un flusso di lavoro ML. Esempi di artefatti sono un set di dati, un modello e un file di input. Per saperne di più, consulta Monitorare le esecuzioni e gli artefatti.

Quando crei una risorsa Artifact, devi specificarne lo schema. Ogni tipo di artefatto ha uno schema univoco. Ad esempio, lo schema system.Dataset rappresenta un set di dati e lo schema system.Metrics rappresenta le metriche di valutazione. Per saperne di più, consulta Come utilizzare gli schemi di sistema.

Il seguente codice campione mostra come creare una Artifact risorsa che rappresenta un modello:

model_artifact = aiplatform.Artifact.create(
        schema_title="system.Model",
        display_name=PREPROCESSED_DATASET_NAME,
        uri=PREPROCESSED_DATASET_URI,
)

Execution

La classe Execution rappresenta i metadati di un' esecuzione in Gemini Enterprise Agent Platform. Un'esecuzione è un passaggio in un flusso di lavoro ML. Esempi di esecuzione sono l'elaborazione dei dati, l'addestramento e la valutazione del modello. Un'esecuzione può utilizzare artefatti, ad esempio un set di dati, e produrre un artefatto, ad esempio un modello.

Utilizza aiplatform.start_execution per creare una risorsa Execution. Dopo aver creato una risorsa Execution, utilizza lo stesso metodo aiplatform.start_execution con il parametro resume impostato su True per riprenderla.

Il seguente codice campione mostra come creare una Execution risorsa:

with aiplatform.start_execution(schema_title='system.ContainerExecution',
                                display_name='trainer') as execution:
    execution.assign_input_artifacts([my_artifact])
    model = aiplatform.Artifact.create(uri='gs://my-uri', schema_title='system.Model')
    execution.assign_output_artifacts([model])

Classi di Vertex AI Experiments

Puoi utilizzare l'SDK Agent Platform per Python per creare ed eseguire esperimenti su Agent Platform. Utilizza gli esperimenti su Agent Platform per monitorare le metriche e i parametri registrati per analizzare e ottimizzare il flusso di lavoro ML. Per saperne di più, consulta Introduzione agli esperimenti su Agent Platform.

Per scoprire di più su come utilizzare le classi Experiment e ExperimentRun, prova uno dei seguenti tutorial:

Experiment

La classe Experiment rappresenta un esperimento in Gemini Enterprise Agent Platform. Utilizza un esperimento per analizzare le relative esecuzioni dell'esperimento e esecuzioni della pipeline con configurazioni diverse, ad esempio più artefatti di input e iperparametri.

Esistono due modi per creare una risorsa Experiment:

  1. Il modo preferito per creare un Experiment è specificare un nome per l'esperimento come parametro quando chiami aiplatform.init:

    # In a real world scenario it's likely you would specify more parameters
    # when you call aiplatform.init. This sample shows only how to use the
    # parameter used to create an Experiment.
    
    # Specify a name for the experiment
    EXPERIMENT_NAME = "your-experiment-name"
    
    # Create the experiment
    aiplatform.init(experiment=EXPERIMENT_NAME)
    
  2. Puoi anche creare un Experiment chiamando aiplatform.Experiment.create. aiplatform.Experiment.create crea la risorsa Experiment, ma non imposta su un ambiente globale. Per questo motivo, non puoi eseguire l'esperimento con aiplatform.start_run. Il seguente esempio di codice campione mostra come utilizzare aiplatform.Experiment.create per creare un esperimento e poi eseguirlo:

    # Specify a name for the experiment
    EXPERIMENT_NAME = "your-experiment-name"
    EXPERIMENT_RUN_NAME = "your-run"
    
    # Create the experiment
    experiment = aiplatform.Experiment.create(experiment_name=EXPERIMENT_NAME)
    experiment_run = aiplatform.ExperimentRun.create(EXPERIMENT_RUN_NAME, experiment=EXPERIMENT_NAME)
    

ExperimentRun

La classe ExperimentRun rappresenta un'esecuzione di un esperimento.

Il seguente codice campione mostra come creare e avviare un'esecuzione dell'esperimento, quindi utilizzarla per ottenere informazioni sull'esperimento. Per eliminare l'esecuzione dell'esperimento, ottieni un riferimento all'istanza ExperimentRun e chiama il relativo metodo delete.

# Specify your project name, location, experiment name, and run name
PROJECT_NAME = "my-project"
LOCATION = "us-central1"
EXPERIMENT_NAME = "experiment-1"
RUN_NAME = "run-1"

# Create the experiment to run
aiplatform.init(experiment=EXPERIMENT_NAME,
                project=PROJECT_NAME,
                location=LOCATION)

# Create and run an ExperimentRun resource. Next, you can use it to get
# information about your experiment. For example, you can log parameters and
# metrics with specified key-value pairs.
with aiplatform.start_run(RUN_NAME):
     aiplatform.log_params({'learning_rate': 0.1, 'dropout_rate': 0.2})
     aiplatform.log_metrics({'accuracy': 0.9, 'recall': 0.8})

# Get a reference to the ExperimentRun resource, get the parameters logged to
# the run, get the summary metrics logged to the run, then delete it.
with aiplatform.start_run(RUN_NAME, resume=True) as run:
     run.get_params()
     run.get_metrics()
     run.delete()

Classi di Vertex AI TensorBoard

L'SDK Agent Platform per Python include classi per lavorare con una versione gestita di Vertex AI TensorBoard open source. Vertex AI TensorBoard è uno strumento utilizzato per monitorare le misurazioni e le visualizzazioni durante il flusso di lavoro ML. Per saperne di più, consulta Iniziare a utilizzare Vertex AI TensorBoard.

Per scoprire di più su come utilizzare l'SDK Agent Platform per Python per lavorare con Vertex AI TensorBoard, prova uno dei seguenti tutorial sui notebook:

Tensorboard

La classe Tensorboard rappresenta una risorsa gestita che archivia gli esperimenti di Vertex AI TensorBoard. Prima di poter visualizzare gli esperimenti, devi creare un'istanza Tensorboard. Puoi creare più di un' Tensorboard istanza in un Google Cloud progetto.

Il seguente codice campione mostra come creare un' Tensorboard istanza:

# Specify your project name, location, and the name of your Tensorboard
PROJECT_NAME = "my-project"
LOCATION = "us-central1"
TENSORBOARD_NAME = "my-tensorboard"

aiplatform.init(project=PROJECT_NAME, location=LOCATION)

tensorboard = aiplatform.Tensorboard.create(
    display_name=TENSORBOARD_NAME,
    project=PROJECT_NAME,
    location=LOCATION,
)

TensorboardExperiment

Il TensorboardExperiment rappresenta un gruppo di oggetti TensorboardRun. Un'istanza TensorboardRun rappresenta i risultati di un'esecuzione di un job di addestramento in un'istanza di TensorBoard.

TensorboardRun

Un'istanza della classe TensorboardRun esegue il mapping a un'esecuzione di un job di addestramento in un'istanza di TensorBoard con un insieme specificato di iperparametri, una definizione del modello, un set di dati e altro ancora.

TensorboardTimeSeries

La classe TensorboardTimeSeries rappresenta una serie prodotta nelle esecuzioni di addestramento.

Passaggi successivi