开源项目第184期:MiroFish — 盛大出品的群体智能预测引擎,用数千 AI Agent 模拟社会演化来预测未来

引言

"传统预测工具失败的地方,不是因为缺少数据,而是因为它们忽略了个体交互涌现出的集体行为。"

这是「每日一个开源项目」系列的第 184 篇 。今天的项目是 MiroFish ------ 盛大集团支持的开源多 Agent 仿真预测引擎,2025 年 12 月发布,2026 年 3 月登顶 GitHub 全球趋势榜,现有 69,800 颗 Star。

MiroFish 的出发点很具体:给你一篇新闻报道或一份政策文件,你想预测接下来会发生什么,不是统计回归,而是"这件事在真实社会里会怎么演化"。MiroFish 的方案是建一个数字孪生世界------数千个 AI Agent 各有性格、记忆和社会关系,放进去模拟交互,看涌现出什么结果,最后给你一份带有深度分析的预测报告,你还可以直接和任何一个模拟中的 Agent 对话。

"预测任何事情的简单通用群体智能引擎"------这是它的口号。

69,800 Stars,10,900 Forks,AGPL-3.0。

你会学到什么

  • 群体智能预测的核心逻辑:为什么要模拟个体交互
  • MiroFish 的四步工作流:图构建 → 环境配置 → 仿真 → 报告生成
  • GraphRAG + Zep 长期记忆:Agent 的"认知基础设施"
  • 三个已验证的使用场景:舆情仿真、文学续写、未来预测
  • ReportAgent + 深度交互:和模拟结果"对话"
  • 安装和配置:Docker 或源码部署

前提知识

  • 了解 LLM 和 AI Agent 的基本概念
  • 熟悉 Docker 基础操作
  • 对知识图谱(知道节点和边是什么)有基本认知

问题背景:预测为什么难

天气预报失效的地方不是缺少算力,是因为蝴蝶效应------初始条件的微小差异导致结果完全不同。社会预测的难度本质上也是这个:

  • 一条政策发布,各行各业的人会有不同反应,这些反应会互相影响,最终涌现出一个谁也没有单独"设计"的宏观结果
  • 一篇新闻在不同圈子里的传播路径完全不同,情绪演化、信息变形、群体分化,这些都不是简单的线性预测能捕捉的

传统预测工具(统计模型、专家系统)的局限在于:它们描述的是"平均行为",而真实结果往往是极端尾部和涌现现象。

MiroFish 的方案:不预测平均,模拟个体。把数千个有差异的 Agent 放进一个数字世界,让它们互相作用,观察涌现出的集体行为。


核心工作流:四步 + 深度交互

Step 1:图构建(Graph Building)

输入种子材料:新闻文章、研究报告、小说章节......任何文本都行。

引擎用 GraphRAG 从种子材料里提取知识图谱:

  • 识别实体(人物、组织、地点、事件)
  • 提取实体间的关系
  • 注入个体记忆和集体记忆
markdown 复制代码
种子材料(武汉大学新闻报道)
    → GraphRAG 实体提取
    → 构建社交关系网络
    → 注入历史背景记忆
    → 输出:知识图谱 + 记忆基础

Step 2:环境配置(Environment Setup)

基于知识图谱生成仿真环境的各个组件:

  • 实体关系提取:从图谱里确定谁和谁有关联
  • 人格生成:为每个 Agent 生成独立的性格、立场、价值观
  • Agent 配置:把人格、记忆、社会关系写入每个 Agent 的初始状态

每个 Agent 是真正独立的个体,不是同一个模板的副本。一个保守派中年教授和一个活跃的大学生在面对同一则新闻时,会有截然不同的反应和传播行为。

Step 3:仿真(Simulation)

双平台并行仿真,底层基于 CAMEL-AI 团队的 OASIS 框架:

  • 自动解析预测需求:从你的目标描述里提取仿真参数
  • 动态时序记忆更新:Agent 的记忆随仿真时间推进而更新,早期事件影响后期决策
  • "上帝视角"变量注入:仿真进行中可以动态注入新事件,观察扰动后的演化路径

仿真过程中,数千个 Agent 在平行时间线上交互,产生海量的对话、决策和行为记录。

Step 4:报告生成(Report Generation)

仿真结束后,ReportAgent 接管:

  • 分析仿真全程的数据
  • 识别关键转折点和驱动因素
  • 使用 ReACT 工具集做深度推理(包括 web_search 工具,可以把仿真预测和现实数据交叉验证)
  • 输出结构化预测报告:趋势分析、风险点、概率评估

Step 5:深度交互

报告不是终点。你可以直接和任何一个仿真中的 Agent 对话:

markdown 复制代码
用户:你在这次事件里为什么选择转发这条消息?
Agent(张教授):我看到消息的时候正在开会,第一反应是
                这和我去年研究的一个案例很像......

也可以和 ReportAgent 对话,追问报告里的任何细节,或者要求它重新分析某个角度。


技术架构

markdown 复制代码
前端(Node.js 18+)
    ↕
