Configura Vertex AI TensorBoard

Per configurare Vertex AI TensorBoard è necessario quanto segue:

  1. Crea un account di servizio con le autorizzazioni richieste.
  2. Crea un bucket Cloud Storage per archiviare i log di Vertex AI TensorBoard.
  3. Crea un'istanza Vertex AI TensorBoard.

Crea un account di servizio con le autorizzazioni richieste

L'integrazione di Vertex AI TensorBoard con l'addestramento personalizzato richiede il collegamento di un account di servizio.

  1. Crea un account di servizio:

    gcloud --project=PROJECT_ID iam service-accounts create USER_SA_NAME
    

    Sostituisci quanto segue:

    • PROJECT_ID: l'ID del progetto in cui stai creando un account di servizio

    • USER_SA_NAME: nome univoco per l'account di servizio che stai creando

  2. Il nuovo account di servizio viene utilizzato da Vertex AI Training Service per accedere a servizi e risorse Google Cloud. Usa i comandi seguenti per concedere questi ruoli, se necessario:

    SA_EMAIL="USER_SA_NAME@PROJECT_ID.iam.gserviceaccount.com"
    
    gcloud projects add-iam-policy-binding PROJECT_ID \
       --member="serviceAccount:${SA_EMAIL}" \
       --role="roles/storage.admin"
    
    gcloud projects add-iam-policy-binding PROJECT_ID \
       --member="serviceAccount:${SA_EMAIL}" \
       --role="roles/aiplatform.user"
    

Crea un bucket Cloud Storage per archiviare i log di Vertex AI TensorBoard

Per archiviare i log di Vertex AI TensorBoard generati dallo script di addestramento, è necessario un bucket Cloud Storage. Il bucket deve essere di tipo regionale, ovvero non multiregionale o doppia regione e le seguenti risorse devono trovarsi nella stessa regione:

  • Bucket Cloud Storage
  • Job di addestramento Vertex AI
  • Istanza Vertex AI TensorBoard

Puoi utilizzare un bucket esistente invece di seguire il passaggio di creazione del bucket qui descritto. Quando utilizzi un bucket esistente, la REGIONE del bucket deve trovarsi nella stessa regione in cui è stata creata l'istanza Vertex AI TensorBoard.

LOCATION=LOCATION_ID
GCS_BUCKET_NAME="PROJECT_ID-tensorboard-logs-${LOCATION_ID}"
gsutil mb -l ${LOCATION_ID} "gs://${GCS_BUCKET_NAME}"

Sostituisci LOCATION_ID con la regione in cui è stata creata l'istanza Vertex AI TensorBoard, ad esempio us-central1.

Crea un'istanza Vertex AI TensorBoard

Per visualizzare gli esperimenti, deve essere presente un'istanza Vertex AI TensorBoard, ovvero una risorsa regionalizzata per l'archiviazione degli esperimenti Vertex AI TensorBoard. Ci sono due opzioni. Puoi utilizzare un'istanza predefinita o crearne una manualmente. Puoi creare più istanze all'interno di un progetto e di una regione, ma la maggior parte degli utenti ha bisogno di una sola istanza.

Utilizza l'istanza Vertex AI TensorBoard predefinita

Durante l'inizializzazione di un esperimento Vertex AI, viene creata automaticamente un'istanza TensorBoard predefinita. Questo TensorBoard di supporto è associato all'esperimento Vertex AI e viene utilizzato con tutte le esecuzioni successive di Vertex AI Experiments. Questo è il modo più semplice per iniziare a utilizzare Vertex AI TensorBoard e dovrebbe soddisfare la maggior parte delle esigenze degli utenti.

SDK Vertex AI per Python

Crea un esperimento Vertex AI TensorBoard con un'istanza predefinita utilizzando l'SDK Vertex AI per Python. Consulta init nella documentazione di riferimento dell'SDK Vertex AI.

Python

def create_experiment_default_tensorboard_sample(
    experiment_name: str,
    experiment_description: str,
    project: str,
    location: str,
):
    aiplatform.init(
        experiment=experiment_name,
        experiment_description=experiment_description,
        project=project,
        location=location,
    )

esperimento_name: str, esperimento_description: str, progetto: str, località: str,
  • experiment_name: il nome dell'esperimento.
  • experiment_description: una descrizione dell'esperimento.
  • project: il valore PROJECT_ID del progetto in cui vuoi creare l'istanza TensorBoard.
  • location: la regione in cui vuoi creare l'istanza TensorBoard. Consulta l'elenco delle località disponibili. Assicurati di utilizzare una regione che supporti TensorBoard.

Creare manualmente un'istanza Vertex AI TensorBoard

Puoi creare manualmente una scheda Vertex AI TensorBoard. Questo è utile per gli utenti più a proprio agio con la console Google Cloud, per gli utenti che hanno bisogno di una TensorBoard abilitata per CMEK (vedi CMEK) o per gli utenti che vogliono utilizzare più TensorBoard. Questa istanza può quindi essere specificata direttamente durante l'inizializzazione di un esperimento Vertex AI, l'avvio di un'esecuzione dell'esperimento o la configurazione del codice di addestramento.

SDK Vertex AI per Python

Crea un'istanza Vertex AI TensorBoard utilizzando l'SDK Vertex AI per Python.

Python

def create_tensorboard_sample(
    project: str,
    location: str,
    display_name: Optional[str] = None,
):
    aiplatform.init(project=project, location=location)

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

    aiplatform.init(
        project=project,
        location=location,
        experiment_tensorboard=tensorboard
    )

    return tensorboard

  • project: il valore PROJECT_ID del progetto in cui vuoi creare l'istanza TensorBoard.
  • display_name: un nome descrittivo per l'istanza di Vertex AI TensorBoard.
  • location: la regione in cui vuoi creare l'istanza TensorBoard. Consulta l'elenco delle località disponibili Assicurati di utilizzare una regione che supporta TensorBoard.

