Whitepaper 'FinOps e gerenciamento de custos para Kubernetes'
Por favor, considere dar ao OptScale um Estrela no GitHub, é código aberto 100%. Aumentaria sua visibilidade para outros e aceleraria o desenvolvimento de produtos. Obrigado!
Ebook 'De FinOps a estratégias comprovadas de gerenciamento e otimização de custos de nuvem'
OptScale FinOps
OptScale — FinOps
Visão geral do FinOps
Otimização de custos:
AWS
Microsoft Azure
Google Cloud
Nuvem Alibaba
Kubernetes
MLOps
OptScale — MLOps
Perfil de ML/IA
Otimização de ML/IA
Criação de perfil de Big Data
PREÇOS OPTSCALE
cloud migration
Acura – migração para nuvem
Visão geral
Nova plataforma de banco de dados
Migração para:
AWS
Microsoft Azure
Google Cloud
Nuvem Alibaba
VMware
Pilha aberta
KVM
Nuvem pública
Migração de:
Na premissa
disaster recovery
Acura – DR e backup na nuvem
Visão geral
Migração para:
AWS
Microsoft Azure
Google Cloud
Nuvem Alibaba
VMware
Pilha aberta
KVM

Principais processos de MLOps (parte 4): Servindo e monitorando modelos de aprendizado de máquina

Neste artigo, descrevemos o bloco do esquema, dedicado ao atendimento e monitoramento de modelos de aprendizado de máquina.

Por favor, encontre o esquema completo, que descreve os principais processos de MLOps aqui. As principais partes do esquema são blocos horizontais, dentro dos quais os aspectos procedimentais dos MLOps são descritos. Cada um deles é projetado para resolver tarefas específicas dentro da estrutura de garantir a operação ininterrupta dos serviços de ML da empresa. 

Os modelos de ML em produção exigem a geração de previsões. No entanto, o modelo de machine learning em si é um arquivo que não pode gerar previsões facilmente. Uma solução comum encontrada online é uma equipe usar FastAPI e escrever um wrapper Python em torno do modelo para “recuperar previsões”.

MLOps_Serving-and-monitoring-machine-learning-models

Se adicionarmos mais detalhes, há vários cenários possíveis a partir do momento em que a equipe recebe o arquivo do modelo ML. A equipe pode:

  • Escreva todo o código para configurar um serviço RESTful,
  • Implemente todo o código wrapper necessário em torno dele,
  • Colete tudo em uma imagem Docker,
  • Eventualmente, crie um contêiner desta imagem em algum lugar,
  • Escale-o de alguma forma,
  • Organizar coleta de métricas,
  • Configurar alertas,
  • Estabelecer regras para a implementação de novas versões do modelo,
  • e muito mais.

Fazer isso para todos os modelos e, ao mesmo tempo, manter a base de código no futuro é uma tarefa trabalhosa. Para facilitar, ferramentas especiais de serviço surgiram e introduziram três novas entidades no sistema:

  • Instância/Serviço de Inferência,
  • Servidor de Inferência,
  • Motor de serviço.

Um Instância de Inferência ou Serviço de Inferência é um modelo ML específico preparado para receber requisições e gerar respostas preditivas. Em essência, tal entidade pode ser representada por um contêiner com o equipamento técnico necessário para sua operação em um cluster Kubernetes.

Um Servidor de Inferência cria Instâncias/Serviços de Inferência. Há muitas implementações de Servidores de Inferência, cada um dos quais pode trabalhar com estruturas de ML específicas, convertendo modelos treinados em solicitações de entrada prontas para processar e gerando previsões.

UM Motor de serviço executa as principais funções de gerenciamento. Ele determina qual Inference Server será usado, quantas cópias da Inference Instance recebida precisam ser iniciadas e como escalá-las.

No contexto do sistema discutido, não há um modelo de nível de componente que sirva de detalhes, mas há aspectos semelhantes:

  • O CI/CD componente que cuida da implantação de modelos prontos para produção (pode ser considerada uma das versões do Serving Engine), e

