Voici les composants de mémoire couramment utilisés pour LangChain :

Remarque : Après avoir défini le composant de mémoire, vous pouvez le transmettre en paramètre à la mémoire de la chaîne et l'utiliser.

ConversationBufferMemory

Un composant de mémoire basé sur la mémoire, stockant des données en mémoire

from langchain.memory import ConversationBufferMemory

mémoire = ConversationBufferMemory()
mémoire.save_context({"input": "salut"}, {"output": "quoi de neuf"})

RedisChatMessageHistory

Un composant de mémoire basé sur Redis

from langchain.memory import RedisChatMessageHistory

historique = RedisChatMessageHistory(
	session_id="abc123",
	url="redis://192.168.0.100:6379/0",
	key_prefix="demo_prefix:"
)

historique.add_user_message("salut!")

historique.add_ai_message("quoi de neuf?")

PostgresChatMessageHistory

Un composant de mémoire basé sur la base de données Postgres

from langchain.memory import PostgresChatMessageHistory

historique = PostgresChatMessageHistory(
    connection_string="postgresql://postgres:motdepasse@localhost/chat_history",
    session_id="foo",
)

historique.add_user_message("salut!")

historique.add_ai_message("quoi de neuf?")

MongoDBChatMessageHistory

Un composant de mémoire basé sur MongoDB

from langchain.memory import MongoDBChatMessageHistory

connection_string = "mongodb://mongo_user:motdepasse123@mongo:27017"

historique_message = MongoDBChatMessageHistory(
    connection_string=connection_string, session_id="session-test"
)

historique_message.add_user_message("salut!")

historique_message.add_ai_message("quoi de neuf?")