
MiroFish 是一款基于多智能体技术的开源 AI 预测引擎,能够基于现实种子信息构建平行数字世界进行仿真推演。下面为您详细介绍这个项目以及本地部署和使用流程。
一、MiroFish 项目概述
核心功能
- 种子信息驱动预测:支持从突发新闻、政策草案、金融信号、数据分析报告或小说故事中提取种子信息,生成预测任务输入。
- 平行数字世界构建:自动搭建高保真仿真环境,让具备独立人格、长期记忆与行为逻辑的智能体在其中自由交互和演化。
- 自然语言预测交互:用户可直接用自然语言描述预测需求,无需手工编排复杂规则。
- 预测报告生成:模拟完成后输出详尽预测报告,并由 ReportAgent 与仿真环境进行深度交互。
- 模拟世界深度对话:支持与模拟世界中任意角色对话,也可以与报告代理继续追问。
技术架构
- GraphRAG + 长期记忆:种子材料自动拆解成实体关系、人设画像、事件链,Zep Cloud 驱动记忆
- OASIS 仿真引擎:基于 CAMEL-AI 团队开源的 OASIS 引擎,支持数千 Agent 并行运行
- ReACT 模式驱动:ReportAgent 采用 Reasoning & Acting 范式,主动调研而非被动生成
- 双平台并行模拟:两个仿真平台同时运行,互相验证,动态更新时序记忆
应用场景
- 舆情推演:对热点事件、校园舆情、品牌公关风险等进行动态模拟与走势预测
- 政策与决策预演:在零风险环境中对政策、公关方案或复杂决策进行试错和预演
- 金融与时政预测:金融方向推演预测、时政要闻推演预测
- 文学与创意仿真:小说剧情延展、结局推演,如《红楼梦》失传结局预测
- 多智能体研究:探索群体涌现、社会仿真和多智能体交互机制
二、本地部署详细指南
环境要求
- Node.js:18 及以上版本
- Python:3.11 至 3.12 版本(不要使用 3.13)
- uv:最新版 Python 包管理器
- Docker & Docker Compose(如果选择 Docker 部署)
部署方式对比
| 部署方式 | 优点 | 缺点 | 适用场景 |
|---|
| Docker 部署 | 快速便捷、环境一致、隔离性好 | 定制化程度较低 | 快速体验、生产环境 |
| 源码部署 | 深度定制、灵活性高 | 依赖环境复杂 | 开发调试、二次开发 |
Docker 部署步骤(推荐新手)
- 访问服务
一键启动
docker compose up -d
配置环境变量
cp .env.example .env
编辑 .env 文件,填入以下关键配置:
LLM_API_KEY=your_api_key_here
LLM_BASE_URL=your_api_base_url
LLM_MODEL_NAME=qwen-plus
ZEP_API_KEY=your_zep_api_key
克隆仓库
git clone https://github.com/666ghj/MiroFish.git
cd MiroFish
源码部署步骤(更灵活)
安装依赖并启动
npm run setup:all
npm run dev
克隆并配置项目
git clone https://github.com/666ghj/MiroFish.git
cd MiroFish
cp .env.example .env
安装 uv 包管理器
curl -LsSf https://astral.sh/uv/install.sh | sh
source ~/.bashrc
安装 Python 3.11
sudo apt install -y python3.11 python3.11-venv python3.11-dev
安装基础依赖
sudo apt update && sudo apt upgrade -y
sudo apt install -y curl git build-essential
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
sudo apt install -y nodejs
node -v
npm -v
三、完整使用工作流程
五步标准化工作流程
| 步骤 | 名称 | 核心任务 | 输出成果 |
|---|
| Step 01 | 知识初始化 | 上传种子材料,系统通过 LLM 自动梳理本体结构 | 关键节点识别、实体关系图谱 |
| Step 02 | 仿真编排 | 生成性格迥异的 Profile,配置时间步长、事件触发逻辑 | 智能体人设配置、环境参数设置 |
| Step 03 | 实时演推 | 启动模拟,观察情绪扩散路径,捕捉关键节点 | 动态图谱可视化、实时行动日志 |
| Step 04 | AI 深度诊断 | ReportAgent 介入,将非结构化数据转化为逻辑严密的叙事 | 结构化预测报告、风险分析 |
| Step 05 | 决策下达 | 获得包含'最佳回应节点'、'风险触发带'的终极报告 | 可执行洞察、对策收益预测 |
详细操作流程
- 上传种子材料
- 支持格式:PDF、MD、TXT 等非结构化数据
- 内容类型:新闻报道、政策草案、金融报告、小说文本等
- 示例:上传《平凡的世界》PDF 文件,假设'田晓霞和贺秀莲没有去世'的场景
- 描述预测需求
- 用自然语言输入模拟或预测需求
- 示例:'如果武汉大学发布撤销肖某处分的公告,会引发什么舆情走向?'
- 系统自动构建
- 图谱构建:提取实体关系,形成语义体系,进行关联度分析
- 环境搭建:生成 Agent 人设,预期 Agent 总数可达 77 个(实际生成 61 个)
- 双平台配置:生成模拟配置,初始激活编排
- 运行模拟
- 设置模拟轮数:默认 100 轮,建议先尝试 20-40 轮以减少等待时间和错误概率
- 观察智能体交互:在动态图谱中观察情绪的扩散路径
- 实时监控:右侧显示清晰行动路线,观察不同 Agent 在模拟世界中的活跃状态
- 查看结果
- 预测报告:ReportAgent 生成的详细分析报告
- 深度交互:与模拟世界中任意角色对话,或与 ReportAgent 继续追问
- 示例报告内容:包含叙事范式转变、社会心理补偿机制、情感支持成为核心驱动力等深度分析
- 模拟轮数:先进行小于 40 轮的模拟尝试,模拟消耗较大
四、应用案例
案例 1:武汉大学舆情推演
- 种子材料:武汉大学相关舆情报告
- 预测需求:模拟撤销处分公告后的舆情演化
- 输出结果:舆情爆发、发展和变化趋势预测,为决策提供参考
案例 2:《平凡的世界》理想化结局模拟
- 种子材料:《平凡的世界》PDF 文件
- 预测需求:假设田晓霞和贺秀莲没有去世的故事走向
- 输出洞察:
- 叙事范式从'苦难美学'转向'圆满叙事'
- 情感支持成为个体阶层跨越的关键加速器
- 重塑乡村社区的集体记忆与公共话语
案例 3:特斯拉财报股价预测
- 种子材料:特斯拉最近的分析报告
- 预测需求:发布财报当日股价涨跌预测
- 模拟过程:生成华尔街、分析师、Elon Musk 等 26 个不同人设的 Agent
- 预测结果:多家机构对特斯拉股价的态度转为悲观