Google Cloud CLI

Utilizza Google Cloud CLI per creare un'istanza di Vertex AI TensorBoard.

  1. Installa gcloud CLI
  2. Inizializza Google Cloud CLI eseguendo gcloud init.
  3. Per confermare l'installazione, esplora i comandi.
     gcloud ai tensorboards --help 

    I comandi includono create, describe, list, update e delete. Se necessario, puoi seguire questi passaggi per impostare i valori predefiniti per il progetto e la regione prima di procedere.
  4. Esegui l'autenticazione nell'interfaccia alla gcloud CLI.
    gcloud auth application-default login
  5. Crea un'istanza Vertex AI TensorBoard fornendo un nome di progetto e un nome visualizzato. Il completamento di questo passaggio potrebbe richiedere alcuni minuti per la prima volta in un progetto. Prendi nota del nome dell'istanza Vertex AI TensorBoard (ad esempio: projects/123/locations/us-central1/tensorboards/456) stampato alla fine del seguente comando. Ti servirà nei passaggi successivi.
    gcloud ai tensorboards create --display-name DISPLAY_NAME \
           --project PROJECT_NAME
         

    Sostituisci quanto segue:
    • PROJECT_NAME: il progetto in cui vuoi creare l'istanza TensorBoard.
    • DISPLAY_NAME: un nome descrittivo per l'istanza TensorBoard.

Console Google Cloud

Se vuoi criptare i dati di Vertex AI TensorBoard, devi abilitare la chiave CMEK durante la creazione dell'istanza.

Segui questi passaggi per creare un'istanza Vertex AI TensorBoard CMEK abilitata utilizzando la console Google Cloud.

  1. Se non hai mai utilizzato Vertex AI o se stai iniziando un nuovo progetto, configura il progetto e l'ambiente di sviluppo.
  2. Nella sezione Vertex AI della console Google Cloud, vai alla pagina Esperimenti.

    Vai alla pagina Esperimenti
  3. Vai alla scheda Istanze TensorBoard.
  4. Fai clic su Crea nella parte superiore della pagina.
  5. Seleziona una regione dall'elenco a discesa Regione.
  6. (Facoltativo) Aggiungi una descrizione.
  7. (Facoltativo) In Crittografia, seleziona Chiave di crittografia gestita dal cliente (CMEK) e seleziona una chiave gestita dal cliente.
  8. Fai clic su Crea per creare la tua istanza TensorBoard.

crea istanza TensorBoard

Terraform

L'esempio seguente utilizza la risorsa Terraform google_vertex_ai_tensorboard per creare un'istanza Vertex AI TensorBoard non criptata.

Per scoprire come applicare o rimuovere una configurazione Terraform, consulta Comandi Terraform di base.

Terraform

resource "google_vertex_ai_tensorboard" "default" {
  display_name = "vertex-ai-tensorboard-sample-name"
  region       = "us-central1"
}

Elimina un'istanza TensorBoard

L'eliminazione di un'istanza TensorBoard elimina TensorBoard e tutti gli esperimenti TensorBoard associati e l'esecuzione di TensorBoard. Gli esperimenti Vertex AI a cui è associata l'istanza non vengono eliminati.

Per eliminare un esperimento Vertex AI e i relativi esperimenti Vertex AI TensorBoard, consulta Eliminare un esperimento.

SDK Vertex AI per Python

Elimina un'istanza Vertex AI TensorBoard utilizzando l'SDK Vertex AI per Python.

Python

def delete_tensorboard_instance_sample(
    tensorboard_resource_name: str,
    project: str,
    location: str,
):
    aiplatform.init(project=project, location=location)

    tensorboard = aiplatform.Tensorboard(
        tensorboard_name=tensorboard_resource_name
    )

    tensorboard.delete()

  • tensorboard_resource_name: fornisci il nome della risorsa TensorBoard.
  • project: PROJECT_ID in cui si trova l'istanza TensorBoard.
  • location: la regione in cui si trova l'istanza TensorBoard.

Console Google Cloud

Segui questi passaggi per eliminare un'istanza Vertex AI TensorBoard utilizzando la console Google Cloud.

  1. Nella sezione Vertex AI della console Google Cloud, vai alla pagina Esperimenti.

    Vai alla pagina Esperimenti
  2. Seleziona la scheda Istanze TensorBoard. Viene visualizzato un elenco di istanze TensorBoard.
  3. Seleziona e fai clic su Elimina.

elimina istanza TensorBoard

Termini pertinenti

A questi termini, "nome risorsa TensorBoard" e "ID istanza TensorBoard" viene fatto riferimento in numerosi esempi.

Nome risorsa TensorBoard

Il nome della risorsa TensorBoard viene utilizzato per identificare completamente l'istanza Vertex AI TensorBoard. Il formato è il seguente:

projects/PROJECT_ID_OR_NUMBER/locations/REGION/tensorboards/TENSORBOARD_INSTANCE_ID

Il nome della risorsa TensorBoard viene stampato nei messaggi di log quando viene creato utilizzando gcloud CLI o l'SDK Vertex AI oppure può essere creato fornendo i valori appropriati per i segnaposto.

ID istanza TensorBoard

L'ID istanza TensorBoard è un valore ID generato associato a un'istanza TensorBoard. Per trovare l'TENSORBOARD_INSTANCE_ID, vai alla sezione Vertex AI della pagina Esperimenti della console Google Cloud e seleziona la scheda Istanze TensorBoard.ID TensorBoard