Candy AI 向量数据库记忆系统工作原理
传统 LLM 的记忆问题
大多数 AI 聊天产品面临一个核心矛盾:LLM 本身没有持久记忆——每轮对话都是"重新开始"的。为了让 AI "记得"之前聊过什么,必须在每次请求时把对话历史一起喂进去。
但对话历史有上限(常见 4K、8K、32K token 窗口)。聊了几百轮之后,最早的对话会被截断,AI 就"忘了"。
Candy AI 的解决方案:向量数据库
Candy AI 引入了向量数据库来解决记忆问题。原理如下:
传统方式 vs 向量数据库
| 方式 | 工作原理 | 问题 |
|---|---|---|
| 传统上下文窗口 | 把最近 N 条对话原文一起送入 LLM | 超过窗口上限就截断、早期内容丢失 |
| 向量数据库 | 把每轮对话提取成"记忆向量"存储,需要时检索最相关的 | 不丢早期内容、检索更精准 |
向量数据库的工作流程
- 你和 AI 的每轮对话结束后,系统把这一轮的关键信息提取出来(比如"用户提到喜欢喝美式")
- 这些信息被转换成一组"向量"(数学上的多维坐标)存入数据库
- 下次你再发消息时,系统先把你的当前消息也转换成向量
- 在数据库里检索和当前消息向量最相近的历史记忆向量
- 把检索出的相关记忆送入 LLM,作为当前对话的补充上下文
简单说:AI 不是把所有旧对话都读一遍,而是只挑和你现在说的话最相关的旧记忆来参考。这样即使你聊了几个月,AI 也能记住你之前提到过的细节。
向量数据库能记住什么
根据官方说明和用户反馈,向量数据库能记住的典型内容:
- 你告诉它的名字、称呼偏好
- 你提到过的喜好(喜欢的咖啡、电影、音乐)
- 重要的日期(纪念日、生日)
- 内部梗(只有你们两个懂的笑点)
- 你之前设定的角色背景故事
什么可能记不住
- 非常细碎、没有特殊意义的闲聊片段
- 太长的精确数字或代码
- 太久远且和近期话题完全无关的内容(可能被新记忆"覆盖")
记忆的实际效果
第三方测试显示,Candy AI 的记忆效果在同类产品中属于中上水平:
- 聊了 2~3 周后,AI 能准确回忆起你早期提到的喜好和细节
- 记忆检索的相关性较高——提到咖啡时不会想起之前聊过的电影
- 但不如 Replika 的记忆深度(Replika 的记忆系统是它的核心卖点,持续追踪用户的长期变化)
下一页:短期与长期记忆档位