【AIGC】《Generative Agents:Interactive Simulacra of Human Behavior》

【AIGC】《Generative Agents:Interactive Simulacra of Human Behavior》

让 AI 村民组成虚拟村庄会发生什么事?

文章目录

Generative Agents

Park J S, O’Brien J, Cai C J, et al. Generative agents: Interactive simulacra of human behavior[C]//Proceedings of the 36th annual acm symposium on user interface software and technology. 2023: 1-22.

这篇论文由斯坦福大学和 Google 的研究人员(如 Joon Sung Park, Percy Liang 等)共同发表,也就是大名鼎鼎的 “AI 小镇(Smallville)” 论文。鉴于你之前关注“能使用工具的 AI”,这篇文章正是“自主智能体(Autonomous Agents)”领域的开山之作。

核心贡献:提出了一个名为 “生成式智能体架构(Generative Agent Architecture)” 的系统,包含三个关键组件:

  • 记忆流 (Memory Stream):一个长期内存数据库,用自然语言记录智能体的所有经历(观察)。通过相关性、近时性、重要性三个维度进行检索,决定智能体当前该想起什么。
  • 反思 (Reflection):智能体会定期停下来,对记忆流中的碎片化信息进行归纳总结,提取出高层级的观点(例如:某人很友好,或者我下午需要去买菜),这让智能体能够形成更深刻的判断。
  • 规划 (Planning):智能体会制定长、中、短期计划,并根据环境变化(观察到新事物)随时调整计划(Re-planning),保证行为的逻辑连贯性。

点击对应的 NPC,可以看到更多细节

每个角色都有人设

最经典的案例情人节派对,至今还被反复拿出来讨论。
他们只给其中一个叫Isabella的AI下了一个种子指令——“你想在情人节办个派对”。
剩下的事情,人类完全没有插手,然后整个小镇就自发运转起来了。
Isabella开始四处发邀请函,接到邀请的AI们会根据自己的性格决定去不去,甚至有人在派对前一天就开始紧张地讨论该穿什么、要不要带点礼物。
甚至有人帮忙装饰咖啡馆,有人提前规划路线,最后5个AI准时到场,派对办得热火朝天。
整个过程虽然丝滑,却没有一条硬编码规则,全是这群电子小人自己“想”出来的。

Daily requirement 超长

NPC 觉醒,喜欢上了玩家操控的女角色,会发生什么事情呢?

行为说明应该是 ChatGPT 生成的

行为说明转成行为应该基于 program 规则

感知-思考-行动循环:

  • 感知:Agent 观察周围环境并存入记忆流。
  • 检索:根据当前场景检索最相关的记忆。
  • 行动:通过 Prompting 让 LLM 生成下一步动作(对话、移动、操作物体)。

固定的太枯燥了

可以让 Agent 根据外界的信息改变自己的行为

重要性打分,

模型内部的结构,有 plan,有 observation,还有 reflection

因为 no evidence

发现了相互暗恋的情况(Maria 和 Klaus),不排除是上帝把 reflection 塞进来了,因为没有看到 evidence

John 是 Eddy 的爸爸,John 看见 Eddy 后,改变了自己的 plan,开始与 Eddy 去对话

伊莎贝拉计划举办一场情人节派对。她传播了这个信息,在模拟结束时,12 个角色已经知道了这件事。其中 7 个人「犹豫不决」——3 个人已有其他计划,4 个人没有表露想法,这和人类的相处一样。

demo 比较慢,李老师没有看到最后,不知道 Maria 和 Klaus 的对话内容以及情人节活动现场发生的事情

自己注释了一个 happy ending,哈哈哈

实验最令人惊叹的是观察到了涌现出的社会行为 (Emergent Social Behaviors):

  • 信息传播:一个 Agent 决定举办情人节派对,消息通过社交互动在小镇里传开,大家纷纷调整计划参加。
  • 关系演变:智能体之间会建立新的友谊,并根据过去的互动改变对彼此的态度。
  • 协作:多个智能体协调时间,共同出现在同一地点。

论文证明了将 LLM 与架构化的记忆机制结合,可以创造出极具真实感的“数字人类”。

证明了 Agent 的可信度不仅取决于模型本身,更取决于其对过去经历的组织和反思能力

