Erste Schritte mit Vertex AI TensorBoard

Eine Vertex AI TensorBoard-Instanz ist eine regionale Ressource, in der Ihre Vertex AI TensorBoard-Tests gespeichert werden. Sie vorhanden sein, bevor die Tests visualisiert werden können. Sie können mehrere Instanzen in einem Projekt erstellen (z. B. manuell erstellt oder standardmäßig im Test-SDK erstellt).

Vertex AI TensorBoard-Instanz erstellen

Vertex AI SDK für Python

Erstellen Sie die Vertex AI TensorBoard-Instanz mit dem Vertex AI SDK für Python.

Vertex AI SDK für 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: Ihre Projekt-ID. Sie finden die Projekt-IDs auf der Begrüßungsseite der Google Cloud Console.
  • display_name: Geben Sie einen Namen für die TensorBoard-Instanz an.
  • location: Siehe Liste der verfügbaren Standorte Sie müssen bei der Erstellung einer TensorBoard-Instanz eine Region verwenden, die TensorBoard unterstützt.

Google Cloud Console

Gehen Sie folgendermaßen vor, um eine Vertex AI TensorBoard-Instanz mithilfe der Google Cloud Console zu erstellen:

  1. Wenn Sie Vertex AI zum ersten Mal verwenden oder ein neues Projekt starten, richten Sie Ihr Projekt und Ihre Entwicklungsumgebung ein.
  2. Rufen Sie im Bereich „Vertex AI“ der Google Cloud Console die Seite Tests auf.

    Zur Seite „Tests“.
  3. Wechseln Sie zum Tab TensorBoard-Instanzen.
  4. Klicken Sie oben auf der Seite auf Erstellen.
  5. Wählen Sie eine Region aus der Drop-down-Liste Region aus.
  6. Fügen Sie eine Beschreibung hinzu. (optional)
  7. Klicken Sie auf Erstellen, um die TensorBoard-Instanz zu erstellen.

TensorBoard-Instanz erstellen

gcloud-CLI

Erstellen Sie mit der Google Cloud CLI eine Vertex AI TensorBoard-Instanz.
  1. gcloud-CLI installieren
  2. Initialisieren Sie die Google Cloud-CLI, indem Sie gcloud init ausführen.
  3. Sehen Sie sich die Befehle an, um die Installation zu bestätigen.
     gcloud ai tensorboards --help 

    Die Befehle beinhalten create, describe, list und delete. Bei Bedarf können Sie diese Schritte ausführen, um Standardwerte für Ihr Projekt und Ihre Region festzulegen, bevor Sie fortfahren.
    Jetzt können Sie eine Vertex AI TensorBoard-Instanz erstellen.
  4. Authentifizieren Sie sich in der gcloud CLI.
    gcloud auth application-default login
  5. Erstellen Sie eine Vertex AI TensorBoard-Instanz, indem Sie einen Projektnamen und einen Anzeigenamen angeben. Es kann einige Minuten dauern, bis dieser Schritt in einem Projekt abgeschlossen ist. Notieren Sie sich den Namen der Vertex-AI-TensorBoard-Instanz (z. B. projects/123/locations/us-central1/tensorboards/456), die am Ende des folgenden Befehls ausgegeben wird. Er wird in den nächsten Schritten benötigt.
    gcloud ai tensorboards create --display-name DISPLAY_NAME \
         --project PROJECT_NAME
       

    Ersetzen Sie Folgendes:
    • PROJECT_NAME: das Projekt, in dem Sie die TensorBoard-Instanz erstellen möchten
    • DISPLAY_NAME: ein beschreibender Name für die TensorBoard-Instanz


TensorBoard-Logs

Vertex AI TensorBoard bietet die Google Cloud CLI und das Vertex AI SDK für Python zum Hochladen von TensorBoard-Logs. Sie können Logs aus jeder Umgebung hochladen, mit der sich eine Verbindung zu Google Cloud herstellen lässt.

Virtuelle Umgebung erstellen (optional)

