不预测数字,而是重演未来:多智能体仿真引擎 MiroFish 上手体验

用预测类工具的人,多多少少都碰到过这种别扭:你丢进去一堆历史数据,它回你一个数字------"下季度大概涨 3.2%"。可你接着想问一句"为什么会是 3.2%""要是中途出了个突发事件呢",它就答不上来了。

问题不在于算得准不准。问题在于,很多现实里的结果压根不是"算"出来的,而是一大群人你来我往、互相影响之后涌出来的。舆论怎么转向、情绪怎么发酵、政策一出来大家会怎么反应------这些东西你很难用一条曲线拟合,因为它们本来就是动态博弈的产物。

最近在 GitHub 上翻到一个思路完全不同的项目,叫 MiroFish 。它不拟合数字,而是直接搭一个"平行世界",往里塞几千个带性格、带记忆的 AI 角色,让它们在里头自由发言、互相影响,然后看这个群体最后会演化成什么样。说白了,它预测的不是一个数字,而是一段剧情走向。

我花时间把它的仓库、文档和示例都过了一遍,这篇就聊聊它到底怎么用、好用在哪、以及哪些地方得心里有数。


一句话说清它是什么

MiroFish 官方给自己的定义是"简洁通用的群体智能引擎,预测万物"。这话有点大,翻译成人话大概是:

你给它一份材料(比如一份行业报告、一段新闻、甚至一本小说),再用一句话描述你想预测什么,它就在后台"复活"出一群虚拟的人,让他们围绕这个话题讨论、站队、争论若干轮,最后给你一份趋势分析报告。

打个比方会更直观。传统的预测模型像是拿一张历史照片 去推测下一帧;MiroFish 更像是拉了一个剧组,给每个演员写好人物小传,让他们就一个话题即兴演一场戏,你坐台下看剧情往哪儿走。

名字里的 Fish 我觉得挺好懂:鱼群没有中心指挥,成千上万条鱼各自只遵循简单的规则,却能在水里聚成壮观的图案------这就是所谓的"群体涌现"。MiroFish 想复刻的,正是这种"个体简单、群体复杂"的现象。


先看数据:这项目现在什么热度

改写的时候我顺手核了下仓库的实时数据,顺便说一句,网上不少介绍文章的 star 数都停在老版本了,实际早就涨上去了:

项目 数据
GitHub Stars 约 77,500
Forks 约 11,800
开源协议 AGPL-3.0
最新版本 v0.1.2
主要语言 Python(后端)+ Vue(前端)
仿真引擎 OASIS(来自 CAMEL-AI 团队)
背后支持 盛大集团战略孵化
配套项目 BettaFish / 微舆(舆情数据采集,约 4.2 万 Star)

作者是 GitHub 上的 666ghj 。他有另一个很有名的项目 BettaFish(微舆) ,做的是从 30 多个平台采集舆情数据。有意思的是,这两个项目能接成一条线:BettaFish 负责"看现在",把现实里的舆情、情绪数据扒回来;MiroFish 负责"推以后",把这些数据当种子,演一遍未来。 一个采数据,一个跑预演,正好凑成一个闭环。


它是怎么跑起来的:五个阶段

MiroFish 的整个流程被拆成五步,一步接一步走,中途不跳步。官方文档里叫"工作流程",我把它和每步实际干的事整理成一张表:

阶段 官方叫法 这一步实际做的事
1 图谱构建 从种子材料里抽信息,建一张知识图谱,同时给智能体注入背景记忆
2 环境搭建 抽取实体之间的关系,自动生成"人设",再把仿真参数注入进去
3 开始模拟 两个平台并行跑仿真,自动解析你的预测需求,动态更新时序记忆
4 报告生成 一个专门的 ReportAgent(报告智能体)调用各种工具去分析仿真结果
5 深度互动 你可以跟仿真世界里的任意一个角色对话,也可以追问报告

前四步基本是自动的,你只需要在第 1 步上传材料、在第 2 步填几个参数,然后等结果。第五步才是真正好玩的地方------报告不是终点,你还能跟这个"平行世界"里的人接着聊。


三个我觉得挺妙的设计

GraphRAG:让角色会"推理关系",而不只是"查资料"

大部分 RAG(检索增强生成,简单说就是"先查资料再回答")的做法是:把文档切碎、转成向量、找相似的段落。问题是它只能告诉你"文档里有哪些事实",没法推理"A 变了会让 B 怎么变"。

MiroFish 用的是 GraphRAG(图增强检索),做法是把文档里的实体和关系抽出来,连成一张网。这样角色就能顺着关系链去推理------比如"政策 X 会影响群体 Y,而 Y 的反应又反过来影响 Z"。在仿真里,这种"因果链"恰恰是最关键的东西。

Zep 记忆:让角色不至于"每轮都失忆"

多智能体仿真有个经典毛病:如果每一轮对话角色都从零开始,那行为就前后不搭,预测出来的东西也没什么参考价值。这个项目给每个智能体都挂了一块独立记忆(用的是 Zep Cloud 的记忆服务),让它记得住自己之前说过啥、跟谁聊过。角色因此更像一个"有连续认知的人",而不是一个健忘的复读机。

