Spring AI Alibaba Admin 开源了!Java 开发者做 AI 多智能体,终于不用再写重复代码了

昨天下午刷 Spring 社区动态时,一条红色置顶消息突然跳出来 ——Spring AI Alibaba Admin 正式开源。作为最近被 “多智能体编排” 折磨得快脱发的 Java 开发者,我几乎是立刻停下手里的需求,点开 GitHub 链接、拉取源码、配置环境,连晚饭都差点忘了吃。

折腾了一晚上后,我坐在电脑前长舒一口气:以前搭个多智能体系统要写几百行流程代码,现在用它 “搭积木” 就能搞定;对接公司的 Nacos 和 Dubbo,不用再改一行适配代码。今天想把这份惊喜和实用攻略分享给大家,或许能帮你少走些弯路。

一、为什么我会觉得它 “救了急”?说说那些 AI 开发的糟心事

做企业级 AI 应用的这些日子,我踩过的坑能攒成一本 “血泪史”:

上个月要开发一个 “用户评价分析系统”,光处理流程就头大 —— 用户提交评价后,要先判断是正面、负面还是中性,正面的要记录数据,负面的要生成投诉工单,中性的要推给运营。就这么个逻辑,我写了 300 多行 if-else,后期产品说要加 “重复评价过滤” 步骤,我又花了半天时间捋分支,改得头晕眼花。

更麻烦的是对接公司现有系统。我们团队一直用 Nacos 做服务发现、ARMS 做监控,接入 AI 模块时,光是让智能体能调用 Dubbo 商品服务,我就写了个适配层:先把 Dubbo 接口封装成 REST,再让智能体调用,中间还得处理序列化问题,整整折腾了一周。

最崩溃的是上线后,有次模型调用突然超时,我想查日志却发现 —— 智能体之间的交互过程完全没埋点,不知道是哪个节点出了问题,最后只能一点点重启服务试错,那段时间头发掉得特别多。

直到昨天用上 Spring AI Alibaba Admin,我才发现:原来 AI 开发可以这么轻松。它像一套现成的 “脚手架”,把阿里内部验证过的方案开源出来,完全沿用 Spring Boot 的开发习惯,不用学新框架,导入依赖就能上手。

二、3 个让我惊艳的核心功能,每一个都戳中痛点

1. Graph 多智能体框架:复杂流程 “搭积木”,代码量少了 60%

最让我惊喜的是它的 Graph 框架,以前写流程代码的 “噩梦”,现在用它 5 步就能解决:

它内置了 ReAct Agent、Supervisor 等 6 种常用的智能体模式,支持嵌套分支和并行执行,不用再自己写复杂的流程控制;还提供了 LlmNode(模型调用节点)、ToolNode(工具调用节点)这些预置组件,拿过来就能用,不用重复造轮子。

更贴心的是,它能导出 PlantUML 可视化流程图,上次开会时我把图甩给产品经理,他一眼就看明白了整个逻辑,再也不用我拿着代码一行行解释。

给大家看段我实测的代码,搭一个评价分析流程超简单:

// 1. 初始化状态图,指定流程名和状态工厂

StateGraph stateGraph = new StateGraph("评价分析流程", stateFactory)

// 2. 添加“评价分类”节点,用异步节点避免阻塞主线程

.addNode("feedback_classifier", node_async(feedbackClassifier))

// 3. 添加“数据记录”节点,处理正面评价

.addNode("recorder", node_async(new RecordingNode()))

// 4. 配置流程起点:从默认的START节点指向分类节点

.addEdge(START, "feedback_classifier")

// 5. 设置条件分支:根据分类结果决定下一步

.addConditionalEdges(

  "feedback_classifier",  // 来源节点是“评价分类”

  edge_async(new FeedbackDispatcher()),  // 分支判断逻辑

  Map.of(  // 分类结果和目标节点的映射

    "positive", "recorder",  // 正面评价→记录数据

    "negative", "handle_complaint",  // 负面评价→处理投诉

    "neutral", "push_operation"  // 中性评价→推给运营

  )

);

以前写这么个流程要 200 多行代码,现在不到 10 行就搞定了。后来产品要加 “重复评价过滤”,我只多写了一行addNode和一行addEdge,5 分钟就改完了。

2. 企业生态无缝对接:现有系统 “零改造”,省了一周适配时间

对我们这种有存量系统的团队来说,这点太重要了。

它能直接对接 Nacos MCP Registry,智能体服务部署后会自动注册,不用我再手动配置服务地址;内置了 OpenTelemetry 埋点,接入 ARMS 就能看到 “智能体调用耗时”“模型响应成功率” 这些数据,上次模型超时,我在 ARMS 上一眼就定位到是 “分类节点” 调用超时,10 分钟就解决了问题。

最让我惊喜的是 Dubbo 适配 —— 公司有个 Dubbo 库存服务,以前要让 AI 导购智能体查库存,得写个适配层把 Dubbo 接口转成 REST,现在不用了,只要在 Nacos 上注册服务,智能体用@DubboReference就能直接调用,全程没改一行业务代码,省了我一周的时间。

3. JManus 智能体:不管是产品还是开发,都能上手用

社区还同步发布了一个叫 JManus 的智能体工具,特别友好:

如果是产品经理想快速验证需求,不用写代码,拖拽节点就能搭个简单的聊天机器人或订单查询助手;如果是开发想做带 RAG 的客服智能体,用预置模板上传文档、配置模型,半小时就能跑通;要是需要对接企业私域系统,比如 ERP 查订单,写个类实现Retrieval接口就行,灵活度特别高。

