Memória de Agente Que Mostra o Próprio Trabalho: Fatos, Derivações e Retração

TV
Thiago Victorino
7 min de leitura
Memória de Agente Que Mostra o Próprio Trabalho: Fatos, Derivações e Retração

Todo agente de longa duração acaba contradizendo a própria história. Jordy Zomer, escrevendo no pwning.systems em agosto de 2026, nomeia a falha com precisão: os modelos “sugerem uma abordagem que já tínhamos descartado, esquecem que uma premissa se provou falsa, ou continuam raciocinando com confiança a partir de uma observação que já não era válida” (tradução nossa). Ele bateu nesse problema construindo agentes de pesquisa de vulnerabilidades, um domínio em que uma premissa velha faz mais do que desperdiçar tokens. Ela manda a investigação inteira por um caminho que já tinha sido fechado.

A resposta dele, um sistema chamado Lemmalog, é o design de memória de agente mais interessante que lemos este ano, e as pontuações de benchmark dele são piores que as das baselines especializadas contra as quais se compara. As duas metades dessa frase importam. O Lemmalog armazena conhecimento como fatos e regras Datalog em vez de trechos de prosa ou embeddings. Conclusões carregam suas trilhas de derivação. Retrair um insumo retrai deterministicamente toda conclusão que dependia exclusivamente dele; uma conclusão com suporte alternativo sobrevive. Fatos carregam intervalos de validade. O preço é o recall em perguntas que exigem inferência entre fatos, e Zomer publica esse preço com barras de erro.

Viemos circulando essa propriedade pelo lado da governança há meses. Nosso levantamento dos três padrões de memória mapeou como os times armazenam conhecimento de agentes. A pergunta de governança questionou quem controla o que um agente lembra e concluiu que os sistemas atuais não conseguem responder “por que o agente acredita nisso” de forma estrutural. O Lemmalog é o primeiro design que vimos em que essa resposta existe por construção, sem depender de disciplina de logging. Se é o primeiro do mundo, um post de autor único não consegue estabelecer. O que ele consegue estabelecer é o mecanismo, e o mecanismo merece ser entendido em detalhe.

Memória como fatos e regras, sem texto solto

A memória convencional de agente, seja qual for o motor de armazenamento embaixo, guarda declarações. “O serviço de auth valida tokens localmente.” “Descartamos a race condition na fila.” As declarações ficam lado a lado sem relação estrutural. Quando o agente as recupera mais tarde, nada no armazenamento diz quais declarações eram premissas, quais eram conclusões, e quais conclusões assumiram em silêncio uma premissa que já morreu.

O Datalog muda a unidade de armazenamento. Um fato é uma asserção estruturada. Uma regra deriva fatos novos a partir dos existentes. Quando o motor deriva uma conclusão, a própria derivação, quais insumos a produziram e por qual regra, fica registrada como parte do armazenamento. Pergunte à memória por que ela acredita em algo e a resposta é uma árvore de prova, e uma pontuação de similaridade jamais seria capaz disso.

A maquinaria em si é anterior aos agentes. O título do post de Zomer, “I accidentally turned LLM memory into program analysis”, sugere de onde a maquinaria veio: os motores de lógica que a análise estática de programas usa para rastrear o que depende do quê. A novidade é apontar essa maquinaria para o conhecimento que um agente de LLM acumula ao longo de uma investigação extensa, em que o armazenamento precisa sobreviver ao agente estar errado.

A retração é onde o design se paga

Estar errado é o caso normal. Uma observação é superada. Uma premissa testa falsa. Em uma memória baseada em prosa, a declaração invalidada pode ser apagada, mas os descendentes dela ficam, porque nada os liga a ela. O modelo continua recuperando conclusões cujas fundações se foram. Essa é a falha de ressurreição que Zomer descreveu, reformulada como um problema de estrutura de dados.

A resposta do Lemmalog: o motor rastreia múltiplas trilhas de derivação por fato. Retraia um insumo e o sistema percorre a estrutura de dependências. Uma conclusão sustentada apenas pelo insumo retraído é invalidada. Uma conclusão com derivação alternativa, outra linha independente de sustentação, sobrevive. A recomputação é incremental, tocando o que mudou em vez de reexecutar a base de conhecimento inteira.

Os intervalos de validade estendem a mesma disciplina para o tempo. Um fato pode ser verdadeiro por uma janela e expirar, então uma observação armazenada de que um serviço retornava erros deixa de persistir como crença no presente muito depois do deploy que corrigiu o problema.

Para quem já operou agentes em produção, o apelo é imediato. A retração deixa de ser um pedido de prompt engineering (“por favor desconsidere os achados anteriores sobre X”) e vira uma operação de banco de dados com semântica definida.

Os números, incluindo as perdas

