1 pontos por GN⁺ 2025-09-19 | Ainda não há comentários. | Compartilhar no WhatsApp
  • De agosto até o início de setembro, houve uma queda na qualidade das respostas do Claude causada por três bugs de infraestrutura
  • As principais causas dos problemas foram, respectivamente, erro de roteamento da janela de contexto, corrupção de saída e erro de miscompilation do approximate top-k no XLA:TPU
  • Cada bug se sobrepunha aos outros em diferentes hardwares e caminhos de implantação, tornando o diagnóstico ainda mais difícil
  • Entre os motivos para o atraso na detecção e correção estavam falhas no processo de validação e restrições de acesso decorrentes da política de privacidade
  • A Anthropic está trabalhando na ampliação de avaliações e monitoramento e no desenvolvimento de ferramentas de depuração mais rápidas para evitar incidentes semelhantes

Visão geral e contexto

  • De agosto até o início de setembro, foram relatados casos intermitentes de queda na qualidade das respostas do Claude
  • No começo, isso foi considerado uma variação normal dentro do feedback dos usuários, mas a investigação começou à medida que os relatos continuaram aumentando
  • A Anthropic deixou claro que a causa do problema não foi demanda nem carga de servidores, mas apenas bugs de infraestrutura
  • O Claude atende milhões de usuários por várias plataformas (APIs, Amazon Bedrock, Google Vertex AI etc.) e mantém critérios rigorosos de validação para garantir resultados equivalentes em diferentes hardwares, como AWS Trainium, NVIDIA GPU e Google TPU
  • Neste post-mortem, são explicadas as causas dos bugs, os motivos do atraso no diagnóstico e na correção, e as medidas para evitar recorrência

Como o Claude opera em larga escala

  • O serviço do Claude mantém uma implantação global em vários hardwares (Trainium, GPU, TPU)
  • Os critérios de equivalência de implementação para garantir a mesma qualidade em cada plataforma são rigorosos
  • Ao fazer mudanças na infraestrutura, é necessário um processo de validação preciso em todas as plataformas e configurações

Linha do tempo dos principais incidentes

  • 5 de agosto: primeiro bug, afetando cerca de 0,8% das requisições do Sonnet 4
  • 25 e 26 de agosto: segundo e terceiro bugs implantados, respectivamente
  • 29 de agosto: uma mudança no balanceamento de carga fez o tráfego problemático aumentar, afetando mais usuários
  • Como os sintomas dos bugs se sobrepunham, a dificuldade de diagnóstico foi muito alta

Os três bugs sobrepostos e o processo de correção

1. Erro de roteamento da janela de contexto

  • Em 5 de agosto, algumas requisições do Sonnet 4 foram roteadas incorretamente para servidores destinados à janela de contexto de 1M tokens
  • Após a mudança no balanceamento de carga, o problema passou a afetar até 16% das requisições do Sonnet 4, com impacto pequeno também no Amazon Bedrock e no Google Vertex AI
  • Como o roteamento era "sticky", ao se conectar uma vez ao servidor errado, as conexões seguintes continuavam indo para o mesmo servidor
  • Correção: melhoria na lógica de roteamento, patch aplicado na plataforma própria em 4 de setembro, implantação no Google Cloud até 16 de setembro, e aplicação gradual em andamento no Bedrock

2. Corrupção de saída (bug)

  • Em 25 de agosto, uma configuração incorreta foi aplicada aos servidores TPU da API do Claude, causando erros durante a geração de tokens
  • Houve casos de mistura de caracteres sem sentido como tailandês ou chinês em respostas a perguntas em inglês, além de inserção de erros gramaticais evidentes em código
  • Afetou apenas Opus 4.1, Opus 4 e Sonnet 4; plataformas de terceiros não foram impactadas
  • Correção: rollback da mudança em 2 de setembro e adição de testes de detecção de saída com caracteres anômalos ao processo de implantação

