Ir para conteúdo
be-human.ai
← Voltar ao blog

Contexto e memória

Memórias conflitantes em agentes de IA: qual fato prevalece?

Defina regras de data, fonte e responsável para que seu agente de IA saiba qual fato vence quando as memórias conflitam e quando perguntar a uma pessoa.

Uma balança de latão sobre travertino, com um bloco de mármore verde em um prato e linho marfim dobrado no outro, sob luz solar quente.
Ilustração conceitual criada com IA · Be Human

Quando há memórias conflitantes em agentes de IA, ou seja, dois fatos guardados que se contradizem, o agente não deve adivinhar nem misturar os dois. Dê a cada memória uma fonte, uma data e um responsável, e aplique uma ordem de precedência escrita: registros oficiais valem mais que conversa, o mais recente vence o mais antigo dentro do mesmo tipo de fonte, e o que continuar sem solução vai para uma pessoa definida. Como as regras ficam fora do modelo, o agente resolve o mesmo conflito do mesmo jeito sempre.

Principais pontos

  • Memórias conflitantes são normais em qualquer agente que aprende com o tempo. A solução é um conjunto de regras, não uma memória mais limpa.
  • Todo fato guardado precisa de três rótulos antes de ser comparado: de onde veio, quando era verdadeiro e quem pode alterá-lo.
  • Primeiro vem a autoridade da fonte, depois a data. Um comentário recente em uma conversa raramente anula um registro assinado mais antigo.
  • Alguns conflitos nunca devem ser resolvidos pelo agente. Defina quais vão para uma pessoa e envie a decisão junto com as evidências.
  • Registre cada resolução para poder revisá-la e corrija a memória que perdeu, para que o conflito não volte.

Por que as memórias de um agente de IA entram em conflito?

Um agente que lembra de mais de uma sessão vai acabar guardando duas versões da mesma coisa. As causas são comuns. Um cliente troca a pessoa de contato e avisa um colega da sua equipe, mas não outro. Uma política é atualizada enquanto uma cópia antiga continua na base de conhecimento. Alguém cita um prazo em uma conversa e o plano do projeto diz outra coisa. O agente guardou tudo, fielmente, e agora não tem critério para escolher.

Há uma segunda causa fácil de perder de vista: o próprio agente escreve memórias. Se ele resume uma conversa e guarda o resumo, um erro nesse resumo passa a valer como um fato com o mesmo peso de um registro verificado. A compactação também pode eliminar a ressalva que tornava uma frase verdadeira, como uma condição ou um prazo de validade. O artigo sobre como compactar contexto sem perder decisões importantes trata dessa falha em detalhe.

Sem regras, um modelo de linguagem tende a escolher o fato que aparece com mais destaque no contexto ou o que está escrito de forma mais confiante. Isso não é um julgamento sobre o que é verdadeiro. É um efeito colateral da ordem de recuperação e da redação, e por isso o tratamento de conflitos deve ser projetado, não deixado ao acaso.

O que decide qual fato guardado vence?

Comece pela autoridade da fonte, porque uma data só tem sentido quando você sabe que tipo de afirmação ela está datando. Uma ordem de precedência prática, da mais forte para a mais fraca, é esta:

  • Sistema de registro: o sistema de cobrança, o CRM, a ferramenta de agenda, o repositório de contratos. São os lugares que sua empresa já trata como oficiais.
  • Documentos aprovados: políticas, tabelas de preço e procedimentos com responsável nomeado e data de revisão.
  • Declarações diretas de uma pessoa autorizada, registradas com o cargo e a data.
  • Declarações da outra parte, como um cliente, quando se referem aos próprios dados.
  • Resumos escritos pelo agente e anotações inferidas.
  • Conteúdo sem origem identificada, incluindo textos colados e mensagens encaminhadas.

A ordem varia de empresa para empresa, e tudo bem. O que importa é que esteja escrita e seja aplicada de forma mecânica. A mesma lógica sustenta uma fonte da verdade confiável para um agente de IA: o agente deve saber qual sistema é a autoridade para cada tipo de fato e tratar todo o resto como evidência de apoio.

Dois refinamentos ajudam. Primeiro, a autoridade vale por campo, não por fonte. O CRM pode ser a autoridade para o nome da empresa do cliente, mas não para o horário de reunião preferido dele, que a última mensagem do próprio cliente define melhor. Segundo, conteúdo obtido fora do seu controle (uma página da web, um e-mail recebido) nunca deve superar registros internos. O OWASP Top 10 for LLM Applications descreve como conteúdo não confiável pode manipular o comportamento de um modelo, e a memória guardada é um dos lugares onde isso pode persistir.

