当前位置:首页 > 技术 > 正文内容

Spring AI Alibaba 1.0 正式发布:构建企业级 Java 智能体开发新范式

访客 技术 2026年7月2日 1

Spring AI Alibaba 1.0 已正式进入通用可用(GA)阶段,标志着专为 Spring 生态打造的企业级 AI 应用框架迈入成熟期。该框架深度融合通义系列大模型能力,提供从底层提示工程、函数调用、结构化输出,到高层的检索增强生成(RAG)、智能体(Agent)架构与对话记忆等全栈支持,并全面接入云原生基础设施体系,如配置中心、服务网关和可观测性平台,助力开发者高效构建生产级 AI 应用。

系统架构图

核心特性概览

1. 基于 StateGraph 的多智能体编排引擎

Spring AI Alibaba 引入了 StateGraph 框架,用于构建可扩展的工作流与多智能体系统。通过图形化流程定义,开发者无需手动管理上下文传递或状态持久化,即可实现复杂的任务分解与协作逻辑。

多智能体架构

StateGraph 主要能力包括:

  • ✅ 支持多种 Agent 范式,如 ReAct、Supervisor 等
  • ✅ 内置标准化节点类型,兼容主流低代码平台设计
  • ✅ 原生支持响应流式传输(Streaming)
  • ✅ 提供人工干预节点(Human-in-the-loop),支持执行暂停、状态修正与恢复
  • ✅ 支持会话记忆与外部存储集成
  • ✅ 实现流程快照保存与恢复机制
  • ✅ 允许嵌套及并行分支结构
  • ✅ 可导出 PlantUML 或 Mermaid 格式的可视化流程图

2. 深度整合企业级 AI 生态组件

为解决企业在落地 AI 应用时面临的实际挑战,Spring AI Alibaba 实现了对多个关键系统的无缝对接:

  • 百炼平台集成,简化模型接入与 RAG 知识库构建流程
  • 兼容ARMSLangfuse 等可观测性工具,支持 OpenTelemetry 协议,便于追踪模型调用链路与性能指标
  • 通过 MCP(Model Calling Protocol)协议,结合 Nacos 实现服务注册发现与自动路由
生态集成架构

借助 Nacos MCP Registry,MCP Server 可实现分布式部署与负载均衡。对于已有 Spring Cloud 或 Dubbo 架构的应用,可通过零代码改造完成 API 到 MCP 服务的升级,同时支持元数据在 Nacos 中的自动同步。

3. 探索自主规划型智能体平台

基于 Spring AI Alibaba 框架,社区已推出实验性通用智能体项目 JManus,旨在探索具备自规划能力的 AI 系统。该项目不仅复现了 Manus 的核心功能,更致力于推动"零代码构建智能体"的愿景,为开发者提供从低代码到全自动的多样化开发路径。

框架在关键执行节点内置 SDK 埋点,记录模型调用、向量检索、工具执行等操作的 trace 与 metrics 数据。所有 tracing 信息遵循 OpenTelemetry 规范,可直接对接 Langfuse、阿里云 ARMS 等监控平台。

从单体聊天机器人到复杂智能体系统的演进

1. 初级形态:增强型聊天机器人

现代 AI 应用远不止简单的 API 调用。Spring AI 提出"增强型大模型"(Augmented LLM)理念,将外部知识检索(RAG)、长期记忆(Memory)和工具调用(Tool Use)作为基础能力进行封装。

增强型LLM架构

其核心组件 ChatClient 允许开发者将上述能力统一注入模型推理过程。例如:


var client = ChatClient.builder(dashScopeApi)
    .withRetrieval(knowledgeBase)           // 启用知识检索
    .withTools(Arrays.asList(weatherTool)) // 注册外部工具
    .withMemory(memoryStore)               // 绑定会话记忆
    .build();
    

这类应用被称为"单智能体系统",适用于任务简单、决策路径明确的场景。但当工具数量增加或上下文过长时,模型容易出现误判,因此需引入更高阶的组织方式。

2. 进阶模式:声明式工作流

工作流将复杂任务拆解为固定步骤,由开发者预先定义流程图,模型主要承担分类与内容生成角色。这种方式稳定性高,适合意图识别、客服分诊等结构化任务。

工作流示例

Spring AI Alibaba Graph 提供丰富的预设节点:

  • LlmNode:执行大模型推理
  • QuestionClassifierNode:问题分类
  • ToolNode:调用外部工具

