Plataforma ML Diagnostics
Google Cloud O ML Diagnostics é uma plataforma gerenciada completa para otimizar, monitorar e diagnosticar cargas de trabalho de IA e ML no Google Cloud. Use o ML Diagnostics para monitorar cargas de trabalho, além de coletar e visualizar todas as métricas, configurações e perfis de carga de trabalho em uma única plataforma. O ML Diagnostics é aplicável a cargas de trabalho de treinamento e inferência e é compatível com todos os orquestradores no Cloud TPU, incluindo o Google Kubernetes Engine (GKE) e orquestradores personalizados. O ML Diagnostics inclui os seguintes recursos:
- Monitoramento de carga de trabalho: monitore e diagnostique automaticamente cargas de trabalho de IA/ML em TPUs do GKE. Para cada job do GKE, o monitoramento de carga de trabalho do ML Diagnostics cria automaticamente uma execução de machine learning, monitora o ciclo de trabalho da TPU na carga de trabalho, detecta eventos que afetam a carga de trabalho e analisa diferentes camadas da carga de trabalho, como infraestrutura, orquestrador e framework, para ajudar a determinar as possíveis causas do evento.
- Execuções de machine learning:use o ML Diagnostics para criar e registrar suas execuções de machine learning na Google Cloud CLI ou integre o SDK do ML Diagnostics à sua carga de trabalho. É possível criar e registrar execuções automaticamente com o monitoramento de carga de trabalho, implantar instâncias gerenciadas XProf com suas execuções de machine learning e coletar e gerenciar métricas, configurações e sessões de perfil de carga de trabalho.
- Experiência da CLI gcloud:use as APIs do ML Diagnostics na CLI gcloud para registrar e gerenciar execuções, implantar recursos gerenciados do XProf, visualizar sessões de perfil em buckets de armazenamento e acionar capturas de perfil na CLI. Também é possível listar todos os eventos detectados pelo monitoramento de carga de trabalho e receber detalhes do analisador para esses eventos na CLI ou na API.
- SDK do Python: use o SDK de código aberto do ML Diagnostics integrado a cargas de trabalho de ML para uma experiência completa de diagnóstico de carga de trabalho de ML. Monitore cargas de trabalho e colete e gerencie métricas de carga de trabalho, configurações e perfis em Google Cloud.
- Criação de perfil gerenciada: o ML Diagnostics implanta uma instância gerenciada do XProf com um back-end escalonável em contas associadas, permitindo o carregamento rápido de perfis grandes. Ele oferece suporte a vários usuários acessando perfis simultaneamente e contém recursos integrados, como criação de perfil multihost e criação de perfil on demand.
- Métricas de carga de trabalho: acompanhe as métricas de carga de trabalho, incluindo qualidade do modelo, desempenho do modelo e métricas do sistema. Com o monitoramento de carga de trabalho, é possível receber métricas do sistema associadas à carga de trabalho sem integrar o SDK.
- Gerenciamento de configuração de carga de trabalho: acompanhe as configurações de carga de trabalho, incluindo configurações de software, configurações do sistema e configurações definidas pelo usuário.
- Visualizações no Cluster Director e no GKE: Visualize métricas, configurações e perfis no Cluster Director e Google Kubernetes Engine noconsole. Google Cloud
- Compartilhamento de links: colabore usando links compartilháveis com informações sobre execuções de machine learning, monitoramento de carga de trabalho, métricas e perfis.
Caminhos do usuário
É possível usar a plataforma ML Diagnostics automaticamente com o monitoramento de carga de trabalho para todos os jobs do GKE ou integrar o SDK à sua carga de trabalho para a experiência completa de diagnóstico de carga de trabalho de ML. É possível interagir com o sistema de diagnóstico de ML pelo Google Cloud console ou pela CLI. O monitoramento de carga de trabalho está disponível automaticamente para todas as cargas de trabalho implantadas com o GKE em TPUs.
Com a CLI, é possível usar a CLI gcloud do ML Diagnostics para criar ou modificar uma execução de machine learning e implantar os recursos gerenciados do XProf. Com o SDK do ML Diagnostics, o SDK precisa ser integrado à sua carga de trabalho de ML para coletar e gerenciar métricas e configurações de carga de trabalho e implantar recursos gerenciados do XProf.
Para começar, use um destes guias:
Criação de perfil gerenciada com o XProf
É possível ter uma experiência de criação de perfil gerenciada com XProf ao usar a CLI ou o SDK. O XProf é uma ferramenta de criação de perfil e análise de desempenho de código aberto para cargas de trabalho de machine learning e faz parte do OpenXLA.
Os benefícios de uma experiência de criação de perfil gerenciada em comparação com uma experiência de criação de perfil auto-hospedada incluem:
- Nenhuma configuração necessária do XProf ou de outras dependências.
- Melhor segurança e proteção contra vulnerabilidades.
- Links compartilháveis para colaboração.
- Carregamento mais rápido de perfis grandes.
- Suporte a vários usuários acessando perfis simultaneamente com escalonamento automático de recursos com base na carga de acesso ao link.
- Recursos integrados, como criação de perfil multihost e criação de perfil on demand.
- Carregue várias sessões de perfil em várias execuções com a mesma instância gerenciada do XProf.
- Não há cobrança pelos recursos gerenciados do XProf implantados pela plataforma ML Diagnostics, o que torna o XProf gerenciado mais econômico do que o XProf auto-hospedado.
Pré-requisitos
Antes de usar o ML Diagnostics, ative a API Cluster Director e adicione as permissões necessárias do IAM. Se você estiver usando o GKE, o monitoramento de carga de trabalho já estará ativado. No entanto, o SDK do ML Diagnostics e a criação de perfil on demand exigem artefatos adicionais do GKE e a configuração do cluster do GKE. Para mais informações, consulte Configurar o GKE.
Ativar a API Cluster Director
Não é necessário usar o Cluster Director para implantar e gerenciar clusters para usar o produto ML Diagnostics. O ML Diagnostics funciona com clusters gerenciados pelo GKE, Cluster Director ou orquestradores personalizados. O ML Diagnostics faz parte da família de APIs do Cluster Director, mas não depende de usuários que usam o produto Cluster Director.
Para mais informações sobre como ativar a API Cluster Director, consulte Ativar uma API no seu Google Cloud projeto.
Permissões do IAM
A Google Cloud conta de serviço usada pela carga de trabalho exige os seguintes papéis do IAM atribuídos ao projeto:
roles/hypercomputecluster.editor: para acesso total à criação e ao gerenciamento de recursosMLRune para visualizar a interface do usuário.roles/logging.logWriter: para gravar registros e métricas no Cloud Logging.roles/storage.objectUser: para salvar perfis no bucket do Cloud Storage especificado emmachinelearning_run.
Também é possível criar papéis personalizados que atribuem aos usuários um subconjunto de APIs necessárias para o ML Diagnostics. Como os usuários não precisam usar o Cluster Director para gerenciar clusters, só é necessário atribuir as seguintes permissões:
hypercomputecluster.locations.gethypercomputecluster.locations.listhypercomputecluster.machineLearningRuns.createhypercomputecluster.machineLearningRuns.deletehypercomputecluster.machineLearningRuns.gethypercomputecluster.machineLearningRuns.listhypercomputecluster.machineLearningRuns.updatehypercomputecluster.operations.cancelhypercomputecluster.operations.deletehypercomputecluster.operations.gethypercomputecluster.operations.listresourcemanager.projects.getResourcemanager.projects.list
Para cargas de trabalho no Google Kubernetes Engine, use Federação de identidade da carga de trabalho para associar uma conta de serviço do Kubernetes a uma Google Cloud conta de serviço que recebeu os papéis necessários.
Preços
Você recebe cobranças pelo armazenamento de métricas no Cloud Logging e pelo armazenamento de perfis no Cloud Storage. Não é necessário ativar nenhum faturamento extra para esses serviços ao usar a plataforma ML Diagnostics. Não há cobrança pelos recursos gerenciados do XProf implantados pela plataforma ML Diagnostics.