袁天AI developer
← 返回目录
NO.04 · 2026 · 09

狼人杀 AI:多智能体博弈与信息隔离

六个 AI 各打各的,谁也别想偷看别人的牌 · 约 3 分钟读完

凑不齐人玩狼人杀,那就让 AI 来补。这是一个局域网狼人杀:0 到 6 个真人都能开局,空位 AI 补上,也可以干脆坐着看六个 AI 互相忽悠。最好玩也最难的地方是让每个 AI 只凭自己知道的东西做判断,狼可以撒谎,但不能作弊。

规则

固定六人局:2 狼、1 预言家、1 女巫、1 猎人、1 平民,不设警长。房主可以留几个真人位,也可以直接开全 AI 局。

狼人杀房间大厅:六个席位、AI 补位下拉、开始对局与 AI 对抗模式
房间大厅:哪几个位置给真人,剩下的 AI 补。
真人席位对局视角:身份卡与发言输入框
真人视角:能看到自己的身份,以及这一步能做什么。

每个 AI 自己想、自己做

六个玩家 Agent 加一个裁判,各配各的。每个玩家有自己独立的会话,每轮大概是这样:

步骤 拿到什么 / 交出什么
看 公开事件、大家的发言、只有自己知道的情报、自己现在的立场
想 内心独白,只给观众看,在场的玩家看不到
说 这一轮能公开说的话
做 刀、救、毒、验、投票、开枪或者跳过
记 自己最近想过什么、说过什么

模型每次都交回独白、发言、立场、动作四样。动作交给引擎检查,合法才执行;模型说的话再花哨,也改不了游戏状态。

纯 AI 对战 · 观众页面第 1 天投票:事件流里的公开发言
全 AI 局的公开事件流,发言可以点开听语音。

狼可以演,但不能越权

提示词按身份和阶段给了一些套路:狼悍跳预言家、前期装好人帮忙分析、首夜自刀骗女巫的药。AI 得在发言里把自己的戏演圆,同时提交的动作又必须符合真实身份。

所以发言随便演,技能却是引擎按身份、阶段、目标合不合法来判的。平民说自己验了人没问题,真要去验,引擎不让。

纯 AI 对战 · 观众页面第 1 夜:狼队密谋与内心独白
观众视角能看到狼队夜里怎么商量、每个人心里怎么想。还在场的玩家收不到这些。

别让 AI 偷看

光在提示词里写「别泄露」是没用的。我在两个地方卡:给模型拼上下文的时候,和真正往外发消息的时候。消息分三条路走:

  • 公开广播:所有玩家和观众都收得到。
  • 观战推理:AI 的内心独白,只发给观众和已经出局的人。
  • 席位私密:只发给对应的那个位置,比如预言家的验人结果。

测试也分两层:一层快速检查发送规则,另一层真的起一局 WebSocket 对战,看每个客户端实际收到了哪些消息。私密信息有没有混进公共频道、不该说话的阶段有没有清掉发言、在场的人有没有收到别人的心思,都在里面。具体怎么想的写在《多 Agent 信息隔离》。

等太久了怎么办

能复用就复用

语音合成按文本和参数算缓存键,同一句话不合成第二遍。裁判开场白提前生成好;终局点评丢到后台去做,不卡结算。玩家和裁判用不同的模型和输出长度。

裁判点评一开始要等两分多钟,后来发现是开了长推理。这种「把一局总结一下」的活用不着深度思考,关掉之后几秒就出来了。

能并行就并行

女巫要等知道谁被刀了才能决定,投票要等所有人说完,这些必须按顺序来。在同一份信息下能各自想的请求才一起发,结果再按固定顺序写回去。

我用同一个随机种子分别跑并行和串行,比较两边的公开事件序列,确认改成并行没有把对局逻辑弄乱。这部分的思路在《多 Agent 并行》。

最后

做多 Agent 博弈,角色提示词其实是最简单的一块。谁能看到什么、模型说的话怎么变成动作、并行的结果怎么写回状态,这些都得在模型外面想清楚。

LLM Agent多智能体FastAPIWebSocket提示词工程信息隔离
© 2026 袁天FEATURE / 04
小鲸鱼 · AI 导航
小鲸鱼正在连接…

站上的内容我都读过。直接联系袁天 →

小鲸鱼我是助手小鲸鱼。内容、笔记,或者有什么想知道的,直接问我。