0Pricing
AI Agents · Aula

Armazenamentos simples de memória (chave-valor)

Persista fatos mencionados pelo usuário (nome, preferências) em um armazenamento de chave-valor e insira-os no prompt do sistema a cada interação.

Armazenamentos simples de memória (chave-valor) é uma aula grátis de AI Agents no CoddyKit. Esta é a aula 4 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de AI Agents, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de AI Agents inclui 4 aulas no total.

A memória de longo prazo mais barata

Antes dos bancos de dados vetoriais e das incorporações, existe o simples armazenamento de chave-valor. Para armazenar fatos específicos do usuário (nome, preferências e configurações), isso é tudo de que você precisa.

O que armazenar

Bons candidatos para a memória KV:

  • Nome e idioma do usuário
  • Preferências (unidades, fuso horário e tom)
  • Contexto persistente (projeto atual e tópico atual)
  • Credenciais recentes de ferramentas / tokens de API

Um pequeno armazenamento em memória

Para um protótipo de processo único:

memory = {
    'user_name': 'Alice',
    'units': 'celsius',
    'language': 'tr'
}

def remember(key, value):
    memory[key] = value

def recall(key, default=None):
    return memory.get(key, default)

remember('city', 'Istanbul')
print("Recalled user_name:", recall('user_name'))
print("Recalled city:", recall('city'))
print("Recalled missing key:", recall('country', 'unknown'))

Insira na instrução do sistema

A cada interação, renderize o armazenamento KV na instrução do sistema:

def build_system_prompt(user_id):
    facts = load_facts(user_id)
    rendered = '\n'.join(f'- {k}: {v}' for k, v in facts.items())
    return f'''
You are AssistantBot.

Known facts about this user:
{rendered}

Use these to personalise replies.
'''

Use Redis para vários usuários

Para um agente de produção, use Redis:

import redis
r = redis.Redis()

def remember(user_id, key, value):
    r.hset(f'mem:{user_id}', key, json.dumps(value))

def recall_all(user_id):
    raw = r.hgetall(f'mem:{user_id}')
    return {k.decode(): json.loads(v) for k, v in raw.items()}

Ou use apenas Postgres

Postgres também funciona — uma coluna JSON por usuário:

CREATE TABLE user_memory (
    user_id TEXT PRIMARY KEY,
    facts JSONB NOT NULL DEFAULT '{}'
);

-- Update one field:
UPDATE user_memory SET facts = facts || '{"units": "celsius"}' WHERE user_id = $1;

A memória como ferramenta

Disponibilize operações de memória como ferramentas para que o próprio agente possa gravar na memória:

tools = [
    {'name': 'remember', 'description': 'Save a fact about the user', 'parameters': {...}},
    {'name': 'forget', 'description': 'Remove a stored fact', 'parameters': {...}}
]

# The agent can call remember('user_name', 'Alice') itself.
for t in tools:
    print(f"{t['name']}: {t['description']}")

Evite o crescimento excessivo da memória

Limite o número de chaves armazenadas por usuário (50 ou 100). Caso contrário, a instrução do sistema crescerá sem limite.

Tempos de expiração e decaimento

Algumas memórias duram pouco. Use as expirações do Redis:

r.hset(f'mem:{user_id}', 'last_topic', 'pricing')
r.expire(f'mem:{user_id}', 3600)  # 1 hour

Memória editável pelo usuário

Permita que os usuários vejam e editem o que o agente lembra sobre eles — a memória do ChatGPT funciona assim. Isso cria confiança e evita erros incômodos.

Privacidade: cuidado com PII

Os fatos armazenados geralmente incluem PII. Criptografe os campos confidenciais em repouso, use chaves de criptografia por usuário e exclua-os quando a conta for encerrada.

De KV a vetores

KV é excelente para fatos estruturados. Para fatos não estruturados ("o usuário prefere um tom informal, gosta de referências a anime e detesta emojis"), um armazenamento vetorial é melhor. Isso será abordado no próximo curso.

Quando usar a memória KV

Para que tipo de memória um armazenamento simples de chave-valor é mais adequado?

Recapitulação

Para 90% dos casos de uso de assistentes pessoais, um armazenamento KV em Redis ou Postgres + sua inserção na instrução do sistema fornece memória suficiente.

Perguntas Frequentes

A aula “Armazenamentos simples de memória (chave-valor)” é grátis?

Sim — o texto completo de “Armazenamentos simples de memória (chave-valor)” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de AI Agents, atualize para CoddyKit PRO. O curso de AI Agents inclui 4 aulas no total.

O que vou aprender em “Armazenamentos simples de memória (chave-valor)”?

Persista fatos mencionados pelo usuário (nome, preferências) em um armazenamento de chave-valor e insira-os no prompt do sistema a cada interação. Você pratica AI Agents com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar AI Agents?

Nenhuma experiência prévia é necessária. AI Agents no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 4 de 4.

Quanto tempo leva a aula “Armazenamentos simples de memória (chave-valor)”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de AI Agents?

Sim. Cada aula de AI Agents inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Memória de curto prazo na janela de contexto
  2. Por que contextos longos não escalam
  3. Sumarização como compressão
  4. Armazenamentos simples de memória (chave-valor)
← Voltar para AI Agents