
Java 版 Manus 实现来了,Spring AI Alibaba 发布开源 OpenManus 实现 原创
此次官方发布的 Spring AI Alibaba OpenManus 实现,涵盖了完整的多智能体任务规划、思考与执行流程。这一版本专为 Java 开发者设计,能够让开发者亲身体验多智能体协同工作的强大效果。它具备根据用户问题进行深度分析、操作浏览器、执行代码等能力,从而高效完成各类复杂任务。
Github 地址:
https://github.com/alibaba/spring-ai-alibaba
1、OpenManus 效果展示
不多说,直接看效果。以下通过几个实际问答记录,展示 Spring AI Alibaba OpenManus 的实际使用效果。
案例一、百度搜索并绘制股价趋势图
打开百度浏览器,在搜索框输入:“阿里巴巴最近一周股价”。根据搜索到的信息,绘制最近一周的股价趋势图,并将图表保存到本地目录。
案例二、五一劳动节韩国旅行规划
我计划在五一劳动节假期前往韩国旅行,行程从杭州出发到韩国首尔,总预算为 10000 元。我希望体验韩国的风土人情、文化和普通百姓的生活,总行程计划为 5 天。请提供详细的行程安排,并制作一个简单的 HTML 旅行手册,其中包含地图、景点描述、基本韩语短语和旅行提示,供我整个旅程参考。
案例三、文档翻译与保存
在本机的 /tmp/docs 目录下有一些中文文档,请依次将这些文档翻译为英文,并将翻译后的新文件保存到 /tmp/endocs 目录下。
以上就是 Spring AI Alibaba OpenManus 的实际运行效果展示。
2、OpenManus 总体架构设计
Spring AI Alibaba Openmanus 与 Python 版本 OpenManus 设计理念相似,其总体架构设计如下图所示。
从上图架构设计来看,这是一款基于多智能体(Agents)的智能自动协作系统。具体来说:
Planning Agent:负责将用户的问题分解为多个可顺序执行的步骤(step),并规划整个任务的执行流程。它通过调用 planning tool 动态生成一个串行的 Manus Agent 子工作流,为后续的执行提供清晰的步骤指导。
Manus Agent:多个 Manus Agent 组成一个链式结构,能够按照既定的顺序依次执行任务。在这个子工作流中,每个 Manus Agent 对应规划中的一个步骤(step),并且每个 Manus Agent 都采用了 ReAct 架构设计。这意味着它们可以通过多轮工具调用来完成具体的子任务,确保每个步骤都能高效、准确地执行。
Summary Agent:在所有步骤执行完成后,Summary Agent 负责对整个任务进行总结,提炼关键信息,为用户提供清晰、简洁的最终结果。
这种架构设计充分发挥了多智能体协作的优势,通过明确的分工和有序的执行流程,实现了复杂任务的高效处理。
3、OpenManus 实现总结与展望
第一、Spring AI Alibaba OpenManus 实现中的问题
当前的 OpenManus 实现存在以下主要问题:
代码复杂度高:仓库中约 80% 的代码都用于解决流程编排问题,例如串联 Manus Agent 子流程、实现消息记忆、转发工具调用、修改全局状态等。这些工作可以通过一个高度抽象的 Agent 框架来实现,从而简化开发复杂度。
工具覆盖度与执行效果有限:当前的工具,比如:浏览器使用、脚本执行工具等,覆盖范围和执行效果都较为一般,需要进一步优化。
缺乏人为介入机制:在规划和工作流程中,无法人为介入进行审查、动态修改或回退等操作,这在实际应用中可能会限制灵活性。
调试困难:当前 OpenManus 实现的效果调试相对较为困难,这给开发和优化带来了一定的挑战。
第二、Spring AI Alibaba 未来规划与解决方案
Spring AI Alibaba 是面向 Java 开发者的开源 AI 应用开发框架,它与 Spring 生态完美适配。开发者可以基于 Spring AI Alibaba 构建全新的 AI 应用,也可以使用它为传统 Spring Boot 应用进行智能化升级。
从规划图中可以看出,除了框架原子抽象之外,Spring AI Alibaba 重点规划了 Multi-Agent 框架,以及配套的生态系统,如可视化评估平台、调试 Studio 等。
接下来,我们将发布 Spring AI Alibaba Graph 多 agent 框架,以及基于 Spring AI Alibaba Graph 的强化版 OpenManus 实现。我们预期新版本的代码量将比当前减少 70% 以上,整体易读性和效果将大幅提升,使开发者能够基于此构建面向任意场景的智能体应用。
目前,Spring AI Alibaba 已经支持 MCP 工具接入。在未来,我们将为 OpenManus 接入更成熟的 MCP server 实现,以提升整体工作表现和效果。
本文转载自公众号玄姐聊AGI 作者:玄姐
