在这里插入图片描述

Manus 的出现,让 AI 从"能说会道"进化到"能说会干"。而 Spring AI Alibaba 的 Java 实现,让 Java 开发者终于可以不用学 Python 也能玩转多 Agent 协作。


一、为什么所有人都在讨论 Manus?

2025 年初,Manus 这个名字在 AI 圈炸开了锅。

简单来说,Manus 是一个"能替你干活"的 AI 智能体。

以前的 AI,比如 ChatGPT、GPT-4,你会问它问题,它会给你答案。但它也仅仅停留在"回答问题"这个层面——它不会帮你真的去做什么。

Manus 不一样。它不只是回答问题,它会分析问题、制定计划、执行操作、交付结果。

举几个例子:

  • 你说"帮我查一下阿里巴巴最近一周的股价,画个趋势图保存到本地",它会自己打开浏览器、搜索信息、画图、保存文件,全程不需要你动手。
  • 你说"帮我规划一个五一韩国旅行行程,做成 HTML 手册",它会自己查资料、做攻略、生成网页,5 天后你直接打开手册出发就行。
  • 你说"把 /tmp/docs 目录下的中文文档翻译成英文",它会自己遍历文件、调用翻译接口、保存结果。

这就是 Manus 带来的范式转变:AI 从"回答者"变成了"执行者"。


二、Python 有 Manus,Java 怎么办?

Manus 最开始是 Python 实现的。

这对于 Python 开发者来说是个好消息——他们可以直接把 Manus 集成到自己的项目中。

但对于 Java 开发者来说,情况有点尴尬:

  • 公司技术栈是 Java,技术债堆积如山,不可能为了一个 AI 能力去重构整个后端
  • 团队里 Java 开发者占大多数,为了用 Manus 再招一批 Python 工程师?不现实
  • 现有的 Spring Boot 项目想要接入 AI 能力,最好是 Spring 生态内的解决方案

需求是真实存在的:Java 开发者需要一个"Java 版 Manus"。

Spring AI Alibaba 听到了这个呼声,发布了 spring-ai-alibaba-openmanus,这是 Manus 的 Java 实现。


三、OpenManus 的核心架构:三角色协作

Spring AI Alibaba OpenManus 的设计思路并不复杂,它把一个复杂任务拆解为三个关键角色:

用户输入
   │
   ▼
┌─────────────────────────────────────┐
│       Planning Agent(规划 Agent)  │
│   分析任务、拆解步骤、生成执行计划    │
└──────────────┬──────────────────────┘
               │
               ▼ 动态生成子工作流
┌─────────────────────────────────────┐
│     Manus Agent Chain(执行链路)   │
│  ┌─────────┐  ┌─────────┐  ┌─────────┐│
│  │ Agent 1 │→ │ Agent 2 │→ │ Agent 3 ││
│  │ (搜索)  │  │ (处理)  │  │ (输出)  ││
│  └─────────┘  └─────────┘  └─────────┘│
└──────────────┬──────────────────────┘
               │
               ▼
┌─────────────────────────────────────┐
│      Summary Agent(总结 Agent)    │
│   汇总结果、生成最终输出             │
└─────────────────────────────────────┘

3.1 Planning Agent:任务的"大脑"

当你给出一个复杂任务时,Planning Agent 会做两件事:

  1. 理解任务意图:比如你让它"查股价并画图",它需要理解这是一个需要多个步骤才能完成的复合任务
  2. 拆解执行步骤:把任务分解成可顺序执行的子步骤,比如"搜索股价" → “获取数据” → “绘制图表” → “保存文件”

Planning Agent 会动态生成一个由多个 Manus Agent 组成的执行链。

3.2 Manus Agent:任务的"双手"

每个 Manus Agent 都是一个 ReAct 架构的智能体:

  • ReAct = Reasoning + Acting

也就是说,它不只会"想",还会"做"。

每个 Agent 都有能力调用各种工具:

  • 浏览器工具:打开网页、点击按钮、输入文字、截图
  • 代码执行工具:运行 Python、Java、Shell 脚本
  • 文件系统工具:读取、写入、复制、移动文件

当 Planning Agent 生成的执行链运行时,每个 Agent 会根据自己负责的子任务,循环调用工具、直至完成。

3.3 Summary Agent:任务的"收尾"

当所有子任务完成后,Summary Agent 会汇总各个 Agent 的输出,生成一个结构化的最终结果返回给用户。


四、实际效果怎么样?

光说不练假把式。我们来看几个官方演示的案例:

案例一:股票查询与可视化

用户输入: “打开百度浏览器,在搜索框输入:阿里巴巴最近一周股价,根据搜索到的信息绘制最近一周的股价趋势图并保存到本地目录。”

执行过程:

  1. Planning Agent 拆解为:搜索股价 → 提取数据 → Python 画图 → 保存文件
  2. Agent 1 调用浏览器工具,打开百度搜索"阿里巴巴股价"
  3. Agent 2 解析搜索结果,提取最近 7 天的股价数据
  4. Agent 3 调用 Python 代码生成趋势图
  5. Agent 4 将图片保存到指定目录