Como usar datas para desempatar?

Dentro do mesmo nível de autoridade, o fato mais novo costuma vencer. Mas datas são mais traiçoeiras do que parecem, então guarde pelo menos duas:

  • Data de vigência: quando o fato passou a ser verdadeiro no mundo real.
  • Data de registro: quando o agente ou uma pessoa o guardou.

Um cliente pode avisar hoje que o endereço dele mudou no mês passado. A data de registro é recente, mas é a data de vigência que decide se a nota fiscal da semana passada usou o endereço certo. Comparar apenas datas de registro pode fazer um fato antigo que chegou atrasado sobrescrever um fato atual.

Acrescente uma data de validade ou de revisão a qualquer fato que perde atualidade. Horário de funcionamento, escalas, preços e permissões de acesso mudam. Um fato que passou da data de revisão não deve ser apagado automaticamente, mas deve perder os desempates e disparar uma conferência. O guia sobre como evitar que contexto antigo engane seu agente de IA aprofunda esse ponto.

Por fim, defina quando a data mais recente não vence. Uma afirmação nova não deve substituir uma antiga se vier de uma fonte de menor autoridade, se não tiver autor identificado ou se a mudança afetar algo sensível, como dados de pagamento ou permissões. Nesses casos, o agente mantém o fato estabelecido, sinaliza a divergência e pergunta.

Um prumo de latão pendurado ao lado de uma pilha de três pedras planas sobre uma mesa de carvalho, com uma folha de papel marfim em branco ao lado, sob luz solar quente.
Ilustração conceitual criada com IA · Be Human

Quem é o responsável por um fato e por que isso importa?

A responsabilidade responde a uma pergunta que fonte e data não respondem: quem tem o direito de dizer que agora é diferente. Toda memória que pode pesar em uma decisão deve ter um responsável, uma pessoa ou um papel. Ele aprova alterações, responde quando o agente escala e responde pela exatidão do registro.

A responsabilidade também limita quem pode sobrescrever o quê. Um colaborador pode informar ao agente o próprio horário de trabalho, mas não o de um colega. Um assistente comercial não deve conseguir alterar uma política financeira em uma conversa casual. É o raciocínio comum de autorização, aplicado à escrita de memórias e não só à leitura. O OWASP Authorization Cheat Sheet é uma boa referência para o princípio: verifique as permissões em cada requisição e negue por padrão.

Memória pessoal e memória compartilhada trazem uma versão específica do problema. Se um membro da equipe informa ao agente uma preferência que contradiz uma convenção da equipe, as duas podem ser verdadeiras: uma tem escopo pessoal, a outra, compartilhado. Decida o escopo antes de decidir o vencedor. A discussão sobre memória compartilhada ou pessoal em agentes de IA ajuda a traçar essa linha.

Um registro simples de responsabilidade precisa de apenas três campos: o responsável, o escopo ao qual o fato se aplica e as pessoas autorizadas a propor mudanças. Sem eles, o agente não distingue uma correção legítima de um excesso.

Qual é o passo a passo para resolver um conflito?

Use a mesma sequência sempre, seja o agente que a execute automaticamente ou um revisor que a siga manualmente.

  • Detectar: quando a busca devolve dois fatos sobre o mesmo assunto e o mesmo campo, marque como conflito em vez de passar os dois em silêncio ao modelo.
  • Verificar o escopo: confirme que os dois fatos valem para o mesmo cliente, projeto, pessoa e período. Muitos conflitos aparentes são apenas duas verdades diferentes.
  • Comparar a autoridade: aplique a ordem de precedência. Se uma fonte claramente supera a outra, ela vence.
  • Comparar as datas: se a autoridade é igual, prefira a data de vigência mais recente, a menos que o fato novo não tenha origem identificada ou o campo seja sensível.
  • Verificar a responsabilidade: se o vencedor alterar algo que quem propôs não controla, segure a mudança e escale.
  • Decidir ou escalar: se uma regra dá resposta clara, use-a e registre. Se não, pergunte ao responsável com os dois fatos, suas fontes e datas lado a lado.
  • Corrigir: marque a memória perdedora como substituída, expirada ou corrigida, para que ela deixe de competir. Veja como corrigir, expirar ou excluir a memória de um agente.
  • Registrar: anote o que foi decidido, por qual regra e por quem.

