Premiers pas avec Vertex AI TensorBoard

Avant de pouvoir visualiser les tests, vous devez avoir à dispositition une instance Vertex AI TensorBoard, qui est une ressource régionalisée pour le stockage de vos tests Vertex AI TensorBoard. Vous pouvez créer plusieurs instances dans un projet (par exemple, créées manuellement ou par défaut dans le SDK de test).

Créer une instance Vertex AI TensorBoard.

SDK Vertex AI pour Python

Créez une instance Vertex AI TensorBoard à l'aide du SDK Vertex AI pour Python.

SDK Vertex AI pour 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 : ID de votre projet Vous pouvez trouver ces ID sur la page Accueil de la console Google Cloud.
  • display_name : donnez un nom à votre instance TensorBoard.
  • location : consultez la liste des emplacements disponibles. Veillez à utiliser une région compatible avec TensorBoard si vous créez une instance TensorBoard.

Console Google Cloud

Procédez comme suit pour créer une instance Vertex AI TensorBoard à l'aide de la console Google Cloud.

  1. Si vous débutez avec Vertex AI ou démarrez un nouveau projet, configurez votre projet et votre environnement de développement.
  2. Dans la section "Vertex AI" de la console Google Cloud, accédez à la page Tests.

    Accéder à la page "Tests".
  3. Accédez à l'onglet Instances TensorBoard.
  4. Cliquez sur Créer en haut de la page.
  5. Sélectionnez une région dans la liste déroulante Région.
  6. Ajoutez une description. (facultatif)
  7. Cliquez sur Créer pour créer votre instance TensorBoard.

Créer une instance tensorboard

CLI gcloud

Utilisez Google Cloud CLI pour créer une instance Vertex AI TensorBoard.
  1. Installer gcloud CLI
  2. Initialisez Google Cloud CLI en exécutant gcloud init.
  3. Pour confirmer l'installation, explorez les commandes.
     gcloud ai tensorboards --help 

    Les commandes incluent create, describe, list et delete. Si nécessaire, vous pouvez suivre ces étapes pour définir les valeurs par défaut de votre projet et de votre région avant de continuer.
    Vous pouvez maintenant créer une instance Vertex AI TensorBoard.
  4. Authentifiez-vous sur la CLI gcloud.
    gcloud auth application-default login
  5. Créez une instance Vertex AI TensorBoard en fournissant un nom de projet et un nom à afficher. La première exécution de cette étape dans un projet peut prendre quelques minutes. Notez le nom de l'instance Vertex AI TensorBoard (par exemple, projects/123/locations/us-central1/tensorboards/456) qui sera affiché à la fin de la commande suivante. Vous en aurez besoin lors des prochaines étapes.
    gcloud ai tensorboards create --display-name DISPLAY_NAME \
         --project PROJECT_NAME
       

    Remplacez les éléments suivants :
    • PROJECT_NAME : projet dans lequel vous souhaitez créer l'instance TensorBoard.
    • DISPLAY_NAME : nom descriptif de l'instance TensorBoard.


Journaux TensorBoard

Vertex AI TensorBoard propose Google Cloud CLI et le SDK Vertex AI pour Python permettant d'importer des journaux TensorBoard. Vous pouvez importer des journaux à partir de n'importe quel environnement pouvant se connecter à Google Cloud.

Créer un environnement virtuel (facultatif)

Première étape facultative, mais recommandée:

  1. Créez un environnement virtuel dédié pour installer la CLI Python de l'outil d'importation Vertex AI TensorBoard.
python3 -m venv PATH/TO/VIRTUAL/ENVIRONMENT
source PATH/TO/VIRTUAL/ENVIRONMENT/bin/activate
  1. Remplacez PATH/TO/VIRTUAL/ENVIRONMENT par le chemin d'accès à votre environnement virtuel dédié.

Installer le package Vertex AI TensorBoard via le SDK Vertex AI

L'outil d'importation a besoin de la dernière version de PIP pour être correctement installé.

pip install -U pip
pip install google-cloud-aiplatform[tensorboard]

