Manus AI 虚拟机基础设施深度解析
发布时间: 2026-04-14
摘要
Manus AI 为每个用户任务分配一个独立的云端虚拟机(Sandbox),使其能够像真人一样操作计算机——浏览网页、运行代码、管理文件。本文深入分析其技术架构、资源配置、成本模型和生命周期管理。
1. 技术架构
1.1 底层平台:E2B + Firecracker
Manus 没有自建虚拟机基础设施,而是采用了 E2B——一个专为 AI Agent 设计的云沙箱平台。
- E2B(e2b.dev):总部在旧金山,专注为 AI Agent 提供安全、快速的代码执行环境
- 底层虚拟化:AWS 开源的 Firecracker microVM,最初为 AWS Lambda 设计
- 部署方式:Manus 采用 E2B Self-hosted,在自己的机器上运行 E2B,而非使用 E2B 云服务
为什么选 E2B 而非 Docker?
Manus 联合创始人 Tao Zhang 解释:
> "一开始我们试了 Docker,问题有两个:一是太慢(启动要 10-20 秒),二是 Docker 是容器方案,没有完整操作系统功能。我们需要真正的操作系统,让 Agent 能安装应用和 Python 包。"
对比:
| 特性 | Docker | E2B (Firecracker) |
|---|---|---|
| 启动时间 | 10-20 秒 | **~150ms** |
| 隔离级别 | 进程级 | **硬件级(VM)** |
| OS 完整性 | 共享宿主内核 | **独立内核** |
| 安全性 | 较弱 | **强(零信任)** |
| 能否安装软件 | 受限 | **完全自由** |
1.2 多 Agent 协作架构
Manus 不是单一 LLM Agent,而是一个多 Agent 协调系统:
用户请求 → Planner Agent(任务分解)
↓
Executor Agents(多个并行执行)
↓
E2B Sandbox(实际执行环境)
↓
观察结果 → 规划下一步 → 继续执行
- Planner Agent:将用户需求分解为子任务序列
- Executor Agents:使用 27 种工具执行具体操作
- CodeAct 模式:核心动作机制是通过编写和执行 Python 代码来完成操作
1.3 基础模型组合
Manus 采用"多模型动态调用"策略:
| 任务类型 | 使用的模型 |
|---|---|
| 复杂逻辑推理 | Claude 3.5/3.7 Sonnet |
| 编码任务 | GPT-4 系列 |
| 广泛知识查询 | Google Gemini |
| 补充推理 | 阿里 Qwen(微调版) |
首席科学家季逸超(Peak Ji)确认了 Claude + Qwen 的组合,后续升级到 Claude 3.7。
2. Sandbox 详细配置
2.1 虚拟机规格
Manus 未公开具体硬件配置,但根据 E2B 平台的定价和默认设置,可以合理推断:
| 配置项 | E2B 可选范围 | E2B 默认值 | Manus 推测配置 |
|---|---|---|---|
| **vCPU** | 1-8 核 | 2 vCPU | 2 vCPU(默认) |
| **内存** | 512MB - 8192MB | 可自定义 | 2-4 GB |
| **存储** | 10GB (Hobby) / 20GB (Pro) | 10-20GB | ~10GB |
| **操作系统** | Linux | Linux | Linux (Ubuntu) |
| **网络** | 有公网访问 | 有公网访问 | 有公网访问 |
| **GPU** | 不支持 | - | 无 |
2.2 Sandbox 内置环境
每个 Sandbox 是一个无头 Linux 虚拟机(headless),没有传统桌面图形界面,但配备:
- 完整 Shell:带 sudo 权限,可执行任意命令
- Chromium 浏览器:通过 Playwright 控制,可访问 URL、截图、滚动、点击
- 编程语言运行时:Python、Node.js、Bash
- 文件系统:完整读写,可安装软件包
- 持久化存储:文件在休眠/唤醒周期中保留
2.3 图形界面问题
Sandbox 没有传统桌面 GUI。用户在 Manus 网页上看到的"操作画面"本质上是:
1. 浏览器截图:Agent 控制 Chromium 时的屏幕截图
2. 终端日志:Shell 命令的文本输出流
3. 文件预览:生成的文件、网页等的渲染预览
这不是 VNC/RDP 远程桌面,而是 Agent 操作的可视化回放。
> 2026-03-17 更新:Manus 推出了 Desktop App(被 Meta 收购后首个产品动作),支持本地 GUI 自动化(文件管理、终端、GUI 操作、GPU)。这是本地执行,与云端 Sandbox 是不同的架构。
3. Sandbox 生命周期管理
3.1 完整生命周期
创建 → 活跃执行 → 休眠 → 唤醒 → ... → 回收
↑ ↓
└──────── 需要时自动重建 ←──────────┘
| 阶段 | 行为 | 数据保留 |
|---|---|---|
| **Create** | 按需创建,150ms 启动 | 空白环境 |
| **Active** | Agent 执行任务 | 实时更新 |
| **Sleep** | 无操作时自动休眠 | ✅ 所有文件保留 |
| **Awake** | 用户返回时自动唤醒 | ✅ 恢复到休眠前状态 |
| **Recycle** | 超期后回收 | ⚠️ 部分保留(见下文) |
| **Recreate** | 回收后用户再次访问 | 恢复核心文件 |
3.2 回收策略
| 用户类型 | 休眠后保留时间 | 回收后恢复 |
|---|---|---|
| 免费用户 | **7 天** | 核心文件恢复 |
| Manus Pro | **21 天** | 核心文件恢复 |
回收时自动恢复的文件:
- ✅ Manus 生成的产物(报告、网页、Slides 等)
- ✅ 用户上传的附件
- ✅ 重要项目文件(WebDev、Slides 配置等)
不会恢复的文件:
- ❌ 中间代码
- ❌ 临时文件
- ❌ 安装的软件包
3.3 安全模型:零信任
Manus Sandbox 遵循零信任架构(Zero Trust):
- 每个 Sandbox 完全隔离,不影响其他任务或 Manus 服务
- 用户和 Agent 对 Sandbox 有完全控制权(root 访问、系统文件修改、甚至格式化磁盘)
- 不可恢复的错误 → 自动创建新 Sandbox 替换
- Sandbox 内无法访问用户账户数据或其他用户数据
4. 成本分析
4.1 E2B 云服务定价
E2B 按秒计费,配置灵活:
| 资源 | 单价 | 月成本估算(持续运行) |
|---|---|---|
| 1 vCPU | $0.000014/秒 | ~$36.29/月 |
| 2 vCPU(默认) | $0.000028/秒 | ~$72.57/月 |
| 4 vCPU | $0.000056/秒 | ~$145.15/月 |
| 内存(每 GiB) | $0.0000045/GiB/秒 | ~$11.66/GiB/月 |
| 存储 10GB | 免费 (Hobby) | $0 |
| 存储 20GB | 免费 (Pro) | $0 |
4.2 典型配置成本估算
2 vCPU + 2GB RAM(推测的默认配置):
| 场景 | E2B 云服务 | 自托管(Manus 实际) |
|---|---|---|
| 持续运行 | ~$95/月 | ~$15-25/月 |
| 平均每天 2 小时 | ~$8/月 | ~$2-4/月 |
| 平均每天 30 分钟 | ~$2/月 | ~$0.5-1/月 |
> 注:Manus 是 Self-hosted E2B,实际云资源成本远低于 E2B 云服务标价。E2B 联合创始人称 Manus 团队"半天就完成了集成和部署"。
4.3 规模化成本挑战
假设 10,000 个活跃用户,每天平均使用 1 小时:
| 项目 | 计算 | 月成本 |
|---|---|---|
| vCPU (2核×1h×10000×30) | 600,000 vCPU·小时 | ~$8,400(E2B云) |
| RAM (2GB×1h×10000×30) | 600,000 GB·小时 | ~$3,500(E2B云) |
| **E2B 云服务总计** | **~$12,000/月** | |
| **自托管(估计 3-5x 折扣)** | **~$2,500-4,000/月** |
按 Manus Pro $39/月定价,10,000 用户 = $390,000 收入,基础设施成本占比仅 1-3%,非常健康。
5. 与同类产品对比
5.1 虚拟化方案对比
| 产品 | 虚拟化技术 | 隔离级别 | 启动速度 | 每用户成本 |
|---|---|---|---|---|
| **Manus** | Firecracker microVM | 硬件级(VM) | ~150ms | ~$0.05-0.13/h |
| **Replit Agent** | Docker 容器 | 进程级 | 2-5 秒 | 类似 |
| **Devin** | 自建沙箱 | 容器/VM | 秒级 | 更高 |
| **小虾(计划)** | K3s + Docker | 容器级 | 秒级 | ~$0.006/h |
5.2 VM vs 容器:关键取舍
VM 优势(Manus 选择):
- ✅ 真正的 OS 级隔离,安全性更高
- ✅ Agent 可安装任意软件、修改系统配置
- ✅ 即使 Agent 执行恶意代码也不影响宿主
VM 劣势:
- ❌ 资源开销更大(每个 VM 至少 512MB 内存开销)
- ❌ 大规模并发成本更高
- ❌ 不支持 GPU 直通
容器优势(小虾选择):
- ✅ 轻量,每用户资源成本 ~1/10
- ✅ 启动速度接近(秒级 vs 150ms 差异不大)
- ✅ K3s 内置调度、健康检查、滚动更新
容器劣势:
- ❌ 隔离性较弱(共享内核)
- ❌ 安全风险较高(容器逃逸)
6. 技术启示
6.1 对小虾项目的参考
1. MVP 阶段用容器就够了:Manus 用 VM 是为了安全隔离,但大多数用户场景(代码执行、网页浏览)容器完全够用
2. 成本控制是核心:Manus 的 VM 成本是容器的 10-20 倍,这也是 $39/月定价的底层原因
3. 自托管是关键:无论用 E2B 还是其他方案,自托管能省 3-5 倍
4. 休眠/唤醒机制值得学习:避免资源浪费,按需分配
6.2 E2B 的技术价值
E2B 本身是一个值得关注的基础设施公司:
- 被 Manus、Hugging Face、Groq、Lindy 等采用
- Firecracker microVM 在 Serverless 和 AI Agent 场景有独特优势
- Self-hosted 模式降低了厂商锁定风险
7. 总结
Manus 的虚拟机基础设施体现了"安全优先"的设计哲学——每个用户任务获得一个完整的云虚拟机,拥有真正的 OS、浏览器、shell 和文件系统。这种方案成本较高,但提供了最强的隔离性和灵活性。
对于小虾等竞品来说,容器方案在成本上有数量级优势,安全隔离可以通过 jai 等工具在应用层补充。最终的选择取决于目标用户的安全需求和定价策略。
参考链接
- E2B 官方博客:https://e2b.dev/blog/how-manus-uses-e2b-to-provide-agents-with-virtual-computers
- E2B 定价:https://e2b.dev/pricing
- Manus Sandbox 介绍:https://manus.im/blog/manus-sandbox
- Manus 技术分析(GitHub Gist):https://gist.github.com/renschni/4fbc70b31bad8dd57f3370239dccd58f
- ZenML LLMOps 数据库:https://www.zenml.io/llmops-database/building-an-ai-agent-platform-with-cloud-based-virtual-machines-and-extended-context