Dengan Managed Training Clusters di Gemini Enterprise Agent Platform, Anda dapat memvisualisasikan log pelatihan secara hampir real-time menggunakan Vertex AI TensorBoard. Cukup konfigurasi workload Anda untuk menyimpan log ke bucket Cloud Storage, dan log tersebut akan otomatis di-streaming ke antarmuka TensorBoard untuk dianalisis.
Prasyarat
Sebelum memulai, pastikan Anda memiliki hal berikut:
- Cluster Managed Training Clusters yang sedang berjalan.
- Bucket Cloud Storage untuk menyimpan log TensorBoard Anda. Bucket ini harus berada di region yang sama dengan instance TensorBoard Anda. Untuk mengetahui petunjuk penyiapan, lihat Membuat bucket Cloud Storage.
- Instance Vertex AI TensorBoard. Untuk mengetahui petunjuk pembuatan, lihat Membuat instance Vertex AI TensorBoard.
- Izin IAM yang benar. Agar Cloud Storage FUSE dapat membaca
dari dan menulis ke bucket penyimpanan, akun layanan yang digunakan oleh
VM cluster Anda memerlukan peran Storage Object User (
roles/storage.objectUser).
Mengaktifkan upload Tensorboard
Untuk mengonfigurasi integrasi TensorBoard untuk tugas Anda, teruskan argumen berikut menggunakan flag --extra dalam pengiriman tugas Slurm Anda:
tensorboard_base_output_dir: Menentukan jalur Cloud Storage untuk mengupload log. Contoh,gs://my-bucket/my-logs.tensorboard_url: Menentukan URL instance, eksperimen, atau operasi Vertex AI TensorBoard. Jika hanya instance yang disediakan, eksperimen dan operasi baru akan dibuat. Jika dihilangkan, instance TensorBoard default untuk project akan digunakan. Contoh,projects/123/locations/us-central1/tensorboards/456.
Contoh
# Using specific tensorboard instance
sbatch --extra="tensorboard_base_output_dir=<your-cloud-storage-dir>,tensorboard_url=projects/<project-id>/locations/<location>/tensorboards/<tensorboard-instance-id>" your_script.sbatch
Menulis log dari tugas pelatihan Anda
Dalam skrip pelatihan, akses variabel lingkungan AIP_TENSORBOARD_LOG_DIR. Variabel ini menyediakan jalur Cloud Storage unik tempat skrip Anda harus menulis log TensorBoard-nya.
Jalur ini mengikuti struktur berikut:
gs://<your-cloud-storage-path>/<cluster-id>-<cluster-uuid>/tensorboard/job-<job-id>/
Contoh berikut menunjukkan alur kerja lengkap dengan dua komponen utama: skrip pengiriman Slurm yang mengonfigurasi tugas, dan skrip pelatihan Python yang membaca variabel lingkungan untuk menulis log-nya.
Skrip Tugas Slurm (simple_job.sbatch):
#!/bin/bash
#SBATCH --job-name=tensorboard-simple-test
#SBATCH --output=tensorboard-simple-test-%j.out
# Activate your Python virtual environment if needed
# source /path/to/your/venv/bin/activate
python3 simple_logger.py
Skrip Python (simple_logger.py):
import tensorflow as tf
import os
# Get the log directory from the environment variable
log_dir = os.environ.get("AIP_TENSORBOARD_LOG_DIR")
print(f"Writing TensorBoard logs to: {log_dir}")
writer = tf.summary.create_file_writer(log_dir)
with writer.as_default():
for step in range(10):
# Simulate some metrics
loss = 1.0 - (step * 0.1)
accuracy = 0.6 + (step * 0.04)
# Log the metrics
tf.summary.scalar('loss', loss, step=step)
tf.summary.scalar('accuracy', accuracy, step=step)
writer.flush()
print(f"Step {step}: loss={loss:.4f}, accuracy={accuracy:.4f}")
writer.close()
print(f"--- Finished writing metrics to {log_dir} ---")
Sinkronisasi Log Real-Time
Untuk memvisualisasikan metrik dari tugas yang sedang berjalan, Anda harus menutup dan membuat ulang penulis ringkasan secara berkala dalam kode pelatihan. Hal ini diperlukan karena
gcsfuse hanya menyinkronkan file log ke Cloud Storage setelah file tersebut ditutup. Teknik
"flushing" ini memastikan bahwa hasil perantara terlihat di
konsol TensorBoard sebelum tugas selesai.
Melihat Vertex AI TensorBoard
Setelah tugas dikirimkan, Anda dapat memantau progresnya dengan membuka halaman Experiments on Gemini Enterprise Agent Platform di konsol Google Cloud .
Langkah berikutnya
Analisis metrik pelatihan, visualisasikan grafik model, dan buat profil performa di Vertex AI TensorBoard untuk men-debug masalah, mengoptimalkan model, dan menyiapkan model untuk diintegrasikan ke dalam alur kerja MLOps yang lengkap.
- Men-deploy model untuk inferensi: Deploy model terlatih Anda ke endpoint Gemini Enterprise Agent Platform untuk menyajikan permintaan inferensi online.
- Mengelola siklus proses model: Gunakan Gemini Enterprise Agent Platform Model Registry untuk membuat versi, melacak, dan membandingkan model terlatih Anda, yang membantu menjaga tata kelola dan reproduksibilitas model.
- Siapkan pemantauan model: Setelah deployment, pantau model Anda untuk mengetahui penyimpangan performa dan anomali data guna membantu mempertahankan efektivitas model dalam produksi.
- Optimalkan biaya dan kelola cluster Anda: Tinjau pemanfaatan cluster Anda secara rutin dan kelola siklus prosesnya (misalnya, menghapus cluster saat tidak digunakan) untuk mengoptimalkan biaya hardware yang direservasi.