Optionaler, aber empfohlener erster Schritt:

  1. Erstellen Sie eine dedizierte virtuelle Umgebung, um die Python-Befehlszeile des Vertex AI TensorBoard-Uploaders zu installieren.
python3 -m venv PATH/TO/VIRTUAL/ENVIRONMENT
source PATH/TO/VIRTUAL/ENVIRONMENT/bin/activate
  1. Ersetzen Sie PATH/TO/VIRTUAL/ENVIRONMENT durch den Pfad zu Ihrer dedizierten virtuellen Umgebung.

Vertex AI TensorBoard-Paket über das Vertex AI SDK installieren

Der Uploader benötigt die neueste Version von pip, damit er ordnungsgemäß installiert werden kann.

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

Vertex AI TensorBoard-Logs hochladen

Vertex AI SDK für Python

Unterbrechungsfreies Monitoring

Rufen Sie aiplatform.start_upload_tb_log zu Beginn des Trainings auf. Das SDK öffnet einen neuen Thread zum Hochladen. In diesem Thread wird weiterhin überwacht, ob sich im Verzeichnis neue Daten befinden. Rufen Sie nach Abschluss des Trainings end_upload_tb_log auf, um den Uploader-Thread zu beenden. Wenn end_upload_tb_log nicht aufgerufen wird, schließt ein Zeitlimitplan den Thread.

Vertex AI SDK für 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: Name dieses Tests.
  • logdir: Der Speicherort der TensorBoard-Logs, die sich entweder in Ihrem lokalen Dateisystem oder in Cloud Storage befinden.
  • tensorboard_id:
    • Um tensorboard_id zu finden, rufen Sie in der Google Cloud Console den Abschnitt „Tests” von Vertex AI auf und wählen Sie den Tab TensorBoard-Instanzen aus.
      Zur Seite „Tests“

      TensorBoard-Instanz erstellen
    Wenn nichts festgelegt ist, wird tensorboard_id in aiplatform.init verwendet.
  • project: Ihre Projekt-ID. Sie finden die Projekt-IDs auf der Begrüßungsseite der Google Cloud Console.
  • location: Siehe Liste der verfügbaren Standorte.
  • experiment_display_name: Der Anzeigename des Tests.
  • run_name_prefix: Wenn vorhanden, wird dem Namen aller Ausführungen, die durch diesen Aufruf erstellt werden, dieser Wert vorangestellt.
  • description: Eine Stringbeschreibung, die dem Test zugewiesen werden soll.

Einmaliges Logging

aiplatform.upload_tb_log aufrufen, um einen einmaligen Upload von TensorBoard-Logs durchzuführen. Es werden nur die vorhandenen Daten in das Logdir hochgeladen und dann sofort zurückgegeben.

