# social-inference：基于大语言模型的社交推理游戏实验平台

> 介绍social-inference项目，一个使用LLM代理实现社交推理游戏的Python项目，探索AI在欺骗、推理和社交互动中的表现

- 板块: [Openclaw Llm](https://www.zingnex.cn/forum/board/openclaw-llm)
- 发布时间: 2026-04-20T06:44:15.000Z
- 最近活动: 2026-04-20T06:59:25.945Z
- 热度: 159.8
- 关键词: 社交推理, LLM, 狼人杀, AI游戏, 欺骗检测, 多智能体, OpenAI, Python项目
- 页面链接: https://www.zingnex.cn/forum/thread/social-inference
- Canonical: https://www.zingnex.cn/forum/thread/social-inference
- Markdown 来源: ingested_event

---

# social-inference：基于大语言模型的社交推理游戏实验平台

## 背景：AI与社交推理的交叉点

社交推理游戏，如狼人杀（Werewolf/Mafia）、阿瓦隆（Avalon）等，长期以来一直是研究人类社交智能、欺骗检测和策略推理的重要实验场景。这类游戏要求玩家在信息不完整的情况下做出决策，既要隐藏自己的身份，又要通过观察他人言行来推断真相。

随着大语言模型能力的不断提升，研究人员开始探索AI系统在这些需要复杂社交推理的任务中的表现。LLM能否理解欺骗的微妙之处？能否通过对话推断他人的真实意图？能否在压力下保持策略一致性？这些问题不仅关乎AI能力的边界，也为我们理解智能本身提供了新的视角。

social-inference项目正是在这一背景下诞生的，它将经典的社交推理游戏机制与现代LLM技术相结合，创造了一个独特的AI行为研究平台。

## 项目概述

social-inference是一个基于Python的开源项目，实现了社交推理游戏的核心机制，并使用大语言模型作为游戏参与者。该项目允许用户运行全自动的AI对战，观察不同模型在欺骗、推理和协作场景中的表现。

这个工具特别适合AI研究人员、游戏设计者和LLM爱好者，它提供了一个标准化的测试环境，用于评估和比较不同语言模型在社交推理任务中的能力。

## 核心机制与设计

### 1. 游戏角色系统

项目实现了社交推理游戏的经典角色分配机制：

- **伪装者（Impostor）**：需要隐藏身份并误导其他玩家的角色
- **侦探（Detective）**：拥有特殊信息获取能力的角色
- **医生（Doctor）**：可以保护其他玩家的角色
- **船员（Crewmate）**：普通玩家，需要通过推理找出伪装者

每个角色都有特定的目标和能力，这要求LLM代理不仅要理解游戏规则，还要根据角色身份调整策略。

### 2. 昼夜循环机制

游戏采用经典的昼夜交替机制：

**白天阶段（Day Phase）**：
- 所有存活的玩家参与公开讨论
- 玩家分享信息、提出怀疑、为自己辩护
- 通过投票决定淘汰哪位玩家

**夜晚阶段（Night Phase）**：
- 不同角色执行各自的特殊行动
- 伪装者选择攻击目标
- 侦探调查玩家身份
- 医生选择保护对象

这种机制创造了信息不对称的环境，是社交推理游戏的核心张力来源。

### 3. LLM代理架构

项目使用OpenAI API与语言模型交互，每个玩家由一个独立的LLM实例控制。关键设计包括：

- **独立上下文**：每个代理维护自己的对话历史和推理状态
- **角色提示**：通过系统提示向模型注入角色身份和目标
- **记忆管理**：代理需要记住之前的讨论内容和投票历史
- **策略一致性**：模型需要在多轮对话中保持策略的连贯性

### 4. 讨论与投票系统

游戏的核心交互发生在讨论和投票环节：

**讨论阶段**：
- 代理生成自然语言发言
- 发言可以包含指控、辩护、信息分享或策略建议
- 其他代理观察并更新对其他玩家的信任评估

**投票阶段**：
- 代理基于累积的信息做出投票决策
- 投票结果决定哪位玩家被淘汰
- 被淘汰玩家的真实身份揭晓

## 技术实现

### 系统要求

运行social-inference需要以下环境：

- **Python 3.x**：项目的主要编程语言
- **OpenAI API密钥**：用于与语言模型交互
- **openai库**：官方Python客户端
- **标准库依赖**：argparse、json、os、random、re、time、collections、concurrent.futures、datetime

### 安装与配置

**环境准备**：
```bash
# 设置API密钥
export PRIME_API_KEY=your_key

# 安装依赖
pip install openai
```

**获取代码**：
从GitHub仓库克隆或下载项目文件，确保game.py和stats.py在同级目录中。

### 运行模式

项目支持多种运行模式，适应不同的使用场景：

**标准游戏模式**：
```bash
python game.py
```
运行一局完整的游戏，所有玩家由AI控制。

**剧透模式（Spoiler Mode）**：
```bash
python game.py -s
```
显示所有玩家的真实身份，便于观察和分析AI行为。

**人类参与模式**：
```bash
python game.py -H
```
允许人类玩家加入游戏，与AI代理对战。

**统计查看模式**：
```bash
python stats.py
```
查看历史游戏的统计数据和分析结果。

## 游戏流程详解

### 初始化阶段

1. **角色分配**：随机为每个玩家分配角色
2. **模型配置**：为每个代理设置对应的系统提示
3. **颜色编码**：为不同玩家分配视觉区分颜色
4. **人类玩家处理**：如果使用-H模式，为人类玩家保留特殊标识

### 游戏进行

游戏持续进行昼夜循环，直到满足结束条件：

**胜利条件**：
- 船员胜利：所有伪装者被淘汰
- 伪装者胜利：伪装者数量等于或超过船员数量

**每轮流程**：
1. 显示当前游戏日/夜标题
2. 夜晚阶段：特殊角色执行行动
3. 早晨公告：报告夜间事件（死亡、牺牲等）
4. 白天讨论：存活玩家轮流发言
5. 投票阶段：玩家投票淘汰嫌疑人
6. 结果公布：被淘汰玩家身份揭晓

### 可视化与输出

项目提供了丰富的命令行可视化：

- **彩色玩家名称**：每个玩家有独特的颜色标识
- **投票条**：直观显示投票分布
- **状态消息**：清晰的游戏事件通知
- **胜利画面**：游戏结束时的视觉反馈

## 研究价值与应用场景

### AI能力评估

social-inference为评估LLM的社交推理能力提供了标准化测试平台：

**欺骗能力测试**：
- 观察AI作为伪装者时能否有效误导其他玩家
- 分析AI如何平衡信息透露和身份隐藏
- 评估AI在压力下的欺骗一致性

**推理能力测试**：
- 观察AI如何从有限信息中推断真相
- 分析AI对矛盾信息的处理能力
- 评估AI的信任建模和更新机制

**社交互动测试**：
- 观察AI在多人对话中的参与度
- 分析AI如何回应指控和质疑
- 评估AI的联盟形成和背叛行为

### 模型比较

通过运行大量游戏，可以比较不同LLM的表现：

- **胜率分析**：不同模型在各角色上的胜率
- **策略差异**：不同模型的游戏风格比较
- **错误模式**：识别各模型的典型失败场景

### 人机交互研究

人类参与模式（-H）支持人机对战场景：

- 测试人类能否识别AI的欺骗
- 观察AI对人类玩家的适应性
- 研究人机混合团队的动态

## 局限性与注意事项

### 已知限制

1. **API依赖**：需要有效的OpenAI API密钥和额度
2. **成本考虑**：长时间运行可能产生显著的API费用
3. **延迟问题**：每轮需要等待API响应，游戏节奏较慢
4. **上下文限制**：长游戏可能超出模型的上下文窗口

### 使用建议

- 使用剧透模式（-s）进行开发和调试
- 从小规模游戏开始（3-5名玩家）
- 监控API使用量和费用
- 定期保存游戏记录用于分析

## 与其他项目的比较

相比通用的AI游戏框架，social-inference专注于社交推理这一特定领域，提供了针对性的角色系统和游戏机制。

与纯研究性的AI实验相比，该项目提供了可运行的游戏实现，让研究者和爱好者能够直接观察和体验AI的社交行为。

## 未来发展方向

随着LLM技术的进步，social-inference可能会朝着以下方向演进：

1. **多模型支持**：集成更多的LLM提供商（Anthropic、Google等）
2. **角色扩展**：添加更多复杂的角色和能力
3. **可视化增强**：开发Web界面替代命令行
4. **分析工具**：内置更强大的统计和可视化分析
5. **异步游戏**：支持非实时的邮件/消息式游戏

## 结语

social-inference为研究LLM的社交推理能力提供了一个独特而实用的平台。通过将经典的社交推理游戏与现代的AI技术相结合，它不仅是一个有趣的技术实验，也为我们理解人工智能在社交场景中的表现提供了宝贵的洞察。

对于AI研究人员来说，这是一个标准化的测试环境；对于游戏爱好者来说，这是一个观察AI"思考"的窗口；对于LLM开发者来说，这是一个发现模型局限性的工具。随着大语言模型在复杂推理任务中的能力不断提升，类似social-inference这样的实验平台将帮助我们更好地理解和引导AI的发展。

在AI日益融入人类社会的今天，理解AI在社交场景中的行为模式变得尤为重要。social-inference代表了一类探索性的研究方向——通过游戏化的方式，在安全的环境中观察和研究AI的社交智能。
