跳到主要内容

记忆聊天机器人

这个流程在基础提示流程的基础上添加了一个聊天记忆组件,该组件可以存储最多100条之前的聊天消息,并使用它们为当前对话提供上下文。

前提条件

创建记忆聊天机器人流程

  1. 在 NebulaAIFlow 仪表板中,点击新建流程
  2. 选择记忆聊天机器人
  3. 记忆聊天机器人流程创建完成。

这个流程在基础提示流程中添加了一个聊天记忆组件。 该组件检索之前的消息,并将它们发送到提示组件,以填充模板中的上下文部分。

要查看模板,请点击提示组件中的模板字段。 提示告诉OpenAI 模型组件如何响应输入。


_10
你是一个乐于助人的助手,可以回答问题。
_10
_10
使用 markdown 格式化你的回答,正确嵌入图片和 URL。
_10
_10
历史记录:
_10
_10
{memory}

提示中的{memory}代码在组件中创建了一个名为memory的新输入端口。 聊天记忆组件连接到这个端口,用于存储来自调试的聊天消息。

这为OpenAI组件提供了之前聊天消息的记忆。

运行记忆聊天机器人流程

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

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

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

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

在记忆聊天机器人流程中使用会话 ID

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

在你创建的记忆聊天机器人流程中,聊天记忆组件通过会话 ID引用过去的交互。你可以通过修改会话 ID值来在不同的对话历史之间切换来演示这一点。

  1. 聊天记忆聊天输入组件的会话 ID字段中,添加一个会话 ID值,如MySessionID
  2. 现在,当你在调试发送新消息时,你应该会在消息日志面板中看到一个新的记忆创建。
  3. 注意你的对话是如何存储在不同的记忆会话中的。

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