上帝视角注入:从"会发生什么"变成"如果我这么做会怎样"

这是我自己觉得最实用的功能。仿真跑到一半,你可以从"上帝视角"往世界里丢一个变量------比如"竞争对手突然降价 20%""某条政策提前发布"------然后看整个群体怎么应对。

普通预测工具只能回答"未来会怎样";能注入变量的好处是,它能回答"我要是这样做,未来会怎样"。工具一下子从"算命"变成了"决策沙盘"。

另外它还做了个挺诚实的处理:同一个仿真在两个独立平台上并行跑一遍。两边结果高度一致,就说明结论比较稳;两边差得远,就标出来提醒你"这里不确定,别太当真"。比起硬给一个自信满满的数字,我更愿意接受这种"承认自己不确定"的做法。


上手实测

环境要求(这里跟一些老教程写得不一样)

我得先说一句:网上不少介绍(包括我参考的那版原文)写的是"Python 3.10+、Node.js 16+",但我对着官方 README 核对后发现对不上。以官方文档为准,实际要求是:

工具 版本要求 用途
Node.js 18+ 前端运行环境(自带 npm)
Python ≥3.11 且 ≤3.12 后端运行环境
uv 最新版 Python 包管理器

Node 和 Python 版本卡得比较严,尤其是 Python 上限 3.12,别用太新的版本,不然容易踩依赖的坑。

配置密钥

先把示例配置复制一份出来:

复制代码
cp .env.example .env

然后编辑 .env,必填的其实就两类------一个 LLM(大语言模型)的 key,一个 Zep 记忆服务的 key:

复制代码
# LLM API 配置(任何兼容 OpenAI SDK 格式的接口都行)
# 官方推荐阿里百炼平台的 qwen-plus 模型
# 注意:仿真消耗较大,建议先跑小于 40 轮试试水
LLM_API_KEY=your_api_key_here
LLM_BASE_URL=https://dashscope.aliyuncs.com/compatible-mode/v1
LLM_MODEL_NAME=qwen-plus

# Zep Cloud 配置(每月免费额度够简单使用)
ZEP_API_KEY=your_zep_api_key_here

这里要提醒一句:这东西是真烧 token 的。因为每轮每个智能体的发言都要过一次大模型,几千个角色跑几十轮,账单一不留神就上去了。官方自己也在注释里提示"先跑小于 40 轮的模拟"。

安装与启动

依赖可以一键装(根目录、前端、后端全包了):

复制代码
npm run setup:all

装完直接起服务,前后端一起拉起来:

复制代码
npm run dev

启动之后:

  • 前端界面:http://localhost:3000
  • 后端 API:http://localhost:5001

想分开跑也行,npm run backend 只起后端,npm run frontend 只起前端。

嫌配环境麻烦的,官方也给了 Docker 方案,两条命令搞定:

复制代码
cp .env.example .env
docker compose up -d

端口一样,前端 3000、后端 5001。

第一次仿真

跑通之后,整个流程大概是这么几步:

  1. 在首页上传一份种子材料(支持 PDF、MD、TXT,也可以直接粘贴文字)
  2. 用一句话描述你想预测什么,比如"某公司发布降价公告后,舆论会怎么走"
  3. 让系统自动生成人设、搭好仿真环境
  4. 等它跑完(时间跟角色数量和轮次相关,官方说轮次要控制着来)
  5. 看报告,然后跟报告或跟里面的角色接着聊

界面长什么样

光说功能有点干,我把仓库里的几张运行截图放上来,你看看它实际是怎么用的。

下面这张是仿真跑起来之后的工作台:左边是一张巨大的关系图谱,每个点是一个实体(公司、人物、机构......),点开能看到它的详细属性;右边则显示已经生成好的"智能体人设",以及仿真参数------跑了多少小时、多少轮、每个智能体多久发一次言,都能调。

再看这张,图谱旁边叠加了角色们的实际发言。你会看到类似"主流媒体""机构投资者""科技公司 CEO"这样不同人设的智能体,对同一件事给出立场完全不同的评论------有人看好,有人泼冷水。这种"观点分化"正是群体仿真的价值:它把一个话题上不同人群的立场都摆了出来。

最后是报告生成阶段。左边同样是图谱,右上角显示进度已经走到"报告生成"这一步,整个"平行世界"跑完之后的产物就在这里汇总成结论。


两个真实的案例

光看功能不如看它真跑过什么。作者在 B 站放了两个完整的演示视频,正好代表了它的两类典型用法:

一个是正经的舆情推演------用 BettaFish 生成的《武大舆情报告》当种子,让 MiroFish 推演这个事件后续会怎么发酵。这属于"决策辅助"的用法。

另一个是我觉得更有意思的------用《红楼梦》前 80 回几十万字的原文当种子,推测曹雪芹失传的结局会往哪儿走。这就是典型的"创意沙盘":同样一套仿真引擎,既能干正事,也能拿来玩。

