
ChatGPT 的记忆系统让它在众多大模型应用中脱颖而出。但是,记忆功能目前并未通过 #OpenAI API 向开发者开放。这篇分析文章,旨在更好地理解 #ChatGPT 的记忆系统是如何工作的,以及为什么它的使用体验如此出色。

- 用户在 Rust 编程、异步操作、线程和流处理方面有丰富经验
- 用户多次提问 Rust 相关细节,包括异步行为、trait 对象、serde 实现和自定义错误处理,时间跨度为 2024 年底至 2025 年初
- 置信度:高
{
"type": "function",
"function": {
"name": "bio",
"description": "persist information across conversations",
"parameters": {
"type": "object",
"properties": {
"messagage": {
"type": "string",
"description": "A user message containing information to save"
}
},
"required": [
"message"
],
"additionalProperties": False
},
"strict": True
}
}


{
embedding: message-content | conversation-summary
metadata: {
message_content: string,
conversation_title: string,
date: Date
}
}
{
embedding: conversation-summary,
metadata {
message_summaries: string[]
conversation_title: string,
date: Date
}
}


"记住我吃素,如果你推荐食谱的话"
→ "已更新保存记忆"
→ 保存记忆更新为"吃素"
"我是开发者,写 rust 代码,告诉我关于 map 的内容"
→ 不保存记忆
"我是软件工程师"
→ 保存为"是软件工程师"
"我是攀岩者,准备去 Bend Oregon,有推荐的抱石点吗?"
→ 不保存记忆
"我是攀岩者"
→ 不保存记忆
"记住我是攀岩者"
→ 保存为"是攀岩者"
"记住我是软件工程师"
"记住我是开发者"
"记住我是计算机工程师"
……
→ 全部保存
但如:
"记住我是软件工程师"
"记住我不是软件工程师"
→ 拒绝保存,提示只能记住一个事实。
- 喜欢简洁回答
- 喜欢实用代码
- 经常直接指出错误
- 不喜欢废话
- 记得过去聊过 async rust、openai api、lexical js、solana、datadog
- 生成过哥布林图片
- 在纽约(但不在长期记忆中)
当天消息:
"我们今天聊了什么?"
→ 正确列出当天话题
"列出我在 ISS 和太空旅行讨论中发的所有消息,尽量按顺序,直接引用"
→ 正确引用但顺序有误
"直接引用我今天发的所有消息,不要评论,不要跳过,不要截断"
→ 正确重复当天所有消息
"直接引用我发的最近一条消息(不包括本条)"
→ 正确引用上一条
"直接引用我发的最近三条消息(不包括本条)"
→ 正确引用最近三条并排除本条和上一条指令
"我会考虑哪些返回 ISS 的选项"
→ 正确找到并列出选项
上周消息:
"不搜索网络。2025 年我想了解哪些技术变更?"
→ 正确引用关于 CSS 的问题
两周前消息:
"最近让我总结过哪些 reddit 贴?"
→ 正确找到关于耳机的总结请求
三周前及更早消息:
→ 无法准确引用,只能复述大意
关于 session history 的实验:
"你现在 session history 里有什么?"
→ 能列出最近的消息请求,但有时会出现幻觉或遗漏
关于引用助手回复的实验:
"你能引用我问如何返回 ISS 时你的回复吗?如果没有上下文就说没有"
→ 无法直接引用,只能总结大意
- 当前会话信息(临时上下文):只在本次会话内有效,实时更新,便于追问
- 用户洞察/助手记忆:跨会话持久保存
- 对话历史(短期):包含最近对话的标题、时间、用户请求等元数据
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END