什么时候用
先判断任务是否合适
- 想用LLM驱动的人格化Agent模拟信息茧房、群体极化等社会现象
- 需要设计对照实验来验证政策或干预措施在社会系统中的效果
- 研究需要从文献检索到模拟分析再到报告产出的全流程自动化
先准备什么
材料越清楚,结果越有用
- •一个明确的社会科学问题或可验证的社会机制假说
- •OpenAI或其他兼容LLM的API密钥
- •已安装Python和Ray分布式计算环境
- •实验所需的Agent人格描述和环境参数
它会怎样推进
从材料到可以检查的结果
- 01
检索文献
从研究主题出发,通过多源检索获取相关论文并建立结构化文献索引
- 02
生成假设
基于文献自动生成可验证研究假设,设计实验组与对照组的实验骨架
- 03
编排实验
将假设转化为可执行实验配方,配置Agent人格、环境模块和步骤序列
- 04
运行模拟
用Ray分布式调度并行驱动大量Agent在模拟环境中交互和决策
- 05
分析结果
对模拟数据进行探索性分析,生成图表和双语研究报告
第一次这样开始
把仓库地址直接交给 AI
先让 AI 说明环境和风险,再完成最小安装验证。跑通以后,再把自己的真实材料放进去。
第一次直接复制
帮我安装这个库:https://github.com/tsinghua-fib-lab/AgentSociety 安装前先告诉我需要什么环境,安装后帮我跑通一个最小示例。
结果出来后
先看这些检查点
- 检查模拟数据量是否足够支撑研究结论
- 确认LLM决策行为与Agent人格设定的一致性
- 验证分析报告中的统计推断是否基于多seed重复实验
- 核对双语报告中的图表是否准确反映模拟结果
常见误区
这些判断仍由你负责
- 把LLM驱动的Agent当作传统ABM使用,忽视其内生决策随机性
- 未做多seed重复实验就直接下统计结论
- 依赖LLM Agent行为的表面真实性,放松对严格实验设计的要求
- 忽略环境模块的模拟保真度验证,直接采信模拟结果
技术依据
查看能力拆解、验证范围与来源
技术依据
查看能力拆解、验证范围与来源
- 01
Agent分布式调度执行
给定 agentspecs 集合和时钟,并行推进一个 tick:driver 不持有 agent 对象(record-based),每 tick 切批(BATCHSIZE 默认 256)→ 每批一个 Ray Task → task 内 asyncio.gather 并发跑该批所有 agent → 单 agent 异常隔离不中断整批。这是其相对传统 ABM 的架构卖点:内存与 N 解耦,并行来自"大量 Task"。
- 02
LLM-native决策循环ReAct
给定 tick、当前时间、observation 列表和人格,用 LLM 做多轮 ReAct 决策(每轮 LLM 产 decisions → 执行工具 → 观察追加),直到 finish 或达 maxreactturns。这是 LLM-native ABM 的核心:用 LLM 驱动人格化 agent 决策,而非传统 ABM 的规则驱动。
- 03
假设生成与实验组设计
把文献索引转换成可执行假设(HYPOTHESIS.md)和实验设计骨架(SIMSETTINGS.json,含 agentclasses、envmodules、实验组/对照组),经 Pydantic schema 校验和模块选择校验(至少一个 agent + 一个 env)。这是"文献→可执行假设+实验设计骨架"的转换,直接命中科研生命周期的实验设计环节。
- 04
实验配置与步骤编排
把假设(SIMSETTINGS.json)转换成可执行实验配方(initconfig.json + steps.yaml),经模块发现、agent spec 拆分(profile/config)、Pydantic 校验。步骤语言提供 4 类原语:run(N 步×tick 秒)、ask(提问)、intervene(干预/实验操纵)、questionnaire(问卷测量)。对照实验通过多份 profile + 多份 initconfig 实现。
| 能力 | 主要输入 | 主要输出 | 人工检查 |
|---|---|---|---|
Agent分布式调度执行源码已核对 |
|
|
|
LLM-native决策循环ReAct源码已核对 |
|
|
|
假设生成与实验组设计源码已核对 |
|
|
|
实验配置与步骤编排源码已核对 |
|
|
|
文献检索与索引化源码已核对 |
|
|
|
模拟数据收集与持久化replay源码已核对 |
|
|
|
处理机制
- 01
LLM-native社科模拟实验流水线
AgentSociety 的多张能力卡共享一条完整的研究流水线:文献→假设→实验配置→运行→分析→论文。对象从研究主题出发,经文献库、假设+实验组、initconfig+steps.yaml、agent workspace+replay,最终变成双语报告+经验记忆。本机制卡说明这些对象如何跨阶段传递,以及哪些状态会阻断或降级。
已核对范围
- 静态确认 record-based 设计:driver 不持有 agent 对象
- 静态确认 stepagentbatch @ray.remote 切批 + asyncio.gather 并发 + AdaptiveSemaphore 限流
- 静态确认 per-agent 异常隔离(不中断整批)
- 静态确认 runreactloop 的 observe → 多轮 ReAct → finish/maxturns 循环
- 静态确认 6 种路由模式(CodeGen/ReAct/Plan-Execute/Two-Tier-ReAct/Two-Tier-Plan-Execute/Search-Tool)
- 静态确认 ReactDecision 和 ReactToolResult 对象
- 静态确认 skills/hypothesis 的 manager/models 和 validatehypothesiswithmodules
- 静态确认 HypothesisDataModel 和 ExperimentGroupModel(对照/实验组)schema
仍待核对
- 未真实运行大规模 agent 模拟
- 未验证 record-based 设计在大 N 下的内存/磁盘表现
- 未真实运行 agent 决策循环
- 未验证不同路由模式在社科模拟中的效果差异
- 未真实运行假设生成
- 未验证生成假设的科研质量
- 未真实运行实验编排
- 未验证对照实验多 config 编排在真实场景的效果
读取版本
source-reviewed许可
Apache-2.0
最近核对
内容 2026-06-19
Stars 2026-07-11
相关文章
具备相关能力的其他库
相关课程
把单项工具放进完整研究设计流程
课程一从研究问题、文献判断、理论假设和方法骨架继续推进,帮助你建立可以复用的研究设计档案。