No contexto dos agentes de IA, um harness é a infraestrutura de software que envolve um modelo de linguagem e lhe permite atuar como um agente funcional. Não se trata do modelo em si, mas do conjunto de componentes que gerem o fluxo de trabalho: a construção dos prompts, o acesso a ferramentas externas, a memória, o controlo dos passos de execução e a captura dos resultados.
A sua importância reside no facto de o desempenho de um agente depender tanto do modelo subjacente como do harness que o orquestra. Um mesmo modelo pode oferecer resultados muito distintos consoante a forma como lhe é fornecido o contexto ou como são geridas as suas chamadas a ferramentas. Por isso, ao comparar agentes em benchmarks como SWE-bench, é essencial especificar que harness foi utilizado.
Um harness típico encarrega-se de:
- Iterar sobre as ações do agente até atingir o objetivo.
- Conectar o modelo com ferramentas (terminal, navegador, APIs).
- Registar rastreios para avaliar e depurar o comportamento.