我昨天用它搭了个 “技术文档问答助手”,上传了 Spring Boot 的官方文档,配置了通义千问模型,从导入知识库到上线,只用了 40 分钟。要是以前用原生 Spring AI,至少要写 3 个类、配置 20 行 yaml,效率差得不是一点半点。

三、10 分钟上手教程:跑通一个带记忆 + RAG 的 ChatBot

别觉得它复杂,只要你用过 Spring Boot,10 分钟就能跑起来。

第一步:导入依赖

在 pom.xml 里加个启动器就行,版本用最新的 1.0.0:

<dependency>

  <groupId>com.alibaba.cloud</groupId>

  <artifactId>spring-ai-alibaba-admin-starter</artifactId>

  <version>1.0.0</version>

</dependency>

第二步:配置模型和服务

在 application.yml 里填好模型密钥,Nacos 不是必须的,本地开发可以注释掉:

spring:

  ai:

    # 配置大模型,支持通义、DeepSeek、GPT等

    model:

      type: tongyi  # 模型类型

      api-key: 你的通义千问API密钥  # 换成自己的密钥

    # 配置Nacos服务发现(本地开发可省略)

    alibaba:

      mcp:

        registry: nacos://localhost:8848  # Nacos地址

第三步:写个简单接口

用框架提供的ChatClient,就能实现带记忆和 RAG 的对话功能:

@RestController

@RequestMapping("/ai")

public class ChatController {

    // 自动注入ChatClient,框架已经帮我们封装好了

    @Autowired

    private ChatClient chatClient;

    @GetMapping("/chat")

    public String chat(String question) {

        // 1. 构建对话请求:添加记忆和RAG检索能力

        return chatClient.prompt()

                .memory(MemoryType.SIMPLE)  // 简单记忆,记住上下文对话

                .retrieval(new MyKnowledgeRetriever())  // RAG:从知识库查相关信息

                .user(question)  // 传入用户的问题

                .call()  // 调用模型

                .getResult()  // 获取结果

                .getOutput()

                .getContent();  // 提取回答内容

    }

    // 自定义知识库检索器(示例:从本地模拟知识库返回数据)

    static class MyKnowledgeRetriever implements Retrieval {

        @Override

        public List<RetrievalResult> retrieve(String query) {

            // 实际项目中可以对接Elasticsearch、Milvus等向量数据库

            return List.of(new RetrievalResult("Spring Boot 3.0最低支持Java 17版本", 0.9));

        }

    }

}

启动项目后,访问http://localhost:8080/ai/chat?question=SpringBoot 3.0支持Java几,就能得到带知识库信息的回答。我第一次跑通的时候,真的觉得特别神奇 —— 全程没写复杂的模型调用和记忆逻辑,框架全帮我们搞定了。

四、哪些场景适合用它?说说我的真实感受

根据我的实测,这些场景用它效率会特别高:

企业客服智能体:用户咨询进来,自动分类是售前、售后还是投诉,调用对应的知识库生成回复,遇到复杂问题还能自动转人工,不用再手动分配;

运维助手:对接 ARMS 监控,一旦有告警日志,智能体自动分析问题原因(比如 “CPU 过高是因为 XX 进程占用”),还能生成处理方案,甚至自动执行重启命令;

电商导购系统:用户说 “想要一款性价比高的千元机”,智能体直接调用 Dubbo 商品服务查库存和价格,结合用户画像推荐合适的机型,全程不用人工干预;

多部门协同智能体:财务智能体算成本、销售智能体查订单、库存智能体看备货情况,最后自动汇总成月度报表,不用再各部门轮流填数据。

五、一些心里话:适合谁用?要注意什么?

作为第一批实测的开发者,我想分享几点实在的建议:

适合的人群:如果你是做企业级 AI 应用的 Java 开发,或者团队用的是 Spring Cloud/Dubbo 生态,那它会特别适合你,能帮你省掉大量造轮子的时间;中小团队尤其推荐,不用再投入人力做基础框架开发。

慎选的场景:如果只是做个简单的个人聊天机器人,用基础版 Spring AI 就够了,没必要上这个 “重型武器”,避免过度设计。

版本建议:目前刚开源,社区还在快速迭代,核心业务建议等 2.0 稳定版再用;现在可以先 star 一下 GitHub 仓库,跟着社区一起关注更新,有问题还能在 Issues 里交流。

最后:聊聊开源的意义

其实昨天在配置环境的时候,我突然想起几年前做 AI 开发的场景 —— 那时候 Java 生态里几乎没有成熟的多智能体框架,只能对着 Python 的 LangChain 羡慕。现在 Spring AI Alibaba Admin 开源,相当于把阿里内部验证过的经验,毫无保留地分享给了整个 Java 生态。

这大概就是开源的魅力吧:让每个开发者都能站在巨人的肩膀上,不用再从零开始。

如果你最近也在做 AI 相关的项目,或者正被多智能体、生态对接的问题困扰,不妨试试它。或许你会和我一样,在跑通第一个 Demo 的时候,感受到那种 “终于不用再写重复代码” 的轻松。

互动时间

你做 AI 开发时,遇到过最头疼的问题是什么?是多智能体编排,还是生态对接?或者是模型调用的稳定性?欢迎在评论区聊聊你的经历,希望能帮你少踩些坑。

如果这篇文章对你有帮助,别忘了点赞、收藏,也可以分享给身边做 Java+AI 的同事,一起拥抱这个好用的新工具~

👉 Spring AI Alibaba Admin GitHub 地址:https://github.com/alibaba/spring-ai-alibaba-admin(建议 star,后续更新不迷路)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容