Vertex AI SDK für 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: Dies ist der Name dieses TensorBoard-Tests. projects/{project}/locations/{location}/tensorboards/{tensorboard_id}
  • logdir: Der Speicherort der TensorBoard-Logs, die sich entweder in Ihrem lokalen Dateisystem oder in Cloud Storage befinden.
  • tensorboard_id:
    • Um tensorboard_id zu finden, rufen Sie in der Google Cloud Console den Abschnitt „Tests” von Vertex AI auf und wählen Sie den Tab TensorBoard-Instanzen aus.
      Zur Seite „Tests“

      TensorBoard-Instanz erstellen
    Wenn nichts festgelegt ist, wird tensorboard_id in aiplatform.init verwendet.
  • project: Ihre Projekt-ID. Sie finden die Projekt-IDs auf der Begrüßungsseite der Google Cloud Console.
  • location: Siehe Liste der verfügbaren Standorte.
  • experiment_display_name: Der Anzeigename des Tests.
  • run_name_prefix: Wenn vorhanden, wird dem Namen aller Ausführungen, die durch diesen Aufruf erstellt werden, dieser Wert vorangestellt.
  • description: Eine Stringbeschreibung, die dem Test zugewiesen werden soll.
  • verbosity: Ausführlichkeitsstufe für Statistiken, eine Ganzzahl. Unterstützter Wert: 0 – Es werden keine Uploadstatistiken ausgegeben. 1 - Uploadstatistiken beim Hochladen von Daten ausgeben (Standardeinstellung).

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: Es gibt zwei Möglichkeiten, den Instanznamen zu ermitteln:
    • Der vollständige Name wird am Ende des Befehls gcloud ai tensorboards create angegeben, den Sie zuvor verwendet haben.
    • Wenn die TensorBoard-Instanz mit der Google Cloud Console erstellt wurde, gilt für TENSORBOARD_INSTANCE_NAME der Wert projects/PROJECT_ID_OR_NUMBER/locations/REGION/tensorboards/TENSORBOARD_INSTANCE_ID.
      • Um TENSORBOARD_INSTANCE_ID zu finden, rufen Sie in der Google Cloud Console den Abschnitt „Tests” von Vertex AI auf und wählen Sie den Tab TensorBoard-Instanzen aus.
        Zur Seite „Tests“

        TensorBoard-Instanz erstellen
  • LOG_DIR: Der Speicherort der Ereignislogs, die sich entweder im lokalen Dateisystem oder in Cloud Storage befinden
  • TB_EXPERIMENT_NAME: Der Name des Tests. Beispiel: test-experiment. Der Testname sollte innerhalb einer TensorBoard-Ressource eindeutig sein.

Die Uploader-Befehlszeile wird standardmäßig unbegrenzt ausgeführt, überwacht die Änderungen in LOG_DIR und lädt neu hinzugefügte Logs hoch. --one_shot=True deaktiviert das Verhalten. Führen Sie tb-gcp-uploader --help aus, um weitere Informationen zu erhalten.

Vertex AI TensorBoard-Test ansehen

Sie können auf den Vertex AI TensorBoard-Test über die Google Cloud Console zugreifen oder, bei Verwendung des Vertex AI TensorBoard-Pakets, gibt die Google Cloud CLI einen Link zur Vertex AI TensorBoard-Instanz aus.

Zugriff auf Vertex AI TensorBoard über die Google Cloud Console

Mit den folgenden Schritten können Sie auf den Vertex AI TensorBoard-Test über die Google Cloud Console zugreifen:

  1. Rufen Sie im Bereich "Vertex AI" der Google Cloud Console die Seite Experimente auf.

    Zur Seite „Tests“

  2. Scrollen Sie auf dem Tab "Tests" nach unten oder filtern Sie die Tests, um den Test zu finden.

  3. Klicken Sie neben dem Test auf TensorBoard öffnen, um die Seite für Vertex AI TensorBoard-Webanwendungen zu öffnen.

TensorBoard ansehen

Vertex AI TensorBoard-Webanwendungsansicht wird angezeigt.

TensorBoard-Ansicht wird angezeigt

Sie können den Link zu dieser Ansicht für andere Nutzer freigeben, die die entsprechende Berechtigung haben.

Wenn Sie Vertex AI TensorBoard mit benutzerdefiniertem Training verwenden, wählen Sie den Test auf der Seite „Test-Tracking“ aus. Oben auf der Seite wird die Schaltfläche TensorBoard öffnen angezeigt. Wenn Sie Vertex AI TensorBoard in einer Vertex AI Pipelines verwenden, wird eine Schaltfläche TensorBoard öffnen angezeigt, wenn Sie die zugehörige Komponente auswählen.

Wenn Sie das TensorBoard-Paket von Vertex AI verwenden, gibt die Google Cloud CLI außerdem einen Link zur Vertex AI TensorBoard-Instanz in den ersten Zeilen des Logs aus, in dem Sie Ihren Test ansehen können. Beispiel: View your TensorBoard at https://us-central1.tensorboard.googleusercontent.com/experiment/projects+123+locations+us-central1+tensorboards+4567+experiments+my-experiment-name

Notebooks

Nächste Schritte