多Agent世界模拟游戏:一场场外要素拉满的AI狼人杀
多Agent世界模拟游戏:一场场外要素拉满的AI狼人杀
多Agent世界模拟游戏界面展示
最近看到一个新闻,有人把多个大模型(LLM)放进一个小镇里让它们自由生活。觉得很有意思,我就去翻了翻开源仓库想亲自部署玩一玩,结果发现所谓“开源”缺胳膊少腿,核心代码藏得严严实实。
于是干脆自己动手,撸了个多Agent的世界模拟小项目,不仅能看AI小镇日常,还能把场外要素拉满,来一局AI版狼人杀。
核心思路与架构
- 角色即Agent:每个AI角色都由一个LLM驱动,有自己的设定、性格和记忆;
- 环境即舞台:通过外部状态管理(如时间、地点、物品)来驱动交互;
- 规则即剧本:狼人杀的投票、夜晚行动、角色技能以模块化方式实现,可自由替换;
- 记忆与推理:将对话与事件写入记忆库,让AI在后续决策中基于“已知信息”进行推理。
场景玩法:从日常社交到狼人杀
默认模式是生活模拟,角色会在咖啡馆聊天、在公园散步、交换八卦。你也可以手动干预——发布任务、改变天气、甚至安排突发事件,观察它们的反应。
狼人杀模式是重头戏:
- 场外要素拉满:你可以设置角色间的秘密关系、私聊、甚至让某个Agent偷偷“偷听”;
- 自由发言阶段:角色会基于记忆进行辩解、指控或拉票;
- 投票与处决:规则驱动的投票逻辑,AI会根据前一轮对话调整态度;
- 夜晚行动:狼人杀人、预言家查验、守卫守护,每一步都有记录可回溯。
技术选型与踩坑
- LLM驱动:建议使用支持长上下文的模型,记忆更完整;
- 记忆管理:我把角色记忆拆成“短期(本轮事件)”“中期(当天重要对话)”“长期(人设与关系)”,避免信息溢出;
- 并发控制:多Agent同时发言会造成混乱,我加了发言序列与角色轮换机制;
- 成本权衡:可以先用小模型跑逻辑,关键时刻切大模型提升推理能力。
部署与扩展
- 一键启动:支持Docker Compose,把配置文件填好就能开跑;
- 自定义剧本:你可以写自己的世界观与角色设定库;
- 多模态扩展:预留了图像与音频接口,未来可把角色对话同步为语音;
- 开箱即玩:附赠几个预设剧本(经典警匪、校园传闻、公司内斗),直接就能上手。
我遇到的坑与解决方案
- 对话跑偏:给每个角色加了一层“规则约束”,减少无关闲聊;
- 记忆碎片:把关键事件以结构化格式存入Redis,查询更快;
- 状态不一致:引入时间戳校验,防止角色基于过期信息行动。
如果你也对AI角色扮演、虚拟社交或多Agent协同感兴趣,不妨来试试把“小镇”改成“公司”“学校”甚至“朝堂”,规则由你定,戏由AI来演。
评论已关闭