3. Erro de miscompilation do approximate top-k no XLA:TPU

  • Em 25 de agosto, durante o aprimoramento do método de seleção de tokens, veio à tona um bug latente no compilador XLA:TPU
  • Afetou Claude Haiku 3.5, parte do Sonnet 4 e Opus 3
  • Plataformas de terceiros não foram impactadas
  • Correção: rollback do Haiku 3.5 em 4 de setembro e do Opus 3 em 12 de setembro; no Sonnet 4, embora o problema não tenha sido reproduzido diretamente, foi feito rollback como medida preventiva
  • Em paralelo, a Anthropic está trabalhando com a equipe do XLA:TPU para corrigir o bug do compilador e migrar para o uso de exact top-k

Análise detalhada do bug no compilador XLA

  • O Claude realiza cálculo de probabilidades e amostragem para cada candidato durante o processo de geração de tokens
  • As TPUs operam em ambiente distribuído, exigindo sincronização dos cálculos de probabilidade dos tokens, o que traz complexidade adicional
  • Em dezembro de 2024, foi identificado um problema em que o token de maior probabilidade podia ser omitido devido a erro causado pelo uso de precisão mista bf16-32 bits, e foi implantada uma correção temporária
  • Em 26 de agosto, durante uma reformulação do código de amostragem para resolver a causa raiz, surgiu um bug mais profundo no approximate top-k que, em certos casos, produzia resultados completamente incorretos
  • Esse bug estava sendo mascarado pela correção temporária anterior
  • Além disso, o bug na operação approximate top-k apresentava sintomas irregulares conforme o ambiente de produção e o tamanho do batch
  • Mais recentemente, em vez de approximate top-k, foi adotado o exact top-k, cujo custo de desempenho caiu bastante, e operações principais foram aprimoradas com padronização em fp32

Motivos para o atraso na detecção

  • Estavam em uso procedimentos como avaliações automatizadas periódicas e implantação prévia em grupos selecionados
  • Esses incidentes expuseram lacunas no processo de avaliação. Por exemplo, havia métricas que não detectavam bem as situações problemáticas, e a política interna de privacidade (engenheiros sem acesso a requisições específicas de usuários) dificultava a análise rápida
  • Como os sintomas variavam conforme plataforma e versão, foi difícil identificar uma única causa
  • Mesmo com o aumento repentino de relatos online, a relação com uma mudança padrão de balanceamento de carga não foi percebida de imediato

Melhorias futuras e medidas de resposta

  • Desenvolvimento de métricas mais sensíveis, com reforço das avaliações automatizadas para distinguir com mais clareza implementações normais e estados corrompidos
  • Expansão dos sistemas de avaliação e monitoramento para todo o ambiente real de produção, incluindo avaliações centradas em operação, como no caso de erros de roteamento da janela de contexto
  • Criação de ferramentas de depuração mais rápidas e sofisticadas, além de infraestrutura e ferramentas customizadas para analisar rapidamente o feedback da comunidade preservando a privacidade
  • Ênfase não apenas na avaliação interna, mas também na confiabilidade da coleta contínua de feedback dos usuários: para erros ou bugs difíceis de prever, os relatos reais dos usuários funcionam como um sinal importante
  • Incentivo ativo ao uso do comando "/bug" ou da função de 'thumbs down', além do envio por e-mail de métodos de avaliação da qualidade do modelo

Observações de referência

  • XLA:TPU é um compilador que converte código de linguagem de otimização de alto nível XLA em instruções para TPU
  • Como o tamanho do modelo é grande, ele é distribuído por vários chips em vez de um único chip, e operações como sorting precisam ser implementadas em formato vetorizado
  • A operação approximate top-k é usada para melhorar o desempenho, mas pode trazer problemas graves, como deixar de fora o token com maior probabilidade
  • Atualmente, foi adotado o método exact top-k, e pode haver pequenas mudanças no padrão de inclusão de tokens próximos ao limite de top-p. Em alguns casos, o usuário pode precisar ajustar o valor de top-p

Ainda não há comentários.

Ainda não há comentários.