开发与工程 javaspring-aimulti-agent-orchestrationgraph-workflowscontext-engineeringmodel-context-protocolnacos

Spring AI Alibaba

面向 Java 的智能体框架,编排工作流、多智能体与长时有状态执行。

FollowAgents 评估 · FARS-2.0
待评估
查看完整评分方法 →

这个 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 提供聊天界面。

  1. Java 团队需要把一个任务拆为顺序、并行、路由或循环子任务时,可使用内置多智能体编排模式。
  2. 需要条件分支、嵌套图、并行运行和持久化状态的长时智能体流程时,可直接使用 Graph API。
  3. 使用 DashScope、OpenAI 等模型提供方并需要工具调用或 MCP 的 Spring AI 应用可接入该框架。
  4. 需要人工审核、上下文压缩、工具重试或调用限额来约束智能体运行的团队可采用 Agent Framework 的上下文策略。
  5. 需要通过 WebSocket 接收流式音频或文本并生成音频回复的产品可参考 voice-agent 示例。
  6. 使用 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 项目。

常见问题

它只能使用 DashScope 吗?
不是。README 说明它基于 Spring AI 概念支持 DashScope、OpenAI 等多个 LLM 提供方;不过给出的快速运行示例使用 DashScope,并要求设置 AI_DASHSCOPE_API_KEY。
运行 ChatBot 最低需要什么?
需要 JDK 17+、一个模型提供方 API key,以及运行 ./mvnw -pl examples/chatbot spring-boot:run 的 shell 环境。
何时应使用 Graph API?
当内置 Agent Framework 模式不足以表达流程,且需要自行控制条件路由、嵌套图、并行执行或状态管理时,可直接使用 Graph API。
支持人工审批和运行约束吗?
支持。README 列出了 Human In The Loop、模型与工具调用限制、工具重试、上下文压缩和编辑等上下文工程能力。

相关 Agents