今天在 GitHub Trending 上看到一个有意思的项目:MiroFish,一个简洁通用的群体智能引擎,能够"预测万物"——只需上传种子材料(数据分析报告或有趣的小说故事),用自然语言描述预测需求,就能获得详细的预测报告和一个可深度交互的高保真数字世界。

一、项目概述

MiroFish 是由盛趣游戏孵化的下一代 AI 预测引擎,核心技术是多智能体(Multi-Agent)系统。它的核心理念是:在数字沙盒中彩排未来,在无数次模拟中赢得决策

用户只需做两件事:

  1. 上传种子材料:数据分析报告、突发新闻、政策草案,或一本小说的前 80 回
  2. 用自然语言描述预测需求:比如"预测这条政策推出后的舆论走向"

MiroFish 会返回:

  • 一份详细的预测报告
  • 一个可深度交互的高保真数字世界,你可以与其中的任意智能体对话

核心特性

  • 多智能体平行推演:数千个具有独立人格、长期记忆的智能体同时在数字世界中交互
  • GraphRAG 图谱增强:自动构建实体关系图谱,为智能体注入背景知识
  • 动态时间记忆更新:随时间推移,智能体的记忆和行为逻辑持续演进
  • 零风险决策 rehearsal:宏观层面是政策制定者的推演实验室,微观层面是个人用户的创意沙盒
  • 深度交互:推演结束后可与任意智能体对话,甚至与 ReportAgent 互动追问细节

二、技术原理

架构设计

MiroFish 的技术栈非常清晰:前端 Node.js + 后端 Python,支持 Docker 一键部署。

Graph Building → Environment Setup → Simulation → Report Generation → Deep Interaction

1. Graph Building(图谱构建) 从种子材料中提取关键实体与关系,构建 GraphRAG 知识图谱,作为所有智能体的共同知识背景。

2. Environment Setup(环境配置)

  • 实体关系提取
  • 人格画像生成(Persona)
  • Agent 行为逻辑配置注入

3. Simulation(平行模拟)

  • 双平台并行模拟(前端 + 后端)
  • 自动解析预测需求,动态注入变量
  • 实时更新每个智能体的时序记忆

4. Report Generation(报告生成) ReportAgent 配备丰富的工具集,可深度查询推演后的世界状态,生成结构化预测报告。

核心技术栈

组件技术选型说明
前端Node.js 18+ + React用户交互界面
后端Python ≥3.11, ≤3.12核心推理与模拟引擎
Python 包管理uv快速的 Python 包管理器
LLMOpenAI SDK 兼容接口推荐阿里云通义 Qwen-plus(Bailian 平台)
长期记忆Zep Cloud智能体记忆管理
底层模拟引擎OASISCAMEL-AI 开源的智能体社交模拟框架
部署Docker Compose一键部署前后端服务

关键源码结构

从项目源码中可以看到,核心模拟逻辑通过 Python 后端实现:

# backend/pyproject.toml 中定义的依赖包含:
# - fastapi(API 层)
# - openai(LLM 调用)
# - zepython(Zep 记忆集成)
# - camel(CAMEL 多智能体框架)

前端以 React 构建,服务于交互体验:

// package.json 核心脚本
{
  "dev": "concurrently --kill-others -n \"backend,frontend\" -c \"green,cyan\" \"npm run backend\" \"npm run frontend\"",
  "backend": "cd backend && uv run python run.py",
  "frontend": "cd frontend && npm run dev"
}

三、安装与快速开始

环境要求

工具版本要求
Node.js18+
Python≥3.11, ≤3.12
uvLatest

一键安装(推荐)

# 克隆项目
git clone https://github.com/666ghj/MiroFish.git
cd MiroFish

# 复制环境变量模板
cp .env.example .env
# 编辑 .env,填入 LLM_API_KEY 和 ZEP_API_KEY

# 一键安装所有依赖(Node + Python)
npm run setup:all

启动服务

npm run dev

启动后访问:

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

Docker 部署

# 配置好 .env 后
docker compose up -d

四、使用方法与实战

基础用法

  1. 打开前端界面(http://localhost:3000)
  2. 上传种子材料(文本或报告)
  3. 用自然语言描述你的预测目标
  4. 点击开始模拟,等待 ReportAgent 生成报告
  5. 阅读预测报告,与感兴趣的角色智能体继续对话

进阶用法

  • 自定义 Agent 人格:在配置文件中调整每个 Agent 的行为参数
  • 注入动态变量:在模拟过程中从"上帝视角"实时注入新变量,观察预测轨迹变化
  • 深度追问:与 ReportAgent 对话,针对报告中的任意结论追问细节和证据

项目自带演示案例

MiroFish 在 README 中提供了两个精彩的演示视频:

  • 武汉大学舆情模拟:模拟一条突发新闻在网络上的传播与演化
  • 红楼梦丢失结局推演:基于前 80 回数十万字文本,推演林黛玉、薛宝钗等角色的后续命运

五、常见问题与解决方案

Q: npm run setup:all 报错,Python 依赖安装失败? 确保 Python 版本在 3.11~3.12 范围内,并安装最新版的 uv

pip install uv

Q: 模拟过程中 LLM API 调用频繁报 429 限流错误? 推荐使用阿里云 Bailian 平台的 Qwen-plus 模型,并在 .env 中配置 API Key;简单场景每月免费额度足够使用。

Q: Docker 部署后前端 / 后端端口无法访问? 检查 .env 是否在项目根目录下,Docker Compose 默认映射 3000(前端)和 5001(后端)端口。

Q: 如何与模拟世界中的特定智能体对话? 在 ReportAgent 生成报告后,界面会列出所有参与模拟的智能体,点击任意一个即可发起对话。

六、总结

MiroFish 是一个极具想象力的开源项目,它将多智能体模拟与 LLM 结合,让"预测未来"从抽象概念变成了可操作的数字推演工具。无论是政策推演、舆情预测还是文学推续,MiroFish 都展现了群体智能在复杂系统建模上的独特优势。盛趣游戏的技术孵化背景加上 CAMEL-AI 的开源底座,让这个项目在技术深度和工程成熟度上都值得信赖。

如果你对 AI 模拟、多智能体系统或 LLM 应用感兴趣,MiroFish 是一个值得深入研究的优质项目。

🔗 GitHub: https://github.com/666ghj/MiroFish
🐳 Docker: https://hub.docker.com/(构建中)