最终输出: 一张完整的股价趋势图 + 确认保存成功

案例二:旅行规划

用户输入: “我计划在五一假期去韩国旅行,从杭州出发,总预算 10000 元,5 天行程,请帮我制作一个包含地图、景点、韩语短语的 HTML 旅行手册。”

执行过程:

  1. Planning Agent 拆解为:查航班酒店 → 查景点攻略 → 制作 HTML
  2. Agent 1 调用搜索工具,查询杭州到首尔的机票价格
  3. Agent 2 查询首尔热门景点和韩国民俗体验
  4. Agent 3 整合信息,生成包含地图、景点推荐、韩语常用语、注意事项的 HTML 文件

最终输出: 一个精美的 HTML 旅行手册,可以在手机或电脑上随时查看

案例三:批量文档翻译

用户输入: “将 /tmp/docs 目录下的中文文档翻译为英文,保存到 /tmp/endocs 目录。”

执行过程:

  1. Planning Agent 识别这是一个批量处理任务,需要遍历文件
  2. Agent 1 扫描目录,列出所有需要翻译的文件
  3. Agent 2 逐个读取文件内容
  4. Agent 3 调用翻译 API(或使用大模型翻译能力)
  5. Agent 4 将翻译后的内容写入新文件,保存到目标目录

五、Java 版 vs Python 版:有什么区别?

很多人会问:Python 版已经实现了,Java 版是不是"换汤不换药"?

区别确实存在,而且值得关注:

维度 Python 版 Java 版
技术栈 Python Java / Spring Boot
集成方式 独立项目 可嵌入 Spring 应用
生态适配 需单独维护 无缝对接现有 Java 项目
企业友好度 一般 高(Java 工程师可直接上手)
工具扩展 社区驱动 Spring AI 生态内的 MCP 工具

对于已经拥有 Java 技术栈的企业来说,Java 版的优势是明显的:

  • 不需要引入新的技术语言
  • 现有的 Spring Boot 项目可以直接集成
  • 团队不需要额外学习 Python

六、当前实现的局限性

坦诚地说,Spring AI Alibaba OpenManus 目前还有一些不足:

6.1 流程编排代码量大

当前的实现中,将近 80% 的代码在处理流程编排问题:串联 Agent 子流程、做消息记忆、转发工具调用、全局状态修改……

这些工作如果有一个成熟的 Agent 框架来抽象,开发效率可以提升 70% 以上。

6.2 工具覆盖度有限

浏览器自动化、脚本执行等工具的能力和效果还有提升空间。对于复杂场景,可能需要扩展更多工具。

6.3 缺乏人为介入机制

目前的实现中,任务一旦开始执行,就无法中途介入进行人工 review、动态修改或回退。这对于生产环境来说是个需要完善的地方。

6.4 调试困难

效果调试目前相对困难,缺少可视化的调试工具和日志追踪体系。


七、未来规划:Graph 框架 + MCP 生态

Spring AI Alibaba 团队已经看到了这些问题,并规划了下一代解决方案:

7.1 Spring AI Alibaba Graph

即将发布的多 Agent 框架,可以大幅简化 Agent 协作的开发。

基于 Graph 框架实现的强化版 OpenManus,代码量预计减少 70% 以上,整体易读性和效果都会显著提升。

7.2 MCP 工具生态

当前 OpenManus 已经支持 MCP 工具接入,未来会接入更多成熟的 MCP Server,进一步提升工具能力。

这意味着:你可以用统一的协议,把各种外部能力(搜索、数据库、文件存储、第三方 API)接入到 Agent 工作流中。


八、Java 开发者如何快速上手?

如果你想体验 Spring AI Alibaba OpenManus,可以通过以下方式:

项目地址: https://github.com/alibaba/spring-ai-alibaba/tree/main/community/openmanus

快速启动:

# 克隆项目
git clone https://github.com/alibaba/spring-ai-alibaba.git

# 进入 OpenManus 目录
cd spring-ai-alibaba/community/openmanus

# 按照 README 配置 API Key(通义千问或其他模型)
# 启动运行

九、写在最后

Manus 带来的最大变革,是 AI 从"回答问题"进化到"完成任务"。

而 Spring AI Alibaba 的 Java 实现,让这个能力对 Java 开发者不再遥远。

对于企业来说:

你可以把 OpenManus 集成到现有的 Java 项目中,让 AI 帮你完成那些繁琐的、重复性的工作——数据查询、报表生成、内容处理、客服应答……

对于开发者来说:

与其焦虑 AI 会不会取代程序员,不如学会如何"指挥" AI 工作。多 Agent 协作系统,就是下一个需要掌握的关键技能。


相关资源:

  • 项目源码:https://github.com/alibaba/spring-ai-alibaba/tree/main/community/openmanus

🎁 福利时间

如果你正在备战面试或者想要学习其他知识,给大家推荐一个宝藏知识库,作者整理了一些列 Java 程序员需要掌握的核心知识,有需要的自取不谢。

知识库地址:https://farerboy.com/


Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