Informações gerais do Ray na Vertex AI

O Ray é um framework de código aberto para dimensionar aplicativos de IA e Python. O Ray fornece a infraestrutura para realizar computação distribuída e processamento paralelo para seu fluxo de trabalho de machine learning (ML).

Comparação entre a Ray e a Vertex AI

Se você já usa o Ray, pode usar o mesmo código do Ray de código aberto para criar programas e desenvolver aplicativos na Vertex AI com alterações mínimas. A partir daí, é possível usar as integrações da Vertex AI com outros Google Cloud serviços, como a inferência da Vertex AI e o BigQuery, como parte do fluxo de trabalho de machine learning.

Se você já usa a Vertex AI e precisa de uma maneira mais simples de gerenciar recursos de computação, use o código do Ray para dimensionar o treinamento.

Fluxo de trabalho para utilizar o Ray na Vertex AI

Use o Colab Enterprise e o SDK da Vertex AI para Python para se conectar ao cluster do Ray.

Etapas Descrição
1. Configuração do Ray na Vertex AI Configure seu projeto do Google, instale a versão do SDK da Vertex AI para Python que inclui a funcionalidade do Ray Client e configure uma rede de peering de VPC (opcional).
2. Criar um cluster do Ray na Vertex AI Criar um cluster do Ray na Vertex AI. O papel de administrador da Vertex AI é obrigatório.
3. Desenvolver um aplicativo do Ray na Vertex AI Conectar-se a um cluster do Ray na Vertex AI e desenvolver um aplicativo. A função do usuário da Vertex AI é obrigatória.
4. (Opcional) Usar o Ray na Vertex AI com o BigQuery Ler, gravar e transformar dados com o BigQuery.
5. (Opcional) Implantar um modelo na Vertex AI e receber inferências Implante um modelo em um endpoint on-line da Vertex AI e receba inferências.
6. Monitorar seu cluster do Ray na Vertex AI Monitorar os registros gerados no Cloud Logging e as métricas no Cloud Monitoring.
7. Excluir um cluster do Ray na Vertex AI Excluir um cluster do Ray na Vertex AI para evitar faturamentos desnecessários.

Visão geral

Os clusters Ray são integrados para garantir a disponibilidade de capacidade para ML essenciais. cargas de trabalho ou durante períodos de pico. Ao contrário dos jobs personalizados, libera o recurso após a conclusão do job, os clusters Ray permanecem disponível até a exclusão.

Observação: use clusters Ray de longa duração nestes cenários:

  • Se você enviar o mesmo job do Ray várias vezes, poderá se beneficiar do armazenamento em cache de imagens e dados com a execução dos jobs no mesmo cluster do Ray de longa duração.
  • Se você executar muitos jobs do Ray de curta duração em que o tempo de processamento real menor que o tempo de inicialização da tarefa, pode ser vantajoso ter um um cluster de longa duração.

Os clusters do Ray na Vertex AI podem ser configurados com conectividade pública ou particular. Os diagramas a seguir mostram a arquitetura e o fluxo de trabalho do Ray na Vertex AI. Consulte Conectividade pública ou particular para mais informações.

Arquitetura com conectividade pública

Ray na conectividade pública da Vertex AI

  1. Crie o cluster do Ray na Vertex AI usando as seguintes opções:

    a. Use o console Google Cloud para criar o cluster do Ray na Vertex AI.

    b. Criar o cluster do Ray na Vertex AI usando o SDK da Vertex AI para Python.

  2. Conecte-se ao cluster do Ray na Vertex AI para ter desenvolvimento interativo usando as seguintes opções:

    a. Use o Colab Enterprise no console Google Cloud para uma conexão perfeita.

    b. Use qualquer ambiente Python acessível à Internet pública.

  3. Desenvolva seu aplicativo e treine o modelo no cluster Ray na Vertex AI:

    • Use o SDK da Vertex AI para Python no ambiente de sua preferência (Colab Enterprise ou qualquer notebook Python).

    • Crie um script Python usando o ambiente de sua preferência.

    • Envie um job do Ray para o cluster do Ray na Vertex AI usando o SDK da Vertex AI para Python, a CLI do Ray Job ou a API Ray Job Submission.

  4. Implante o modelo treinado em um endpoint on-line da Vertex AI para inferência em tempo real.

  5. Use o BigQuery para gerenciar seus dados.

Arquitetura com VPC

O diagrama a seguir mostra a arquitetura e o fluxo de trabalho do Ray na Vertex AI depois de configurar o Google Cloud projeto e a rede VPC, o que é opcional:

