AI小镇Generative Agents: Interactive Simulacra of Human Behavior

news2025/1/10 17:07:39

文章目录

  • 1 Introduction
  • 2 Related Works
    • 2.1 Human-AI Interaction
    • 2.2 Belivable Proxies for Human Behavior
    • 2.3 Large Language Model and Human Behavior
  • 3 Generative agent behavior and interaction(行为与交互)
    • 3.1 Agent Avatar and Communication
    • 3.2 Environment Interaction
    • 3.3 Example “Day in the life"
    • 3.4 Emergent social behavior(突发社交行为)
  • 4 Generative agent achitecture(结构模型)
    • 4.1 Memory and Retrival(第一记忆模型——低级印象)
    • 4.2 Reflection(第二记忆模型——高级推理)
    • 4.3 Planning and Reacting(计划与执行)
  • 5 Sandbox environment implementation
    • 5.1 From structured world environment to natural language , and back again
  • 6 Controlled evaluation
    • 6.1 Evaluation Procedure
    • 6.2 Conditions
    • 6.3 Human Evaluators
    • 6.4 Analysis
    • 6.5 Results
  • 7 End-To-End evaluation
    • 7.1 Emergent social behavior
    • 7.2 Boundaries and Errors
  • 8 Discussion
    • 8.1 Applications of Generative agent
    • 8.2 Future Works and Limitations
    • 8.3 Ethics and Society Impact
  • 9 Conclusion

  • 1