Os dois últimos passos são os que as equipes pulam. Sem a correção, o mesmo conflito volta na sessão seguinte. Sem o registro, ninguém consegue saber depois por que o agente agiu daquele jeito. Práticas de observabilidade, como as descritas na introdução do OpenTelemetry, valem aqui: se você não enxerga a decisão, não consegue revisá-la.

Como isso funciona na prática? Um cenário ilustrativo

Este cenário é ilustrativo, não um caso real. Uma pequena empresa de serviços usa um agente para preparar resumos de reuniões com clientes. O CRM lista Dana como contato principal do cliente. Duas semanas atrás, uma mensagem na caixa de entrada compartilhada dizia que Lee agora cuida do projeto, e o agente guardou essa anotação. Hoje o agente encontra as duas informações.

O agente verifica o escopo: os dois fatos tratam do mesmo cliente e do mesmo papel. Compara a autoridade: o CRM é um sistema de registro, e a anotação guardada é um resumo inferido de um e-mail. Pela ordem de precedência, o CRM venceria, mas a anotação vem da mensagem do próprio cliente, e o cliente é a autoridade sobre sua própria equipe. Isso deixa os dois praticamente iguais no campo de contato, então as datas decidem. A anotação tem a data de vigência mais recente.

Porém, mudanças de contato afetam quem recebe notas fiscais e documentos sensíveis, e as regras da empresa marcam esse campo como um que exige confirmação. O agente não troca. Usa Dana no resumo, acrescenta uma linha dizendo que o contato pode ter mudado e envia ao responsável pela conta uma mensagem curta com os dois fatos, suas fontes e datas. O responsável confirma Lee, atualiza o CRM, e o agente marca a entrada antiga como substituída. O resumo seguinte já mostra Lee.

Observe o que o agente não fez: não fez uma média entre os dois, não escondeu a dúvida e não fez uma mudança permanente por conta própria.

Como a Be Human trata memórias conflitantes?

A Be Human trata a resolução de conflitos como parte do desenho da memória, não como algo para depois. No primeiro projeto, definimos o papel do agente, a memória de que ele precisa e, para cada tipo de fato, a fonte autoritativa, o responsável e o intervalo de revisão. As regras de precedência e os limites de escalonamento são escritos e aprovados pela equipe do cliente. Na operação gerenciada, os conflitos e suas resoluções são registrados, auditorias de memória revisam quais fatos são mais substituídos e as regras são ajustadas sob controle humano quando as evidências mostram uma lacuna. Nossa abordagem de auditoria de memória descreve o que uma revisão assim cobre.

Perguntas frequentes

O agente deve sempre confiar na memória mais recente? Não. A data mais recente é um critério de desempate dentro do mesmo nível de autoridade, não uma regra por si só. Uma observação nova de origem desconhecida não deve substituir um registro antigo de um sistema de registro, principalmente em campos sensíveis.

O agente pode resolver conflitos sem envolver uma pessoa? Sim, nos conflitos em que suas regras dão uma resposta clara, como um sistema de registro contra uma anotação informal. Qualquer coisa que envolva dinheiro, permissões, compromissos jurídicos ou dados pessoais deve ir para o responsável pelo fato. Comece com um escopo automático estreito e amplie conforme os registros mostrarem que as regras funcionam.

Precisamos de um banco de dados vetorial para cuidar disso? Não para este problema em especial. O tratamento de conflitos depende de metadados (fonte, datas, responsável, escopo) e de regras aplicadas em torno da busca, não de uma tecnologia de armazenamento específica. Se você está avaliando a infraestrutura, o artigo preciso de um banco de dados vetorial para IA na empresa? explica quando ele ajuda.

Como encontramos os conflitos que já existem? Faça uma revisão da memória atual: agrupe as entradas por assunto, procure valores diferentes no mesmo campo e confira cada um com a sua fonte. Corrija primeiro os de maior impacto e depois acrescente os rótulos e as regras para que os novos conflitos sejam pegos assim que aparecerem.

Orientação editorial Be Human. Exemplos são ilustrativos, salvo atribuição explícita. Fontes oferecem contexto; a implementação depende do seu processo.

Menos tarefas. Mais espaço para você.

Traga o trabalho para o qual falta tempo.

Teste um agente de IA personalizado 7 dias grátis pelo WhatsApp ↗