Ray na VPC da Vertex AI

  1. Configure (a) o projeto do Google e (b) a rede VPC.

  2. Crie o cluster do Ray na Vertex AI usando as seguintes opções:

    a. Use o console Google Cloud para criar o cluster do Ray na Vertex AI.

    b. Criar o cluster do Ray na Vertex AI usando o SDK da Vertex AI para Python.

  3. Conecte-se ao cluster do Ray na Vertex AI por meio de uma rede com peering de VPC usando as seguintes opções:

  4. Desenvolva seu aplicativo e treine o modelo no cluster Ray na Vertex AI com as seguintes opções:

    • Use o SDK da Vertex AI para Python no ambiente de sua preferência (notebook do Vertex AI Workbench ou Colab Enterprise).

    • Crie um script Python usando o ambiente de sua preferência. Envie um job do Ray ao cluster do Ray na Vertex AI usando o SDK da Vertex AI para Python, a CLI do job do Ray ou o painel do Ray.

  5. Implante o modelo treinado em um endpoint on-line da Vertex AI para inferências.

  6. Use o BigQuery para gerenciar seus dados.

Terminologia

Para uma lista completa de termos, consulte o glossário da Vertex AI para IA preditiva.

  • escalonamento automático
    • O escalonamento automático é a capacidade de um recurso de computação, como um pool de trabalhadores de um cluster do Ray, ajustar automaticamente o número de nós para cima ou para baixo com base nas demandas de carga de trabalho, otimizando a utilização de recursos e o custo. Para mais informações, consulte Escalonar clusters do Ray na Vertex AI: escalonamento automático.
  • inferência em lote
  • BigQuery
    • O BigQuery é um data warehouse empresarial altamente escalonável, sem servidor e totalmente gerenciado fornecido pelo Google Cloud. Ele foi projetado para analisar conjuntos de dados enormes usando consultas SQL em velocidades incrivelmente altas. O BigQuery permite Business Intelligence e análises eficientes sem exigir que os usuários gerenciem nenhuma infraestrutura. Para mais informações, consulte Do data warehouse à plataforma de IA e dados autônomos.
  • Cloud Logging
    • O Cloud Logging é um serviço de geração de registros totalmente gerenciado e em tempo real fornecido pelo Google Cloud que permite coletar, armazenar, analisar e monitorar registros de todos os recursos do Google Cloud, aplicativos locais e até mesmo fontes personalizadas. O Cloud Logging centraliza o gerenciamento de registros, o que facilita a solução de problemas, a auditoria e a compreensão do comportamento e da integridade dos seus aplicativos e da infraestrutura. Para mais informações, consulte Visão geral do Cloud Logging.
  • Colab Enterprise
    • O Colab Enterprise é um ambiente de notebook Jupyter gerenciado e colaborativo que traz a experiência do usuário do Google Colab para o Google Cloud, oferecendo recursos de segurança e compliance de nível empresarial. O Colab Enterprise oferece uma experiência sem configuração e focada em notebooks, com recursos de computação gerenciados pela Vertex AI, e se integra a outros serviços do Google Cloud, como o BigQuery. Para mais informações, consulte Introdução ao Colab Enterprise.
  • imagem de contêiner personalizada
    • Uma imagem de contêiner personalizada é um pacote executável independente que inclui o código do aplicativo do usuário, o tempo de execução, as bibliotecas, as dependências e a configuração do ambiente. No contexto do Google Cloud, principalmente da Vertex AI, ele permite que o usuário empacote o código de treinamento de machine learning ou o aplicativo de serviço com suas dependências exatas, garantindo a capacidade de reprodução e permitindo que o usuário execute uma carga de trabalho em serviços gerenciados usando versões específicas de software ou configurações exclusivas não fornecidas por ambientes padrão. Para mais informações, consulte Requisitos de contêineres personalizados para inferência.
  • endpoint
    • Recursos em que é possível implantar modelos treinados para veicular inferências. Para mais informações, consulte Escolher um tipo de endpoint.
  • Permissões do Identity and Access Management (IAM)
    • As permissões do Identity and Access Management (IAM) são recursos granulares específicos que definem quem pode fazer o quê em quais recursos do Google Cloud. Eles são atribuídos a principais (como usuários, grupos ou contas de serviço) por meio de papéis, permitindo o controle preciso do acesso a serviços e dados em um projeto ou organização do Google Cloud. Para mais informações, consulte Controle de acesso com o IAM.
  • inferência
    • No contexto da plataforma Vertex AI, a inferência se refere ao processo de execução de pontos de dados em um modelo de machine learning para calcular uma saída, como uma única pontuação numérica. Esse processo também é conhecido como "operar um modelo de machine learning" ou "colocar um modelo de machine learning em produção". A inferência é uma etapa importante no fluxo de trabalho de machine learning, porque permite que os modelos sejam usados para fazer inferências sobre novos dados. Na Vertex AI, a inferência pode ser realizada de várias maneiras, incluindo inferência em lote e on-line. A inferência em lote envolve a execução de um grupo de solicitações de inferência e a geração dos resultados em um arquivo, enquanto a inferência on-line permite inferências em tempo real em pontos de dados individuais.
  • Network File System (NFS)
  • Inferência on-line
    • Obter inferências em instâncias individuais de forma síncrona. Para mais informações, consulte Inferência on-line.
  • recurso permanente
    • Um tipo de recurso de computação da Vertex AI, como um cluster Ray, que permanece alocado e disponível até ser excluído explicitamente. Isso é útil para o desenvolvimento iterativo e reduz a sobrecarga de inicialização entre jobs. Para mais informações, consulte Receber informações sobre recursos permanentes.
  • pipeline
  • Contêiner pré-criado
  • Private Service Connect (PSC)
    • O Private Service Connect é uma tecnologia que permite que os clientes do Compute Engine mapeiem IPs particulares na rede deles para outra rede VPC ou para APIs do Google. Para mais informações, consulte Private Service Connect.
  • Cluster do Ray na Vertex AI
    • Um cluster do Ray na Vertex AI é um cluster gerenciado de nós de computação que pode ser usado para executar aplicativos distribuídos de machine learning (ML) e Python. Ele fornece a infraestrutura para realizar computação distribuída e processamento paralelo para seu fluxo de trabalho de ML. Os clusters Ray são integrados à Vertex AI para garantir a disponibilidade de capacidade para cargas de trabalho essenciais de ML ou durante os períodos de pico. Ao contrário dos jobs personalizados, em que o serviço de treinamento libera o recurso após a conclusão do job, os clusters Ray permanecem disponíveis até serem excluídos. Para mais informações, consulte Visão geral do Ray na Vertex AI.
  • Ray na Vertex AI (RoV)
    • O Ray na Vertex AI foi projetado para que você possa usar o mesmo código aberto Ray para escrever programas e desenvolver aplicativos na Vertex AI com alterações mínimas. Para mais informações, consulte Visão geral do Ray na Vertex AI.
  • SDK do Ray na Vertex AI para Python
    • O SDK do Ray na Vertex AI para Python é uma versão do SDK da Vertex AI para Python que inclui a funcionalidade do Ray Client, do conector do Ray para BigQuery, do gerenciamento de clusters do Ray na Vertex AI e das inferências na Vertex AI. Para mais informações, consulte Introdução ao SDK da Vertex AI para Python.
  • SDK do Ray na Vertex AI para Python
    • O SDK do Ray na Vertex AI para Python é uma versão do SDK da Vertex AI para Python que inclui a funcionalidade do Ray Client, do conector do Ray para BigQuery, do gerenciamento de clusters do Ray na Vertex AI e das inferências na Vertex AI. Para mais informações, consulte Introdução ao SDK da Vertex AI para Python.
  • conta de serviço
    • As contas de serviço são contas especiais do Google Cloud usadas por aplicativos ou máquinas virtuais para fazer chamadas de API autorizadas para os serviços do Google Cloud. Ao contrário das contas de usuário, elas não estão vinculadas a uma pessoa, mas atuam como uma identidade para seu código, permitindo acesso seguro e programático aos recursos sem exigir credenciais humanas. Para mais informações, consulte Visão geral das contas de serviço.
  • Vertex AI Workbench
    • O Vertex AI Workbench é um ambiente de desenvolvimento unificado baseado em notebook do Jupyter que oferece suporte a todo o fluxo de trabalho da ciência de dados, desde a análise e exploração de dados até o desenvolvimento, treinamento e implantação de modelos. O Vertex AI Workbench oferece uma infraestrutura gerenciada e escalonável com integrações integradas a outros serviços do Google Cloud, como BigQuery e Cloud Storage. Assim, os cientistas de dados podem realizar tarefas de machine learning com eficiência sem gerenciar a infraestrutura subjacente. Para mais informações, consulte Introdução ao Vertex AI Workbench.
  • nó de trabalho
    • Um nó de trabalho se refere a uma máquina ou instância computacional individual em um cluster responsável por executar tarefas ou realizar trabalhos. Em sistemas como clusters do Kubernetes ou do Ray, os nós são as unidades fundamentais de computação.
  • pool de workers
    • Componentes de um cluster do Ray que executam tarefas distribuídas. Os pools de workers podem ser configurados com tipos de máquinas específicos e oferecem suporte ao escalonamento automático e manual. Para mais informações, consulte Estrutura do cluster de treinamento.

Preços

O preço do Ray na Vertex AI é calculado da seguinte maneira:

  • Os recursos de computação que você usa são cobrados com base na configuração da máquina selecionada ao criar o cluster do Ray na Vertex AI. Para conferir os preços do Ray na Vertex AI, consulte a página de preços.

  • Com relação aos clusters do Ray, você só é cobrado durante os estados de EXECUÇÃO e ATUALIZAÇÃO. Nenhum outro estado é cobrado. O valor cobrado é baseado no tamanho real do cluster no momento.

  • Quando você executa tarefas usando o cluster do Ray na Vertex AI, os registros são gerados e cobrados automaticamente com base nos preços do Cloud Logging.

  • Se você implantar o modelo em um endpoint para receber inferências on-line, consulte a seção "Prediction e explicação" da página de preços da Vertex AI.

  • Se você usa o BigQuery com o Ray na Vertex AI, consulte Preços do BigQuery.

A seguir