1 Introduction

  • Importance: 基于计算的智能体是人类行为模型的可信代理
    • 如果agent的行为能够代表人类行为
    • 有助于构建虚拟空间和社区
    • 极端情景模拟
    • 社会科学理论验证
    • 等等
  • Problem Area:人类行为模型非常复杂
    • 虽然LMM能够在一定程度上理解并模拟人类行为,但是无法提供长时支持
  • Research Gap:一个支持记忆能力的,具备在较长时间跨度上
      1. 根据事件、交互等进行学习(retrieve
      1. 根据memory进行推理与反应(reflect
      1. 提出合理的计划并实行(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:
        1. controlled evaluation:测试agent是否能够生成并执行believable individual behaviors
        1. end-2-end evaluation:进行了为期两天(模拟时间)的测试,以观察agents之间的社交行为
    • 实验方法:
        1. interviewing:与agent直接进行对话,判断其是否清晰其角色定位,其记忆能力、计划、反应等
        1. ablation:消融实验,测试各个组件对agent的影响——结果显示三个核心组件对agent功能完备性皆具有重要影响
    • 在运行过程中最常出错的地方:
      • 记忆检索失败
      • 记忆篡改失败
      • 受LLM模型影响导致其感知推理出现偏差
    • 核心贡献
        1. generative agent
        1. 一种基于LLM的agent构建框架
        1. 完备的测试与实验
        1. 进一步的讨论——就agent在交互环境中可能出现的伦理与社会问题

2 Related Works

2.1 Human-AI Interaction

  • 旨在将人类智慧以及能力赋予可交互人工智能以使其具备与人类交互的能力(甚至帮助人类更好的完成任务)

2.2 Belivable Proxies for Human Behavior

  • 也被描述为believabilitybelievable agent
  • 核心是构建人类行为的可描述模型

2.3 Large Language Model and Human Behavior

  • LLM本身是超大规模人工智能模型,对人工智能模型的讨论不在本文范畴中,但考虑到其本身基于大量人类知识构建,对于人类行为的理解具有其独到优势

3 Generative agent behavior and interaction(行为与交互)

  • 2

3.1 Agent Avatar and Communication

  • 用自然语言对每个agent进行描述(角色卡
    • 3
    • 这段描述会在初始阶段被载入到对应角色的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

3.4 Emergent social behavior(突发社交行为)

  • 该程序中的新增社交都是突发的而并非是预先编码的
  • 信息传播(information disffusion):通过对话传播
  • 关系记忆(relationship memory)agent能够记住与他人的相遇并形成新的关系
  • 合作(coordination):agent之间能够进行合作
    • 4

4 Generative agent achitecture(结构模型)

  • 5
  • 最大挑战是:如何有机地组合LLM以及agent的记忆(量大)
    • memory stream
  • 基于Chatgpt3.5 turbo

4.1 Memory and Retrival(第一记忆模型——低级印象)

  • 核心问题:
    • 大量的experience难以fit到一个prompt中
      1. 大量的文本可能分散model的注意力
      1. context window不够长
    • GPT4.0 turbo支持128000 tokens长度
  • 解决方法:
    • memory stream本身包含对agent经历的完整记录
      • 由一系列的memory objects构成
        1. 一段自然语言描述
        1. Creation timestamp
        1. Most recent access timestamp
      • observation: 描述由agent直接接收到的信息,包括agent自身的行为信息,周围agent的行为信息,非agent单位信息等
    • Retrival function
      • 输入:agent的当前信息
      • 输出:提炼后的信息(原文:subset of memory stream)——用于输入到LLM中
      • 如何提炼信息:有多种基于不同标准的提炼方法,论文提出了基于三种属性的提炼方法
          1. Recency:为最近发生的事情提供更高的权重——指数衰减(exponential decay, factor:0.995)
          1. Importance:为agent认为更重要的事情提供更高的权重(原文:distinguishes mundane from core memories
          • 采用的方案是:直接询问LLM
          • 6
          1. Relevance:为与当前情况相关度更高的记忆提供更高的权重
          • 如何定义/计算相关度
            • 基于LLM为每个memory object进行编码(embedding vector)
            • 相似度由编码之间的余弦相似性计算得到
        • 最终方案:基于min-max scaling将上述三值归一化到[0. 1],然后累加三值

4.2 Reflection(第二记忆模型——高级推理)

  • 7
  • 核心问题:在仅有memory stream的情况下,agent难以做到高水平的reflection
  • 解决方案:
    • 第二种记忆模型:reflection
      • 由agent生成的更高级、更抽象的思想(thoughts)
    • 周期性生成:在过去一段时间内的observation总retrival值超过150时
      1. 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?
      1. gather relavent memory:针对上述三个问题,分别收集相关的memory objects
      1. extract insights:基于关联memory集合,输出insights
      • 8

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方案
        1. 构建当天的大致议程
        • 输入:个人描述、recent experience、summary of previous day
          • 9
        • 输出:一个包含5-10点内容的大致安排(保存在memory stream中)
        1. 细化议程:对第一层输出的每一个议程进行细化安排
        • 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)
      • 10
      • 其中context summary由两个queries生成:
          1. 观察者与被观察者之间的关系
          1. 被观察者当前的状态信息
      • 如果观察者认为需要进行反应,则:
          1. 调整agent的plan
          1. 如果该调整行为导致了进一步的交互(agents之间),则进一步生成对话(dialogue)
  • Dialogue(对话生成)
    • 根据对交流对象的记忆调整对话的内容
    • 对于发起者而言:(以及决定发起对话——react)
      • 11
    • 对被发起者而言:该对话是event的一部分——会被观测到
      • 如果被发起者决定react
      • 12

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的环境信息
      • 13
    • 输出:The Lin family's house
    • 反复上述过程,直到定位到精确位置
  • 物体状态的变更同样基于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)效果最佳,但同时也有一些问题
  • 14

7 End-To-End evaluation

  • 进行了长度为2天的模拟测试,验证并观察agents行为的合理性

7.1 Emergent social behavior

  • 包含三个方面:information diffusion, relationship formation, agent coordination
  • 15

7.2 Boundaries and Errors

  • 大量的经理以及记忆带来的挑战
      1. 更难整理出有用信息
      1. 抉择更加困难(例如:午餐地点选择)
  • 一些难以用自然语言表述的“规则”导致agent做出错误的决策
    • 例如:在没有明确标识浴室只能有一个人使用的情况下,agent可能会进入已被占用的浴室(但这些内容本质上更像是常识
    • 这一点或许可以通过精细化的规则描述加以规避,但这将大大增加背景信息
  • agent受显性instruction的影响过于明显
    • 对话过于正式规范
    • 不会拒绝请求
    • 易受其他agent影响等

8 Discussion

8.1 Applications of Generative agent

  • 只要是与人类行为模型相关的应用都能够从generative agent研究中收益
  • 以人类为中心的应用

8.2 Future Works and Limitations

  • 未来的工作:
      1. 基于该generative agent框架的应用
      1. 更加合理的retrival模型
      1. 运行效率更高的执行方案
      1. 专精LLM构建
  • limitations
      1. 行为believability baseline构建
      1. 没有就各项参数以及使用的方法模型作更进一步的分析
      1. 鲁棒性测试缺失
    • 总体来说,底层LLM的缺陷都将被构建于其上的agent继承

8.3 Ethics and Society Impact

9 Conclusion

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1199110.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【MySQL】列属性

文章目录 CHAR和VARCHAR插入单行 INSERT INTO插入多行插入分层行 LAST_INSERT_IN()创建表复制 CREAT TABLE AS更新单行 UPDATE...SET更新多行在UPDATES中使用子查询【需着重复习】删除行 DELETE恢复数据库到原始状态 CHAR和VARCHAR CHAR(50):存储文本占5个字符&…

LangChain应用全解析

一、Langchain基础 1.Langchain简介 (1)替换模型 from langchain.prompts import ChatPromptTemplatechat ChatOpenAI(temperature0) 使用代理ip llm ChatOpenAI(model_name"gpt-3.5-turbo", max_tokens2048, temperature0.5,openai_api_keyapi_key,openai_ap…

虚幻引擎:如何进行关卡切换?无缝切换?

一丶非无缝切换 在切换的时候会先断开连接,等创建好后才会链接,造成体验差 蓝图中用到的节点是 Execute Console Command 二丶无缝切换 链接的时候不会断开连接,中间不会出现卡顿,携带数据转换地图 1.需要在gamemode里面开启无缝漫游,开启之后使用上面的切换方式就可以做到无缝…

web前端开发第4次Dreamweave课堂练习/html练习代码《出版界推出一批纪念抗美援朝胜利70周年主题图书》

目标图片: 文字素材: 出版界推出一批纪念抗美援朝胜利70周年主题图书 2023-08-01来源:新华社 为纪念抗美援朝战争胜利70周年,出版界集中推出了“抗美援朝亲历记丛书”《新中国立国之战——抗美援朝战争的回顾与思考》《毛泽东与…

计算机网络基础知识-网络协议

一:计算机网络层次划分 1. 网络层次划分 2. OSI七层网络模型 1)物理层(Physical Layer):及硬件设备,物理层确保原始的数据可在各种物理媒体上传输,常见的设备名称如中继器(Repeater,也叫放大器)和集线器; 2)数据链路层(Data Link Layer):数据链路层在物理层提…

【数据结构】:红黑树

1、红黑树的简介 红黑树(Red Black Tree) 是一种自平衡二叉查找树,是在计算机科学中用到的一种数据结构。 红黑树是在1972年由Rudolf Bayer发明的,当时被称为平衡二叉B树(symmetric binary B-trees)。后来…

Leetcode—2471.逐层排序二叉树所需的最少操作数目【中等】(置换环解法!)

2023每日刷题(二十七) Leetcode—2471.逐层排序二叉树所需的最少操作数目 置换环解题思想 参考自网络 总交换次数 每一层最小交换次数之和 每一层元素个数 - 置换环数 实现代码 /*** Definition for a binary tree node.* struct TreeNode {* …

YOLO目标检测——水果检测数据集下载分享【含对应voc、coco和yolo三种格式标签】

实际项目应用:水果分类检测数据集的应用场景主要包括农贸市场监管、水果品质检测、超市零售管理等数据集说明:水果分类检测数据集,真实场景的高质量图片数据,数据场景丰富,含有苹果香蕉橙子图片标签说明:使…

功能案例 -- 通过开关,改变白天和黑夜

效果展示 代码展示 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><style>:root {--default-bac-color: #f…

MGA-WPA

作者未提供代码

分布式理论基础:CAP定理

什么是CAP CAP原则又称CAP定理&#xff0c;指的是在一个分布式系统中&#xff0c;Consistency&#xff08;一致性&#xff09;、 Availability&#xff08;可用性&#xff09;、Partition tolerance&#xff08;分区容错性&#xff09;这三个基本需求&#xff0c;最多只能同时…

关于我用半个月过了软件设计师这件事

文章底部有个人公众号&#xff1a;热爱技术的小郑。主要分享开发知识、学习资料、毕业设计指导等。有兴趣的可以关注一下。为何分享&#xff1f; 踩过的坑没必要让别人在再踩&#xff0c;自己复盘也能加深记忆。利己利人、所谓双赢。 前言 有关考取软件设计师证书的好处我就不在…

hive和spark-sql中 日期和时间相关函数 测试对比

测试版本&#xff1a; hive 2.3.4 spark 3.1.1 hadoop 2.7.7 1、增加月份 add_months(timestamp date, int months)add_months(timestamp date, bigint months)Return type: timestampusage:add_months(now(),1) 2、增加日期 adddate(timestamp startdate, int days)…

【信息安全原理】——传输层安全(学习笔记)

&#x1f4d6; 前言&#xff1a;为保证网络应用&#xff0c;特别是应用广泛的Web应用数据传输的安全性&#xff08;机密性、完整性和真实性&#xff09;&#xff0c;可以在多个网络层次上采取安全措施。本篇主要介绍传输层提供应用数据安全传输服务的协议&#xff0c;包括&…

Linux内核有什么之内存管理子系统有什么第七回 —— 小内存分配(5)

接前一篇文章&#xff1a;Linux内核有什么之内存管理子系统有什么第六回 —— 小内存分配&#xff08;4&#xff09; 本文内容参考&#xff1a; linux进程虚拟地址空间 《趣谈Linux操作系统 核心原理篇&#xff1a;第四部分 内存管理—— 刘超》 4.6 深入理解 Linux 虚拟内存…

服务器中了locked勒索病毒怎么处理,locked勒索病毒解密,数据恢复

近几年&#xff0c;网络应用技术得到了迅速发展&#xff0c;越来越多的企业开始走向数字化办公&#xff0c;极大地为企业的生产运营提供了帮助&#xff0c;但是网络技术的发展也为网络安全埋下隐患。最近&#xff0c;locked勒索病毒非常嚣张&#xff0c;几乎是每隔两个月就会对…

MySQL 约束特殊查询

MySQL 约束&特殊查询 文章目录 MySQL 约束&特殊查询1. 数据库约束1.1 约束类型1.2 NULL约束1.3 NUIQUE&#xff1a;唯一约束1.4 DEFAULT&#xff1a;默认值约束1.5 PRIMARY KEY&#xff1a;主键约束1.6 FOREIGN KEY&#xff1a;外键约束1.7 CHECK约束 2. 表的关系2.1 一…

EXCEL中将UTC时间戳转为日期格式(精确到秒)

UTC时间戳的格式通常是一个整数&#xff0c;表示从1970年1月1日00:00:00 UTC到当前时间的总秒数。它可以以秒或毫秒为单位表示。例如&#xff0c;如果当前时间是2023年3月17日 12:34:56 UTC&#xff0c;则对应的UTC时间戳为1679839496&#xff08;以秒为单位&#xff09;或1679…

【Spring】事务实现原理

在使用事务的时候需要添加EnableTransactionManagement注解来开启事务&#xff0c;Spring事务底层是通过AOP来实现的&#xff0c;所以启用事务后&#xff0c;同样会向容器中注入一个代理对象创建器&#xff0c;AOP使用的是AnnotationAwareAspectJAutoProxyCreator&#xff0c;事…

【阿里云】函数计算 X 通义千问快速部署

写在前面&#xff1a;博主是一只经过实战开发历练后投身培训事业的“小山猪”&#xff0c;昵称取自动画片《狮子王》中的“彭彭”&#xff0c;总是以乐观、积极的心态对待周边的事物。本人的技术路线从Java全栈工程师一路奔向大数据开发、数据挖掘领域&#xff0c;如今终有小成…