查看原文
其他

对话斯坦福爆款论文作者:创造可信Agents、突破上下文限制、个体智能和集体智能

Founder Park Founder Park 2023-04-28

25 个智能体(agents),在一个貌似早期宝可梦游戏的虚拟小镇,自行制定计划、执行行动、反思行为。

上周,题为《生成式代理:人类行为的交互模拟体》(Generative Agents: Interactive Simulacra of Human Behavior)的论文火遍全网。游戏从业者们看到了梦寐以求的开放世界中智能 NPC 的可行性,而人工智能的研究者们,则意识到一个多年悬而未决的问题,因为大语言模型的出现,初见解决的可能性。

论文链接:https://arxiv.org/pdf/2304.03442v1.pdf
Demo 地址:https://reverie.herokuapp.com/arXiv_Demo/
篇论文由斯坦福大学和 Google Research 的团队联合发表,第一作者是斯坦福大学计算机科学博士 Joon Park。
即将毕业于清华姚班,去斯坦福 HCI Lab 就读的 Sophia 和斯坦福计算机博士曹瀚成一起采访了 Joon,和他聊了聊论文的核心贡献,Believable Agents 的历史难题,如何突破受限的 LLM 上下文能力等问题。
Founder Park 获得 Sophia 授权,将视频对话梳理、翻译整理成文,下面是对话正文。

对话嘉宾

Joon Sung Park,「AI 小镇」论文第一作者,斯坦福大学计算机科学博士,UIUC 计算机科学硕士。设计、构建、评估交互系统,利用 NLP 和 ML 的最新进展(LLM、基础模型等)研究新形式的人机交互。研究获得 Microsoft Research PhD Fellowship、Stanford School of Engineering Fellowship 和 Siebel Scholarship 等奖学金支持。

Sophia,清华姚班本科生,将去斯坦福读研,研究方向为人工智能与人机交互,正在进行大模型应用创业,致力于通过将 AI 连接到多样数据、文档、应用来加速用户的工作流。

