Mengupload log ke Vertex AI TensorBoard

Anda dapat mengupload log yang sudah ada ke instance Vertex AI TensorBoard yang dibuat dengan pelatihan secara lokal, pelatihan di luar Vertex AI, dibuat oleh rekan kerja, merupakan contoh log, atau dibuat menggunakan instance Vertex AI TensorBoard yang berbeda. Log dapat dibagikan ke beberapa instance Vertex AI TensorBoard.

Vertex AI TensorBoard menawarkan Google Cloud CLI dan Vertex AI SDK untuk Python untuk mengupload log TensorBoard. Anda dapat mengupload log dari lingkungan apa pun yang dapat terhubung ke Google Cloud.

Vertex AI SDK untuk Python

Pemantauan berkelanjutan

Untuk pemantauan berkelanjutan, panggil aiplatform.start_upload_tb_log di awal pelatihan. SDK akan membuka thread baru untuk mengupload. Thread ini memantau data baru dalam direktori, dan menguploadnya ke eksperimen Vertex AI TensorBoard Anda. Setelah pelatihan selesai, panggil end_upload_tb_log untuk mengakhiri thread uploader.

Perhatikan bahwa setelah memanggil start_upload_tb_log(), thread Anda akan tetap aktif meskipun pengecualian ditampilkan. Untuk memastikan thread dinonaktifkan, tempatkan kode setelah start_upload_tb_log() dan sebelum end_upload_tb_log() dalam pernyataan try, lalu panggil end_upload_tb_log() di finally.

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,
    )

    try:
        print("Insert your code here")
    finally:
        aiplatform.end_upload_tb_log()

  • tensorboard_experiment_name: Nama eksperimen TensorBoard yang akan diupload.
  • logdir: Lokasi direktori untuk memeriksa log TensorBoard.
  • tensorboard_id: ID instance TensorBoard. Jika tidak disetel, tensorboard_id di aiplatform.init akan digunakan.
  • project: Project ID Anda. Anda dapat menemukan Project ID di halaman selamat datang di Konsol Google Cloud.
  • location: Region tempat instance TensorBoard Anda berada.
  • experiment_display_name: Nama tampilan eksperimen.
  • run_name_prefix: Jika ada, semua operasi yang dibuat oleh pemanggilan ini akan diberi awalan oleh nilai ini.
  • description: Deskripsi string yang akan ditetapkan ke eksperimen.

Logging satu kali

Mengupload log TensorBoard

Panggil aiplatform.upload_tb_log untuk melakukan upload satu kali log TensorBoard. Tindakan ini akan mengupload data yang sudah ada di logdir, lalu segera kembali.

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: Nama eksperimen TensorBoard.
  • logdir: Lokasi direktori untuk memeriksa log TensorBoard.
  • tensorboard_id: ID instance TensorBoard. Jika tidak disetel, tensorboard_id di aiplatform.init akan digunakan.
  • project: Project ID Anda. Anda dapat menemukan Project ID ini di halaman selamat datang di Konsol Google Cloud.
  • location: Region tempat instance TensorBoard Anda berada.
  • experiment_display_name: Nama tampilan eksperimen.
  • run_name_prefix: Jika ada, semua operasi yang dibuat oleh pemanggilan ini akan diberi awalan oleh nilai ini.
  • description: Deskripsi string yang akan ditetapkan ke eksperimen.
  • verbosity: Tingkat panjang statistik, bilangan bulat. Nilai yang didukung: 0 - Tidak ada statistik upload yang dicetak. 1 - Mencetak statistik upload saat mengupload data (default).

Upload log profil

Panggil aiplatform.upload_tb_log untuk mengupload log profil TensorBoard ke eksperimen.

Python

def upload_tensorboard_profile_logs_to_experiment_sample(
    experiment_name: str,
    logdir: str,
    project: str,
    location: str,
    run_name_prefix: str,
    allowed_plugins: FrozenSet[str] = ["profile"],
) -> None:

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

    # one time upload
    aiplatform.upload_tb_log(
        tensorboard_experiment_name=experiment_name,
        logdir=logdir,
        run_name_prefix=run_name_prefix,
        allowed_plugins=allowed_plugins,
    )

  • experiment_name: Nama eksperimen TensorBoard.
  • logdir: Lokasi direktori untuk memeriksa log TensorBoard.
  • project: Project ID Anda. Anda dapat menemukan Project ID ini di halaman Selamat datang di Konsol Google Cloud.
  • location: Region tempat instance TensorBoard Anda berada.
  • run_name_prefix: Untuk data profil, ini adalah awalan run. Format direktori dalam LOG_DIR harus sesuai dengan format berikut:
    • /RUN_NAME_PREFIX/plugins/profile/YYYY_MM_DD_HH_SS/
  • allowed_plugins: Daftar plugin tambahan yang diizinkan. Untuk mengupload data profil, data ini harus mencakup "profile"

gcloud CLI

  1. (Opsional) Buat lingkungan virtual khusus untuk menginstal Python CLI uploader Vertex AI TensorBoard.
    python3 -m venv PATH/TO/VIRTUAL/ENVIRONMENT
    source PATH/TO/VIRTUAL/ENVIRONMENT/bin/activate
    
    • PATH/TO/VIRTUAL/ENVIRONMENT: lingkungan virtual khusus Anda.
  2. Instal paket Vertex AI TensorBoard melalui Vertex AI SDK.
    pip install -U pip
    pip install google-cloud-aiplatform[tensorboard]
    
  3. Upload log TensorBoard
    1. Data Deret Waktu dan Blob
      tb-gcp-uploader --tensorboard_resource_name \
      TENSORBOARD_RESOURCE_NAME \
      --logdir=LOG_DIR \
      --experiment_name=TB_EXPERIMENT_NAME --one_shot=True
      
    2. Data Profil
      tb-gcp-uploader \
      --tensorboard_resource_name TENSORBOARD_RESOURCE_NAME \
      --logdir=LOG_DIR --experiment_name=TB_EXPERIMENT_NAME \
      --allowed_plugins="profile" --run_name_prefix=RUN_NAME_PREFIX \
      --one_shot=True
      
    • TENSORBOARD_RESOURCE_NAME: Nama Resource TensorBoard yang digunakan untuk mengidentifikasi sepenuhnya instance Vertex AI TensorBoard.
    • LOG_DIR: Lokasi log peristiwa yang berada di sistem file lokal atau Cloud Storage
    • TB_EXPERIMENT_NAME: Nama eksperimen TensorBoard, misalnya, test-experiment.
    • RUN_NAME_PREFIX: Untuk data profil, ini adalah awalan run. Format direktori dalam LOG_DIR harus cocok dengan format berikut:
      • /RUN_NAME_PREFIX/plugins/profile/YYYY_MM_DD_HH_SS/

CLI uploader secara default berjalan tanpa batas waktu, memantau perubahan di LOG_DIR, dan mengupload log yang baru ditambahkan. --one_shot=True menonaktifkan perilaku tersebut. Jalankan tb-gcp-uploader --help untuk informasi selengkapnya.