后端(Python 3.11-3.12)
    ├── GraphRAG 模块        ← 知识图谱构建
    ├── OASIS 仿真引擎       ← CAMEL-AI 开源框架
    ├── Zep Cloud            ← Agent 长期记忆存储
    ├── LLM 接口             ← OpenAI 兼容 API
    └── ReportAgent          ← ReACT 工具集推理

关键组件说明:

OASIS(CAMEL-AI):开源的大规模多 Agent 社会仿真框架,专门为"数千 Agent 并发互动"场景设计,是 MiroFish 的仿真引擎底座。

Zep Cloud:专为 AI Agent 设计的长期记忆服务,让 Agent 在跨越多个时间步的仿真里保持记忆一致性。免费 tier 足够基本使用。

GraphRAG:微软开源的基于知识图谱的 RAG 方案,在 MiroFish 里负责从种子材料里结构化提取知识,为 Agent 提供背景记忆。

推荐 LLM:官方推荐阿里云 Qwen-plus,也支持任何 OpenAI 兼容接口(GPT-4o、Claude、本地 Ollama 等)。


三个验证场景

场景一:舆情演化仿真

种子 :武汉大学某事件的新闻报道

目标:预测社交媒体上的舆论走向

MiroFish 生成了代表不同群体的 Agent(学生、教师、媒体、管理层),模拟信息在不同圈子里的传播、变形、放大过程,输出舆论演化路径预测。

场景二:文学结局推断

种子 :《红楼梦》前 80 回

目标:推断后 40 回(曹雪芹原稿遗失部分)的可能结局

这个案例很有意思:MiroFish 把《红楼梦》里的人物作为 Agent,基于前 80 回的人物关系和性格设定,让他们继续"活着"互动,观察故事的自然演化走向。

场景三:金融和政治预测

标注为"即将支持"。已有 demo 展示基于财经新闻的市场情绪演化仿真。


安装和快速上手

环境变量准备

bash 复制代码
cp .env.example .env

编辑 .env,填入:

env 复制代码
LLM_API_KEY=your_api_key
LLM_BASE_URL=https://dashscope.aliyuncs.com/compatible-mode/v1  # 阿里云 Qwen
LLM_MODEL_NAME=qwen-plus

ZEP_API_KEY=your_zep_cloud_key  # zep.us 注册,免费 tier 够用

Docker 部署(推荐)

bash 复制代码
docker compose up -d
# 前端:http://localhost:3000
# 后端:http://localhost:5001

源码部署

bash 复制代码
npm run setup:all   # 安装前后端所有依赖
npm run dev         # 启动开发模式

项目地址与资源


总结

MiroFish 代表的是一种预测范式的转变:从"统计历史数据推断趋势"到"模拟社会个体交互观察涌现"。

这两种方式各有适用场景。统计模型在趋势延续的场景里准确而高效。但当你面对的是一个高度非线性的社会系统------新政策冲击、突发事件扩散、复杂的群体博弈------线性外推往往在关键时刻失效,因为它捕捉不到个体异质性和互动产生的涌现行为。

MiroFish 的技术路线图里也反映了这个判断:舆情和文学续写只是起点,金融和政治预测才是更有价值的应用目标,也是技术真正接受检验的地方。

2025 年 12 月发布,2026 年 3 月登顶 GitHub 全球趋势,这个速度说明"可仿真的预测"这件事击中了很多人的想象。


探索 PrimeSkills ------ 精选 AI Agent 与技能的市场,每一个都经过真实企业工作流验证,去掉浮夸,留下真正有用的。

欢迎访问我的个人主页,发现更多有价值的见解和有趣的产品。

相关推荐
单向箔10 小时前
08|一套可复制的 AI Coding 流程:从需求到提交怎么走
人工智能·prompt·ai编程
寻林写彡10 小时前
从技术报告到面试入口:安全岗位简历如何用问题、关键技术与量化结果重写项目经历
面试·开源
AI棒棒牛10 小时前
YOLO26 改进:融合 LW-DETR 思想的轻量 TokenMixer,让 Neck 从局部堆叠走向局部-全局协同!嘎嘎创新!
人工智能·深度学习·yolo·目标检测
Hello.Reader10 小时前
REA 深度实战让 AI Agent 学会逆向工程,从软件行为分析到二进制原理还原
人工智能
William一直在路上10 小时前
垂直领域大模型训练的一点思考和探索
人工智能·大模型·llm
腾讯云大数据10 小时前
本体立骨架,语义供刻度——DataBuddy对企业AI语义架构的一次完整回答
大数据·人工智能·架构·云计算·腾讯云
武汉星际互动10 小时前
从“一件事”到“一类事”,政务服务改革的“下一站”在哪里?
大数据·人工智能·政务
朝朝辞暮i10 小时前
VLA 系统学习第 20 课——Diffusion Policy 为什么要先给动作加噪,再学习把噪声去掉?
人工智能·python·深度学习·transformer·vla
七夜zippoe10 小时前
Agent 权限边界:别让 AI 误删你的生产库(安全设计)
数据库·人工智能·安全·ai·权限边界·安全设计
田里的水稻10 小时前
RL_强化学习概述---具身机器人
人工智能·深度学习·神经网络·机器学习