一张图讲清楚:Manus的技术架构

作者:老张的求知思考世界

自Manus于2025年3月5日发布以来,截至今天已经过了一个多月。毕竟是号称全球首个具备"自主规划、执行复杂任务、直接交付完整成果"的AI应用,网上关于它是否真的具备所述能力的讨论从未停止。

查阅了很多资料后,我尝试用一篇文章对Manus技术架构的功能特性、核心组件以及技术实现原理进行拆解。

一、Manus的主要特点

  • Manus是一个AI代理工具。
  • 主要基于多智能体(Multiple Agent)架构。
  • Manus的任务执行在独立的虚拟机上运行。
  • 通过规划、执行和验证三个子模块分工协作。

具体来说,Manus的核心功能由多个独立模型共同协作完成,这些模型分别专注于不同领域,比如数据分析、自然语言处理、代码编译生成、深度逻辑推理。

二、Manus的核心组件

  • 虚拟机:云端运行,资源可扩展性较强,用户可以实时查看任务进度。

  • 生成物:Manus支持多种类型的结果输出,比如文本、表格、报告、视频等。

  • 计算资源:主要用于生成算法、代码,以便于对用户输入进行分词、分析并进行具体的任务执行。

  • 内置Agent:Manus内置多个智能体,主要用于用户任务拆解、执行,通过多智能体协作来执行任务。

三、Manus的工作流程

1、意图识别

  • 通过用户输入的Prompt,从中提取关键词。
  • 通过对关键词的分析,明确要执行的任务类型。
  • 引导用户补充其他信息,以便于进一步明确需求。

2、任务初始化

  • 创建本次任务的文件夹(相关信息都汇总写入)。
  • 启动本次任务执行的隔离环境(云端虚拟机/容器)。
  • 为本次任务执行分配所需资源,并进行环境初始化配置。

3、任务步骤规划

  • 利用深度推理模型,将任务拆解为具体的执行步骤。
  • 将拆解出来的任务执行步骤信息,统一写入todo.md文件。
  • 对任务文件实时跟踪,便于及时掌握任务执行进度和状态。

4、任务执行过程

  • 通过function call调度专用智能体按步骤执行任务。
  • 将任务执行过程相关数据和执行结果写入任务文件夹。
  • 主线程更新任务状态,根据任务进度调度智能体执行后续步骤。

5、结果归纳整理

  • 汇总任务文件夹中的所有执行结果数据。

  • 根据用户需求和任务数据生成最终结果。

  • 提供任务产出结果(预先设定的结果类型)供用户浏览下载。

四、Manus的专用智能体

1、Search Agent

  • 调用搜索API获取结果列表。
  • 使用无头浏览器模拟网页浏览。
  • 结合多模态模型提取有效信息。
  • 通过点击和滚动操作获取更多内容。

2、Code/Data-Analysis Agent

  • 根据需求创建任务。
  • 生成代码并执行任务。
  • 保存任务执行的结果。
  • 提供任务结果预览功能。

五、Manus的技术实现架构

1、官方技术架构(较为复杂)

2、抽象后的技术架构(直观易懂)

在Manus的工具调用链中,主要使用了三个工具,分别是:

  • vscode - python:生成代码。
  • chrome - browser use:操作界面,无头模式执行任务。
  • Linux sandbox - computer use:用户任务的执行环境。

Manus本质是上一个AI应用,即通过工作流(事件流)调度多个智能体,完成用户需求的复杂任务

换一种描述方式,Manus其实是一个长任务智能体,即通常需要较长步骤和较多时间才能完成任务,因此需要通过工作流调度多个智能体来进行AgentFlow编排。

长任务智能体主要有以下两种类型:

  • Copilot类型:人工可以进行干预,允许人工修改参数和参考资料,甚至决定路由。比如Flowith(oracle模式)。
  • Agentic类型:追求更高的自动化程度,极少需要人工干预。典型的有autogpt、Manus、gemini deep research。

关于AI Agent的发展历史,由于篇幅较长,我们后面再聊。

相关推荐
程序员的奶茶馆2 分钟前
Python 字典速查:键值对操作与高频函数
python·面试
鱼樱前端7 分钟前
uni-app快速入门章法(二)
前端·uni-app
silent_missile21 分钟前
vue3父组件和子组件之间传递数据
前端·javascript·vue.js
克里斯蒂亚诺更新1 小时前
微信小程序app.js中每30秒调用一次wx.getLocation
javascript·微信小程序·小程序
IT_陈寒2 小时前
Vue 3.4 实战:这7个Composition API技巧让我的开发效率飙升50%
前端·人工智能·后端
鄃鳕2 小时前
C++坑系列,C++ std::atomic 拷贝构造函数问题分析与解决方案
java·javascript·c++
少年阿闯~~3 小时前
HTML——1px问题
前端·html
Never_Satisfied3 小时前
在JavaScript / HTML中,实现`<iframe>` 自适应高度
开发语言·javascript·html
Mike_jia3 小时前
SafeLine:自托管WAF颠覆者!一键部署守护Web安全的雷池防线
前端
brzhang3 小时前
把网页的“好句子”都装进侧边栏:我做了个叫 Markbox 的收藏器,开源!
前端·后端·架构