Importer des journaux Vertex AI TensorBoard

SDK Vertex AI pour Python

Surveillance continue

Appelez aiplatform.start_upload_tb_log au début de l'entraînement. Le SDK ouvre un nouveau thread pour l'importation. Ce thread continue de surveiller les nouvelles données dans le répertoire. Une fois l'entraînement terminé, appelez end_upload_tb_log qui supprime le thread d'importation. Si end_upload_tb_log n'est pas appelé, un programme de délai avant expiration ferme le thread.

SDK Vertex AI pour Python

def upload_tensorboard_log_continuously_sample(
    tensorboard_experiment_name: str,
    logdir: str,
    tensorboard_id: str,
    project: str,
    location: str,
    experiment_display_name: Optional[str] = None,
    run_name_prefix: Optional[str] = None,
    description: Optional[str] = None,
) -> None:

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

    # Continuous monitoring
    aiplatform.start_upload_tb_log(
        tensorboard_id=tensorboard_id,
        tensorboard_experiment_name=tensorboard_experiment_name,
        logdir=logdir,
        experiment_display_name=experiment_display_name,
        run_name_prefix=run_name_prefix,
        description=description,
    )
    aiplatform.end_upload_tb_log()

  • tensorboard_experiment_name: nom de ce test.
  • logdir: emplacement des journaux TensorBoard qui résident dans votre système de fichiers local ou Cloud Storage.
  • tensorboard_id:
    • Pour trouver l'identifiant tensorboard_id, accédez à la section "Vertex AI" de la page "Tests" de la console Google Cloud, puis sélectionnez l'onglet Instances TensorBoard.
      Accéder à la page "Tests"

      Créer une instance TensorBoard
    Si ce paramètre n'est pas défini, la valeur tensorboard_id dans aiplatform.init est utilisée.
  • project : ID de votre projet Vous pouvez trouver ces ID de projet sur la page Accueil de la console Google Cloud.
  • location : Consultez la liste des emplacements disponibles.
  • experiment_display_name: nom à afficher du test.
  • run_name_prefix: si cet élément est présent, le nom de toutes les exécutions créées par cet appel commence par cette valeur.
  • description: description de la chaîne à attribuer au test.

Journalisation unique

Appeler aiplatform.upload_tb_log pour effectuer une importation unique des journaux TensorBoard Il n'importe que les données existantes dans le répertoire (logdir) et renvoie immédiatement les résultats.

SDK Vertex AI pour Python

def upload_tensorboard_log_one_time_sample(
    tensorboard_experiment_name: str,
    logdir: str,
    tensorboard_id: str,
    project: str,
    location: str,
    experiment_display_name: Optional[str] = None,
    run_name_prefix: Optional[str] = None,
    description: Optional[str] = None,
    verbosity: Optional[int] = 1,
) -> None:

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

    # one time upload
    aiplatform.upload_tb_log(
        tensorboard_id=tensorboard_id,
        tensorboard_experiment_name=tensorboard_experiment_name,
        logdir=logdir,
        experiment_display_name=experiment_display_name,
        run_name_prefix=run_name_prefix,
        description=description,
    )

  • tensorboard_experiment_name : nom de ce test Tensorboard. projects/{project}/locations/{location}/tensorboards/{tensorboard_id}
  • logdir : emplacement des journaux TensorBoard qui résident dans votre système de fichiers local ou sur Cloud Storage.
  • tensorboard_id :
    • Pour trouver l'identifiant tensorboard_id, accédez à la section "Vertex AI" de la page "Tests" de la console Google Cloud, puis sélectionnez l'onglet Instances TensorBoard.
      Accéder à la page "Tests"

      Créer une instance TensorBoard
    Si ce paramètre n'est pas défini, la valeur tensorboard_id dans aiplatform.init est utilisée.
  • project : ID de votre projet Vous pouvez trouver ces ID de projet sur la page Accueil de la console Google Cloud.
  • location : Consultez la liste des emplacements disponibles.
  • experiment_display_name: nom à afficher du test.
  • run_name_prefix: si cet élément est présent, le nom de toutes les exécutions créées par cet appel commence par cette valeur.
  • description: description de la chaîne à attribuer au test.
  • verbosity : niveau de verbosité des statistiques (entier). Valeur acceptée : 0 - Aucune statistique d'importation n'est imprimée. 1 - Imprimer les statistiques d'importation lors de l'importation des données (par défaut)

