阿里出手!Java 开发者狂喜!开源 AI Agent 框架 JManus 来了,初次见面就心动~
阿里开源的JManus是基于SpringAIAlibaba的Java版OpenManus框架,支持多Agent协作、PLAN-ACT模式及MCP协议,可集成云端/本地大模型。提供Docker和源码两种部署方式,支持持久化数据存储。其核心通过LLM实现智能体的规划-执行-总结流程,但尚存Azure OpenAI兼容性问题。该框架适合构建复杂AI应用,开发者可参与PR贡献完善功能。
JManus 是阿里开源的Java版本的OpenManus,核心框架是Spring AI Alibaba
它能让Java 程序员更便捷地使用 AI 技术,支持多 Agent 框架、网页配置 Agent、MCP 协议和 PLAN-ACT 模式。可集成多个大模型,可调用阿里云百炼平台的模型,也可以使用本地ollama模型。
JManus 的核心特点包括
完美实现了 OpenManus 多 Agent 框架借助 Spring AI 和 Java 的深度结合,开发者可以轻松构建和管理多个智能体,让复杂任务的分工与协作变得高效且可控。JManus 无缝支持 MCP(Model Context Protocol)协议Agent 不仅可以调用本地或云端的大语言模型,还能与各类外部服务、API、数据库等进行深度交互,极大拓展了应用场景和能力边界。JManus 原生支持 PLAN-ACT 模式能够让 Agent 具备复杂推理、分步执行和动态调整的能力,适用于多轮对话、复杂决策、自动化流程等高阶 AI 应用场景。
部署指南
docker方式
# 拉取阿里云加速镜像
docker pull sca-registry.cn-hangzhou.cr.aliyuncs.com/spring-ai-alibaba/jmanus:develop
# 基础启动(临时数据存储)
docker run -d \
--name jmanus \
-p 18080:18080 \
-e DASHSCOPE_API_KEY=your_api_key_here \
sca-registry.cn-hangzhou.cr.aliyuncs.com/spring-ai-alibaba/jmanus:develop
# 或者启动并持久化数据(推荐)
docker run -d \
--name jmanus \
-p 18080:18080 \
-e DASHSCOPE_API_KEY=your_api_key_here \
-v $(pwd)/h2-data:/app/extracted/h2-data \
-v $(pwd)/extensions:/app/extracted/extensions \
sca-registry.cn-hangzhou.cr.aliyuncs.com/spring-ai-alibaba/jmanus:develop
源码部署方式
从GitHub拉取spring-ai-alibaba源码
git clone https://github.com/alibaba/spring-ai-alibaba.git
cd spring-ai-alibaba/spring-ai-alibaba-jmanus
到百炼平台获取一个apiKey

配置对应的数据源

idea启动springboot项目

- 访问http://localhost:18080/ui/index.html
🎉恭喜! 您的多 Agent 系统现已上线并准备就绪。

可以配置相关的Agent,MCP配置,大模型的配置

执行一个Agent他会从百度搜索内容,分片分析去除无用的,获取有用的再聚合分析,这个就是JManus无限上下文的原理

但是目前模型配置等方面发现还有一些Bug,近期我们准备修复一下提交PR,我一直非常的认同阿里的开源理念,源于开源,回馈于开源!
底层实现源码解读
源码解读入口
ManusController.java
executeQuery接口
生成agent信息与生成Plan计划

生成执行计划plan

将系统中存在的agent与任务生成plan

重试三次机会生成执行计划

执行生成的每一个步骤

执行生成所有的plan步骤,FunctionToolCallback回调生成steps集合

执行step

实际执行的代码

判断是否有act执行,需要执行就调用工具

执行工具代码

最终将执行完的工具链总结返回

Agent的核心思想
智能体设计
通过LLM进行规划-执行工具-跟踪记忆-总结


关于JManus目前存在的问题
还不能使用Azure OpenAI的LLM,通过源码阅读,发现根本原因是因为
FunctionToolCallback中inputSchema的设定导致的

如果你有更多的见解,欢迎评论区聊聊,我们一起解读JMuans。下期我们再来一起深入解读JManus源码
更多推荐

所有评论(0)