以下是一个用户反馈处理流程的代码示例:


StateGraph graph = new StateGraph("Feedback Processing", stateFactory)
    .addNode("classifier", node_async(feedbackClassifier))
    .addNode("detail_router", node_async(detailRouter))
    .addNode("logger", node_async(new LogRecordNode()))
    .addEdge(START, "classifier")
    .addConditionalEdges("classifier",
        edge_async(new FeedbackDispatcher()),
        Map.of("positive", "logger", "negative", "detail_router"))
    .addEdge("detail_router", "logger")
    .addEdge("logger", END);
    

3. 高阶范式:多智能体协同系统

相较于静态流程,多智能体系统更具动态性与适应性。各子 Agent 可独立决策并通过消息机制协作,共同完成复杂目标。

目前已有多个基于该框架构建的智能体产品:

  • JManus:通用任务代理
  • DeepResearch:深度研究分析助手
  • AgentScope:多功能智能体运行环境

快速启动你的第一个应用

在 Spring Boot 项目中引入以下依赖即可开始开发:

<dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>com.alibaba.cloud.ai</groupId>
      <artifactId>spring-ai-alibaba-bom</artifactId>
      <version>1.0.0.2</version>
      <type>pom</type>
      <scope>import</scope>
    </dependency>
  </dependencies>
</dependencyManagement>

<dependencies>
  <dependency>
    <groupId>com.alibaba.cloud.ai</groupId>
    <artifactId>spring-ai-alibaba-starter-dashscope</artifactId>
  </dependency>
</dependencies>

更多详情请访问:
GitHub 仓库:https://github.com/alibaba/spring-ai-alibaba
官方文档:https://java2ai.com/

标签: Spring AI

相关文章

Linux crontab 详解

1) crontab 是什么cron 是 Linux 的定时任务守护进程;crontab 是用来编辑/查看“按时间周期执行命令”的表(cron table)。常见两类:用户 crontab:每个用户一份(crontab -e 编辑)系统级 crontab / cron.d:可指定执行用户(/etc/crontab、/etc/cron.d/*)2) crontab 时间...

富文本里可以允许的 HTML 属性

一、所有标签默认允许的安全属性(极少)class        (可选)id           (通常建议禁用)title️ 注意:id 容易被滥用做锚点注入,很多系统直接禁用class 允许的话最好只允许固定前缀(如 editor-*)二、a 标签允许属性<a href="" t...

Mac 安装 Node.js 指南

方法一:通过官网安装包(最简单,适合初学者)如果你只是想快速安装并开始使用,这是最直接的方法。访问 Node.js 官网。页面会显示两个版本:LTS (Recommended For Most Users):长期支持版,最稳定。建议选这个。Current:最新特性版,包含最新功能但可能不够稳定。下载 .pkg 安装包并运行。按照安装向导点击“下一步”即可完成。方法二:使用 Homebrew 安装(...

Dom\HTML_NO_DEFAULT_NS 的副作用:自动加闭合标签

在使用Dom\HTMLDocument时,Dom\HTML_NO_DEFAULT_NS 将禁止在解析过程中设置元素的命名空间, 此设置是为了与DOMDocument向后兼容而存在的。当使用它时,已知的一个副作用就是:自动加闭合标签例如 </img> 为什么会这样?当你使用:Dom\HTML_NO_DEFAULT_NS文档会变成 无命名空间模式,此时内部更接近 XML...

Laravel 事件和监听器创建

在 Laravel 中,使用 Artisan 命令创建 Events(事件) 和 Listeners(监听器) 是非常高效的。你可以通过以下几种方式来实现:1. 手动创建单个 Event如果你只想创建一个事件类,可以使用 make:event 命令:Bashphp artisan make:event UserRegistered执行后,文件将生成在 app/Even...

自定义域名解析神器 dnsmasq

什么是 dnsmasq?dnsmasq 是一个轻量级、功能强大的网络服务工具,专为小型和中等规模网络设计。它是一个综合的网络基础设施解决方案[1]。dnsmasq 能做什么?功能说明应用场景DNS 转发与缓存将 DNS 查询转发到上游服务器(ISP、Google DNS 等),并在本地缓存结果加快 DNS 查询速度,减少外部 DNS 流量本地 DNS解析本地网络设备的主机名,无需编辑&n...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。