Para criar um aplicativo de IA, provisione um cluster seguro e particular do Google Kubernetes Engine (GKE) otimizado para cargas de trabalho de IA e implante sua carga de trabalho usando um gráfico do Helm. Este guia descreve os seguintes modelos, que podem ser personalizados para implantar um aplicativo de IA:
Cluster do GKE de inferência pré-treinada de IA: crie a infraestrutura fundamental necessária para a veiculação de modelos de alta performance. Este modelo configura um cluster do GKE particular e seguro otimizado para inferência de IA.
Carga de trabalho do GKE de inferência pré-treinada de IA (prévia): implante um gráfico do Helm que inclui a configuração de uma carga de trabalho de IA. Use o gráfico do Helm para implantar um modelo Gemma pré-treinado usando o mecanismo de serviço vLLM. A carga de trabalho é configurada para solicitações eficientes de recursos de GPU e um escalonador automático horizontal de pods (HPA) para escalonar com base no uso do cache da GPU.
Por exemplo, você pode implantar os modelos de cluster e de carga de trabalho para atender às seguintes necessidades comerciais:
| Exemplo | Necessidade comercial | Implementação |
|---|---|---|
| Análise de vídeo em tempo real | Uma empresa de segurança precisa processar streams de vídeo de centenas de câmeras para detectar anomalias ou objetos específicos em tempo real. | Implante modelos de processamento de vídeo no pool de nós ativado para GPU. As GPUs podem processar as demandas de alta capacidade de processamento e baixa latência de transmissões de vídeo simultâneas. |
| Processamento especializado de documentos | Uma seguradora precisa extrair automaticamente informações de milhares de formulários de sinistro diários, que têm layouts e caligrafias variados. | Use o cluster do GKE para hospedar modelos personalizados e garantir que os dados nunca saiam do ambiente seguro durante o processamento. |
| Mecanismo de recomendação de alto volume | Uma plataforma de e-commerce precisa disponibilizar recomendações de produtos personalizadas para os usuários durante os eventos de compras de fim de ano. | Use a API Gateway do Google Kubernetes Engine para rotear grandes volumes de tráfego de usuários para os modelos de recomendação. A API Gateway pode lidar com picos repentinos de tráfego sem degradação da latência. |
Arquitetura
A imagem a seguir mostra os componentes e as conexões no modelo:
A seguir, descrevemos as configurações de componentes neste modelo:
Cluster do GKE Standard: um cluster seguro e particular em que sua carga de trabalho de IA é executada.
A tabela a seguir descreve a configuração do cluster neste modelo:
Configuração Finalidade node_locations, definida como["us-central1-a", "us-central1-b", "us-central1-c"].Garante alta disponibilidade e resiliência ao distribuir os nós do cluster em três zonas na região us-central1.enable_intranode_visibility, definida comotrue.Permite a visibilidade do tráfego entre pods no mesmo nó nos registros de fluxo de VPC. Essa visibilidade é necessária para monitoramento de rede, solução de problemas e análise de segurança. O gateway_api_configé ativado usando{"channel":"CHANNEL_STANDARD"}.A API GKE Inference Gateway ajuda a gerenciar o tráfego de entrada para seus serviços do Kubernetes. A API ajuda a configurar o roteamento refinado, o balanceamento de carga avançado e a vinculação de políticas centralizada. private_cluster_config.enable_private_endpoint, definida comofalse.private_cluster_config.enable_private_nodesétrue.control_plane_endpoints_config.dns_endpoint_config.allow_external_trafficé definido comotrue.Garante que os nós de trabalho em que seus modelos de IA são executados tenham endereços IP particulares. Isso isola seus nós da Internet pública. O plano de controle do GKE é configurado para ser acessível publicamente, permitindo que você gerencie o cluster fora da rede de nuvem privada virtual (VPC). release_channel, definida como{"channel":"REGULAR"}.Garante que seu cluster do GKE receba atualizações estáveis e previsíveis, oferecendo um equilíbrio entre novos recursos e confiabilidade. Pool de nós do GKE: um grupo de nós de trabalho que executam os contêineres do aplicativo.
A tabela a seguir descreve as configurações do pool de nós neste modelo:
Configuração Finalidade autoscaling.min_node_count, definida como0.autoscaling.max_node_counté definido como3(o padrão é100).O pool de nós pode reduzir escala vertical completamente quando não há cargas de trabalho de IA em execução, diminuindo os custos durante períodos inativos. O limite máximo do escalonamento ajuda a controlar os custos e o consumo de recursos. O parâmetro node_config.guest_acceleratoré adicionado.gpu_driver_installation_config.gpu_driver_version:é definido como"LATEST". O recursogpu_sharing_configestá ativado comTIME_SHARING.max_shared_clients_per_gpu:é definido como2.Especifica o uso de GPUs NVIDIA L4 para tarefas de inferência de IA. Os drivers de GPU necessários são instalados automaticamente. Várias cargas de trabalho menores podem compartilhar uma única GPU. node_config.machine_typemudou para"g2-standard-8".O tipo de máquina foi projetado especificamente para complementar as GPUs L4. As vCPUs (8) e a memória (32 GB) são criadas para oferecer suporte à GPU e executar seus aplicativos de inferência de IA. node_config.oauth_scopesincluihttps://www.googleapis.com/auth/cloud-platform.A conta de serviço do nó tem amplo acesso aos serviços do Google Cloud , permitindo a interação da API para tarefas como geração de registros, monitoramento e extração de imagens de contêiner. node_config.shielded_instance_config.enable_secure_boot, definida comotrue.A Inicialização segura ajuda a proteger os nós contra malware no nível da inicialização, verificando as assinaturas criptográficas do carregador de inicialização e do kernel antes da execução.
Configuração do gráfico do Helm
A tabela a seguir lista as configurações do gráfico do Helm, que foram personalizadas para implantação e escalonamento de um serviço de inferência de IA no GKE.
| Configuração | Finalidade |
|---|---|
replicaCount: 1 |
Cria uma única réplica inicial. |
image.repository: vllm/vllm-openai |
Usa uma imagem vLLM, uma biblioteca otimizada para inferência de modelos de linguagem grandes (LLMs), exposta usando uma API compatível com a OpenAI. |
model.id: google/gemma-7b-it |
Define o modelo ajustado por instruções do Gemma 7B como o modelo a ser disponibilizado. |
model.hfSecret: hf-secret |
Indica que o modelo requer autenticação usando um secret do Kubernetes para gerenciamento seguro de credenciais. |
resources.limits e requests para nvidia.com/gpu: "1" |
Garante que cada pod receba uma GPU dedicada. |
nodeSelector.cloud.google.com/gke-accelerator: nvidia-l4 |
Garante que os pods do modelo de IA sejam programados exclusivamente em nós do GKE Standard equipados com GPUs NVIDIA L4, ideais para inferências econômicas e de alto desempenho. |
hpa.enabled: true |
Ativa o escalonador automático de pods horizontal, que permite que o aplicativo dimensione automaticamente o número de pods (entre minReplicas: 1 e maxReplicas: 10) com base em targetCPUUtilizationPercentage: 80%. Garante o desempenho durante picos de carga e a eficiência de custos durante períodos de baixo uso. |
tensorParallelSize: 1 |
Indica que o modelo não está dividido em várias GPUs em um único pod. |
maxModelLen: 512 |
Controla o tamanho máximo da sequência que o modelo Gemma 7B pode processar. |
service.type: ClusterIP |
O serviço é configurado para acesso interno no cluster. |
pdb.enabled: true e minAvailable: 1 |
Um orçamento de interrupção de pods está ativado para garantir alta disponibilidade. Pelo menos uma réplica do seu modelo de IA permanece disponível durante interrupções voluntárias, como manutenção de nós. |
Criar seu aplicativo de IA
Use os modelos Cluster e carga de trabalho do cluster do GKE de inferência pré-treinada de IA para implantar seu aplicativo de IA.
Implante sua infraestrutura de IA
Configure e implante o modelo Cluster do GKE de inferência pré-treinada de IA para criar a infraestrutura fundamental em que sua carga de trabalho de IA é executada.
Duplique e implante o modelo Cluster do GKE de inferência pré-treinada de IA como um aplicativo.
Um cluster do GKE é criado no projeto de implantação escolhido.
Configure os componentes. Para ver mais informações, consulte os seguintes tópicos:
Clique em Implantar. A implantação do aplicativo leva alguns minutos.
No painel Detalhes do aplicativo, clique na guia Saídas.
Identifique o cluster_id do seu aplicativo. Você vai usar essas informações ao implantar o gráfico do Helm.
Implante sua carga de trabalho de IA
Use o modelo Carga de trabalho do GKE de inferência pré-treinada de IA para implantar sua carga de trabalho de IA no cluster criado. Você vai implantar um gráfico do Helm que inclui a configuração da sua carga de trabalho de IA.
Na página Catálogo do Google, no modelo Carga de trabalho do GKE de inferência pré-treinada de IA, clique em Criar novo aplicativo.
No campo Nome, insira um nome exclusivo para o aplicativo.
Na área Destino de implantação do GKE, faça o seguinte:
Na lista de projetos, selecione aquele em que você implantou o cluster do GKE no aplicativo Cluster do GKE de inferência pré-treinada de IA.
Na lista Região, selecione a região em que você implantou o cluster do GKE.
Na lista Clusters, selecione o cluster do GKE implantado.
Na lista Namespace, insira o namespace em que você implantou o cluster do GKE. Se você não mudou o nome, digite
default.Clique em Criar aplicativo.
O aplicativo é criado e os arquivos de configuração são mostrados.
No painel Gráfico do Helm, faça o seguinte:
Revise os detalhes da configuração.
Opcional: personalize a configuração para atender às suas necessidades específicas.
Para implantar o gráfico do Helm no cluster, clique em Implantar.
Para conferir as etapas detalhadas, consulte Implantar aplicativos.
Após alguns minutos, a configuração do gráfico do Helm é implantada no cluster do GKE.
A seguir
- Para saber como duplicar e personalizar modelos, consulte Guia de início rápido: personalizar e implantar um modelo do Google.
- Defina suas próprias configurações criando modelos de aplicativos.
- Identifique as práticas recomendadas gerais de arquitetura com o Google Cloud Framework de arquitetura.