Memória para um agente de AI: da complexidade a 300 linhas de código
O desenvolvedor Nikolay Gusev explicou como encontrou uma solução ideal de memória para agentes de AI. Em vez do complexo MemPalace, com 58 mil duplicatas, ele

A memória do agente de IA é um dos problemas mais complexos na construção de sistemas autônomos. O desenvolvedor Nikolay Gusev passou meses procurando por uma solução funcional e compartilhou como alcançou simplicidade e escalabilidade ao mesmo tempo.
MemPalace e o primeiro erro
Tudo começou com uma ideia ambiciosa — MemPalace, um sistema de memória inspirado na arquitetura de palácios medievais. Parecia inteligente no papel, mas na prática criou 58 mil fragmentos duplicados e se transformou em um labirinto intransponível. Muitas camadas de abstração, muita mágica. O agente se perdia em sua própria memória.
O caminho para a simplicidade
Após MemPalace, o autor simplificou a pilha para quatro componentes: MEMORY.md (banco de dados principal), USER.md (contexto do usuário), SQLite state.db (estado), HippoRAG (busca) e arquivos wiki (dados estruturados). Mas até isso parecia excessivo. O movimento correto foi escrever `findings_to_wiki`, um simples script Python com 300 linhas que automaticamente salva análises estruturadas (marcadas com cabeçalhos como `## Findings`) em arquivos markdown e as transforma em páginas wiki. Sem frameworks, sem ORM, apenas arquivos e texto.
Escalando: ClickHouse
Quando há apenas um agente, o armazenamento de arquivos funciona perfeitamente. Mas se você precisa suportar 100+ usuários simultaneamente, você precisa de um banco de dados real. É aqui que entra o ClickHouse 24.x. Características principais:
- Busca vetorial através da função `cosineDistance()` — busca rápida de memórias semanticamente similares
- Busca de texto com índice `tokenbf_v1` — busca de texto completo na memória
- Particionamento por user_id — isolamento de dados do usuário integrado ao banco de dados
- TTL para exclusão automática — registros antigos são deletados sem intervenção manual
ClickHouse realiza análise e busca em milhões de registros em milissegundos. Para a memória do agente, isso é mais que suficiente.
O que isso significa
A conclusão principal: não comece com escalabilidade. Resolva o problema de forma simples (arquivos, markdown, 300 linhas de código), depois escale apenas se necessário. Nikolay demonstrou que o melhor caminho de engenharia é da complexidade para a simplicidade, não o contrário.