外观
单房间 Agent:设计拆解目录
面向读者:游戏设计师、交互设计师、叙事设计师
参考对象:Generative Agents(AI 小镇)
最终目标:在一个 2D 房间中放置一个拥有“眼睛”和“手”的 Agent。它会生活、思考、行动、记忆;人类可以通过房间、对话或内心声音干涉它。
产品模式
MVP 明确定位为受控研究沙盒,不是有胜负条件的游戏,也不是可以随意改写一切的作者工具。
一个研究试次固定为:
text
从已知房间、Agent 状态、事件种子和记忆快照开始
→ 先运行一段无干预基线
→ 按试次协议开放指定干预通道与次数
→ 记录 Agent 是否感知、怎样选择、怎样执行与恢复
→ 到固定模拟时长或目标事件后结束
→ 保存结果,再恢复起始快照进行对照1
2
3
4
5
6
2
3
4
5
6
试次内的物理移动、对话和内心声音都必须预先声明允许范围与预算。无限拖动物体只存在于独立的自由探索/调试模式,其结果不能与受控试次混作研究证据。
MVP 先固定两类试次:
- 自治试次:连续
48个模拟小时不干预,验证生活与长期作品能否持续; - 干预试次:
1小时基线 +4小时干预窗口 +1小时恢复观察。默认最多移动3次协议内对象、同时只保留1个未解决口头请求、内心声音最多3次且同主题间隔至少10模拟分钟。
主要记录:发现干预所需时间、是否接受/拒绝、当前承诺是否改变、行为是否成功、多久恢复原任务,以及干预是否留下认识、关系或物品状态影响。系统暂停、保存和故障恢复不计作实验干预。
一句话理解整个系统
Agent 不是每一帧都向大模型问“我该做什么”。
它更像一个不断循环的生命系统:
text
看见房间发生了什么
→ 判断这件事对自己意味着什么
→ 结合身份、当前状态、目标和记忆做选择
→ 把选择拆成可以执行的行为
→ 行为改变房间和自身状态
→ 新结果再次被观察1
2
3
4
5
6
2
3
4
5
6
较长阶段结束时,它还会回顾经历、调整对自己和世界的理解,并安排下一阶段生活。
为什么重新拆成四部分
原来的拆解偏向源码和实现模块,容易把“Agent 为什么这样行动”淹没在技术细节中。
这次只保留四个设计问题:
- Agent 是由哪些信息组成的?
- 这些信息在不同时间尺度上怎样循环?
- Agent 可以做什么,行为怎样从粗变细?
- 大模型在什么时刻参考什么,又输出什么?
四部分之间的关系是:
text
参数提供决策依据
→ 循环决定何时思考
→ 行为定义可选动作
→ 大模型处理需要理解和权衡的部分
→ 行为结果反过来改变参数1
2
3
4
5
2
3
4
5
目录
01. Agent 的参数与状态
回答三个问题:
- Agent 出生时已经具有什么;
- Agent 在生活中会发生哪些内部变化;
- Agent 此刻能够观察到什么。
主要内容:
- 初始参数:身份、性格、生活实践、长期承诺、情境规则、能力与已知世界;
- 动态参数:少量有范围和阈值的身体/情绪状态、当前承诺和技能信心;
- 观察参数:可见对象、人物、事件、声音、时间与可执行机会;
- 世界事实、Agent 的认识、Agent 的记忆三者为什么必须分开;
- 关系为什么要按领域记录,物品与区域为什么具有历史和意义;
- 参数怎样形成有界反馈,房间怎样持续产生新变化。
02. Tick、认知轮与每日循环
回答“Agent 什么时候做什么判断”。
主要内容:
- Tick:按固定模拟时间更新身体、感知和唯一执行中的动作;
- 认知轮:从七种固定来源生成候选,遇到选择点时决定继续还是改变;
- 慢整合循环:回顾、整理证据、调整长期方向、安排下一阶段;
- 紧急事件怎样打断普通计划;
- 异步大模型怎样避免旧答案、并发覆盖和无限等待;
- 资源不可达、模型失效和系统故障时怎样降级;
- 行动结果怎样形成正反馈和负反馈;
- 为什么大模型不能进入每个 Tick。
03. 行为与不同颗粒度
回答“Agent 能做什么,以及一个想法如何变成身体动作”。
主要内容:
- 长期方向、阶段意图、任务、身体技能四个颗粒度;
- 自我照顾、观察探索、物体操作、社交、工作娱乐、休息恢复等行为族;
- “拿起杯子”为什么不能直接等于杯子已经被拿起;
- 意图、任务和技能的生命周期、唯一终态和失败预算;
- 每个行为应具有的主观前置条件、物理结果、代价、中断与失败反馈;
- 长期作品、资源、维护和环境事件如何避免无聊稳态;
- 继续当前行为、等待和放弃同样是合法行为。
04. 大模型与短长期决策
回答“大模型凭什么做决定,它的决定到哪里为止”。
主要内容:
- 决策来源:身份、动态状态、观察、目标、记忆、可选行为和人类干预;
- 短期决策:是否打断、下一步意图、临时计划与对话;
- 长期决策:生活方向、阶段目标、每日安排、反思与自我理解;
- 候选先由系统产生,大模型只选择、组合或解释;
- 大模型输出的是带编号和有效期的建议,不是物理世界真值;
- 决策结果怎样被检查、执行、观察并反馈给下一轮;
- 人类请求为什么始终允许拒绝、协商、延后和结束;
- 如何避免性格漂移、反复改目标和“每次都想得很合理却活不起来”。
采用的设计边界
后续细拆以以下边界为准:
- 先研究行为与认知,不先研究计算机视觉。 “眼睛”首先是有方向、距离、遮挡和注意限制的结构化感知。
- 身体动作由稳定规则执行。 大模型可以提出“拿杯子”,但手是否够得到、是否抓住,由房间与身体系统决定。
- Agent 需要少量可变化的内部状态。 只有身份和记忆而没有需要、情绪与身体状态,单 Agent 很难持续地产生自然行为。
- 目标必须有持续性。 新事件可以改变目标,但不能让 Agent 每轮都重新发明自己。
- 快循环与慢思考分离。 身体持续运行;只有遇到选择点时才调用大模型。
- 候选只依据 Agent 的认识。 世界真值只在执行时验证,失败后才通过可感知证据修正认识。
- 人类干预有来源、边界和拒绝权。 房间变化、他人说话、内心声音和系统命令不能混成同一种记忆。
- 关系、物与场所不是中性数值。 承诺、边界、物品历史、隐私和生活实践以稀疏情境记录表达。
- 房间具有持续变化。 资源、维护、长期作品和低频事件使单 Agent 不会迅速收敛成吃睡循环。
- 所有循环最终都要闭合。 每个决定必须落到行为,每个行为必须产生可观察结果,结果必须能够改变后续决定。
最小运行闭环
文档中的所有设计最终收敛到这条主链:
text
Agent 依据认识从固定来源产生候选
→ 稳定系统计算基础吸引力
→ 大模型只处理剩余的语义冲突
→ 主循环一次性提交一个意图/任务/技能
→ 世界按真值返回进度、成功或失败
→ 结果更新状态、认识、承诺、关系与证据记忆
→ 新状态进入下一轮1
2
3
4
5
6
7
2
3
4
5
6
7
任何不能进入这条主链的参数、反思或人类输入,都不属于首期核心设计。
与 AI 小镇的关系
AI 小镇最值得继承的是:
- 身份、经历和记忆共同影响行为;
- 计划由粗到细,接近执行时再展开;
- 新事件可以打断计划;
- 重要经历会被反思,反思再影响未来;
- 大模型负责理解自然语言含义,普通程序负责时间、地图和执行。
单房间项目需要补上的部分是:
- 身体需要与情绪;
- 真正的视线、手和动作失败;
- 明确的目标持续、完成和放弃;
- 候选生成、目标/任务/技能生命周期;
- 人类多种干预方式的权力差异与拒绝机制;
- 关系、物品、区域和生活实践的情境意义;
- 单房间的资源、维护、创作和低频事件循环;
- 防止循环失控的上限、恢复和遗忘机制。
后续如何继续细拆
暂不再按源码模块扩张目录。下一阶段只沿四份主文档逐层深入:
- 先确认参数是否足以驱动行为;
- 再确认 Tick、认知轮、每日循环能够闭合;
- 再确认每种高层意图都有可以完成或失败的行为链;
- 最后确定哪些选择真的需要大模型。
如果未来仍需增加文档,只允许从这四块中拆出明确的设计专题,例如“需求与情绪”“手部技能”“人类干预”,而不重新按代码文件组织。