Home › Fóruns › Domine LLMs com LangChain › Memória da conversa
- Este tópico contém 1 resposta, 2 vozes e foi atualizado pela última vez 1 mês, 1 semana atrás por
Gabriel Alves.
- AutorPosts
- 5 de março de 2025 às 19:59 #48322
Prezados,
Na aula de conversação, projeto 03, notei que o professor não incluiu o chat_history no prompt template que é passado para o create_stuff_documents_chain. Realizando alguns testes, percebi que o chatbot não estava preservando a memória da conversa quando a informação não estava diretamente vinculada ao documento carregado.
Por exemplo, se eu informasse meu nome e depois perguntasse “Qual é o meu nome?”, o chatbot não conseguia responder corretamente. Para corrigir esse comportamento, adaptei o código conforme a documentação do LangChain:
prompt_template = ChatPromptTemplate.from_messages([ ("system", system_prompt_template), MessagesPlaceholder(variable_name="chat_history"), ("human", "Pergunta: {input}"), ])
7 de março de 2025 às 14:02 #48408Olá, obrigado pelo comentário! O histórico foi adicionado à pipeline na chain de contextualização (que tem o objetivo de utilizar as mensagens anteriores e a última pergunta feita para reformulá-la, caso faça referência a informações já mencionadas no histórico). Dessa forma, se a pergunta do usuário depender de algo do histórico, o modelo poderá reconstruí-la corretamente antes da busca nos documentos. Mas reforçar o histórico na chain de perguntas & respostas pode ser bom nessa situação que você citou.
Como esse projeto foca em interações com documentos/PDFs, o principal objetivo é contextualizar a resposta com base nas informações recuperadas e no histórico do chat relacionado a esses documentos. No entanto, sua adaptação faz bastante sentido se a intenção for criar um chatbot que precise lembrar de informações gerais que o usuário forneceu durante a conversa e que não estão de nenhum modo relacionados ao conteúdo ou tema dos PDFs carregados.
- AutorPosts
- Você deve fazer login para responder a este tópico.