曹瀚成(http://hanchengcao.me),斯坦福大学计算机博士在读,辅修管理科学与工程,本科毕业于清华大学电子工程系。研究兴趣为社会计算、人机交互、自然语言处理,研究聚焦于通过人工智能,,数据科学等科技手段提高人们的沟通与协作体验。斯坦福交叉科学研究奖学金获得者(Stanford Interdisciplinary Graduate Fellow),研究三次获计算机顶级会议 CHI,CSCW 最佳论文与最佳论文提名,并被包括 Wired、Forbes 、量子位、新智元等诸多国内外媒体报道。

对话视频链接:www.bilibili.com/video/BV1Sm4y1m7QH


01

生成式 agent 是什么?

Sophia:简要介绍一下你在生成式 agent 方面的工作吧。

Joon Park:根本上说,生成式 agent 是表现出可信的人类行为的计算 agent,它可以充当我们生活的代理。它某种程度上具有长期一致性的属性。

它使用了 LLM 和 ChatGPT 之类的(产品/技术),但更主要的,我们加入其中的是生成式 agent 的架构,这个架构明确了记忆模块、感知和行动模块,以及计划和反思模块。所有这些结合在一起,生成了 agents 的行为,并且能够维持一段时间。所以不仅仅是你当前互动的片段,agents 通常会在交互之后忘记,但这些 agents 是专门为维持长期关系以及上下文记忆而设计的,这就是我们正在研究的生成式 agent。


02

被遗忘的 40 年前的愿景

Sophia:我可以理解为,记忆系统是你在这篇论文中的主要贡献吗?

Joon Park:可以从两个维度来讨论生成式 agent 的贡献。最大的技术贡献确实是(记忆系统),这是一个体系结构,是一种专注于内存模块的架构。所以有了长期记忆的概念。一切都是用自然语言进行,你可以根据需要检索其中的特定内容。

技术上说,反思是一件非常独特的东西,一个我们从没见过的东西。但我认为,在我们建立这些 agents 时,反思(模块)尤其重要。这一模块将对我们如何看待和构建这些 agents 产生长期影响。

除了技术角度,我认为还有一种概念角度。作为一个计算领域,你可以追溯到四十年前的计算机科学家,Allen Newell 和 Herbert Simon 构建的认知架构等等,作为一个研究领域,我们拥有一个创造出可信代理(believable agents)的愿景。

Joseph Bates 在 1994 年特别阐述了这一愿景:如果我们能创造表现出综合人类能力的计算 agents,那将是我们这个领域的北极星。这种愿景一直存在。

Joseph Bates 于 1994 年发表在《计算机协会(ACM)》期刊上的论文,《情感在可信代理中的作用》(The role of emotion in believable agents)。

当然,人们对于将(这种技术)使用在游戏里感到非常兴奋,就像我们在论文里做的那样。

但那样的愿景,几乎被遗忘了,在过去十年里,我们可能已经放弃了,没有多少人谈论它,没有人真正在做这件事。

我们缺少实现它的关键要素,我们上哪儿去获得人类行为的「呼吸」呢?

所以我们的主要认知是,大模型的训练建立在社交网络、维基百科和互联网的基础上,这些包含了很多人类行为的数据。如果我们能够正确使用这些数据,它就有可能成为那个我们一直以来缺失的,构建可信 agent 的关键要素。

这就是生成式 agent 的意义。它向我们展示了一个过去被遗忘的愿景,现在我们可以再次尝试解决这个问题。

我们正试图提出一个令人信服的理由,即我们已经准备好有意义地参与这场创建可信 agent 的对话。

这就是我眼中论文的两大贡献。


03

为什么过去做不到?

Hancheng:为什么过去人们忘记了这样的愿景?是因为生成能力?因为语言还是其他原因?

Joon Park:说实话,就是因为过去做不到。

我们尝试了大概十年。大体上我们经常使用的技术都是手写的,或者说手动书写人类行为,这永远无法扩大规模,尽管这是非常流行的做法。

然后我们试着对这类 agents 进行强化学习,在特定环境下这样的尝试是成功的,尤其一些对抗性的、有着明显输赢双方的比赛,这些 agents 可以进行针对性优化。

但我们想要的绝不只是对抗性比赛对吧?我们希望这些 agents 在一个像真实世界的开放世界里「繁殖」,这仍是一个悬而未决的问题。

Sophia:没有一个特定的目标可以优化,就像没有奖励函数一样。

Joon Park:没错。所以用强化学习训练 agents 并不是通往那个目标的正确方向。

最后一个是再次出现的认知架构概念。尤其是在 80 年代,agents 的目标确实是正确的,我们需要这种全面的体系结构,他们试图做的是建立这些更具普遍性的 agents。

但最终,他们试图在后端实现这一目标的方式是大量手工编码的程序知识,这种做法只能在一些「方块世界」或者 FPS 游戏中才能实现目标,很难超越特定环境。

我们一直在朝着那个方向努力,但过去几十年里所有的方法,甚至都没有接近我们现在借助 LLM 所实现的。

所以某种程度上,这一领域里的大家已经意识到,除非有新的突破,否则这一目标是不切实际的,因为单纯在现有成果的基础上努力,是无法接近那个目标的。

这就是为什么我们忘记了这一愿景。但当 LLM 出现时,我们意识到机会来了。


04

如何用大模型处理上千条上下文记录?

Sophia:Agents 是如何实现上下文学习并更新其记忆系统的?

Joon Park:这是一个有趣的问题,这些 agents 是建立在 prompt 之上的。

我在这里说的是我自己的操作方法,因为这里的最终贡献在于架构,有很多其他方法也可以实现。

我大约用了 70 - 80 个 prompt 来实现,通过 ChatGPT 等(大模型工具)。这些 prompt 同步工作,像制作一个时钟(使用齿轮),以这种方式协同作用。

很多上下文学习都是通过这些 prompt 实现的。

但本质上,这个架构的核心功能,这个记忆流的数据结构极其简单,我们在设计架构时的哲学就是,美在简单(Beauty Is in Simplicity),我们希望它尽可能简单、直接,同时又具备表达性(expressive)。

所以我们做了提取。原本我们的架构比起论文中的,要复杂很多,有一堆不同的模块同时运行,用不同的方式连接,但我们提炼出了一个最简单的核心形式,就是你们在论文中看到的。这对我们来说非常重要,因为这会让它具备通用性,且有着更长远的影响。

所以如果你看看内存字符串,它非常简单。它实际上是一个字符串列表,这些字符串可以包含观察记忆。

比如,我看到一个闲置的水瓶,它立在我的桌子上。它包含「反思」(reflection),这些反思是基于现有的记忆形成的,是现有记忆的综合体。

再比方说 Jane 连续三天吃了三次卷饼,她一定喜欢卷饼。这就是一个想法,这就是反思。

然后是「计划」。明天我打算做什么?我明天要坐飞机。所以我的计划可能包括我要在几个小时后醒来,然后再去机场。

就像这样,我们可以检索到特定记录的特定内容,以创建更紧密的上下文环境。

比方说我们有记录的记忆,即使在这个简单的游戏世界里,这些 agents 记忆也会不断增加,他们在一两天内积累了数千条记忆记录。ChatGPT 只能处理其中大约 50 个。

Sophia:所以你会将检索到的记忆与另一个 meta prompt 连接?

Joon Park:是的,这些更多的是跟优化有关。我相信在某些情况下,我们会做特定的部分,有更多的操作细节,我们有不同的版本,可以做不同的事情。

在一个版本的记忆流中,比如大约有一万条记录。我们从这一万条左右的记录中提取了 30 条最相关的记录,然后这 30 条记录实际上就可以立即输入到 LLM 中了。

你也可以进一步总结这些故事,稍后将其发送到大模型中,在两者之间再加一步。某些情况下,这可能会更好,但实质上收益并不显著,因为这些故事已经可以被语言模型相当有效地使用了。

这只是一个优化问题,如果这对你来说更好一点,那没问题。如果没有,就不必那么做。


05

如何让每一个 agent 足够智能?

Sophia:如何确保生成式 agent 的计划合理且可执行?如果它生成了一些无法真正执行的东西,该怎么办?

Joon Park:不能执行的行动是一个非常有趣的问题。这实际上是一种限制。

地图是我们作为输入提供的东西,Smallville 的世界是我设计的(笑)。

在我手绘的草图上,我标注了所有地点,每棵树,每件家具,谁住在哪里。我之前压根没想过我的博士生涯是往那儿一坐,开始在地图上画树。(笑)

Sophia:补充说明,Joon 也是一名艺术家,他是一位非常优秀的油画画家。

Joon Park:谢谢,我的确有过一段职业画家的经历,很高兴那些经验能以这种方式帮助到这个项目。(笑)

但这表明,地图本身是静态的,因为这是一种输入,而这并不是我们在这篇论文中试图创新的部分。

但在未来创建这些地图会很有趣,如果你有一个身份,那么这个人应该出现在地图的哪里将会是一个很好的问题,这不在这项特定研究的范围内。

我们有一张静态地图,现在我们在那里放置了我们的 agents,有一个「限制」的案例:

John,他是商店店员,每隔一阵,他就会想开车去商店。但是,这张地图上并没有汽车,没有对于开车的认知。所以后来发生的事情是,他只是走到商店,完全忘记了那辆车。

这就是我们创建这张地图时的整体哲学。给予地图足够多的元素,为 agents提供足够的灵活性和即兴发挥的空间。比如有个行动是开车去商店,但在这个世界里不可能开车去商店,这不是他们可以采取的行动。如果是这样的话,他会直接选择步行的方式,这并没有完全破坏行动的规则。走到商店是合理的,只要你能到商店,这甚至有点酷。

还有一个例子是,这个世界上有很多艺术家。其中一些有画架,有一些没有。现在,如果你想画画,有画架的话,你就可以在画架上画;如果没有,也可以在桌子上画。所以我们在这个世界里给予了足够多的元素。表现力和灵活性足以让这些 agents 按照他们自己的方式行动。这就是我们如何应对这种限制的办法。

Sophia:如果 agent 说想开车去商店,你们是怎么把这个转换成走路去商店的?是存在一些功能可以把这些行动转化为可能的行动吗?

Joon Park这就是大型语言行为模型的作用,它只是决定该做什么。这个游戏世界中的动作是 agent 从一个对象移动到另一个对象。需要做饭,agent 就会去厨房的炉子前。需要学习,就走到房间的桌子前。如果没有理想的对象供 agent 选择,那么它只会选择第二好的,想画画而画架不在那里,它就会挑一张桌子。


06

个体可预测但复杂的集体行为才是

实验有趣的地方

Sophia:此外,许多人还想知道使用大模型来模拟 agent 的局限性。比如使用描述性语言为 agent 提供初始角色有什么限制吗?考虑到影响人类行为的现实生活环境不仅限于性格特征和爱好。

Joon Park:我个人认为如何启动这个 agent 是一个非常有趣的问题。宽泛地说,我把整个建筑布置得很好,我认为这些体系结构中的每个模块都可以改进。但我们希望使体系结构尽可能简单的原因是在论文中呈现的每一种操作都可能不是最好的方法,也许有更好的方法。

我认为我们正在努力的方向是把这个领域开拓得足够大,让人们知道如何使用元素。其中之一当然是在第一天就启动这些 agent 的想法。我们应该如何定义它们,以这种方式来定义它们意味着什么?我认为这将是一个有趣的问题。

如果有更好的想法出现,我们论文的目的就达到了,从某种意义上说,我们希望鼓励人们思考这些问题。

Sophia:我想人们会问,如果你不能用语言来描述它会怎么样?例如超级外向还是非常外向还是不外向?所以,就像这是一个连续的渐变一样,你不能仅仅用 very、extremely 或类似的词汇来描述它。你是如何处理这个问题的?

Joon Park:关于这个我有些不一样的想法,我本人有相关领域的 NLP 研究背景,我们倾向于认为语言是非常有表现力的。语言所给予的自由程度远高于你的预期,自然语言足以创造这些 agent,让他们影响世界,在一个开放的世界里行事,这不是一个文本冒险游戏。

我认为有趣的是,你可以用自然语言做到这一点。很明显,自然语言超出了我们许多人的想象。但我也理解这种情绪。有些事情你确实能感觉到但无法描述。这些 agent 也有同样的情况吗?我认为这是完全可能的。

这就是为什么我们在论文中尽量少说我们创造东西的原因。就像我们使用了一个术语「生成模型」,这有点暗指大模型。但未来我认为用其他模型构造完全可能,比如用 GPT-4 或者其他的大模型。

当然我们需要称之为机器人基础模型的东西,以及诸如此类的东西来过滤。所以我认为所有这些都将成为其中的一部分。

Sophia:由于所有这些 agent 都基于相同的语言模型,他们可能都有一些相同的偏好和偏见,从长远来看这会导致趋同的行为模式吗?我试着用两个 ChatGPT 互相交谈,然而他们只是重复对方说的话。

Joon Park:确实如此,大模型肯定会收敛,但生成式 agent 可能不会,因为每个个体 agent 都可能是可预测的。但你真正看到的是作为一个集体行为,这是一个多智能体问题。这是实验有趣的地方,也是蝴蝶效应或者复杂性的想法可能产生的原因,多智能体让这些 agent 的未来变得不那么确定。

但从更多的 AI 模型的角度来看,我认为有趣的是多 agent 交互的想法。与为他们提供动力的个人语言模型的行为不同,我想了解更多关于他们的信息。

Sophia:是因为大型 agent 具有非常独特和个性化的语料使得他们能够表现得非常不同吗?

Joon Park:是的,我认为这是很重要的一部分。当然还有一部分是这些 agent 相互交谈的方式,以及他们交谈时相互影响彼此的方式。一名 agent 平均一天可以与五名不同的 agent 通话。想象一下,一个 agent 会与 24 个 agent 中的哪五个聊天,仅此一点就创造了大量的组合。不同的组合,agent 的行为实际上可能会受到影响,这就是复杂性的来源。


07

其他问题

Q: 未来是否有可能实现具身(embodied)AI?

A:我不是这方面的专家,但生成式 AI 肯定会为未来这方面的研究提供启发或者更直接的支撑。我的一些同事感兴趣的领域在于机器人的基础模型,这种机器人只要给它一个 prompt,它就会以具身的动作行动。

Q:生成式 agent 对人类社会会有风险吗?

A:它肯定存在一些风险。但我认为生成式 agent 的好处和前景大于潜在的危害,我们能够找到正确的原则和方法来减轻这些伤害。

Q: 如何对虚拟世界中发生的事情进行控制?

A: 这些 agents 目前非常有礼貌,部分原因是我们使用了 ChatGPT,它帮我们来确保 agents 不会发生一些违法乱纪的行为。但仍要考虑的是,我们有多想牺牲安全来实现可信度,或者多想牺牲可信度来实现安全?

Q: 未来会参与像游戏这种商业领域的创业吗?

A: 我更喜欢做一个纯粹的科学家。但我也相信在商业领域这种技术做出很多创新的事情,如果有具体的方面需要我做出贡献,我不一定会回避。


AGI 时代,传统的 GUI(图像)会转变为全新的Lauguage UI 吗?新时代的产品交互应该怎么做?4 月 21 日周五 20:00,极客公园创始人 & CEO 张鹏,豌豆荚、轻芒杂志创始人王俊煜将与神秘嘉宾一起聊聊 AGI 时代的产品交互。




关注 Founder Park,我们将持续推出更全面更深度的大模型相关讨论与报道。

如果你有投身大模型创业的想法,欢迎加入我们的大模型相关领域交流群,来一起探讨大模型时代创业的共识和认知。

长按识别二维码填写入群申请表

关于交流群:

在 ChatGPT 发布后,我们迎来了一个全新的创业时代,似乎又回到了移动互联网早期——大量产品的方向和定义还不清楚的时代,我们希望把更多愿意思考和有创业意向的人聚集在一起,连接更多大模型领域的 doer(实干家),让更多有价值的认知在这里流动、碰撞、凝结,孵化出更多优秀的产品和项目。

Founder Park 计划搭建一个大模型相关领域的交流社区,面向有志于在大模型相关领域创业的创业者、产品经理、工程师、学者及投资人,围绕大模型相关创业的新项目、新赛道进行交流探讨。

在这里,你可以获得大模型相关领域的最新动态、高质量的对话交流,结识更多高净值的创业人群,同时,极客公园也会为优秀的项目提供资金、人才及其他资源的支持。




更多阅读
从 OpenAI 的愿景和技术逻辑,推演未来的大模型生态

信息爆炸的 10 篇 AGI 访谈,我们从中整理了 14 个关键问题

Sam Altman 的创业手册 | 周末长文

有了插件的 ChatGPT,可能会成为未来互联网的唯一入口

张鹏对谈王俊煜、李志飞:ChatGPT 插件模式会如何颠覆互联网格局?



转载原创文章请添加微信:geekparker

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存