𝗠𝗲𝗺ó𝗿𝗶𝗮 𝗱𝗲 𝗖𝗼𝗻𝘃𝗲𝗿𝘀𝗮 𝗽𝗮𝗿𝗮 𝗔𝗴𝗲𝗻𝘁𝗲𝘀 𝗟𝗮𝗻𝗴𝗖𝗵𝗮𝗶𝗻
Você pode tornar os agentes LangChain mais inteligentes adicionando memória. Isso permite que eles se lembrem de fatos de mensagens anteriores.
Neste post, transformo um agente de suporte em uma ferramenta de múltiplos turnos.
No primeiro turno, o agente busca um cliente e uma fatura. No segundo turno, o agente cria um ticket sem pedir os IDs novamente.
Três conceitos fundamentais para conhecer:
- Checkpointer: Atua como memória de curto prazo. Ele salva mensagens e o estado após cada etapa.
- thread_id: Esta é a sua chave de conversa. Use o mesmo ID para continuar um chat. Use um novo ID para iniciar uma nova sessão.
- Store: Esta é a memória de longo prazo para fatos como preferências do usuário.
Como funciona em um fluxo de suporte:
- O usuário pede para buscar o ID do cliente 1042 e a fatura 8891. O agente encontra os dados.
- O usuário diz "Crie o ticket". O agente se lembra dos IDs do primeiro passo e conclui a tarefa.
Para testes, use o MemorySaver. Ele mantém o estado no seu processo local.
Importante: O MemorySaver é limpo quando o seu código para de rodar. Para produção, use um banco de dados como Postgres ou SQLite. O código permanece o mesmo porque a API thread_id não muda.
Mantenha as sessões separadas usando diferentes thread IDs para diferentes usuários. Isso evita que os dados de uma pessoa vazem para o chat de outra.
Verifique a pasta langchain-agent-memory-nodejs-demo para obter os scripts completos.
Fonte: https://dev.to/zsevic/conversation-memory-for-langchain-agents-31pa
Comunidade de aprendizado opcional: https://t.me/GyaanSetuAi