ConversationBufferMemory 核心功能

  • 对话历史存储:保存完整的对话历史记录,包括用户输入和系统回复
  • 上下文维护:为后续对话轮次提供完整的对话上下文
  • 缓冲区管理:保存最新消息,可设置最大容量限制

应用场景

  • 聊天机器人:维护对话上下文,使机器人能理解并回应多轮对话
  • 客服系统:保存客户与客服的完整对话历史
  • 诊断系统:记录症状描述和诊断建议的完整交互过程
  • 教学系统:保存学生与教学系统的问答历史

代码示例

from langchain.memory import ConversationBufferMemory
from langchain_core.runnables import RunnableLambda

memory = ConversationBufferMemory(return_messages=True)
memory.save_context({"input": "hi im wzk"}, {"output": "Hello Wzk!"})
# 后续对话可以访问之前的上下文

运行结果

  • 第一次问”我的名字是什么”:模型不知道
  • 保存记忆后再次询问:模型回答”Your name is ‘wzk’”

这展示了 ConversationBufferMemory 如何为 LLM 应用实现持久的对话上下文。