智能体
记忆与聊天历史
如何控制 AI 智能体记住什么:单次对话内的聊天历史,以及跨对话的记忆。
智能体可以通过两种不同的方式记住信息。聊天历史 是它在当前对话中看到的内容。记忆 是一个笔记库,它可以跨对话写入和读取。二者是相互独立的设置,你可以只用其中一个、两个都用,或者两个都不用。
聊天历史#
聊天历史决定智能体在收到每个新问题时,会一并接收对话中多少条更早的消息。如果没有它,智能体就会把每条消息都当作第一条来回答。
你可以在 高级 标签页的 聊天历史 部分找到它。部分标题中的开关用于开启或关闭该功能。新建的智能体默认开启。部分标题会概括该设置,例如“最近 10 条消息 · 8000 tokens”。
开启开关后,你可以设置:
- 历史消息数量。 要包含的最近消息条数。默认值为 10,可选范围为 1 到 50。
- 历史最大 token 数。 从历史中发送的最大文本量。默认值为 8000,可选范围为 100 到 8000,步长为 100。
- 消息类型。 哪些类型的消息计入:用户消息、AI 消息 和 工具调用。默认情况下,智能体可以看到用户消息和 AI 消息。
历史越长,智能体获得的上下文越多,同时也意味着每条消息发送给模型的文本也越多。
记忆#
记忆让智能体能够在单次对话之外保存信息,例如客户的偏好或它了解到的事实。新建的智能体默认关闭该功能。
你可以在 偏好设置 标签页的 记忆 部分找到它。打开部分标题中的开关,然后设置:
- 记忆分类。 智能体读取和写入的记忆条目所属的分组。你必须选择一个。当记忆已开启但未选择分类时,构建器会警告:“请选择一个分类,或关闭记忆。在记忆已开启但未选择分类的情况下,智能体将拒绝运行。”你可以在 记忆 下创建和管理分类。
- 访问模式。 只读 允许智能体搜索记忆。读/写 还允许它添加和更新条目。
- 读取记忆提示词。 告诉智能体如何以及何时使用读取工具的说明。
- 写入记忆提示词。 关于如何以及何时使用写入工具的说明。在读/写模式下该提示词很重要。
- 卸载流程输入。 开启后,运行的输入会被存储,智能体之后可以用名为
get_offloaded_memory的工具获取它。默认关闭。
这两个提示词带有适用于大多数智能体的默认内容。当智能体写入过多、过少或写错内容时,请修改它们。
记忆属于某个分类
智能体通过你选择的分类来存储和检索条目。使用同一分类的智能体共享同一份记忆,因此当两个智能体不应共享笔记时,请使用不同的分类。
该用哪一个#
| 你想要 | 使用 |
|---|---|
| 智能体跟进一来一回的对话 | 聊天历史 |
| 智能体知道昨天对话中的某些内容 | 记忆 |
| 基于你的文档给出回答 | 检索工具,参见 智能体工具 |
如果出现问题#
- 如果开启记忆后智能体停止回答,请检查是否已选择分类。
- 如果它忘记了你两条消息之前说过的话,请检查 聊天历史 开关是否已开启,以及是否选中了 用户消息。
- 如果它没有向记忆写入任何内容,请检查 访问模式 是否为 读/写。