Platform Diagnostik ML
Google Cloud ML Diagnostics adalah platform terkelola menyeluruh untuk mengoptimalkan, memantau, dan mendiagnosis workload AI dan ML di Google Cloud. Gunakan ML Diagnostics untuk memantau workload, serta mengumpulkan dan memvisualisasikan semua metrik, konfigurasi, dan profil workload dalam satu platform. ML Diagnostics berlaku untuk workload pelatihan, reinforcement learning (RL) pasca-pelatihan, dan inferensi, serta kompatibel dengan semua orchestrator di Cloud TPU. Dukungan GKE tersedia secara umum. Dukungan untuk Slurm terkelola melalui Cluster Director, orchestrator kustom seperti Kubernetes dan Slurm, serta Compute Engine tersedia dalam Pratinjau.
ML Diagnostik mencakup fitur ketersediaan umum berikut:
- Pemantauan workload: Memantau dan mendiagnosis workload AI/ML yang berjalan di TPU GKE secara otomatis. Untuk setiap tugas GKE, ML Diagnostics Workload Monitoring otomatis membuat operasi Machine Learning, memantau siklus kerja TPU di seluruh workload, mendeteksi peristiwa yang memengaruhi workload, dan menganalisis berbagai lapisan workload, seperti infrastruktur, orchestrator, dan framework, untuk membantu menentukan potensi penyebab peristiwa tersebut.
- Menjalankan machine learning: Gunakan ML Diagnostics untuk membuat dan mendaftarkan operasi machine learning Anda melalui Google Cloud CLI, atau integrasikan ML Diagnostics SDK dengan workload Anda. Anda dapat membuat dan mendaftarkan operasi secara otomatis dengan pemantauan workload, serta men-deploy instance XProf terkelola dengan operasi machine learning Anda, serta mengumpulkan dan mengelola metrik, konfigurasi, dan sesi profil workload.
- Pengalaman gcloud CLI: Gunakan ML Diagnostics API melalui gcloud CLI untuk mendaftarkan dan mengelola operasi, men-deploy resource XProf terkelola, memvisualisasikan sesi profil di bucket penyimpanan, dan memicu pengambilan profil dari CLI. Anda juga dapat mencantumkan semua peristiwa yang terdeteksi oleh pemantauan workload dan mendapatkan detail penganalisis untuk peristiwa ini melalui CLI atau API.
- Python SDK: Gunakan ML Diagnostics SDK open source yang terintegrasi dengan workload ML untuk pengalaman diagnostik workload ML yang lengkap. Memantau workload serta mengumpulkan dan mengelola metrik, konfigurasi, dan profil workload di Google Cloud.
- Pembuatan profil terkelola: ML Diagnostics men-deploy instance terkelola XProf dengan backend yang skalabel ke akun terkait, sehingga memungkinkan pemuatan cepat profil besar. Profiler ini mendukung beberapa pengguna yang mengakses profil secara bersamaan, dan berisi fitur bawaan seperti pembuatan profil multi-host dan pembuatan profil on-demand.
- Metrik workload: Lacak metrik workload, termasuk kualitas model, performa model, dan metrik sistem. Dengan pemantauan workload, Anda bisa mendapatkan metrik sistem yang terkait dengan workload tanpa mengintegrasikan SDK.
- Manajemen konfigurasi workload: Lacak konfigurasi workload, termasuk konfigurasi software, konfigurasi sistem, dan konfigurasi yang ditentukan pengguna.
- Visualisasi di Cluster Director dan GKE: Visualisasikan metrik, konfigurasi, dan profil di Cluster Director dan Google Kubernetes Engine di konsol Google Cloud .
- Berbagi link: Berkolaborasi menggunakan link yang dapat dibagikan dengan informasi tentang eksekusi machine learning, pemantauan workload, metrik, dan profil.
ML Diagnostics juga menyertakan fitur Pratinjau berikut:
- Pemantauan workload: Ambil profil XProf secara otomatis untuk diagnosis lebih lanjut saat penganalisis penurunan performa menunjukkan status buruk.
- Python SDK: Dukungan untuk workload vLLM, Tunix, dan TorchTPU.
- Pembuatan profil terkelola: Pembuatan profil berkelanjutan dalam mode snapshot dan analisis profil agentic.
Framework workload dan jenis orchestrator
ML Diagnostics mendukung JAX dan tersedia secara umum di GKE. Framework workload seperti TorchTPU, vLLM di JAX, vLLM di TorchTPU, dan Tunix tersedia dalam Pratinjau di orchestrator berikut:
- GKE
- Kubernetes yang dikelola sendiri
- Slurm yang dikelola Cluster Director
- Slurm yang dikelola sendiri
- Compute Engine
Tabel berikut merangkum fitur yang didukung dan komponen yang diperlukan untuk workload JAX di berbagai jenis orchestrator:
| Jenis orchestrator | Fitur yang didukung dan komponen yang diperlukan |
|---|---|
| GKE |
|
| Kubernetes yang dikelola sendiri |
|
| Slurm yang dikelola Cluster Director, Slurm yang dikelola sendiri, dan Compute Engine |
|
Jalur pengguna
Anda dapat menggunakan platform ML Diagnostics secara otomatis dengan pemantauan workload untuk semua tugas GKE, atau mengintegrasikan SDK dengan workload Anda untuk pengalaman diagnostik workload ML yang lengkap. Anda dapat berinteraksi dengan platform ML Diagnostics melalui konsol Google Cloud atau CLI. Pemantauan workload tersedia secara otomatis untuk semua workload yang di-deploy dengan GKE di TPU.
Dengan CLI, Anda dapat menggunakan gcloud CLI ML Diagnostics untuk membuat atau mengubah operasi machine learning, dan men-deploy resource XProf terkelola. Dengan ML Diagnostics SDK, SDK harus diintegrasikan ke dalam workload ML Anda untuk mengumpulkan dan mengelola metrik dan konfigurasi workload, serta men-deploy resource XProf terkelola.
Untuk memulai, gunakan salah satu panduan berikut:
Prasyarat
Sebelum menggunakan ML Diagnostics, aktifkan Cluster Director API dan tambahkan izin IAM yang diperlukan. Jika Anda menggunakan GKE, pemantauan workload sudah diaktifkan. Namun, ML Diagnostics SDK dan profiling on-demand memerlukan artefak GKE tambahan dan konfigurasi cluster GKE Anda. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan GKE.
Mengaktifkan Cluster Director API
Anda tidak perlu menggunakan Cluster Director untuk men-deploy dan mengelola cluster agar dapat menggunakan produk ML Diagnostics. ML Diagnostics berfungsi dengan cluster yang dikelola oleh GKE, Cluster Director, atau orchestrator kustom. ML Diagnostics adalah bagian dari rangkaian API Cluster Director, tetapi tidak bergantung pada pengguna yang menggunakan produk Cluster Director itu sendiri.
Untuk mengetahui informasi selengkapnya tentang cara mengaktifkan Cluster Director API, lihat Mengaktifkan API di project Google Cloud .
Izin IAM
Akun layanan Google Cloud yang digunakan oleh workload Anda memerlukan peran IAM berikut yang ditetapkan pada project:
roles/hypercomputecluster.editor: Untuk akses penuh guna membuat dan mengelola resourceMLRunserta melihat antarmuka pengguna.roles/logging.logWriter: Untuk menulis log dan metrik ke Cloud Logging.roles/storage.objectUser: Untuk menyimpan profil ke bucket Cloud Storage yang ditentukan dimachinelearning_run.
Anda juga dapat membuat peran khusus yang menetapkan subset API yang diperlukan untuk ML Diagnostics kepada pengguna. Karena pengguna tidak perlu menggunakan Cluster Director untuk mengelola cluster, Anda hanya perlu menetapkan izin berikut:
hypercomputecluster.locations.gethypercomputecluster.locations.listhypercomputecluster.clusters.listhypercomputecluster.nodes.listhypercomputecluster.machineLearningRuns.createhypercomputecluster.machineLearningRuns.deletehypercomputecluster.machineLearningRuns.gethypercomputecluster.machineLearningRuns.listhypercomputecluster.machineLearningRuns.updatehypercomputecluster.operations.cancelhypercomputecluster.operations.deletehypercomputecluster.operations.gethypercomputecluster.operations.listresourcemanager.projects.getresourcemanager.projects.list
Untuk workload di Google Kubernetes Engine, gunakan Workload Identity Federation untuk mengaitkan Akun Layanan Kubernetes dengan akun layanan Google Cloud yang telah diberi peran yang diperlukan. Pod yang berjalan di jaringan host (hostNetwork: true) tidak menggunakan Workload Identity Federation for GKE. Untuk kasus ini, lihat Alternatif untuk Workload Identity Federation for GKE.
Mengaktifkan Observability Analytics di Cloud Logging
Diagram deret waktu metrik model dan metrik performa merender datanya menggunakan kueri Observability Analytics terhadap bucket log _Default project. Jika Observability Analytics tidak diaktifkan di bucket tersebut, diagram ini akan gagal dan widget akan menampilkan pesan Something went wrong in the backend atau 0 time
series, meskipun data metrik ada di Cloud Logging dan profil serta metrik sistem dirender seperti yang diharapkan.
Aktifkan Observability Analytics sekali per project. Upgrade ini bersifat non-destruktif, tidak dikenai biaya tambahan, dan tidak dapat dinonaktifkan. Anda masih dapat mengkueri log yang ada:
gcloud logging buckets update _Default --location=global \
--enable-analytics --project=PROJECT_ID
Perintah ini memerlukan izin logging.buckets.update, yang disertakan
dalam peran seperti roles/logging.configWriter.
Harga
Anda akan dikenai biaya untuk penyimpanan metrik melalui Cloud Logging, dan penyimpanan profil melalui Cloud Storage. Anda tidak perlu mengaktifkan penagihan tambahan untuk layanan ini saat menggunakan platform ML Diagnostics. Tidak ada biaya untuk resource XProf terkelola yang di-deploy oleh platform ML Diagnostics.