Zomer rodou os benchmarks ele mesmo, e os resultados são mistos de um jeito que ele não suaviza.

No LongMemEval, o Lemmalog marca F1 0,463 ± 0,010. As baselines vencem: PropMem com 0,550, SimpleMem com 0,480. O orçamento de contexto conta a outra metade da história. O Lemmalog respondeu com cerca de 2.700 tokens de contexto contra cerca de 104.000 do arranjo baseline, aproximadamente 38 vezes menos.

No LoCoMo, marca F1 0,533 ± 0,001 contra 0,605 do PropMem, com cerca de 6 vezes menos contexto. Uma categoria se destaca: as perguntas adversariais marcam 0,707, a categoria em que, no comentário do próprio Zomer, recusar a isca é recompensado. Nas palavras dele: “‘não’ acaba sendo uma resposta bastante útil” (tradução nossa). Uma memória que verifica fatos antes de afirmá-los é incomumente boa em recusar iscas.

As categorias fracas são igualmente legíveis. Perguntas de preferência marcam 0,128. Perguntas inferenciais marcam 0,164. E a verificação estrita de fatos que torna o armazenamento confiável causou 32 recusas em 102 casos cujas respostas exigiam raciocínio entre fatos: o sistema preferiu não responder a afirmar algo que não conseguia derivar. Para um assistente de chat lembrando que você prefere assento na janela, esse comportamento é um passivo. Para um agente cujas conclusões alimentam decisões de segurança, recusar o chute é mais próximo do objetivo.

Duas ressalvas pertencem ao lado de cada número aqui. Trata-se de um projeto paralelo de autor único, e as comparações no LongMemEval e no LoCoMo são execuções do próprio autor, sem avaliação de terceiros. Trate os valores exatos como um primeiro relato, e trate o formato do trade-off, recall mais fraco com proveniência estrutural, como o achado que tende a sobreviver à replicação.

Auditabilidade por construção

Leia esses resultados contra a pergunta que nosso ensaio de governança deixou aberta. Todo sistema de memória que levantamos trata auditabilidade como acréscimo: logar as escritas, carimbar as leituras, torcer para que os logs reconstruam por que o agente acreditava no que acreditava. Os logs registram que uma memória foi armazenada e recuperada. Eles deixam de fora o que ela justificou.

Um armazenamento Datalog inverte isso. A proveniência deixa de ser um log ao lado dos dados; ela é os dados. A trilha de derivação existe porque derivar é como o fato passou a existir. Apagar um insumo é incapaz de deixar conclusões órfãs, porque a estrutura de dependências é o que o motor executa. Quando escrevemos sobre benchmarks e arquiteturas de memória, os sistemas do leaderboard otimizavam recall. O Lemmalog otimiza para uma propriedade diferente: respostas carregam suas derivações, e quando uma derivação está fora de alcance ele recusa.

Essa garantia tem textura de compliance, e o trade-off tem um formato familiar. Bancos de dados abriram mão da flexibilidade de arquivos de texto livre em troca de schemas, e ganharam restrições de integridade. O Lemmalog abre mão de recall em inferência difusa e ganha uma memória cujas crenças podem ser auditadas, retraídas e delimitadas no tempo com semântica de banco de dados. Zomer o construiu para pesquisa de vulnerabilidades. A mesma propriedade é o que um auditor vai acabar exigindo de qualquer agente cujas conclusões memorizadas dirigem decisões reais.

O que fazer com isso agora

Escolha o fluxo de agente de maior risco na sua operação e faça uma pergunta ao sistema de memória dele: se uma premissa armazenada for invalidada hoje, o que acontece com as conclusões derivadas dela? Trace o caminho concretamente. Encontre uma entrada de memória que depende de outra, apague a premissa e observe se a entrada dependente sobrevive. Se sobrevive sem nenhuma marcação, a falha de ressurreição já está em produção, tendo mordido ou ainda esperando. Ninguém precisa adotar Datalog neste trimestre. Todo time precisa saber se a memória dos seus agentes consegue mostrar o próprio trabalho, e a nossa aposta é que, no seu stack, hoje, a resposta honesta é negativa.


Fontes

A Victorino ajuda times de engenharia a desenhar arquiteturas de memória e governança de agentes em que a proveniência é estrutural: contato@victorino.com.br | www.victorino.com.br

Todos os artigos do The Thinking Wire são escritos com o auxílio do modelo LLM Opus da Anthropic. Cada publicação passa por pesquisa multi-agente para verificar fatos e identificar contradições, seguida de revisão e aprovação humana antes da publicação. Se você encontrar alguma informação imprecisa ou deseja entrar em contato com o editorial, escreva para editorial@victorino.com.br . Sobre o The Thinking Wire →

Se isso faz sentido, vamos conversar

Ajudamos empresas a implementar IA sem perder o controle.

Agendar uma Conversa