𝟰𝟮/𝟲𝟬 𝗗𝗶𝗮𝘀 𝗱𝗲 𝗣𝗿𝗲𝗴𝘂𝗻𝘁𝗮𝘀 𝗱𝗲 𝗗𝗲𝘀𝗲𝗻𝗵𝗼 𝗱𝗲 𝗦𝗶𝘀𝘁𝗲𝗺𝗮
Seu agente de IA lembra o nome de um usuário.
Um usuário pede a um agente para reservar um voo barato para NYC. Ele pede hotéis por menos de US$ 150 por noite. Ele pede uma comparação do custo total da viagem.
No terceiro passo, o agente envia 8.000 tokens de histórico para o LLM. Ele responde como se fosse o primeiro turno do chat.
Você precisa de uma arquitetura de memória antes de lançar isso.
Escolha uma:
Janela de contexto (In-context window): Mantenha todo o histórico no prompt. É simples. Falha após 15 turnos ou 8.000 tokens.
Armazenamento de memória vetorial (Vector memory store): Gere embeddings de turnos passados. Recupere as melhores correspondências por similaridade. Isso falha quando uma busca por "voo para NYC" puxa uma memória de uma viagem antiga em vez da tarefa atual.
Memória episódica com sumarização (Episodic memory with summarization): Comprima turnos antigos em resumos estruturados. Injete resumos relevantes em cada requisição. É mais difícil de construir. É mais difícil de confundir.
Estado de sessão no Redis (Redis session state): Use um armazenamento estruturado de chave-valor. O agente lê e escreve explicitamente. É determinístico. O agente deve saber o que armazenar e quando.
Uma opção falha após 15 turnos. Uma recupera o contexto errado no momento errado. Uma é a escolha correta para agentes orientados a tarefas.
Escolha A, B, C ou D. Diga-me se você enfrentou isso em produção.
Eu compartilho a análise completa nos comentários.
Fonte: https://dev.to/thejoud1997/4260-days-system-design-questions-4018
Comunidade de aprendizado opcional: https://t.me/GyaanSetuAi