A Elastic deu um passo importante na evolução dos agentes de IA ao liberar o código do Atlas, um sistema de memória persistente construído sobre o Elasticsearch. O projeto foi desenhado para resolver um dos gargalos mais críticos no desenvolvimento de aplicações de IA generativa: a limitação das janelas de contexto dos modelos de linguagem (LLMs) e o fenômeno da perda de informações em históricos longos.
Diferente de abordagens que tentam inserir todo o histórico de interação no prompt, o que gera custos elevados e latência, o Atlas propõe uma arquitetura baseada em princípios da ciência cognitiva. O sistema organiza a memória em três categorias distintas, garantindo que o agente possa recuperar informações de forma escalável e precisa, mesmo em interações que duram anos.
Os três pilares da memória do Atlas
O Atlas segmenta os dados em índices separados no Elasticsearch, tratando cada tipo de memória com ciclos de vida e regras específicas:
- Memória Episódica: Registra os eventos do que aconteceu. Cada entrada do usuário é armazenada como um evento que tende a expirar ao longo do tempo.
- Memória Semântica: Armazena fatos duráveis sobre o que é verdadeiro. Um LLM analisa os eventos episódicos para consolidar fatos e descartar informações obsoletas.
- Memória Procedimental: Foca em saber o que funciona. O sistema cria playbooks com sequências de passos para resolver problemas, ajustando contadores de sucesso e falha para priorizar estratégias mais eficazes.
Essa arquitetura permite que agentes inteligentes consultem o histórico do usuário mantendo o isolamento de dados por meio do Document Level Security (DLS). A recuperação utiliza uma combinação de buscas semânticas (Jina v5) e lexicais (BM25), integradas via Reciprocal Rank Fusion (RRF) e reordenadas por um cross-encoder.
Por que usar Elasticsearch como base?
Embora a escolha do Elasticsearch tenha levantado debates na comunidade técnica sobre ser uma solução overkill para alguns cenários, a Elastic defende sua robustez. O sistema supera bancos vetoriais simplificados ao oferecer recursos avançados como pontuação customizada (scripted scoring) e alta performance em volumes que superam milhões de vetores, mantendo latências baixas exigidas por aplicações web.
Para profissionais de TI e engenheiros de dados no Brasil que trabalham com agentes autônomos, o Atlas representa uma oportunidade de padronizar a infraestrutura de memória fora da dependência exclusiva do contexto efêmero dos LLMs. O projeto já está disponível para consulta no repositório oficial do GitHub.
Perguntas Frequentes
Qual a principal diferença entre o Atlas e uma janela de contexto de 1M de tokens?
O Atlas é um sistema de armazenamento persistente de longo prazo, enquanto janelas de contexto funcionam como um rascunho temporário. O Atlas permite escalar interações por anos e recuperar fatos específicos sem o efeito de perda de dados no meio do prompt.
Como o Atlas lida com a privacidade dos dados?
O sistema utiliza Document Level Security (DLS), garantindo que as consultas de um agente tenham acesso apenas aos documentos de memória pertencentes àquele usuário específico.
É possível usar outro banco de dados em vez do Elasticsearch?
Embora o Atlas seja construído sobre o Elasticsearch, a lógica é open-source. Contudo, substituir o motor exige considerar a complexidade de gerenciar buscas híbridas e o re-ranking que o Elasticsearch já abstrai.
O que é o componente Procedimental no Atlas?
A memória procedimental guarda playbooks, que são sequências de passos otimizadas. O sistema atualiza automaticamente essas rotinas baseando-se em contadores de sucesso de execuções anteriores.
O Atlas é indicado para quais tipos de aplicações?
É ideal para assistentes virtuais de longa duração, sistemas de suporte que precisam lembrar do histórico de chamados técnicos e qualquer agente de IA que necessite de memória persistente e contextualizada por usuário.