LangChain教程13:LangChain自定义会话管理和Retriever

文章目录

        • 如何自定义会话管理
        • 如何创建自定义Retriever

如何自定义会话管理

LangChain教程13:LangChain自定义会话管理和Retriever_第1张图片

之前我们已经介绍了如何添加会话历史记录,但我们仍在手动更新对话历史并将其插入到每个输入中。在真正的问答应用程序中,我们希望有一种持久化对话历史的方式,并且有一种自动插入和更新它的方式。 为此,我们可以使用:
BaseChatMessageHistory: 存储对话历史。
RunnableWithMessageHistory: LCEL 链和 BaseChatMessageHistory 的包装器,负责将对话历史注入输入并在每次调用后更新它。 要详细了解如何将这些类结合在一起创建有状态的对话链,请转到 如何添加消息历史(内存) LCEL 页面。 下面,我们实现了第二种选项的一个简单示例,其中对话历史存储在一个简单的字典中。

RunnableWithMessageHistory 的实例会为您管理对话历史。它们接受一个带有键(默认为 “session_id”)的配置,该键指定要获取和预置到输入中的对话历史,并将输出附加到相同的对话历史。以下是一个示例:

#示例:custom_chat_session.py

你可能感兴趣的:(LLM和AIGC,langchain,jvm,Imagen,人工智能,agent)