文章目录
-
[1 Introduction](#1 Introduction)
-
[2 Related Works](#2 Related Works)
-
- [2.1 Human-AI Interaction](#2.1 Human-AI Interaction)
- [2.2 Belivable Proxies for Human Behavior](#2.2 Belivable Proxies for Human Behavior)
- [2.3 Large Language Model and Human Behavior](#2.3 Large Language Model and Human Behavior)
-
[3 Generative agent behavior and interaction(行为与交互)](#3 Generative agent behavior and interaction(行为与交互))
-
- [3.1 Agent Avatar and Communication](#3.1 Agent Avatar and Communication)
- [3.2 Environment Interaction](#3.2 Environment Interaction)
- [3.3 Example "Day in the life"](#3.3 Example “Day in the life")
- [3.4 Emergent social behavior(突发社交行为)](#3.4 Emergent social behavior(突发社交行为))
-
[4 Generative agent achitecture(结构模型)](#4 Generative agent achitecture(结构模型))
-
- [4.1 Memory and Retrival(第一记忆模型------低级印象)](#4.1 Memory and Retrival(第一记忆模型——低级印象))
- [4.2 Reflection(第二记忆模型------高级推理)](#4.2 Reflection(第二记忆模型——高级推理))
- [4.3 Planning and Reacting(计划与执行)](#4.3 Planning and Reacting(计划与执行))
-
[5 Sandbox environment implementation](#5 Sandbox environment implementation)
-
- [5.1 From structured world environment to natural language , and back again](#5.1 From structured world environment to natural language , and back again)
-
[6 Controlled evaluation](#6 Controlled evaluation)
-
- [6.1 Evaluation Procedure](#6.1 Evaluation Procedure)
- [6.2 Conditions](#6.2 Conditions)
- [6.3 Human Evaluators](#6.3 Human Evaluators)
- [6.4 Analysis](#6.4 Analysis)
- [6.5 Results](#6.5 Results)
-
[7 End-To-End evaluation](#7 End-To-End evaluation)
-
- [7.1 Emergent social behavior](#7.1 Emergent social behavior)
- [7.2 Boundaries and Errors](#7.2 Boundaries and Errors)
-
[8 Discussion](#8 Discussion)
-
- [8.1 Applications of Generative agent](#8.1 Applications of Generative agent)
- [8.2 Future Works and Limitations](#8.2 Future Works and Limitations)
- [8.3 Ethics and Society Impact](#8.3 Ethics and Society Impact)
-
[9 Conclusion](#9 Conclusion)
1 Introduction
- Importance: 基于计算的智能体是人类行为模型的可信代理
如果agent的行为能够代表人类行为
- 有助于构建虚拟空间和社区
- 极端情景模拟
- 社会科学理论验证
- 等等
- Problem Area:人类行为模型非常复杂
- 虽然LMM能够在一定程度上理解并模拟人类行为,但是无法提供长时支持
- Research Gap:一个支持记忆能力的,具备在较长时间跨度上
*- 根据事件、交互等进行学习(retrieve)
-
- 根据memory进行推理与反应(reflect)
-
- 提出合理的计划并实行(plan and reaction)
- This Paper:提出了一种生成式代理(generative agent)
- 基于生成模型
- 模拟人类行为(既包括个人行为,也包括社交能力)
- agent society:new relationship, information diffuses, coordination
- 提出了一种agent框架
- 基于LLM
- 三个组件
- memory stream:用自然语言描述的agent经历
- reflection:用于将memory合成为高级认知
- planning:结合认知与周围环境,生成行为方案
后者反哺memory
- Outcome:一个包含25个generative agent的小型社区
- Evaluation:
*- controlled evaluation:测试agent是否能够生成并执行believable individual behaviors
-
- end-2-end evaluation:进行了为期两天(模拟时间)的测试,以观察agents之间的社交行为
- 实验方法:
*- interviewing:与agent直接进行对话,判断其是否清晰其角色定位,其记忆能力、计划、反应等
-
- ablation:消融实验,测试各个组件对agent的影响------结果显示三个核心组件对agent功能完备性皆具有重要影响
- 在运行过程中最常出错的地方:
- 记忆检索失败
- 记忆篡改失败
- 受LLM模型影响导致其感知推理出现偏差
- 核心贡献
*- generative agent
-
- 一种基于LLM的agent构建框架
-
- 完备的测试与实验
-
- 进一步的讨论------就agent在交互环境中可能出现的伦理与社会问题
- 基于生成模型
2 Related Works
2.1 Human-AI Interaction
- 旨在将人类智慧以及能力赋予可交互人工智能以使其具备与人类交互的能力(甚至帮助人类更好的完成任务)
2.2 Belivable Proxies for Human Behavior
- 也被描述为
believability
,believable agent
等 - 核心是构建人类行为的可描述模型
2.3 Large Language Model and Human Behavior
- LLM本身是超大规模人工智能模型,对人工智能模型的讨论不在本文范畴中,但考虑到其本身基于大量人类知识构建,对于人类行为的理解具有其独到优势
3 Generative agent behavior and interaction(行为与交互)
3.1 Agent Avatar and Communication
- 用自然语言对每个agent进行描述(角色卡 )
- 这段描述会在初始阶段被载入到对应角色的memory中
可以看到这段描述中不仅包含了对该角色的身份、性格进行了描述,同时也对其社交网络进行了详细的描述
- Inter-agent communication
- 基于自然语言进行
- action导向
- agent能够感知到其所处环境周围的人
- User controll
- 基于自然语言进行
- 两种方式:
- 交互:直接与agent进行对话
- inner voice:更像是指令,例如
you are going to sleep
3.2 Environment Interaction
- 模拟环境包含有一个小村镇的常见基本要素
- agent可以与环境进行交互并移动(vedio game)
- 用户以及agent均能够改变环境状态,例如
厕所正在被占用
(沙盒游戏)
3.3 Example "Day in the life"
3.4 Emergent social behavior(突发社交行为)
- 该程序中的新增社交都是突发的而并非是预先编码的
- 信息传播(information disffusion):通过对话传播
- 关系记忆(relationship memory)agent能够记住与他人的相遇并形成新的关系
- 合作(coordination):agent之间能够进行合作
4 Generative agent achitecture(结构模型)
- 最大挑战是:如何有机地组合LLM以及agent的记忆(量大)
- memory stream
- 基于Chatgpt3.5 turbo
4.1 Memory and Retrival(第一记忆模型------低级印象)
- 核心问题:
- 大量的experience难以fit到一个prompt中
-
- 大量的文本可能分散model的注意力
-
- context window不够长
GPT4.0 turbo支持128000 tokens长度
- 解决方法:
- memory stream本身包含对agent经历的完整记录
- 由一系列的memory objects构成
-
- 一段自然语言描述
-
- Creation timestamp
-
- Most recent access timestamp
observation
: 描述由agent直接接收到的信息,包括agent自身的行为信息,周围agent的行为信息,非agent单位信息等
- Retrival function
- 输入:agent的当前信息
- 输出:提炼后的信息(原文:
subset of memory stream
)------用于输入到LLM中 - 如何提炼信息:有多种基于不同标准的提炼方法,论文提出了基于三种属性的提炼方法
*- Recency:为最近发生的事情提供更高的权重------指数衰减(exponential decay, factor:0.995)
-
- Importance:为agent认为更重要的事情提供更高的权重(原文:
distinguishes mundane from core memories
)
- 采用的方案是:直接询问LLM
- Importance:为agent认为更重要的事情提供更高的权重(原文:
-
- Relevance:为与当前情况相关度更高的记忆提供更高的权重
- 如何定义/计算相关度
- 基于LLM为每个memory object进行编码(embedding vector)
- 相似度由编码之间的余弦相似性计算得到
-
最终方案:基于min-max scaling将上述三值归一化到[0. 1],然后累加三值
- memory stream本身包含对agent经历的完整记录
4.2 Reflection(第二记忆模型------高级推理)
- 核心问题:在仅有memory stream的情况下,agent难以做到高水平的reflection
- 解决方案:
-
第二种记忆模型:reflection
- 由agent生成的更高级、更抽象的思想(thoughts)
-
周期性生成:在过去一段时间内的observation总retrival值超过150时
-
- what to reflct on
- 基于LLM
- 输入memory stream中最近的100条记录
- 输出"基于上述输入,我们能回答的三个最突出的的高级问题是什么?"
Given only the information above, what are 3 most salient highlevel questions we can answer about the subjects in the statements?
-
- gather relavent memory:针对上述三个问题,分别收集相关的memory objects
-
- extract insights:基于关联memory集合,输出insights
-
4.3 Planning and Reacting(计划与执行)
- 核心问题:
- 虽然LLM能够在特定情境下做出符合人类逻辑的决策(行为),但是agent需要在更长时间跨度上保证系列行为的连贯性以及合理性
- 当下时刻的行为合理性与长时行为合理性存在一定程度上的冲突(原文:
Optimizing for believability in the moment sacrifices believability over time
)
- 解决方案
-
一个计划(plan)需要包含一系列的行为同时也需要保证行为的连续性(consistency)
-
plan三要素:地点、开始时间、持续时间(结束时间)
-
plan也保存在memory stream中------也会参与到retrival过程中
- 这使得agent能够综合考虑observation、reflection以及plan的内容来决定行为------可能改变其plan
-
多层plan方案
*- 构建当天的大致议程
-
输入:个人描述、recent experience、summary of previous day
-
输出:一个包含5-10点内容的大致安排(保存在memory stream中)
-
- 细化议程:对第一层输出的每一个议程进行细化安排
- 2.1 hour-long chunks
- 2.2 5-15 minute chunks
粒度是可调整的
-
- Reacting and updating plans(计划调整)
- 从编码的角度上来看,action是一个满足特定时间长度的loop
- 在每一个step中,agent都会对外界进行感受(observation)------保存在memory stream中
是否合理
- 基于这些observations,LLM将决定是继续当前行动还是进行反应(react)
- 其中context summary由两个queries生成:
*- 观察者与被观察者之间的关系
-
- 被观察者当前的状态信息
- 如果观察者认为需要进行反应,则:
*- 调整agent的plan
-
- 如果该调整行为导致了进一步的交互(agents之间),则进一步生成对话(dialogue)
- 其中context summary由两个queries生成:
- Dialogue(对话生成)
- 根据对交流对象的记忆调整对话的内容
- 对于发起者而言:(以及决定发起对话------react)
- 对被发起者而言:该对话是event的一部分------会被观测到
如果被发起者决定react
5 Sandbox environment implementation
- 基于Phaser web game development framework[https://phaser.io/phaser3\]进行开发
- agents以JSON单元进行表示
- 该环境同时需要为agent提供环境信息
5.1 From structured world environment to natural language , and back again
- agent的推理行为需要被限制在虚拟世界中
- 用树结构存储环境单元,字节点表示包含关系
- 环境包含一个完整的tree结构
- 每个agent会建立自己的环境tree------是整体环境tree的子集
agent并不是无所不知的,其构建的环境tree可能是过时的
- 对于agent的一个action,其需要定位到合适的位置
- 输入:被flatten的环境信息
- 输出:
The Lin family's house
- 反复上述过程,直到定位到精确位置
- 输入:被flatten的环境信息
- 物体状态的变更同样基于LLM(
是否有必要
)
6 Controlled evaluation
- 验证在特定场景环境下,agent是否能够产生合理的行为、agents group是否能够进行信息传播、agents之间是否能够构建新的关联、agents之间是否能够合作并与环境保持同步等
6.1 Evaluation Procedure
- 测试方法:interviewing------包含五个方面
- self-knowledge: 对自己的任职
- memory:对记忆的检索能力
- plan:对所定计划的理解能力
- reacting:对事件的反应能力
- reflecting:综合理解能力
- 测试依据:belivability
- 人工判断
6.2 Conditions
- 消融组
- 组合memory stream中的三个组件:observation, reflection, planning
- human crowdworker-authored behavior:用于验证agent的行为是否达到了基本水平
- 人工组:每个雇员需要查看agent的记忆内容,并以agent的身份回答interview问题
6.3 Human Evaluators
- 100位雇员
6.4 Analysis
- 基于TureSkill对各测试组进行rank排序
- mean rating value
- standard deviation
- ...
6.5 Results
- 结论:完备系统(包含完整的memory stream)效果最佳,但同时也有一些问题
7 End-To-End evaluation
- 进行了长度为2天的模拟测试,验证并观察agents行为的合理性
7.1 Emergent social behavior
- 包含三个方面:information diffusion, relationship formation, agent coordination
7.2 Boundaries and Errors
- 大量的经理以及记忆带来的挑战
*- 更难整理出有用信息
-
- 抉择更加困难(例如:午餐地点选择)
- 一些难以用自然语言表述的"规则"导致agent做出错误的决策
- 例如:在没有明确标识浴室只能有一个人使用的情况下,agent可能会进入已被占用的浴室(
但这些内容本质上更像是常识
) 这一点或许可以通过精细化的规则描述加以规避,但这将大大增加背景信息
- 例如:在没有明确标识浴室只能有一个人使用的情况下,agent可能会进入已被占用的浴室(
- agent受显性instruction的影响过于明显
- 对话过于正式规范
- 不会拒绝请求
- 易受其他agent影响等
8 Discussion
8.1 Applications of Generative agent
- 只要是与人类行为模型相关的应用都能够从generative agent研究中收益
- 以人类为中心的应用
8.2 Future Works and Limitations
- 未来的工作:
*- 基于该generative agent框架的应用
-
- 更加合理的retrival模型
-
- 运行效率更高的执行方案
-
- 专精LLM构建
- limitations
*- 行为believability baseline构建
-
- 没有就各项参数以及使用的方法模型作更进一步的分析
-
- 鲁棒性测试缺失
总体来说,底层LLM的缺陷都将被构建于其上的agent继承
8.3 Ethics and Society Impact
- 略
9 Conclusion
- 略