Spring AI Alibaba
面向 Java 的智能体框架,编排工作流、多智能体与长时有状态执行。
这个 Agent 能做什么,适合哪些场景?
Spring AI Alibaba 是面向 Java 开发者的智能体、工作流和多智能体应用框架。其 Agent Framework 提供 Context Engineering 与 Human In The Loop,并内置 SequentialAgent、ParallelAgent、RoutingAgent 和 LoopAgent 等编排方式。底层的 spring-ai-alibaba-graph 负责持久化、工作流编排和流式执行,也可直接通过 Graph API 构建更灵活的多智能体流程。项目还包括可视化开发、可观测性、评估和 MCP 管理能力的 Spring AI Alibaba Admin,以及用于可视化调试的 spring-ai-alibaba-studio。它通过 Spring AI 概念接入 DashScope、OpenAI 等模型提供方,并支持工具调用、MCP 与基于 Nacos 的 A2A 协作。
开发者可在 Java 项目中组合 SequentialAgent、ParallelAgent、RoutingAgent 或 LoopAgent 来执行多步骤任务;Agent Framework 还提供人工介入、上下文压缩与编辑、模型和工具调用限制、工具重试、规划及动态工具选择等上下文策略。对于需要条件路由、嵌套图、并行执行和状态管理的流程,可使用 spring-ai-alibaba-graph 的 Graph API;工作流可导出为 PlantUML 和 Mermaid。框架通过 Spring AI 接入 ChatModel、MCP、工具和消息等概念,并可借助 Nacos 进行 A2A 分布式协作。随仓库提供的 ChatBot 示例使用 spring-ai-alibaba-starter-dashscope,接收浏览器聊天输入并在 http://localhost:8080/chatui/index.html 提供聊天界面。
- Java 团队需要把一个任务拆为顺序、并行、路由或循环子任务时,可使用内置多智能体编排模式。
- 需要条件分支、嵌套图、并行运行和持久化状态的长时智能体流程时,可直接使用 Graph API。
- 使用 DashScope、OpenAI 等模型提供方并需要工具调用或 MCP 的 Spring AI 应用可接入该框架。
- 需要人工审核、上下文压缩、工具重试或调用限额来约束智能体运行的团队可采用 Agent Framework 的上下文策略。
- 需要通过 WebSocket 接收流式音频或文本并生成音频回复的产品可参考 voice-agent 示例。
- 使用 Nacos 且需要跨服务协调智能体的系统可采用其 A2A 支持。
这个 Agent 有哪些优点和局限?
- 为 Java/Spring AI 场景提供现成的 SequentialAgent、ParallelAgent、RoutingAgent 和 LoopAgent 多智能体模式。
- Graph 运行时明确覆盖持久化、流式执行、条件路由、嵌套图、并行执行和状态管理,并能导出 PlantUML 与 Mermaid。
- 内置上下文工程策略,包括人工介入、上下文压缩、工具重试、规划和动态工具选择。
- 同时覆盖模型接入、工具调用、MCP,以及使用 Nacos 的 A2A 分布式协作。
- 运行 ChatBot 示例要求 JDK 17+、模型提供方 API key 和网络访问。
- README 的最快示例以 DashScope starter 和 AI_DASHSCOPE_API_KEY 为基础;改用其他提供方需要按其 Spring AI 集成进行配置。
- Admin 的可视化、可观测性、评估和 MCP 管理在描述中出现,但未给出该 README 内可复制的本地启动命令。
- Agent Framework 与 Graph API 面向不同抽象层;直接使用 Graph API 需要自行设计更灵活的工作流。
如何安装或部署这个 Agent?
前置条件:JDK 17+,并选择模型提供方取得 API key。运行仓库中的 ChatBot 示例:
git clone --depth=1 https://github.com/alibaba/spring-ai-alibaba.git
cd spring-ai-alibaba
export AI_DASHSCOPE_API_KEY=your-api-key
./mvnw -pl examples/chatbot spring-boot:run
该示例使用 spring-ai-alibaba-starter-dashscope;Maven 已由 mvnw 提供,因此本机 Maven 为可选。
如何使用这个 Agent?
ChatBot 启动后,在浏览器打开 http://localhost:8080/chatui/index.html 即可交互。将 Agent Framework 加入项目时,README 给出的依赖包括 com.alibaba.cloud.ai:spring-ai-alibaba-agent-framework:1.1.2.0;使用 DashScope 时还需 com.alibaba.cloud.ai:spring-ai-alibaba-starter-dashscope:1.1.2.1,并设置 AI_DASHSCOPE_API_KEY。按任务流程选择 SequentialAgent、ParallelAgent、RoutingAgent 或 LoopAgent;需要更细粒度编排时使用 Graph API。
这个 Agent 与同类方案有什么区别?
项目将 Agent Framework 定位为推荐的高层开发方式,而 spring-ai-alibaba-graph 是其底层运行时:前者提供内置智能体与工作流模式,后者允许直接构建更灵活的多智能体工作流。README 还说明 Admin 可与 Dify 等开源低代码平台集成,用于从 DSL 快速迁移到 Spring AI Alibaba 项目。