记忆
Agent 记忆是指:Agent 保存过去的信息,并在后续对话或任务中重新使用这些信息的能力,模型本身通常不会自动记住上一次 API 请求。Agent 的记忆实际上由程序完成。
一、经典三层记忆
1.1 工作记忆
保存当前任务正在使用的信息:
-
最近几轮对话信息
-
当前任务目标
-
工具执行结果
-
临时参数
例如:
plaintext
messages = [
{
"role": "user",
"content": "创建明天下午3点的会议",
},
{
"role": "assistant",
"content": "会议持续多久?",
},
{
"role": "user",
"content": "一个小时",
},
]
1.2 情景记忆
保存过去发生的具体事件:
plaintext
{
"event": "创建日历事件",
"created_at": "2026-08-04 15:20",
"title": "项目会议",
"start_time": "2026-08-05 15:00",
"result": "成功"
}
它可以回答:
-
我上次创建的日程是什么?
-
上次创建日程成果了吗
-
昨天调用了哪些工具
特点:
-
记录具体事件和时间
-
类似 Agent 的操作历史
-
通常保存在数据库、日止或向量数据库
1.3 语义记忆
保存稳定的知识、事实和偏好:
plaintext
{
"user_name": "小明",
"preferred_language": "中文",
"default_meeting_duration": 60,
"default_alert_minutes": 10
}
它可以帮助 Agent 自动应用用户习惯
2.2 Agent 记忆的工作流程
plaintext
用户输入
↓
读取工作记忆
↓
检索相关情景记忆
↓
读取用户语义记忆
↓
将相关信息发送给模型
↓
模型回答或调用工具
↓
保存本次事件
↓
更新长期知识或用户偏好