大模型应用开发-聊天机器人-保存聊天记录
一、简介
在聊天机器人应用中,如果我们要保存聊天记录,不光可以让机器人与用户进行多轮对话,还可以根据聊天记录进行检索。
LangChain中,提供了一个BaseChatMessageHistory父类,专门用于保存聊天记录。默认情况下,LangChain只提供一个基于内存的InMemoryChatMessageHistory来保存聊天记录。

这种通过内存管理消息记录的方式是不太安全的,应用一旦重启,消息记录就会丢失。故而,LangChain还提供了很多机遇其他存储的扩展依赖。比如可以用MongoDB,PostgreSQL,Mysql,Redis等数据库来保存聊天记录。
具体参考官网:https://python.langchain.com/docs/integration/memory/
以Redis为例,将上面案例中的消息记录保存到Redis中,要做的,只是替换一下history的实现类。
【注意】
Redis也是有很多版本的,常用的社区版本Redis Community Edition版本(即社区版本),只支持做键值对存储,不适用于存储对话,需要再安装一个Redis Stack。

二、使用Redis保存对话
首先安装langchain针对redis的扩展依赖。

然后,替换history的实现。此处部署Redis拂去,过程略过。

运行完成后,就可以再Redis中查询聊天记录。

浙公网安备 33010602011771号