Modelo de serviço, que organiza o esquema para geração de previsões para modelos de ML dentro da infraestrutura disponível, tanto para cenários de streaming quanto em lote (pode ser considerada uma das versões do Inference Server).

CI CD component MLOps process

Como exemplo de uma pilha concluída para Servir, pode-se consultar o Seldon pilha:

  • Núcleo Seldon é um Motor de Serviço,
  • Servidor Seldon ML é um servidor de inferência, que prepara o acesso ao modelo via REST ou gRPC,
  • Tempo de execução personalizado do Seldon ML Server é uma Instância de Inferência – um exemplo de um wrapper para qualquer modelo de ML, uma instância do qual precisa ser iniciada para gerar previsões.

Existe até mesmo um protocolo padronizado para implementar o Serving, cujo suporte é de fato obrigatório em todas as ferramentas similares. Ele é chamado de V2 Inference Protocol e foi desenvolvido por vários grandes players do mercado – KServe, Seldon, Nvidia Triton.

cost optimization, ML resource management

Otimização gratuita de custos de nuvem e gerenciamento aprimorado de recursos de ML/IA para toda a vida

Servir vs. implantar

Em várias fontes, pode-se encontrar a menção das ferramentas “Serving e Deploy” como um todo. No entanto, é importante entender a diferença em seus propósitos. Esta é uma questão discutível, mas neste artigo, será como segue:

Servindo – trata-se de criar uma API de modelo e a capacidade de obter previsões a partir dela, ou seja, em última análise – obter uma única instância de serviço com um modelo dentro.

Implantar – trata-se de distribuir a instância de serviço na quantidade necessária para processar solicitações recebidas (você pode imaginar um conjunto de réplicas na implantação do Kubernetes).

Há muitas estratégias para implementar modelos, mas isso não é específico de ML. A versão paga do Seldon, a propósito, suporta várias dessas estratégias, então você pode simplesmente escolher essa pilha e aproveitar como tudo funciona por si só.

É importante não esquecer que as métricas de desempenho do modelo devem ser rastreadas, caso contrário, não será possível resolver problemas emergentes em tempo hábil. Como rastrear métricas é uma grande questão. A empresa Arize AI construiu um negócio inteiro com isso, mas o Grafana com VictoriaMetrics também não foi cancelado.

💡 Você também pode se interessar pelo nosso artigo 'Principais processos de MLOps (parte 3): fluxo de trabalho automatizado de aprendizado de máquina' → https://hystax.com/key-mlops-processes-part-3-automated-machine-learning-workflow.

✔️ OptScale, uma plataforma de código aberto FinOps & MLOps, que ajuda empresas a otimizar custos de nuvem e trazer mais transparência ao uso da nuvem, está totalmente disponível no Apache 2.0 no GitHub → https://github.com/hystax/optscale.

Digite seu e-mail para ser notificado sobre conteúdo novo e relevante.

Obrigado por se juntar a nós!

Esperamos que você ache útil

Você pode cancelar a assinatura dessas comunicações a qualquer momento. política de Privacidade

Novidades e Relatórios

FinOps e MLOps

Uma descrição completa do OptScale como uma plataforma de código aberto FinOps e MLOps para otimizar o desempenho da carga de trabalho na nuvem e o custo da infraestrutura. Otimização de custo de nuvem, Dimensionamento correto de VM, instrumentação PaaS, Localizador de duplicatas S3, Uso RI/SP, detecção de anomalias, + ferramentas de desenvolvedor de IA para utilização ideal da nuvem.

FinOps, otimização de custos de nuvem e segurança

Conheça nossas melhores práticas: 

  • Como liberar IPs elásticos no Amazon EC2
  • Detectar VMs do MS Azure interrompidas incorretamente
  • Reduza sua fatura da AWS eliminando instantâneos de disco órfãos e não utilizados
  • E insights muito mais profundos

Otimize o uso de RI/SP para equipes de ML/AI com OptScale

Descubra como:

  • veja cobertura RI/SP
  • obtenha recomendações para uso ideal de RI/SP
  • aprimore a utilização de RI/SP por equipes de ML/IA com OptScale