Você já sentiu aquele calafrio ao perceber que seu agente autônomo, depois de horas rodando, começa a delirar? Repete tarefas, ignora instruções, age como se tivesse um lapso de memória. Não é bug. É inanição contextual.
Na semana passada, investiguei um fluxo no n8n que processava reclamações de clientes. Após a 47ª interação, o agente – um GPT-4 turbo – começou a tratar o usuário como ‘João’ quando ele se chamava ‘Maria’. Erro grotesco. O motivo? O contexto estava inchado com tokens inúteis, e mecanismo algum de ‘digestão’ havia sido implementado. O modelo simplesmente esqueceu quem era o interlocutor.
Chamo isso de Síndrome do Estômago Cheio. O LLM come tokens até não caber mais, mas não digere. Resultado: vômito de alucinações.
O Problema Oculto: Token Bloat vs. Token Digestão
Todo engenheiro de automação conhece o limite de contexto (8k, 32k, 128k). Mas ninguém fala sobre a qualidade dos tokens armazenados. Em fluxos longos, cada iteração acumula todo o histórico – prompts, respostas, logs. É como guardar cascas de banana na geladeira: ocupa espaço e apodrece.
Agentes autônomos no n8n, por exemplo, sofrem silenciosamente. O nó de ‘Merge’ junta tudo, mas não tem inteligência para podar. E aí o prompt explode. Testei um fluxo com 50 execuções: o prompt final tinha 72% de tokens inúteis (cabeçalhos repetidos, metadados de API, sucessos passados). O agente gastava 70% do raciocínio em ruído.
Estudo de Caso Reverso: O Fluxo que Comeu a Si Mesmo
A empresa X (anonimizada) criou um agente de suporte técnico no n8n. Após 3 dias rodando, o agente começou a responder com instruções de reset de senha quando o cliente perguntava sobre faturamento. O log revelou: o prompt continha 12 históricos de reset de senha, que se repetiam a cada ciclo, formando um loop de realimentação positiva de ruído. O agente ‘aprendeu’ que reset de senha era o padrão.
Solução radical: implementei um nó customizado de Context Digest (Node.js + função lambda) que sumarizava a cada 10 iterações. Resultado: redução de 40% nos tokens, eliminação de alucinações e economia de $0.03 por execução. Parece pouco? Em 10k chamadas/dia, são $300/mês jogados fora.
A Anatomia de uma Digestão Eficiente
Baseado em experimentos com GPT-4, Claude 3.5 e Gemini Pro, desenvolvi um framework em três estágios:
- Poda Estrutural: remova todos os metadados de execução (IDs, timestamps) que não afetam a semântica. Use regex no n8n para limpar antes de armazenar.
- Sumarização Progressiva: a cada N iterações (N=5 para tarefas críticas, N=10 para rotineiras), peça ao próprio LLM para gerar um resumo do histórico, mantendo apenas decisões e contexto ativo. Exemplo de prompt: ‘Resuma o que foi feito até agora em 3 frases, focando em pendências e identidade do usuário.’
- Janela Deslizante com Prioridade: mantenha os últimos K itens integrais (para referência imediata) e o resto sumarizado. Em testes, K=3 funcionou bem.
Implementei no n8n usando o nó ‘Function’ com JavaScript puro, chamando a API de chat para sumarizar via HTTP Request. O custo da sumarização é de ~100 tokens por ciclo, mas a economia total é de 5x mais tokens evitados.
Comparação entre LLMs na Digestão Contextual
Testei os três grandes modelos no mesmo fluxo de 100 iterações:
- GPT-4: mais robusto com contextos longos, mas tende a ‘engasgar’ com repetições. Precisou de poda pesada.
- Claude 3.5 Sonnet: excelente em sumarização nativa (o modelo consegue extrair o essencial com prompts simples). Economizou 15% mais tokens que GPT-4 no mesmo cenário.
- Gemini Pro: barato, mas pobre em manter coerência após 30 iterações. Exigiu digestão a cada 3 passos. Vantagem: custo 60% menor.
Para fluxos críticos, recomendo Claude. Para escala, Gemini com digestão agressiva.
Manifesto Técnico: A Fome de Contexto é o Novo Gargalo
Enquanto o mercado corre atrás de agentes autônomos ‘infinitos’, esquece que o contexto é um recurso finito e perecível. Engenheiros de automação precisam se tornar nutricionistas de dados. Um agente bem alimentado é aquele que digere, não que acumula.
Aqui vai meu desafio: entre no seu fluxo do n8n. Coloque um nó de log no final que imprima o tamanho do prompt. Se for maior que 5k tokens e você não tem sumarização, seu agente está morrendo de fome – de bom senso.