跳到主要内容

带记忆的聊天机器人

此流通过一个聊天记忆(Chat memory)组件扩展了基本提示流(basic prompting flow),该组件存储最多 100 条先前的聊天消息,并使用它们为当前对话提供上下文。

先决条件

创建带记忆的聊天机器人流

  1. 从 Langflow 控制面板,点击新建流(New Flow)
  2. 选择带记忆的聊天机器人(Memory Chatbot)
  3. 创建了带记忆的聊天机器人(Memory Chatbot)流。

此流在基本提示流中添加了一个聊天记忆(Chat Memory)组件。此组件检索先前的消息,并将它们发送到提示(Prompt)组件,以使用上下文填充模板(Template)的一部分。

要检查模板,点击提示(Prompt)组件中的模板(Template)字段。提示(Prompt)告诉 OpenAI 模型(OpenAI model)组件如何响应输入。


_10
你是一个乐于助人的助手,负责回答问题。
_10
_10
使用 Markdown 格式化你的回答,并正确嵌入图像和网址。
_10
_10
历史记录
_10
_10
{memory}

提示中的{memory}代码在组件中创建了一个名为记忆(memory)的新输入端口。聊天记忆(Chat Memory)组件连接到此端口,以存储来自 Playground 的聊天消息,并为 OpenAI 组件提供先前聊天消息的记忆。

运行带记忆的聊天机器人流

  1. 打开 Playground
  2. 输入多个问题。例如,尝试输入以下对话:

_10
你好,我叫 Luca。
_10
请告诉我关于 PostgreSQL 的信息。
_10
我的名字是什么?
_10
我问你的第二个主题是什么?

聊天机器人记住了你的名字和之前的问题。

  1. 要查看消息日志(Message Logs)面板,点击,然后点击消息日志(Message Logs)消息日志(Message Logs)面板显示所有先前的消息,每个对话按 session_id 排序。

在带记忆的聊天机器人流中使用 Session ID

session_id 是 Langflow 中的一个唯一标识符,用于存储 AI 和用户之间的对话会话。session_id 在启动对话时创建,然后与该会话期间的所有后续消息关联。

在你创建的带记忆的聊天机器人(Memory Chatbot)流中,聊天记忆(Chat Memory)组件按 Session ID 引用过去的交互。你可以通过修改 Session ID 值来切换对话历史记录进行演示。

  1. 聊天记忆(Chat Memory)聊天输入(Chat Input)组件的 Session ID 字段中,添加一个 Session ID 值,例如 MySessionID
  2. 现在,一旦你在 Playground 中发送新消息,你应该在消息日志(Message Logs)面板中看到新的记忆被创建。
  3. 注意你的对话是如何存储在不同的记忆会话中的。

记忆(Memory)部分了解更多关于聊天记忆的信息。

Search