Memória do agente AI explicada em 3 níveis de dificuldade


Neste artigo, você aprenderá como a memória do agente de IA funciona em memória de trabalho, memória externa e arquiteturas de memória escalonáveis ​​para construir agentes que melhoram com o tempo.

Os tópicos que cobriremos incluem:

  • O problema de memória em agentes baseados em modelos de linguagem grande e sem estado.
  • Como a memória contextual, episódica, semântica e processual suporta o comportamento do agente.
  • Como a recuperação, a gravação na memória, o tratamento de decaimento e a consistência multiagente fazem a memória funcionar em escala.
Memória do agente AI explicada em 3 níveis de dificuldade

Memória do agente AI explicada em 3 níveis de dificuldade
Imagem do autor

Introdução

Um agente de IA sem estado não tem memória de chamadas anteriores. Cada solicitação começa do zero. Isso funciona bem para tarefas isoladas, mas se torna um problema quando um agente precisa monitorar decisões, lembrar as preferências do usuário ou continuar de onde parou.

O desafio é que memória em agentes de IA é uma coleção de diferentes mecanismos que servem a propósitos diferentes. Esses mecanismos também operam em escalas de tempo diferentes – alguns têm como escopo uma única conversa, enquanto outros persistem indefinidamente. A maneira como você os combina determina se seu agente permanecerá útil durante as sessões.

Este artigo explica a memória do agente de IA em três níveis: o que a memória significa para um agente e por que ela é difícil, como os principais tipos de memória funcionam na prática e, finalmente, os padrões de arquitetura e estratégias de recuperação que fazem a memória persistente e confiável funcionar em escala.

Nível 1: Compreendendo o problema de memória em agentes de IA

Um modelo de linguagem grande não possui estado persistente. Toda chamada à API não tem estado: o modelo recebe um bloco de texto, ou janela de contexto, processa-o, retorna uma resposta e não retém nada. Não há nenhum armazenamento interno sendo atualizado entre as chamadas.

Isso é bom para responder a uma pergunta única. É um problema basic para qualquer agente: um sistema que executa ações em várias etapas, aprende com o suggestions ou coordena o trabalho em muitas sessões.

As quatro perguntas a seguir tornam o problema de memória concreto:

  1. O que aconteceu antes? Um agente que reserva eventos de calendário precisa saber o que já está agendado. Se não se lembrar, faça uma reserva dupla.
  2. O que esse usuário deseja? Um assistente de redação que não se lembra do seu tom e estilo preferidos reinicia o comportamento genérico a cada sessão.
  3. O que o agente já tentou? Um agente de pesquisa que não se lembra de consultas de pesquisa que falharam repetirá os mesmos becos sem saída.
  4. Que fatos o agente acumulou? Um agente que descobre no meio da tarefa que um arquivo está faltando precisa registrar isso e considerá-lo em etapas futuras.

O problema da memória é o problema de dar a um sistema inerentemente sem estado a capacidade de se comportar como se tivesse conhecimento persistente e questionável sobre o passado.

Nível 2: Os tipos de memória do agente

Memória em contexto ou memória de trabalho

A forma mais simples: tudo no janela de contexto agora mesmo. O histórico de conversas, resultados de chamadas de ferramentas, prompts do sistema, documentos relevantes – tudo isso é passado para o modelo como texto em cada chamada.

Isto é exato e imediato. O modelo pode raciocinar sobre qualquer coisa no contexto com alta fidelidade. Não há etapa de recuperação, nem aproximação, nem probability de extrair o registro errado. A restrição é o tamanho da janela de contexto. Os modelos atuais suportam tokens de 128K a 1M, mas os custos e a latência aumentam com o comprimento, então você não pode simplesmente despejar tudo e encerrar.

Na prática, a memória contextual funciona melhor para o ativo estado de uma tarefa: a conversa atual, resultados recentes da ferramenta e documentos diretamente relevantes para a etapa imediata.

Memória Externa

Para informações muito grandes, muito antigas ou muito dinâmicas para serem mantidas no contexto o tempo todo, os agentes consultam um armazenamento externo e extraem o que é relevante quando necessário. Esta é a geração aumentada de recuperação (RAG) aplicada à memória do agente.

Dois padrões de recuperação atendem a necessidades diferentes:

Pesquisa semântica em um banco de dados vetorial encontra registros semelhantes em significado à consulta atual…

Pesquisa exata contra um armazenamento relacional ou de valor-chave recupera fatos estruturados por atributo – preferências do usuário, estado da tarefa, decisões anteriores e registros de entidade.

etapa de recuperação de memória do agente

Etapa de recuperação de memória do agente

Na prática, os sistemas de memória de agente mais robustos usam ambos em combinação: executam uma pesquisa vetorial e uma consulta estruturada conforme necessário e depois mesclam os resultados.

O Nível 3 se concentra em fazer os sistemas de memória funcionarem na produção do mundo actual. Ele vai além dos tipos básicos de memória e aborda desafios práticos: como estruturar a memória de forma mais granular, quais informações armazenar e quando, como recuperar de forma confiável os dados certos em escala e como lidar com problemas como dados obsoletos ou vários agentes gravando no mesmo sistema.

