Escalonando a Autopesquisa de Karpathy com 16 GPUs: Resultados e Métodos

✍️ OpenClawRadar📅 Publicado: March 19, 2026🔗 Source
Escalonando a Autopesquisa de Karpathy com 16 GPUs: Resultados e Métodos
Ad

O que é o Autoresearch?

Autoresearch é o projeto de Andrej Karpathy no qual um agente de programação melhora autonomamente um script de treinamento de rede neural. O agente edita o train.py, executa um experimento de treinamento de 5 minutos em uma GPU, verifica a perda de validação e repete o ciclo - mantendo as mudanças que ajudam e descartando as que não ajudam. Na primeira execução noturna de Karpathy, o agente encontrou cerca de 20 melhorias que se somaram a uma redução de 11% no tempo para GPT-2 no ranking nanochat.

Como o Autoresearch Funciona

O projeto tem três arquivos:

  • prepare.py - Baixa os dados, treina um tokenizador, fornece o carregador de dados e a função de avaliação. Somente leitura. O agente não pode modificá-lo.
  • train.py - O modelo GPT, o otimizador e o loop de treinamento. Este é o único arquivo que o agente modifica.
  • program.md - Instruções para o agente: o que ele pode alterar, como avaliar os resultados, quando manter ou descartar mudanças.

A restrição é um orçamento fixo de 5 minutos de tempo de treinamento. O trabalho do agente é minimizar o val_bpb (bits por byte de validação) dentro dessa janela. Tudo no train.py está disponível - arquitetura, hiperparâmetros, configurações do otimizador, tamanho do lote, profundidade do modelo - desde que o código execute sem falhar.

O Gargalo: Uma GPU, Um Experimento

Executar experimentos sequencialmente significa que o agente passa a maior parte do tempo esperando. Um ciclo típico se parece com:

  1. Agente edita o train.py (~30 segundos)
  2. Treinamento é executado (~5 minutos)
  3. Agente lê o resultado, planeja o próximo experimento (~30 segundos)

A etapa 2 domina. Durante a etapa 2, o agente fica ocioso - ele poderia estar preparando o próximo experimento, ou os próximos dez. Com execução sequencial, testar combinações de parâmetros significa esperar mais 5 minutos para cada teste.

Ad

Dando ao Agente GPUs na Nuvem

A equipe usou o SkyPilot, uma ferramenta de código aberto que inicia trabalhos em várias nuvens e Kubernetes a partir de um arquivo YAML. Ela inclui uma habilidade que ensina agentes de programação a usá-la. O agente lê a habilidade e, em seguida, inicia e gerencia clusters de GPU por conta própria - sem configuração manual na nuvem.

Cada experimento é definido em um YAML curto (experiment.yaml) que especifica o tipo de GPU, instala as dependências, executa o train.py e imprime as métricas no stdout. O agente verifica os resultados com sky logs.

Resultados: ~910 Experimentos, ~8 Horas, 16 GPUs

O Claude Code usou a habilidade do SkyPilot para iniciar e gerenciar experimentos de GPU em 16 GPUs. Ao longo de 8 horas, ele submeteu cerca de 910 experimentos e reduziu o val_bpb de 1,003 para 0,974 - uma melhoria de 2,87% em relação à linha de base.

Como o Paralelismo Mudou a Estratégia de Pesquisa do Agente

Com uma GPU, o agente faz uma subida de encosta gananciosa - tenta uma coisa, verifica, repete. Com 16 GPUs, ele executou grades fatoriais de 10-13 experimentos por onda, capturando efeitos de interação entre parâmetros que uma busca sequencial perderia.

Por exemplo, o agente testou seis larguras de modelo em uma única onda, viu a tendência imediatamente e focou na melhor - uma rodada em vez de seis.

O agente também descobriu que tinha acesso a vários tipos de GPU (H100s e H200s) e desenvolveu uma estratégia para explorar a diferença de desempenho em hardware heterogêneo: testar ideias nas H100s mais baratas, promover os vencedores para H200 para validação.

Comparação de Desempenho

Com 16 GPUs, o agente paralelo alcançou a mesma melhor perda de validação 9 vezes mais rápido do que a linha de base sequencial simulada (~8 horas vs ~72 horas).

Fases do Experimento

  • Fase 1: Varreduras de hiperparâmetros (~primeiros 200 experimentos)
  • Fase 2: Descoberta de arquitetura (~experimentos 200-420)
  • Fase 3: Ajuste fino do modelo mais amplo (~experimentos 420-560)
  • Fase 4: Ajuste do otimizador (~experimentos 560-700)
  • Fase 5: Retornos decrescentes (~experimentos 700-910)

O agente descobriu que escalar a largura do modelo importava mais do que qualquer hiperparâmetro individual.

📖 Leia a fonte completa: HN AI Agents

Ad

👀 See Also