A Amazon Web Services (AWS) anunciou uma atualização importante para o Amazon SageMaker AI Endpoints: o lançamento das métricas aprimoradas com frequência de publicação configurável. Essa novidade oferece uma visibilidade granular essencial para monitorar, diagnosticar e otimizar o desempenho de modelos de machine learning (ML) em produção.
\n\n
O que são as métricas aprimoradas do SageMaker?
\n
Até então, o monitoramento do SageMaker AI Endpoints era baseado em métricas agregadas pelo Amazon CloudWatch, que forneciam uma visão geral da saúde do sistema, porém sem detalhar o comportamento de instâncias e containers individualmente. Com as métricas aprimoradas, é possível agora acessar dados no nível de container e instância, detalhando uso de CPU, GPU, memória, padrões de requisições, latência e erros.
\n\n
Quem pode se beneficiar e como usar?
\n
Essa funcionalidade é especialmente útil para equipes que gerenciam múltiplos modelos ou cópias de modelos em um mesmo endpoint, utilizando Inference Components. A granularidade permite:
\n
- \n
- Visualizar métricas específicas por cópia de modelo, como requisições concorrentes e utilização de recursos;
- Calcular o custo real por modelo em ambientes multi-modelo, monitorando a alocação de GPU;
- Diagnosticar rapidamente gargalos e problemas em instâncias ou containers específicos.
\n
\n
\n
\n\n
Detalhes técnicos das métricas
\n
As métricas aprimoradas dividem-se em duas categorias principais:
\n
- \n
- Métricas de utilização de recursos EC2: monitoram CPU, GPU e memória no nível de instância e container.
- Métricas de invocação: acompanham padrões de requisições, erros (4XX/5XX), latência do modelo e latência geral, com dimensões detalhadas.
\n
\n
\n
Por padrão, todas as instâncias de endpoints SageMaker possuem métricas no nível de instância, enquanto o nível de container está disponível para quem usa Inference Components.
\n\n
Configuração e frequência de publicação
\n
Para ativar as métricas aprimoradas, basta incluir o parâmetro EnableEnhancedMetrics ao criar a configuração do endpoint, podendo definir a frequência de publicação entre 10, 30 ou 60 segundos:
\n
response = sagemaker_client.create_endpoint_config(\n EndpointConfigName='my-config',\n ProductionVariants=[{\n 'VariantName': 'AllTraffic',\n 'ModelName': 'my-model',\n 'InstanceType': 'ml.g6.12xlarge',\n 'InitialInstanceCount': 2\n }],\n MetricsConfig={\n 'EnableEnhancedMetrics': True,\n 'MetricsPublishFrequencyInSeconds': 10 # padrão 60s\n }\n)
\n
A escolha da frequência deve considerar o equilíbrio entre necessidade de monitoramento em tempo real e custos do CloudWatch. A resolução padrão de 60 segundos atende a maioria dos casos, enquanto 10 segundos são recomendados para aplicações críticas ou análise profunda.
\n\n
Casos de uso práticos
\n
- \n
- Monitoramento em tempo real da GPU: permite acompanhar a alocação e utilização de GPUs por componente de inferência, facilitando a otimização de custos e desempenho.
- Atribuição de custo por modelo: calcula o custo cumulativo de cada modelo em ambientes multi-modelo, usando métricas de GPU e expressões matemáticas para refletir o consumo real.
- Monitoramento do cluster: agrega métricas para visualizar uso total de GPUs, número de instâncias e capacidade livre, fundamental para planejamento de capacidade.
\n
\n
\n
\n\n
Ferramentas para visualização e análise
\n
A AWS disponibiliza um notebook com exemplos práticos para criação de dashboards no CloudWatch, combinando métricas de uso de recursos e custos por modelo. Esses dashboards incluem widgets interativos para análise ad hoc, com seleção de intervalos de tempo e exibição detalhada de métricas.
\n\n
Melhores práticas recomendadas
\n
- \n
- Inicie com resolução de 60 segundos para manter os custos sob controle.
- Use resolução de 10 segundos apenas para endpoints críticos ou em fases de troubleshooting.
- Explore dimensões como
InferenceComponentName,ContainerIdeGpuIdpara análises detalhadas. - Configure alarmes para monitorar capacidade ociosa de GPUs e garantir buffer para escalabilidade.
- Combine métricas de invocação e de recursos para identificar correlações entre tráfego e uso.
\n
\n
\n
\n
\n
\n\n
Disponibilidade e acesso
\n
As métricas aprimoradas já estão disponíveis para todos os usuários do Amazon SageMaker AI Endpoints. Para começar a utilizar, é necessário criar ou atualizar a configuração do endpoint com o parâmetro de ativação das métricas. A documentação oficial e o notebook com exemplos podem ser acessados nos links abaixo.
\n\n
Links úteis
\n
- \n
- Documentação oficial de métricas aprimoradas
- Notebook com exemplos práticos
- Criar conta AWS
\n
\n
\n
\n\n
Com essa atualização, o Amazon SageMaker reforça seu compromisso em oferecer ferramentas avançadas para gerenciar modelos de machine learning em produção, garantindo maior eficiência operacional, melhor custo-benefício e rapidez na resolução de problemas.