Resumindo, trata-se da arquitetura e das estratégias que garantem que a memória realmente melhore o desempenho de um agente.

Nível 3: Arquitetura de memória do agente AI em escala

O que precisa ser armazenado

Nem todas as informações merecem o mesmo tratamento e vale a pena ser preciso sobre o que você realmente está armazenando. A memória do agente naturalmente se enquadra em algumas categorias:

Memória episódica captura o que aconteceu: eventos específicos, chamadas de ferramentas e seus resultados.

Memória semântica captura o que é verdadeiro: fatos e preferências extraídos da experiência.

Memória processual captura como fazer as coisas. Ele codifica padrões de ação aprendidos, estratégias bem-sucedidas e modos de falha conhecidos.

tipos de memória-ai-agentes

Uma visão geral dos tipos de memória do agente

Escrevendo na memória: quando e o que armazenar

Um agente que grava cada token de cada interação na memória produz ruído em grande escala. A memória tem que ser seletiva. A seguir estão dois padrões comuns:

Resumo de remaining de sessão: Após cada sessão, o agente ou uma etapa de resumo dedicada extrai fatos, decisões e resultados importantes e os grava como registros de memória compactos.

Gravações acionadas por evento: Certos eventos acionam explicitamente gravações de memória – correções do usuário, declarações de preferência explícitas, conclusões de tarefas e condições de erro.

O que não armazenar: transcrições brutas em escala, traços de raciocínio intermediários que não afetam o comportamento futuro ou duplicatas redundantes de registros existentes.

Recuperando da memória: obtendo o contexto certo

Aqui está uma visão geral das três principais estratégias de recuperação:

Pesquisa de similaridade vetorial consulta o armazenamento de memória com uma incorporação do contexto atual e retorna os Ok registros mais semanticamente semelhantes. Isso é rápido, aproximado e funciona bem para memória não estruturada. Também requer um modelo de incorporação e um índice vetorial como HNSW ou baseado em fertilização in vitro. A qualidade depende da estratégia de chunking e do modelo de incorporação.

Consulta estruturada recupera fatos por atributo — ID do usuário, intervalo de tempo, nome da entidade. Preciso quando você sabe o que está procurando. Isso não lida com a deriva semântica. Funciona com SQL ou pesquisas de valor-chave.

Recuperação híbrida combina ambos: executa uma pesquisa vetorial e uma consulta estruturada em paralelo e mescla os resultados. Útil quando as memórias têm conteúdo semântico e metadados estruturados, como encontrar memórias sobre problemas de cobrança dos últimos 30 dias para este usuário.

Deterioração e versionamento de memória

As memórias ficam obsoletas. O cargo de um usuário muda. Um endpoint de API anteriormente correto fica obsoleto. Um agente que revela memórias desatualizadas causa erros posteriores. Você precisa de algumas maneiras de lidar com isso, e aqui estão as mais relevantes:

Decadência temporal: Dê mais peso às memórias recentes do que às antigas.

Registros de entidade versionados: mantenha um armazenamento de entidades com versão para que as atualizações substituam os valores anteriores com carimbos de information/hora.

Memória multiagente

Quando vários agentes compartilham memória – um coordenador e vários subagentes trabalhando em paralelo – a consistência se torna um problema difícil. Aqui estão abordagens comuns:

  • Memória central: Use bloqueio ou simultaneidade otimista para controlar gravações
  • Espaços para nome: Cada agente escreve em seu próprio espaço de memória
  • Registros somente anexados: Armazene todas as alterações e resolva conflitos em tempo de leitura

Não existe uma solução única e melhor; depende de como os agentes executam e compartilham o estado. Ler Por que os sistemas multiagentes precisam de engenharia de memória para saber mais.

ai-agente-memória-nível-3

Decadência de memória, controle de versão e consistência multiagente

Avaliação

Os sistemas de memória muitas vezes falham silenciosamente. O agente recupera algo errado, raciocina a partir disso e produz uma resposta errada que parece plausível. Aqui estão algumas métricas que vale a pena acompanhar:

  • A recuperação de recuperação mede se o sistema apresenta memória relevante quando ela existe.
  • A precisão da recuperação mede se ela também atrai ruído.
  • A fidelidade mede se o agente utiliza a memória recuperada em seu raciocínio.
  • A taxa de desatualização mede a frequência com que o agente revela um fato desatualizado.

O gerenciamento eficaz da memória, em essência, envolve o armazenamento de informações e, ao mesmo tempo, mantê-las relevantes e recuperáveis.

Concluindo

A memória do agente funciona como uma pilha. A memória contextual mantém o estado de funcionamento atual, enquanto a recuperação externa traz história e fatos relevantes. O desafio da engenharia reside em determinar o que registrar, quando acionar a recuperação e como manter uma memória limpa e útil à medida que ela cresce.

Aqui estão alguns recursos para aprendizado adicional:

Feliz aprendizado e construção!

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *