Piattaforma ML Diagnostics

Google Cloud ML Diagnostics è una piattaforma gestita end-to-end per ottimizzare, monitorare e diagnosticare i workload AI e ML su Google Cloud. Utilizza Diagnostica ML per monitorare i workload, nonché raccogliere e visualizzare tutte le metriche, le configurazioni e i profili dei workload all'interno di un'unica piattaforma. ML Diagnostics è applicabile sia ai carichi di lavoro di addestramento che di inferenza ed è compatibile con tutti gli orchestrator su Cloud TPU, inclusi Google Kubernetes Engine (GKE) e orchestrator personalizzati. ML Diagnostics include le seguenti funzionalità:

  • Monitoraggio dei workload: monitora e diagnostica automaticamente i workload AI/ML in esecuzione sulle TPU GKE. Per ogni job GKE, ML Diagnostics Workload Monitoring crea automaticamente un'esecuzione di Machine Learning, monitora il ciclo di lavoro della TPU nel carico di lavoro, rileva gli eventi che interessano il carico di lavoro e analizza diversi livelli del carico di lavoro, ad esempio infrastruttura, orchestratore e framework, per determinare le potenziali cause dell'evento.
  • Esecuzioni di machine learning:utilizza ML Diagnostics per creare e registrare le esecuzioni di machine learning tramite Google Cloud CLI o integra l'SDK ML Diagnostics con il tuo workload. Puoi creare e registrare automaticamente le esecuzioni con il monitoraggio dei workload, eseguire il deployment di istanze XProf gestite con le esecuzioni di machine learning e raccogliere e gestire metriche, configurazioni e sessioni di profilazione dei workload.
  • Esperienza gcloud CLI: utilizza le API ML Diagnostics tramite gcloud CLI per registrare e gestire le esecuzioni, eseguire il deployment delle risorse XProf gestite, visualizzare le sessioni di profilazione nei bucket di archiviazione e attivare l'acquisizione dei profili dalla CLI. Puoi anche elencare tutti gli eventi rilevati dal monitoraggio del carico di lavoro e ottenere i dettagli dell'analizzatore per questi eventi tramite l'interfaccia a riga di comando o l'API.
  • SDK Python: utilizza l'SDK ML Diagnostics open source integrato con i workload ML per un'esperienza completa di diagnostica dei workload ML. Monitora i carichi di lavoro e raccogli e gestisci le metriche, le configurazioni e i profili dei carichi di lavoro su Google Cloud.
  • Profilazione gestita: ML Diagnostics esegue il deployment di un'istanza gestita di XProf con un backend scalabile negli account associati, consentendo il caricamento rapido di profili di grandi dimensioni. Supporta l'accesso simultaneo ai profili da parte di più utenti e contiene funzionalità integrate come la profilazione multi-host e on demand.
  • Metriche del workload: monitora le metriche del workload, tra cui qualità del modello, prestazioni del modello e metriche di sistema. Con il monitoraggio del carico di lavoro, puoi ottenere metriche di sistema associate al carico di lavoro senza integrare l'SDK.
  • Gestione della configurazione del workload: monitora le configurazioni del workload, incluse le configurazioni software, le configurazioni di sistema e le configurazioni definite dall'utente.
  • Visualizzazioni in Cluster Director e GKE: visualizza metriche, configurazioni e profili in Cluster Director e Google Kubernetes Engine nella console Google Cloud .
  • Condivisione tramite link: collabora utilizzando link condivisibili con informazioni su esecuzioni del machine learning, monitoraggio del carico di lavoro, metriche e profili.

Percorsi utente

Puoi utilizzare automaticamente la piattaforma ML Diagnostics con il monitoraggio dei workload per tutti i job GKE oppure integrare l'SDK con il tuo workload per un'esperienza completa di diagnostica dei workload ML. Puoi interagire con il sistema di diagnostica ML tramite la console Google Cloud o la CLI. Il monitoraggio dei carichi di lavoro è disponibile automaticamente per tutti i carichi di lavoro di cui è stato eseguito il deployment con GKE sulle TPU.

Con la CLI, puoi utilizzare ML Diagnostics gcloud CLI per creare o modificare un'esecuzione di machine learning e per eseguire il deployment delle risorse XProf gestite. Con l'SDK ML Diagnostics, l'SDK deve essere integrato nel tuo workload ML per raccogliere e gestire le metriche e le configurazioni del workload e per eseguire il deployment delle risorse XProf gestite.

Per iniziare, utilizza una delle seguenti guide:

Profilazione gestita con XProf

Puoi ottenere un'esperienza di profilazione gestita con XProf quando utilizzi la CLI o l'SDK. XProf è uno strumento di profilazione e analisi delle prestazioni open source per i carichi di lavoro di machine learning e fa parte dell'ecosistema OpenXLA.

I vantaggi di un'esperienza di profilazione gestita rispetto a un'esperienza di profilazione self-hosted includono:

  • Nessuna configurazione richiesta di XProf o di altre dipendenze.
  • Maggiore sicurezza e protezione dalle vulnerabilità.
  • Link condivisibili per la collaborazione.
  • Caricamento più rapido dei profili di grandi dimensioni.
  • Supporto di più utenti che accedono contemporaneamente ai profili con scalabilità automatica delle risorse in base al carico di accesso ai link.
  • Funzionalità integrate come la profilazione multi-host e on demand.
  • Carica più sessioni di profili in più esecuzioni con la stessa istanza XProf gestita.
  • Non sono previsti costi per le risorse XProf gestite di cui è stato eseguito il deployment dalla piattaforma ML Diagnostics, il che rende XProf gestito più conveniente dell'hosting autonomo di XProf.

Prerequisiti

Prima di utilizzare ML Diagnostics, abilita l'API Cluster Director e aggiungi le autorizzazioni IAM richieste. Se utilizzi GKE, il monitoraggio dei workload è già attivato. Tuttavia, l'SDK ML Diagnostics e la profilazione on demand richiedono artefatti GKE aggiuntivi e la configurazione del cluster GKE. Per saperne di più, consulta Configurare GKE.

Abilita l'API Cluster Director

Per utilizzare il prodotto ML Diagnostics, non è necessario utilizzare Cluster Director per il deployment e la gestione dei cluster. ML Diagnostics funziona con i cluster gestiti da GKE, Cluster Director o orchestratori personalizzati. ML Diagnostics fa parte della famiglia di API Cluster Director, ma non dipende dall'utilizzo del prodotto Cluster Director stesso da parte degli utenti.

Per ulteriori informazioni sull'abilitazione dell'API Cluster Director, vedi Abilitazione di un'API nel tuo progetto. Google Cloud

Autorizzazioni IAM

Il service account Google Cloud utilizzato dal tuo carico di lavoro richiede i seguenti ruoli IAM assegnati al progetto:

  • roles/hypercomputecluster.editor: per l'accesso completo per creare e gestire le risorse MLRun e visualizzare l'interfaccia utente.
  • roles/logging.logWriter: per scrivere log e metriche in Cloud Logging.
  • roles/storage.objectUser: Per salvare i profili nel bucket Cloud Storage specificato in machinelearning_run.

Puoi anche creare ruoli personalizzati che assegnano agli utenti un sottoinsieme di API necessarie per ML Diagnostics. Poiché gli utenti non devono utilizzare Cluster Director per gestire i cluster, devi assegnare solo le seguenti autorizzazioni:

  • hypercomputecluster.locations.get
  • hypercomputecluster.locations.list
  • hypercomputecluster.machineLearningRuns.create
  • hypercomputecluster.machineLearningRuns.delete
  • hypercomputecluster.machineLearningRuns.get
  • hypercomputecluster.machineLearningRuns.list
  • hypercomputecluster.machineLearningRuns.update
  • hypercomputecluster.operations.cancel
  • hypercomputecluster.operations.delete
  • hypercomputecluster.operations.get
  • hypercomputecluster.operations.list
  • resourcemanager.projects.get
  • Resourcemanager.projects.list

Per i carichi di lavoro su Google Kubernetes Engine, utilizza Workload Identity Federation per associare un service account Kubernetes a un service account Google Cloud a cui sono stati concessi i ruoli richiesti.

Prezzi

Ti vengono addebitati i costi per l'archiviazione delle metriche tramite Cloud Logging e per l'archiviazione dei profili tramite Cloud Storage. Non è necessario attivare alcuna fatturazione aggiuntiva per questi servizi quando utilizzi la piattaforma ML Diagnostics. Non è previsto alcun costo per le risorse XProf gestite di cui viene eseguito il deployment dalla piattaforma ML Diagnostics.