The Story Deep Dive

Quando uma IA diagnostica seus próprios pontos cegos: por dentro do loop de auto-aperfeiçoamento do Hermes

Hermes Agent

Hermes Agent

@hermesagents

April 9, 2026

10 min de leitura

Tem um tipo de PR nas notas de versão que você precisa ler duas vezes, porque na primeira leitura não dá pra entender o que realmente aconteceu. A entrada relevante nas notas do Hermes Agent v0.8.0 é esta:

Guidance auto-otimizada de uso de ferramentas GPT/Codex — O agente diagnosticou e corrigiu 5 modos de falha nas chamadas de ferramentas do GPT e do Codex por meio de benchmarking comportamental automatizado, melhorando drasticamente a confiabilidade nos modelos da OpenAI. (#6120)

Na primeira vez que li, achei que alguém tinha sido generoso com o significado de "auto-otimizada". Na segunda vez, percebi que era literal. O agente rodou uma suíte de benchmarks contra si mesmo, identificou falhas sistemáticas na forma como os modelos da OpenAI chamavam suas ferramentas, gerou guidance direcionada pra corrigir essas falhas e mediu que as correções realmente funcionaram. Humanos aprovaram o resultado. Mas a etapa inteira de diagnosticar e corrigir foi automatizada.

Isso vale a pena destrinchar, porque é o tipo de capacidade que entra numa release como uma linha só e muda o que as releases futuras podem ser.

O problema concreto

A combinação do Hermes Agent com modelos da OpenAI — GPT-5, Codex — estava visivelmente instável fazia algumas versões. Usuários relatavam que o Anthropic Claude rodava liso enquanto o GPT-5 às vezes produzia argumentos no formato errado, pulava etapas ou perdia o fio do que já tinha feito numa sequência multi-ferramenta. Não são bugs sutis; dá pra assistir eles acontecendo. Mas também são enlouquecedores pra corrigir na mão, porque os modos de falha são específicos de cada modelo e dependem da redação do prompt de maneiras difíceis de intuir.

Segundo a descrição do PR, havia cinco padrões recorrentes:

  • Pular verificações prévias recomendadas antes de chamadas destrutivas de ferramenta.
  • Produzir argumentos como strings brutas onde o schema esperava objetos estruturados ou números.
  • Perder o controle de qual chamada de ferramenta já tinha dado certo numa sequência encadeada, causando chamadas duplicadas.
  • Se recusar a fazer retry depois de erros transitórios mesmo quando a guidance mandava.
  • Derivar de "executar o plano" pra "replanejar o plano" quando o contexto ficava longo.

Nenhum desses é teórico. Cada um tinha um rastro de issues no GitHub por trás.

O loop que corrigiu tudo

A abordagem do PR #6120 tem três partes móveis.

Primeiro, uma suíte automatizada de benchmark comportamental. Um harness roda o agente contra um conjunto de cenários sintéticos desenhados pra provocar cada um dos cinco modos de falha. Pra cada cenário, o benchmark registra o que o modelo fez, o que deveria ter feito e se a diferença conta como um dos padrões de falha conhecidos.

Segundo, uma etapa de geração de guidance. Quando o benchmark sinaliza uma falha, o harness produz strings de guidance candidatas — instruções curtas, específicas pro modelo, pra adicionar no system prompt, mirando exatamente o padrão que falhou. Não é "tenha mais cuidado"; são coisas como "antes de chamar qualquer ferramenta destrutiva, primeiro chame a ferramenta de preview correspondente com os mesmos argumentos e reporte a saída." As candidatas são geradas a partir das falhas observadas, não de uma rubrica genérica.

Terceiro, uma etapa de re-benchmarking. Cada string de guidance candidata é testada na mesma suíte de cenários. Guidance que melhora os scores fica. Guidance que piora outros cenários é descartada. As strings sobreviventes são agregadas no system prompt GPT/Codex que o Hermes entrega.

Por que isso é um tipo diferente de coisa

Historicamente, os prompts que vêm com um framework de agentes são escritos por humanos — às vezes um, às vezes um time pequeno — que desenvolvem opiniões sobre o que funciona e o que não funciona passando os próprios olhos pelas conversas. Esse processo tem três problemas: não escala pra muitos modelos, não pode ser reexecutado barato quando um modelo atualiza, e produz prompts que codificam as superstições de uma pessoa junto com suas evidências reais.

Trocar o loop "humano escreve, humano avalia" por "benchmark escreve candidatos, benchmark avalia eles" não é a mesma coisa que deixar uma IA se auto-tunar sem supervisão. Humanos ainda aprovam a guidance final. Mas o trabalho real de encontrar padrões e propor correções agora é mensurável e repetível. Quando o GPT-6 sair, o mesmo harness roda de novo. Quando um modo de falha novo for reportado, um cenário novo é adicionado e o loop roda outra vez. O custo de manter o prompt sincronizado com o comportamento real do modelo cai uma ordem de grandeza.

As mudanças relacionadas na v0.8.0 apontam na mesma direção. Continuação de prefill somente com raciocínio (#5931) lida com o caso específico em que um modelo produz um bloco de raciocínio sem bloco de conteúdo e trava. Guidance de disciplina de execução (#5414) adiciona uma regra geral de "não replaneje a menos que algo tenha realmente mudado" ao system prompt. Coerção de argumentos de chamadas de ferramenta (#5265) converte silenciosamente strings pra números e booleanos quando o schema JSON espera eles — exatamente a falha de tipagem de argumentos que o benchmark capturou. Esses três PRs parecem não ter relação num changelog. Lidos junto com o PR #6120, são a superfície visível de uma campanha deliberada: tornar o agente mais confiável numa família de modelos específica medindo, corrigindo e medindo de novo.

A implicação silenciosa

O que faz isso parecer um momento de virada, e não só uma boa release, é o que ele deixa entrever sobre como é a engenharia de agentes quando você para de escrever prompts na mão. Um repo como o Hermes precisa mirar doze provedores e trinta modelos diferentes. Rastrear o comportamento de cada um manualmente já é impossível. Se em vez disso você trata "como devemos promptear o modelo X" como um problema de tuning que um harness de benchmark resolve, você tem um processo que escala com o tamanho do zoológico de modelos em vez de se afogar nele.

Nada disso foi a manchete da v0.8.0. A manchete era "the intelligence release" e a demo era troca de modelo ao vivo. Mas a coisa silenciosa debaixo do assoalho é que o Hermes agora tem como manter o agente inteligente em todo modelo que ele suporta, sem um humano gastar um fim de semana por modelo re-tunando o system prompt. Esse tipo de capacidade também não vai aparecer como feature na próxima release — vai aparecer como "a confiabilidade do GPT no Hermes continua melhorando" ao longo das próximas seis releases consecutivas.

E se você, como eu, lê notas de versão por diversão, essa é a forma da coisa que vale a pena ficar de olho.

Saiba mais

Fique Por Dentro

Novidades da comunidade sobre releases do Hermes Agent, novos skills e integrações. Sem spam, cancele quando quiser.