HarnessDev: LLMs Construindo Sua Própria Infraestrutura
A ByteDance e um grupo de universidades lançaram o HarnessDev, um framework que permite que grandes modelos de linguagem (LLMs) escrevam seus próprios "sistemas operacionais de agentes", chamados de Agent Harnesses. A equipe fornece ao LLM um kit inicial básico e permite que ele desenvolva o restante, mostrando como a IA pode construir a camada de controle que executa seus próprios loops de uso de ferramentas, etapas de verificação e tratamento de erros — sem que um humano precise digitar cada linha.
Por que um harness construído por si mesmo é importante
Os agentes de IA evoluíram de assistentes de prompt único para trabalhadores de múltiplas etapas que chamam APIs, consultam bancos de dados e combinam resultados. Até agora, os desenvolvedores criavam manualmente o código de orquestração que diz ao modelo quando chamar uma ferramenta de busca, como armazenar o estado intermediário e como verificar uma resposta final. O HarnessDev inverte esse modelo: um seed harness fornece apenas o andaime necessário — funções básicas para loops, seleção de ferramentas e rastreamento de estado — e o LLM o expande para um runtime completo.
No benchmark do artigo, o modelo produziu 18 harnesses distintos, adicionando mais de 17.000 linhas de código à semente original. Cada harness gerenciou o ciclo de vida completo de uma tarefa: execução de loops, escolha da ferramenta certa, manutenção de contexto, rastreamento de estado, verificação de resultados e recuperação de erros.
Os custos ocultos que o estudo revelou
Os números parecem impressionantes, mas os autores alertam que a implementação bruta não equivale ao uso prático.
- Componentes não utilizados – Uma parte considerável do código gerado nunca foi executada durante a execução real da tarefa. O LLM escreveu funções que o agente nunca chamou, inflando a base de código sem entregar valor.
- Dependência de modelo (Model lock-in) – Os harnesses tendiam a ser ajustados ao LLM específico que os criou. Quando o mesmo harness era entregue a um modelo diferente, o desempenho caía visivelmente, sugerindo que a lógica de controle autogerada incorpora peculiaridades específicas do modelo.
- Lacunas de verificação – Um harness de teste relatou uma taxa de sucesso de 99% (99 de 100 execuções), mas estava correto apenas 48% das vezes. Sem uma verificação robusta, um agente pode apresentar respostas erradas com confiança.
- Sobrecarga de tokens – O uso de tokens — um indicador do custo de computação — variou drasticamente. Um harness exigiu sete vezes mais tokens do que outro para alcançar o mesmo resultado, levantando preocupações sobre a escalabilidade em ambientes de produção.
Essas descobertas destacam a necessidade de um design disciplinado, mesmo quando o código emerge de um LLM.
O que os desenvolvedores devem ter em mente
- Trate o design do harness como arquitetura – Não confie que o modelo irá "simplesmente funcionar". Defina módulos claros para controle de loop, seleção de ferramentas, manipulação de estado e verificação antes de permitir que o LLM os preencha.
- Construa uma verificação robusta – Insira verificações explícitas que comparem a afirmação de um agente com o ground truth ou um modelo secundário. A precisão de 48% do estudo, apesar de uma taxa de sucesso autorrelatada de 99%, mostra que a verificação não pode ser algo deixado para depois.
- Monitore os orçamentos de tokens – Harnesses mais elaborados podem inflar a contagem de tokens. Analise diferentes variantes de harness precocemente para evitar explosões de custos ocultos.
- Teste em diferentes modelos – Execute o mesmo harness com múltiplos back-ends de LLM. Se o desempenho cair drasticamente, você pode precisar de um design mais agnóstico ao modelo ou de harnesses separados por modelo.
Resumo: O HarnessDev prova que os LLMs podem redigir seu próprio código de controle semelhante a um sistema operacional.
