Aqui estão os componentes de memória comumente usados para o LangChain:
Observação: Após definir o componente de memória, você pode passá-lo como parâmetro para a memória da cadeia e usá-lo.
ConversationBufferMemory
Um componente de memória baseado em memória, armazenando dados na memória
from langchain.memory import ConversationBufferMemory
memória = ConversationBufferMemory()
memória.save_context({"input": "oi"}, {"output": "e aí"})
RedisChatMessageHistory
Um componente de memória baseado em Redis
from langchain.memory import RedisChatMessageHistory
histórico = RedisChatMessageHistory(
session_id="abc123",
url="redis://192.168.0.100:6379/0",
key_prefix="demo_prefix:"
)
histórico.add_user_message("oi!")
histórico.add_ai_message("e aí?")
PostgresChatMessageHistory
Um componente de memória baseado em banco de dados Postgres
from langchain.memory import PostgresChatMessageHistory
histórico = PostgresChatMessageHistory(
connection_string="postgresql://postgres:minhasenha@localhost/chat_history",
session_id="foo",
)
histórico.add_user_message("oi!")
histórico.add_ai_message("e aí?")
MongoDBChatMessageHistory
Um componente de memória baseado em MongoDB
from langchain.memory import MongoDBChatMessageHistory
connection_string = "mongodb://usuario_mongo:minhasenhade123@mongo:27017"
histórico_mensagem = MongoDBChatMessageHistory(
connection_string=connection_string, session_id="sessao-teste"
)
histórico_mensagem.add_user_message("oi!")
histórico_mensagem.add_ai_message("e aí?")