从这两个例子能看出项目的定位挺清晰:往大了说是决策者的预演实验室,往小了说是个人用户的创意沙盘。严肃的舆情预测和好玩的脑洞推演,用的其实是同一套东西。


适合谁,不适合谁

比较适合:

  • 研究舆情演化、社会仿真、计算社会科学的同学
  • 做市场、公关、政策相关工作的,想做 what-if 场景推演的人
  • 研究多智能体架构、GraphRAG、智能体记忆系统的开发者
  • 单纯对"群体智能涌现"好奇、想拿它推推小说结局的玩家

得想清楚再用:

  • 预算敏感的人:如前所说,token 消耗是实打实的,几千个 agent 跑几十轮不是小数目,别一上来就拉满参数。
  • 想要"开箱即出准确答案"的人:它给的是趋势和可能性,不是精确数字。你要是想要一个能直接抄进报表的结论,可能会失望。
  • 打算做商用 SaaS 的人:AGPL-3.0 是比 GPL 更严的协议------用它搭在线服务,你改过的代码也得开源。自己本地研究、个人使用不受影响。

几句实话

平心而论,MiroFish 现在还是 v0.1.2 的早期版本,别指望它像成熟商用软件那样稳。我梳理了下,上手前值得知道的几个点:

  • 是"重演"不是"算命":它的价值在于把不同群体的反应摆给你看,帮你理解"为什么",而不是替你下一个精确的赌注。
  • 贵:仿真规模越大、轮次越多,成本越高。先小规模试跑是明智的。
  • 依赖外部服务:LLM 和 Zep 记忆都得用外部 API,得先申请好 key,且网络要通畅。
  • 还在迭代:版本号很诚实,接口和界面说不定哪天就变了,遇到问题多翻 issues 和官方文档。

不过话说回来,一个开源项目能把"用多智能体重演社会演化"这件事跑通,并且做得能让人真正上手,本身已经挺不容易了。


名词速查表

名词 一句话解释
多智能体(Multi-Agent) 让很多个 AI 角色各自行动、互相交互,而不是一个 AI 单打独斗
群体涌现(Emergence) 个体都遵守简单规则,凑一起却冒出谁都没想到的复杂整体行为,像鱼群、鸟群
GraphRAG 一种增强检索技术,把资料连成"关系网"再查,能推理因果关系,比单纯找相似段落更聪明
RAG 检索增强生成,简单说就是"先查资料,再让模型据此回答"
Zep Cloud 一个给 AI 提供长期记忆的云服务,让智能体记得住历史
OASIS CAMEL-AI 团队开源的社交仿真框架,MiroFish 的仿真引擎就是它
上帝视角注入 仿真运行时人为丢进一个变量(比如降价、发政策),观察群体反应
AGPL-3.0 一种强开源协议,用它做网络服务也必须开源自己的改动
Star / Fork GitHub 上的收藏数和派生数,大致反映项目的热度

资源汇总

  • 🌟 MiroFish 仓库 :https://github.com/666ghj/MiroFish
  • 🐟 配套项目 BettaFish(微舆) :https://github.com/666ghj/BettaFish
  • 🌐 在线 Demo :https://666ghj.github.io/mirofish-demo/
  • 🎬 演示视频(B 站):《红楼梦》结局推演、武大舆情推演
  • 🧩 仿真引擎 OASIS :https://github.com/camel-ai/oasis
  • 🧠 Zep Cloud :https://app.getzep.com/

说到底,MiroFish 想试的是这么一件事:现实世界本来就是无数个体互相博弈之后"长"出来的结果,那要理解它,也许真的得用同样复杂的仿真去重演一遍。

鱼群游动时没有谁在指挥,却能游出壮观的图案。人类社会的舆论和选择,会不会也是这么回事呢?有想法的,可以去仓库里自己跑一局看看。

相关推荐
dozenyaoyida24 分钟前
AI与大模型新闻日报 | 2026-11-08
人工智能·搜索引擎·ai·大模型·新闻
wflynn3 小时前
GitHub 今日推荐|Stela:在 PC 上直接启动 macOS 的翻译层
rust·开源·github
Solange__3 小时前
Blender 3D模型优化:普通复制、共享网格、实例、合并怎么选?
人工智能·3d·ai·自然语言处理·编辑器·blender·材质
用户4702784004054 小时前
C语言编译与链接
后端·开源
我闪了个去4 小时前
三个机位、一台录音机:一个允许说“我不确定”的波形对齐
开源
菩提小狗7 小时前
每日极客日报 · 2026年11月13日
ai·开源·极客日报·it热点·技术资讯
wflynn8 小时前
GitHub 日榜趋势速报 | 2026-11-14
开源·github
效率工作实验室8 小时前
企业级AI Agent平台前十名解析:按部署需求挑对更省心
ai·企业级ai·agent平台·agent平台怎么选·agent私有化部署
分布式存储与RustFS8 小时前
Terraform 状态文件老在本地丢、并发还撞锁:把 state 锁进 RustFS
运维·云原生·开源·对象存储·分布式存储·s3·性能基准