资讯

  1. 「斯坦福AI小镇」创业即获投1亿美元!李飞飞卡帕西都投了(2026-02-14)
    • 当初那个“智能体早期真神”,让25个智能体自己聊天、传八卦、谈恋爱的AI小镇Smallville团队也官宣创业了。
    • 公司名叫Simile,直接拿下了Index Ventures领投的1亿美元融资,连卡帕西、李飞飞也跟了。
  2. 爆火论文打造《西部世界》雏形:25个AI智能体,在虚拟小镇自由成长(2023-04-11)
    • Generative Agents 的架构中心是记忆流—— 一个全面记录智能体经验的数据库。智能体会从记忆流中检索相关记录,以规划智能体的动作行为并对环境做出适当反应,并且每次行为都会被记录以递归合成更高级别的行为指导。Generative Agents 架构中所有的内容都被记录下来并以自然语言描述的形式来进行推理,从而使智能体能够利用大型语言模型的推理功能。
    • 只有当智能体对最近事件的重要性分数总和超过某个阈值,智能体才会开始反思。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

参考

  • https://speech.ee.ntu.edu.tw/~hylee/genai/2024-spring.php
  • https://www.bilibili.com/video/BV18fXbY6Eis/?spm_id_from=333.1387.homepage.video_card.click&vd_source=8e91f8e604278558ec015e749d1a3719
  • https://www.youtube.com/watch?v=G44Lkj7XDsA
  • Demo:https://reverie.herokuapp.com/arXiv_Demo/

Read more

前端 AJAX 详解 + 动态页面爬虫实战思路

目前 80% 的网站都使用了AJAX技术,那么传统的爬虫通过 html 来获取数据就不行了,总结一下 AJAX 相关知识。 1、前端三大核心 前端开发的三大核心基础是 HTML、CSS 和 JavaScript。 * HTML 负责搭建网页的结构与内容(结构) * CSS 负责网页的样式、布局和视觉效果(表现) * JavaScript 负责网页的交互、逻辑和数据处理(行为) HTML(结构层) 本质上是 标记语言(Markup Language),通过标签描述页面元素。 常见标签: <h1>标题</h1><p>段落</p><

基于腾讯CNB的前端代码自动构建及发布流程

基于腾讯CNB的前端代码自动构建及发布流程 自己有一个小网站,一个纯前端的小站点,主要是为了给自己接一点小私活,由于服务器一直用的是腾讯云(便宜啊,299,3年),所以代码自动化部署也用的是腾讯云的Coding,最近需要更新一下数据,提交代码发现Coding已经在6月份就进行了淘汰,迁移到腾讯新推出了腾讯云原生构建(CNB),好名字啊!超牛B还是吹牛B我们先不说,要是我是付费用户肯定不开心,但是咱不是免费用户吗?有一个大一点的正规平台,免费提供自动化构建发布流水线我们还有什么不开心?要什么自行车!话不多说直接开干! * 登录CNB https://cnb.cool/,创建新的代码库, 并将自己的代码推送到腾讯云仓库. 流程架构 * 创建容器镜像服务, 由于以前的服务器一直在阿里云,所以沿用了阿里云的容器镜像服务,主打一个用免费的! 阿里云容器镜像服务地址, https://www.aliyun.com/product/acr/,腾讯也有自己的容器镜像服务,需要的评论留言,我在更新。这一步主要是提供远程docker容器镜像服务的,让我们可以把自己的代码镜像上传到一个公

语音交互实战:基于WebRTC与AI接口构建实时语音对话系统

语音交互实战:基于WebRTC与AI接口构建实时语音对话系统 随着大模型技术的爆发,人机交互的方式正在经历一场从“指令式”到“对话式”的深刻变革。传统的文本交互虽然成熟,但在移动场景、驾驶辅助或无障碍应用中,语音交互才是刚需。然而,很多开发者在尝试构建语音对话系统时,往往会陷入“能听会说但反应迟钝”的尴尬境地。 传统的语音交互流程通常是:录音 → 上传文件 → 后端识别(STT) → 大模型处理(LLM) → 语音合成(TTS) → 返回播放。这种“一问一答”的串行模式,导致用户说完话后需要等待数秒才能听到回复,这种延迟在实时对话场景下是致命的。 本文将探讨如何利用WebRTC技术与AI接口,构建一个低延迟、全双工的实时语音对话系统,打破交互延迟的壁垒。 核心技术架构:从串行到流式 要解决延迟问题,核心在于将“文件级”处理转变为“流式”处理。我们不再等待用户说完一句话才开始识别,而是边说边识别;不再等大模型生成完整回复才开始合成,而是边生成边合成。 1. WebRTC: