🧠 图解记忆:模型没有上次,记忆是应用每次重新提供的上下文;点击图片可查看原图。
模型推理本身不会凭空记住上一轮;当前输出只能依赖本次实际提供或由平台关联进来的上下文。
核心认知
基础模型推理 ≈ f(本次上下文、采样参数、运行环境) → 输出
你上次说了什么? → 模型不知道(它没有"上次")
"记忆"的本质 → 应用或平台保存状态,并在下一次推理时重新提供相关上下文为什么常说无状态? 模型参数不会因为一次普通请求自动更新。即使某些 API 提供 Conversation、Thread 或会话 ID,状态也是平台编排层保存并在后续调用中关联,不是模型获得了永久记忆。
对工程的影响(面试重点)
| 需求 | 谁负责 | 怎么做 |
|---|---|---|
| 多轮记忆 | 应用层或平台会话层 | 传递历史消息,或使用平台提供的会话状态对象 |
| 记忆裁剪 | 应用层 | 超出上下文就截断/摘要/检索(见 Q16) |
| 用户隔离 | 应用层 | 会话、租户、权限和存储键必须显式隔离,不能假设天然不会串号 |
| 持久化 | 应用层 | 会话结束存数据库,下次重建 messages |
无状态带来的"福利"(回答加分)
- 便于水平扩展:计算节点可以保持无状态,会话状态放到数据库或平台会话层
- 状态可治理:历史、摘要和长期记忆可以独立做权限、保留期限和删除
- 但不天然幂等:采样、并行计算和工具副作用都可能导致重试结果不同;涉及写操作时必须使用幂等键、去重和事务保护
面试话术:
"模型不会自动记住上一轮。多轮体验来自应用或平台保存历史,并在下一次推理时重新提供相关上下文。计算层可以无状态扩展,但会话隔离、持久化、重试幂等和工具副作用仍必须由系统显式治理。"