gcloud CLI


tb-gcp-uploader --tensorboard_resource_name \
  TENSORBOARD_INSTANCE_NAME \
  --logdir=LOG_DIR \
  --experiment_name=TB_EXPERIMENT_NAME --one_shot=True
  • TENSORBOARD_INSTANCE_NAME : il existe deux façons d'identifier le nom de l'instance :
    • Le nom complet est imprimé à la fin de la commande gcloud ai tensorboards create que vous avez utilisée précédemment.
    • Si l'instance TensorBoard a été créée à l'aide de la console Google Cloud, le champ TENSORBOARD_INSTANCE_NAME est défini sur projects/PROJECT_ID_OR_NUMBER/locations/REGION/tensorboards/TENSORBOARD_INSTANCE_ID.
      • Pour trouver l'identifiant TENSORBOARD_INSTANCE_ID, accédez à la section "Vertex AI" de la page "Tests" de la console Google Cloud, puis sélectionnez l'onglet Instances TensorBoard.
        Accéder à la page "Tests"

        Créer une instance TensorBoard
  • LOG_DIR : emplacement des journaux d'événements qui réside dans le système de fichiers local ou Cloud Storage.
  • TB_EXPERIMENT_NAME : nom du test, par exemple test-experiment. Le nom du test doit être unique au sein d'une ressource TensorBoard.

Par défaut, la CLI de l'outil d'importation s'exécute indéfiniment, surveille les modifications apportées à LOG_DIR et importe les journaux nouvellement ajoutés. --one_shot=True désactive le comportement. Exécutez tb-gcp-uploader --help pour plus d'informations.

Afficher un test Vertex AI TensorBoard

Vous pouvez accéder à votre test Vertex AI TensorBoard à partir de la console Google Cloud ou, lorsque vous utilisez le package Vertex AI TensorBoard, la Google Cloud CLI génère un lien vers l'instance Vertex AI TensorBoard.

Accéder à Vertex AI TensorBoard à l'aide de la console Google Cloud

Vous pouvez afficher votre test Vertex AI TensorBoard à partir de la console Google Cloud en procédant comme suit.

  1. Dans la section "Vertex AI" de Google Cloud Console, accédez à la page Tests.

    Accéder à la page "Tests"

  2. Dans l'onglet des tests, faites défiler ou filtrez la liste des tests pour trouver votre test.

  3. Pour ouvrir la page de l'application Web Vertex AI TensorBoard, cliquez sur Ouvrir TensorBoard à côté de votre test.

Afficher la page Tensorboard

La vue des applications Web de Vertex AI TensorBoard s'affiche.

La vue TensorBoard s'affiche.

Vous pouvez partager le lien vers cette vue avec d'autres personnes disposant des autorisations requises.

Si vous utilisez Vertex AI TensorBoard avec un entraînement personnalisé, sélectionnez le test sur la page "Suivi des tests". Un bouton Ouvrir TensorBoard apparaît en haut de la page. De même, si vous utilisez Vertex AI TensorBoard dans un objet Vertex AI Pipelines, un bouton Ouvrir TensorBoard s'affiche lorsque vous sélectionnez le composant associé.

En outre, lorsque vous utilisez le package Vertex AI TensorBoard, la Google Cloud CLI renvoie dans les premières lignes du journal un lien vers l'instance Vertex AI TensorBoard dans laquelle vous pouvez afficher votre test. Par exemple : View your TensorBoard at https://us-central1.tensorboard.googleusercontent.com/experiment/projects+123+locations+us-central1+tensorboards+4567+experiments+my-experiment-name

Notebooks

Étapes suivantes