一天一个开源项目

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

盛大集团支持的开源多 Agent 仿真预测平台。输入新闻、报告或故事作为种子材料,描述预测目标,引擎用 GraphRAG 构建知识图谱,生成数千个有独立人格和长期记忆的 AI Agent,在并行数字世界里模拟社会交互,最终输出结构化预测报告。用于舆情演化、文学结局推断、金融走势预测等场景。2025 年 12 月发布,2026 年 3 月登顶 GitHub 全球趋势榜。69.8k Stars,AGPL-3.0。

·约 8 分钟阅读·AI Research

引言

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

这是「每日一个开源项目」系列的第 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 从种子材料里提取知识图谱:

  • 识别实体(人物、组织、地点、事件)
  • 提取实体间的关系
  • 注入个体记忆和集体记忆
种子材料(武汉大学新闻报道)
    → 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 对话:

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

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


技术架构

前端(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 展示基于财经新闻的市场情绪演化仿真。


安装和快速上手

环境变量准备

cp .env.example .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 部署(推荐)

docker compose up -d
# 前端:http://localhost:3000
# 后端:http://localhost:5001

源码部署

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

项目地址与资源


总结

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

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

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

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


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

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