斯坦福小镇开源项目探索

项目概况

仓库

原始仓库

https://github.com/joonspk-research/generative_agents

迭代仓库

https://github.com/edsml-sm2323/generative_agents/tree/fix-and-improve

如何使用(翻译总结自迭代仓库)

  1. Conda create 一个python==3.9.12的隔离环境

  2. pip install -r requirements.txt

  3. 按照github对应仓库中步骤在项目根目录中创建openai_config.json用于切换使用的模型(openai、azure)

  4. 如何使用:

  5. 自动化运行脚本:

    The following script offer a range of enhanced features:

    1. Automatic Saving :模拟每 200 步自动保存进度,确保您永远不会丢失数据。

    2. Error Recovery :如果发生错误,模拟会通过后退并从上次成功点重新开始来自动恢复。这一点至关重要,因为该模型依赖于格式化的答案,这有时会导致异常。

    3. Automatic Tab Opening :必要时将自动打开新的浏览器选项卡。 Headless Mode :脚本支持在 Chrome 的无头模式下运行模拟,从而能够在没有 UI 的服务器上执行(需要安装headless-chrome) 。 Configurable Port Number :您可以根据需要配置端口号。

    4. 有关更多详细信息,请参阅: run_backend_automatic.shautomatic_execution.py 。 ./run_backend_automatic.sh -o <ORIGIN> -t <TARGET> -s <STEPS> --ui <True|False> -p <PORT> --browser_path <BROWSER-PATH>

    Example: 例子: 
    ./run_backend_automatic.sh -o base_the_ville_isabella_maria_klaus -t test_1 -s 4 --ui False

简介

总览

项目类似一个平面的沙盒游戏,沙盒环境利用数据表示,然后利用LLM模型模拟人类交互,每个人类个体视作一个agent,在初始情况下,为每个agent提供:

  1. 初始的记忆库
  2. 初始的环境位置信息
  3. 初始的agent状态

然后你可以指定:run <step-count>等命令进行模拟(具体运作步骤可参考GitHub仓库README.md)

在项目对应论文中,可以总结类似如下的模拟:

项目中有25个人,每个人有记忆行为 (姓名 ,年龄,干过什么,性格特点,认识那些朋友,家庭关系);

第一种交互:人物与人物碰面后进行简短的聊天;

第二种交互:人物在移动过程中可能会发现一些事物,比如xx要竞选市长了。进行思考。更改或者规划未来行为

项目结构(以下结构和分析摘选自B站up)

B站大佬:迪哥谈AI的个人空间-迪哥谈AI个人主页-哔哩哔哩视频

项目的逻辑

上述分析已经十分清晰,大概流程就是在已经设定好的prompt指导下进行agent交互,具体总结下来就是:

感知模块(这就是可以调整的项目拓展点)
  • 时效:衰减性质
  • 重要性:LLM给出评分
  • 相关性:余弦相似度

权重累乘

思考模块

根据记忆库信息通过LLM给出哪些问题,然后反思,最终总结信息并计划

项目玩法

大致了解这项目我们会发现,整个项目和其对应的论文不牵涉任何的算法,仅仅通过prompt来指导模型的输出,然后用这些agent给出的输出进行记忆库更新和逻辑推理

不涉及算法推理,那么这个项目就更加的友好

那么,如何怎么玩转这个项目呢?

主体部分应该是涉及模型的切换

科大讯飞星火大模型

我在探索这个项目时接入的第一个模型就是星火认知模型(有200万token的免费量)

下面分享相关的一些问题记录:

有哪些模型

安装

  1. 安装包:

pip install --upgrade spark_ai_python

2. 按照api文档进行开发:https://www.xfyun.cn/doc/spark/Web.html

3. 按照文档成功接入:

文本向量化和调试问题(这些问题可被参考)

一些问题

1. openai_client Error: got an unexpected keyboard argument ''

  后续解决:Error with OpenAI 1.56.0 - Client.__init__() got an unexpected keyword argument 'proxies' - API - Op

  openai 包运行报错TypeError: Client.__init__() got an unexpected keyword argument ‘proxies‘_openai got an 

pip install httpx==0.27.2

 2. openai地域访问问题:

添加os.environ["HTTP_PROXY"]=127.0.0.1 os.environ["HTTPS_PROXY"]=127.0.0.1以便代理VPN生效

3. 其他格式问题

单点测试openai和星火模型的输出并进行对比,务必添加相关函数处理相关信息使引入的新模型输出的内容和openai输出的相同

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值