目录
0 完整章节内容
本文为李宏毅学习笔记——2024春《GENERATIVE AI》篇——“拓展内容(第5讲)”章节的拓展部分笔记,完整内容参见:
李宏毅学习笔记——2024春《GENERATIVE AI》篇
1 资源链接
李宏毅老师视频讲解链接:【生成式AI】讓 AI 村民組成虛擬村莊會發生甚麼事? - YouTube
论文链接:[2304.03442] Generative Agents: Interactive Simulacra of Human Behavior
Github项目链接:generative_agents——Github
Demo链接:Reverie
2 由ChatGPT控制的NPC
这篇论文来自斯坦福大学和谷歌的研究团队,他们在一个虚拟村庄中模拟了由25位由ChatGPT控制的“AI村民”的两天日常生活。这些AI村民有各自的人设(如职业、目标、个性等),并通过ChatGPT生成的逻辑行为与其他村民互动。


2.1 研究方法
- 设定虚拟村庄: 这个村庄内的所有角色(称为Agent或NPC)均由ChatGPT操控。
- 角色设定: 每个AI村民都有明确的人设。例如,某村民Isabella经营着一家咖啡店,并计划在情人节当天举办派对。
- 互动与日常生活: 村民在村庄中进行社交互动,同时完成日常活动,如刷牙洗脸、上学、开店等。
2.2 研究目标
探索AI角色之间是否能够基于各自的目标和性格,实现类似人类的自发行为和互动。
研究AI角色的长期行为发展可能性。
2.3 实验结果
- 有限时间的模拟: 实验仅运行了两天,AI村民的互动内容被记录下来并展示为预录影像。
- 互动和活动: 村民们在两天内展示了基于人设的逻辑行为。例如,村民之间的对话体现了角色目标和情感需求,Isabella组织情人节派对的计划得以推进。
- 行为复杂性: 在短时间内,AI角色展现了一定的行为复杂性和拟人化的互动,但实验时间较短,无法观察到更长期的社会行为演变。
3 脱稿玩家(Free Guy)
3.1 背景设定
虚拟世界: 在《脱稿玩家》中,角色生活在一个开放世界的电子游戏中,类似于GTA5的设定。AI村民实验同样构建了一个虚拟村庄,模拟了NPC的日常生活和互动。
角色特点: 《脱稿玩家》的NPC角色Guy原本受固定程序控制,而AI村民的行为则由ChatGPT生成,具有一定的随机性和自主性。
3.2 角色觉醒与情感
Guy的觉醒: 在电影中,Guy通过与玩家角色(女主)互动逐渐觉醒,意识到自己是一个NPC,并开始追求自由意志。
AI村民: 尽管实验中的AI角色尚未具备完全的觉醒能力,但通过语言模型的推动,他们能够模拟复杂的情感和目标,展现拟人的行为。
3.3 社会关系发展
电影: Guy的觉醒引发了一系列情节,包括与其他角色的互动及对虚拟世界命运的影响。
实验: AI村民之间的互动也在一定程度上展现了社会关系的初步构建,例如合作完成活动或进行日常交流。
4 AI自己规划一天
4.1 要产生什么样的行为说明是由ChatGPT来操控
好那这一些AI所操控的Agent。那些NPC他们要做什么事情呢?他们怎么操控自己跟环境互动呢?他们真正做的事情是他们背后都是一个ChatGPT,那这个ChatGPT呢会根据当下的状况,产生一个行为的说明。
比如说伊莎贝拉要去睡觉了,然后接下来这个行为的说明,会透过另外一个转译器,翻译成环境能够看得懂的指令,然后伊莎贝拉就会去睡觉了。
那我猜从行为说明转译成环境看得懂的指令,这一段应该还是Rule Based写的,应该还是规则写的啦!
但是这一个Agent这一个NPC,要产生什么样的行为说明是由ChatGPT来操控
那接下来就是要讲说怎么操控ChatGPT来做出非常复杂的行为
4.2 怎么操控ChatGPT来做出非常复杂的行为
那我觉得这篇Paper不仅仅是有趣而已,其实它里面用的很多技术,我觉得都是蛮有参考价值的,未来如果你要让ChatGPT做非常复杂的事情,尤其是需要ChatGPT跟其他的Agent做互动,也许今天这篇Paper里面用的技术,都是可以参考的。所以我们来看看,它是怎么样让ChatGPT来操控一个Agent的,这个是它Paper里面的流程图啦.
那我们就不用这个流程图来讲。我直接告诉你说,这些Agent是怎么被操控的
好 怎么被操控的呢?
4.3 AI角色的行为规划
- 规划的重要性: 如果没有规划,AI会陷入逻辑混乱,如重复进餐等不合理行为。
- 逐步细化规划:
- 初步计划: AI根据设定的角色背景生成大致的一天规划,例如几点起床、上课、吃饭等。
- 按小时计划: 对粗略规划进一步细化,比如几点开始创作音乐,几点吃零食等。
- 按分钟计划: 将小时计划细分为更精确的任务,例如某个时间点取零食、打扫房间等。
- 按规划执行: AI角色会严格按照制定的时间表完成每天的活动,呈现出有条理的生活状态。
观察上图,可以看到Agent确实在以ChatGPT规划好的路线度过一天。
但是如果一直按部就班的话,也太无聊了吧,因此我们要引入一些外部刺激。
4.4 外部刺激的引入
1)外界刺激的重要性:
- 如果AI仅依赖预先规划,会变得过于机械化、毫无变化。
- 外部刺激使AI能够动态调整行为,增加灵活性和互动性。
2)刺激的形式:
- AI接收周围环境的状态更新,例如家具的状态(桌子、床等是否有变化)。
- 多数状态更新是琐碎且无意义的,但必要时提供有价值的信息触发新的行为。
3)动态响应: AI根据外界刺激调整计划,就像《脱稿玩家》中的角色因特殊事件改变日常生活轨迹。
5 Reflect:对记忆的诠释
5.1 为何需要Reflect
- 处理琐碎信息:
AI观察到的环境状态大多是无关紧要的琐碎事件(如桌子没变化、冰箱没变化),难以直接用于决策。 - Reflect的作用:
对这些琐碎观察进行摘要,提取重要事件并生成更高层次的洞察。
5.2 Reflect的步骤
(1) 何时进行Reflect
- 触发条件:当积累了足够多的重要事件时,AI会执行Reflect。
- 事件的重要性评估:
- 使用ChatGPT打分(1-10分),为每个事件赋予重要性评级。
- 例如:
- 刷牙、折棉被是低分事件(1分)。
- 分手、被大学录取是高分事件(10分)。
(2) 反思内容生成
- 提出三个问题:
- AI根据重要事件提出需要解答的问题。
- 例子:经常看到克劳斯和玛丽亚在一起,他们是否在交往?
(3) 检索记忆
- 筛选相关记忆:按照以下标准从记忆中提取相关信息:
- 关联性:事件与问题之间的语义相似度,通过句子嵌入(sentence embedding)计算。
- 即时性:近期发生的事件优先。
- 重要性:事件的评分高低。
(4) 生成高层次洞察
- 综合记忆,提取洞察:
- AI根据检索到的记忆生成5个高层次的见解(high-level insights)。
- 并标注每个洞察来源于哪些记忆条目。
- 更新记忆:将这些新的洞察作为新的记忆存储起来。
5.3 Agent的内部记忆组成
- 观察(Observation):Agent从环境中获取的信息,例如看到桌子、与其他角色的互动等。
- 计划(Plan):每天早上生成的初步行动计划,也是记忆的一部分。
- 反思(Reflection):基于观察和计划的深层分析,可进一步影响计划。反思可来源于:
- 观察到的信息。
- 计划内容。
- 之前的反思结果。
动态特性:反思可以是层层递进的,例如从一次反思中衍生出新的反思,逐渐形成复杂的推论。
5.4 Agent的反思机制(Reflection)
(1) Reflection的结果
- 在实验中,Agent的反思会生成“想法(Thought)”,这是系统对观察和记忆的高层次诠释。
- 例如:
- 玛丽亚的反思: 她暗恋克劳斯。
- 克劳斯的反思: 他也暗恋玛丽亚。
- 虽然看似两情相悦,但部分反思(如玛丽亚暗恋克劳斯)缺乏明确的证据(Evidence)。这些无证据的反思可能是创作者直接植入的内容,而非Agent通过观察自然生成。
(2) 计划调整
每当Agent观察到某个对象时,会自问以下两个问题:
第一个:对象与我的关系是什么?
例如,桌子与我无关时无需行动,但若桌子着火了,则需要灭火。
第二个:对象的状态对我的计划有何影响?
例如,June看到Eddie走过时,会回忆Eddie是自己的儿子,并形成摘要:
“Eddie正在创作音乐。”
根据摘要,June可能调整计划,例如决定与Eddie交流。
5.5 Agent间的互动
(1) 对话生成
- 如果决定与另一个Agent交流,Agent会生成新摘要,整合与对方相关的记忆形成问题。
- 案例:
- June问Eddie:“你作曲计划进行得如何?”
- Eddie结合与June的记忆回复:“爸爸,我的计划进行得很顺利。”
(2) 互动特点
- 对话内容以“正面、和谐”为主,类似于“父慈子孝”的模式:没有狗血情节,如“你这个小兔崽子,快去做作业”或“死老头,别烦我”。
- 尽管情节平淡,但仍能在角色互动中发“糖”(如父子关心或暗恋情节)(糖丸了)
6 情人节活动讯息散布
6.1 情人节活动的策划与消息传播
(1) 依莎贝拉的情人节计划
- 活动:2月14日下午5点,依莎贝拉计划在咖啡厅举办情人节活动。
- 她主动告知了9位路人活动信息,并鼓励他们参加。
(2) 信息传播链条
- 角色们根据各自的人际关系将信息传递:
- Sam 告诉了 Jennifer,可能是他的妻子。
- 艾莎 转告给 玛莉亚,但信息被篡改为同一时间、地点举办读书会。
- 克劳斯 没有通知暗恋对象玛莉亚,而是告知了 Abby。
- Abby 再次确认活动信息并回传给依莎贝拉。
(3) 人际关系映射
从信息传播的路径可以看出角色之间复杂的关系:
- 克劳斯暗恋玛莉亚,却选择告诉Abby,表明他可能害羞或不知如何表达。
- 艾莎的行为暗示她可能在与玛莉亚的互动中存在其他意图。
6.2 情人节当天的活动状况
(1) 到场人数
- 虽然活动邀请了众多角色,但实际出席人数远低于预期,仅有4人到场(但比预期的还算“成功”)。
- Abby并未现身,而玛莉亚意外到场。
(2) 玛莉亚与克劳斯的互动
- 巧合重逢: 玛莉亚与克劳斯并非一起来到活动,但都出席了。
- 互动细节: 玛莉亚主动邀请克劳斯与她同座,这使得克劳斯异常开心。
- 情感发展: 克劳斯与玛莉亚最终互相告白并在一起(尽管告白的具体内容尚不明确,可能需要进一步观察后续发展)。
7 有趣的评论
- 还满有趣的,光想像GTA带入这个系统就很惊艳了,可以四处发呆,看看发生了什么事,这样游戏任务的安排,也不容易产生作业倦怠感,AI打造的沉浸式「楚门的世界」
- 那有没有可能我们同样也是一个由更高文明设计的AI程序,每一个个体也是一个类AI产物,事件随机生成,然后世界中的很多无法解释的事件有可能是程序Bug。
- 这不是类似刀剑神域中Alicization篇的概念吗?
- 我真的去看IR与KM的告白对话了LOL,可惜Demo网站现在貌似会卡在2月13日晚8点多动不了。
- 我好想看看这款游戏,如果这真的出了我应该会整天坐在电脑前看小人在干嘛,感觉很有趣🥹