---
title: "反思：从经历里归纳出新结论，写回记忆库"
description: "反思让 agent 从自己的经历里归纳出新结论再写回去，agent 自己造出了新信息。"
---

## 这一页为什么在这里

记忆流的第二个部件：反思。它不是压缩，而是从经历里归纳出新的结论，写回记忆库，以后也能被检索。用克劳斯“花一小时陪谁”的例子展示有无反思的差别，为 Q22 的问题铺路：一个例子说明了机制，可凭什么说它让 agent 变好了？

## 上屏

- 第 1 步：问题“如果花一小时陪一个人，选谁？”；克劳斯的三条观察：在写研究论文｜在读城市更新的书｜和图书馆员聊研究。「只有观察」的答案：Wolfgang——见得最多，却只是擦肩而过。
- 第 2 步：从三条观察引出一条反思：Klaus 专注于他的研究；箭头：写回记忆库。
- 第 3 步：「有了反思」的答案：Maria——同样投入研究。

## 讲

### 第 1 步 · 教师可说的话

只有原始观察时

只靠原始观察，克劳斯被问“花一小时陪谁”，选了见面次数最多的邻居。可他们只是擦肩而过。

### 第 2 步 · 教师可说的话

归纳并写回反思

反思是这样做的：每当最近经历的重要性累积到一个阈值，就让模型回看最近的记忆，问自己几个高层问题，再写出结论，比如“克劳斯专注于他的研究”，并标明依据是哪几条观察。这条结论本身也写回书架。

### 第 3 步 · 教师可说的话

反思怎样改变选择

有了这条反思，他选了同样在做研究的玛丽亚。注意，“专注于研究”不是任何人告诉它的，是 agent 从自己的经历里归纳出来的：它自己造出了新信息。好的反思还标出依据，这和我们写论文要引证据是一回事。

### 本页衔接

可是，凭什么说是记忆和反思让它变好的？

### 连续教师稿原文

只靠原始观察，克劳斯被问“花一小时陪谁”，选了见面次数最多的邻居。可他们只是擦肩而过。

反思是这样做的：每当最近经历的重要性累积到一个阈值，就让模型回看最近的记忆，问自己几个高层问题，再写出结论，比如“克劳斯专注于他的研究”，并标明依据是哪几条观察。这条结论本身也写回书架。

有了这条反思，他选了同样在做研究的玛丽亚。注意，“专注于研究”不是任何人告诉它的，是 agent 从自己的经历里归纳出来的：它自己造出了新信息。好的反思还标出依据，这和我们写论文要引证据是一回事。

## 完整推理

**反思是什么。** 当最近事件的重要性累计超过一个阈值（原文实现取 150，大约一天两三次），agent 就停下来反思：先根据最近的记忆问自己几个高层问题，再检索相关记忆，生成几条带依据的结论（注明它基于哪些记录），写回记忆流。反思也可以基于反思，层层往上。

**例子（§4.2）。** 只靠原始观察时，问克劳斯愿意花一小时陪谁，他选了见得最多的邻居 Wolfgang，尽管两人只是擦肩而过；有了“克劳斯专注于他的研究”这类反思以后，他选了同样投入研究的 Maria。

**反思和摘要的区别。** 摘要是把旧记录压短，信息只会减少；反思产生一条原来没有的结论（“专注于研究”），而且保留了它的依据，之后和普通记录一样可以被检索、被引用。

**风险。** 反思是推断，推断可能错；错的反思写回去以后会被反复取回。所以要保留它来自哪些观察，出了问题能追溯。

**还差一步。** 单个例子说明机制，不说明部件有效。凭什么说是反思让它变好了？这是下一页要学生设计的。

## 学生可能的回答与误区

- 第 1 步｜“选 Wolfgang 也说得通。”只看出现频率，Wolfgang 确实最“熟”；问题在于这个选择没反映出克劳斯是什么样的人。
- 第 3 步｜把反思当成摘要。它是带依据的新结论，而且也会被检索。
- 第 3 步｜“一个例子就证明反思有用。”例子展示机制，证明要靠对照（Q22–Q23）。

## 教学构造与出处

- 教学构造：三条观察的排版是课件做的；观察、反思与两次选择来自原文。
- [Generative Agents · §4.2 反思](https://arxiv.org/abs/2304.03442)：arXiv 2304.03442v2；反思的触发（重要性累计超过 150）、生成与写回，克劳斯在有无反思时选 Wolfgang 或 Maria 的例子。作者报告的单个例子。

[在课堂中打开](/slides/reflection-creates-memories)
