跳到主要内容

记忆

记忆功能为每个机器人提供跨会话持久的长期记忆。机器人可以在对话之间记住事实、偏好和上下文,无需您重复。

工作原理

每个机器人都有自己的隔离记忆存储,由 IndexedDB 支持。记忆条目是在浏览器中跨页面重新加载和会话持久化的键值对。

当机器人有记忆条目时,它们会在发送每条消息之前自动注入到系统提示词中。模型将存储的上下文作为其指令的一部分接收,使其能够访问记住的信息而无需消耗可见的聊天历史。

注入的格式在内部如下:

<memory>
- user_name: Alice
- preferred_language: Python
- project: Building a REST API with FastAPI
</memory>

添加记忆

/remember 命令

直接在聊天中输入记忆命令:

告诉机器人: bcz_remember("user_name", "Alice")

当模型在其响应中包含 bcz_remember("key", "value") 时,平台会自动解析并存储记忆条目。这允许模型根据您的对话决定什么值得记住。

设置中的记忆面板

您也可以手动管理记忆:

  1. 打开设置
  2. 导航到当前机器人的记忆部分
  3. 添加、编辑或删除单个记忆条目

查看记忆

当前机器人的所有记忆条目在设置中可见。每个条目显示:

  • —— 标识符(例如 "user_name"、"project_context")
  • —— 存储的信息
  • 时间戳 —— 条目最后更新的时间

编辑和删除记忆

从设置中的记忆面板:

  • 通过更改键或值来编辑任何记忆条目
  • 使用删除按钮删除单个条目
  • 为当前机器人清除所有记忆
注意

删除记忆是永久的。无法撤销。如果您清除所有记忆,机器人将从头开始,没有任何记忆上下文。

记忆格式

记忆存储为键值对:

示例用途
user_nameAlice个性化响应
preferred_languagePython代码生成偏好
timezoneUS/Pacific时区感知响应
projectFastAPI REST API正在进行的项目上下文
coding_stylePEP 8, type hints, docstrings代码风格偏好

键应该具有描述性和简洁性。值可以是任何文本。

用例

  • 个人偏好 —— 姓名、时区、编程语言、沟通风格
  • 项目上下文 —— 当前项目详情、技术栈、需求
  • 重复指令 —— "总是用注释格式化代码"、"偏好简洁的答案"
  • 领域知识 —— 存储机器人应该始终了解的关于您环境的事实
  • 对话摘要 —— 让机器人维护过去讨论的持续摘要
提示

从几个关键记忆开始(您的姓名、首选语言、项目名称),让它们自然增长。随着机器人积累关于您偏好和工作流程的上下文,它会变得更有用。

每机器人隔离

记忆是每机器人的 —— 每个机器人都有自己独立的记忆存储。记忆不会在机器人之间泄露。这意味着:

  • 您的编码助手记住您的技术栈
  • 您的写作助手记住您的写作风格
  • 两者都看不到对方的记忆

存储详情

属性详情
后端IndexedDB(存储为 ais-memory-{botId}
持久性存活页面重新加载、浏览器重启、会话切换
范围本地于您的浏览器 —— 永远不发送到任何服务器
导出包含在"导出所有数据"备份中
分享的 URL记忆不包含在分享的机器人 URL 中

工具调用集成

支持工具调用的模型可以通过结构化工具调用管理自己的记忆。当模型在其响应中输出 bcz_remember() 调用时,平台自动:

  1. 解析函数调用
  2. 提取键和值
  3. 在 IndexedDB 中存储(或更新)记忆条目

这允许模型自主决定什么信息重要到值得为未来的对话记住。

信息

记忆注入会增加系统提示词长度,这会计入模型的上下文窗口。如果您有很多记忆条目,它们会消耗本可用于对话历史的 token。