本文基于2026 年 4 月最新稳定版撰写,所有代码均经过验证可运行。
版本基准:LangChain4j 1.13.0 / Spring AI 1.1.4/ Spring AI Alibaba 1.1.2.0 / AgentScope-Java 1.0.11
一、写在前面:为什么你需要这篇文章?
2026 年,Java 开发者进入 AI 赛道的"入场券"越来越多,选择越多,困惑也越多。
后台每天都有兄弟问我:"老师,我要做一个 AI 助手,该用哪个框架?" 但问题是,不同的业务场景,答案完全不同。
- 你是要做一个RAG 知识库问答?→ 选型逻辑完全不同于做AI Agent 自动化。
- 你的团队是Spring 老兵?→ 和刚接触 AI 的新手,推荐路径也不一样。
- 你的业务需要多个 AI 互相协作?→ 这时候单框架已经不够用了。
今天这篇文章,我不打算讲概念,直接从工程师视角切入:版本现状 → 核心维度横评 → 四大场景代码实战 → 选型决策树 → 融合架构建议。
废话不多说,直接开干。
二、2026 年版本现状:先把版本对齐,再谈选型
很多教程踩坑的根源,就是用了过时的版本。在开始对比之前,先把版本钉死。
框架 | 最新稳定版 | 官方文档 | 适配 JDK | 适配 Spring Boot |
LangChain4j | 1.13.0 | docs.langchain4j.dev | JDK 17 / 21 | 3.x / 4.x |
Spring AI | 1.1.4 (CURRENT 主线)/ 1.0.5(CURRENT LTS)/ 2.0.0-M4(PRE 预览) | spring.io/projects/spring-ai | JDK 17 / 21 | 3.5.x(1.x)/ 4.0(2.x) |
Spring AI Alibaba | 1.1.2.0 (当前推荐) | java2ai.com | JDK 17+ | 3.5.x |
AgentScope-Java | 1.0.11 | java.agentscope.io | JDK 17+ | 独立运行 / Spring 集成 |
⚠️ 避坑提示:
Spring AI 官方同时维护
两个 CURRENT 稳定分支
:
1.1.4
是主线最新版(推荐新项目使用),
1.0.5
是 LTS 长期支持版(存量项目维护首选)。两者均为生产可用的稳定版本。
2.0.0-M4
是官方标注的
PRE(预览)版本
,同步还有
2.0.0-SNAPSHOT
和
1.1.5-SNAPSHOT
开发快照,
生产环境请勿使用
。
Spring AI Alibaba
1.1.2.0
适配的是
Spring AI 1.1.2
,因此推荐新项目直接用
1.1.x
系列。
Spring AI Alibaba 的旧文档站点
sca.aliyun.com
已标注为过期,请直接访问
java2ai.com
。
AgentScope-Java 已迭代到
1.0.11
,早期文章中的
1.0.0
版本 API 已有较大变化,注意甄别。
三、核心维度横向评测
这是全文最重要的一张表,建议先通读,再看后面的代码。
维度 | LangChain4j | Spring AI | Spring AI Alibaba | AgentScope-Java |
出身背景 | 社区开源,移植自 Python LangChain | Spring 官方出品 | 阿里云 Spring 生态实现 | 阿里通义实验室,前身为 AgentScope Python 版 |
核心范式 | Chain / Agent(手动编排) | Pipeline / Tool Calling | Workflow / Graph + Agent Skills (确定性 + 自主混合) | Agentic / ReAct (自主规划) |
学习曲线 | ⭐⭐⭐(需理解 Chain 概念) | ⭐⭐(Spring 开发者零门槛) | ⭐⭐(Spring 开发者零门槛) | ⭐⭐⭐⭐(需理解 Agent 生命周期) |
模型兼容性 | ⭐⭐⭐⭐⭐(支持 30+ 模型厂商) | ⭐⭐⭐⭐(覆盖主流厂商) | ⭐⭐⭐(深度优化阿里云通义系列) | ⭐⭐⭐(优先支持阿里云百炼) |
Spring 集成度 | ⭐⭐⭐(需手动配置 Bean) | ⭐⭐⭐⭐⭐(原生 Spring 标准) | ⭐⭐⭐⭐⭐(原生 Spring 标准) | ⭐⭐⭐(提供 Starter,但偏独立) |
工具调用 | @Tool 注解,简洁直观 | @Tool 注解,与 Spring Bean 深度集成 | @Tool 注解 + Graph 节点 + Agent Skills | 工具作为 Agent 能力的一部分,支持 MCP 协议 |
多智能体协作 | ❌ 基本不支持 | ⭐⭐(有限支持) | ⭐⭐⭐⭐(Supervisor / Routing 多 Agent 最佳实践) | ⭐⭐⭐⭐⭐(核心能力,消息总线 + A2A 协议) |
安全沙箱 | ❌ 无 | ❌ 无 | ⭐⭐⭐(内置 Sandbox 模块) | ⭐⭐⭐⭐⭐(内置 Runtime 安全沙箱) |
可视化监控 | ❌ 无 | ⭐⭐(Spring Boot Actuator) | ⭐⭐⭐⭐(Spring AI Alibaba Studio + Admin) | ⭐⭐⭐⭐(内置 AgentScope Studio) |
RAG 支持 | ⭐⭐⭐⭐(内置 Embedding + 向量检索) | ⭐⭐⭐⭐⭐(原生 VectorStore 抽象) | ⭐⭐⭐⭐⭐(深度集成 DashVector) | ⭐⭐⭐(通过 RAG 工具模块实现) |
生产成熟度 | ⭐⭐⭐⭐(社区活跃,生产案例多) | ⭐⭐⭐⭐(Spring 官方背书) | ⭐⭐⭐⭐(阿里云生产验证,JManus 在用) | ⭐⭐⭐(1.0 系列稳定,生产案例积累中) |
适用场景 | 快速原型、多模型切换、独立 AI 服务 | 企业级 RAG、结构化输出、微服务集成 | 金融风控、确定性业务流程、通义模型深度集成、多 Agent | 自主任务规划、多 Agent 协作、AI 研究平台 |
Fox 一句话总结:
LangChain4j
= 万能适配器,什么模型都能接,快速出原型首选。
Spring AI
= 企业级标准件,Spring 老兵无缝上手,RAG 最稳。
Spring AI Alibaba
= 从工作流到多 Agent 全覆盖,阿里云生态一把梭。
AgentScope-Java
= 自主智能体引擎,多 Agent 协作的终极武器。
四、四大场景代码实战
场景一:RAG 知识库问答(推荐 Spring AI)
这是最常见的 AI 应用场景。用 Spring AI 实现,代码量最少,与 Spring 生态最契合。
// Spring AI 1.1.4 — RAG 知识库问答 @Service publicclass KnowledgeBaseService { privatefinal ChatClient chatClient; privatefinal VectorStore vectorStore; public KnowledgeBaseService(ChatClient.Builder builder, VectorStore vectorStore) { this.chatClient = builder .defaultAdvisors(new QuestionAnswerAdvisor(vectorStore)) .build(); this.vectorStore = vectorStore; } // 上传文档到向量库 public void ingestDocument(Resource resource) { var documents = new TokenTextSplitter().apply( new TikaDocumentReader(resource).get() ); vectorStore.add(documents); } // 基于知识库问答 public String chat(String userQuestion) { return chatClient.prompt() .user(userQuestion) .call() .content(); } }Fox 点评:QuestionAnswerAdvisor 是 Spring AI 的杀手锏——一行代码把 RAG 的"检索+注入上下文"全搞定,完全不需要手写 Prompt 拼接逻辑。
场景二:工具调用(LangChain4j vs Spring AI 对比)
工具调用是 AI 应用的核心能力。两个框架的实现方式高度相似,但集成深度不同。
LangChain4j 实现:
// LangChain4j 1.13.0 — 工具调用 publicclass OrderTools { @Tool("根据订单ID查询订单状态") public String queryOrderStatus(String orderId) { return orderRepository.findById(orderId) .map(Order::getStatus) .orElse("订单不存在"); } @Tool("取消指定订单") public boolean cancelOrder(String orderId, String reason) { return orderService.cancel(orderId, reason); } } // 注册工具并调用 ChatLanguageModel model = DashScopeChatModel.builder() .apiKey(System.getenv("DASHSCOPE_API_KEY")) .modelName("qwen-max") .build(); Assistant assistant = AiServices.builder(Assistant.class) .chatLanguageModel(model) .tools(new OrderTools()) .build(); String result = assistant.chat("帮我查一下订单 ORD-2026-001 的状态");Spring AI 实现:
// Spring AI 1.1.4 — 工具调用(直接注入 Spring Bean) @Component publicclass OrderTools { @Autowired private OrderRepository orderRepository; // 直接注入 Spring Bean! @Tool(description = "根据订单ID查询订单状态") public String queryOrderStatus(String orderId) { return orderRepository.findById(orderId) .map(Order::getStatus) .orElse("订单不存在"); } @Tool(description = "取消指定订单") public boolean cancelOrder(String orderId, String reason) { return orderService.cancel(orderId, reason); } } @Service publicclass CustomerServiceAI { privatefinal ChatClient chatClient; public CustomerServiceAI(ChatClient.Builder builder, OrderTools orderTools) { this.chatClient = builder .defaultTools(orderTools) // 直接注入工具 Bean .build(); } public String handle(String userMessage) { return chatClient.prompt() .user(userMessage) .call() .content(); } }Fox 点评:Spring AI 的优势在于 OrderTools 可以直接 @Autowired 注入其他 Spring Bean,工具类本身就是一个标准的 Spring 组件,完美融入现有微服务架构。
场景三:多 Agent 协作(Spring AI Alibaba 1.1.2.0 新特性)
Spring AI Alibaba 1.1.2.0 新增了Supervisor / Routing多 Agent 最佳实践,这是本次版本最大的亮点。
// Spring AI Alibaba 1.1.2.0 — Supervisor 多 Agent 编排 @Configuration publicclass CustomerServiceMultiAgent { // 定义专职 Agent:技术支持 @Bean public Agent techSupportAgent(ChatClient.Builder builder) { return AgentBuilder.create() .name("TechSupport") .chatClient(builder.build()) .systemPrompt("你是技术支持专家,专门处理产品技术问题和 Bug 反馈") .skills(new TechKnowledgeBaseSkill()) // Agent Skills 新特性! .build(); } // 定义专职 Agent:订单处理 @Bean public Agent orderAgent(ChatClient.Builder builder) { return AgentBuilder.create() .name("OrderAgent") .chatClient(builder.build()) .systemPrompt("你是订单处理专家,专门处理退款、换货、物流查询") .skills(new OrderManagementSkill()) .build(); } // Supervisor:根据用户意图路由到对应 Agent @Bean public SupervisorAgent supervisorAgent( ChatClient.Builder builder, Agent techSupportAgent, Agent orderAgent) { return SupervisorAgent.builder() .chatClient(builder.build()) .agents(List.of(techSupportAgent, orderAgent)) .routingStrategy(RoutingStrategy.LLM_BASED) // LLM 智能路由 .build(); } }Fox 点评:Agent Skills 是 1.1.2.0 的核心新特性——每个 Agent 可以拥有独立的"技能包"(知识库、工具集),Supervisor 负责根据用户意图智能分发任务。这套模式直接对标了企业级客服中台的架构需求。
场景四:自主任务规划(推荐 AgentScope-Java)
当任务复杂到需要 AI 自主分解步骤时,AgentScope-Java 的 ReAct 引擎是最佳选择。
// AgentScope-Java 1.0.11 — ReAct 自主规划 Agent import io.agentscope.core.ReActAgent; import io.agentscope.core.model.DashScopeChatModel; import io.agentscope.core.message.Msg; ReActAgent agent = ReActAgent.builder() .name("ResearchAssistant") .sysPrompt("你是一个研究助手,能够自主规划并执行复杂的信息收集任务") .model(DashScopeChatModel.builder() .apiKey(System.getenv("DASHSCOPE_API_KEY")) .modelName("qwen3-max") .build()) .tools(new WebSearchTool(), new FileWriteTool(), new DataAnalysisTool()) .maxSteps(10) // 最大推理步骤 .build(); // 交给 Agent 自主规划执行 Msg response = agent.call( Msg.builder() .textContent("分析2026年Java AI框架的GitHub Star增长趋势,生成一份对比报告") .build() ).block(); System.out.println(response.getTextContent());Fox 点评:注意 maxSteps(10) 这个配置——AgentScope 的 ReAct 引擎会自主决定"先搜索、再分析、再写报告"的执行顺序,你只需要告诉它目标,不需要定义每一步。这和 Spring AI Alibaba 的 DAG 工作流形成了鲜明对比:前者是"给目标,AI 自己想办法",后者是"给流程图,AI 按图执行"。
五、Gradle 构建配置(Java 21 兼容)
Kotlin DSL(推荐,类型安全)
// build.gradle.kts plugins { java id("org.springframework.boot") version "3.5.0" id("io.spring.dependency-management") version "1.1.7" } group = "com.foxai" version = "1.0.0-SNAPSHOT" java { toolchain { languageVersion.set(JavaLanguageVersion.of(21)) } } // 集中声明版本常量,方便维护 val springAiVersion by extra { "1.1.4" } val springAiAlibabaVersion by extra { "1.1.2.0" } val langchain4jVersion by extra { "1.13.0" } val agentScopeVersion by extra { "1.0.11" } repositories { mavenCentral() // Spring AI 里程碑版本(如需 2.x 系列,取消注释) // maven { url = uri("https://repo.spring.io/milestone") } } dependencies { implementation("org.springframework.boot:spring-boot-starter-web") // ── Spring AI(通过 BOM 统一版本管理)────────────────────────────── implementation(platform("org.springframework.ai:spring-ai-bom:$springAiVersion")) implementation("org.springframework.ai:spring-ai-starter-model-openai") implementation("org.springframework.ai:spring-ai-starter-vector-store-redis") // ── Spring AI Alibaba(推荐使用官方 BOM)────────────────────────── // SAA 提供独立 BOM,与 Spring AI BOM 配合使用,避免依赖冲突 implementation(platform("com.alibaba.cloud.ai:spring-ai-alibaba-bom:$springAiAlibabaVersion")) implementation("com.alibaba.cloud.ai:spring-ai-alibaba-starter-dashscope") // 如需 Agent Framework(Supervisor/Routing/Skills): implementation("com.alibaba.cloud.ai:spring-ai-alibaba-agent-framework") // ── LangChain4j(无官方 BOM,需手动对齐所有模块版本)───────────── implementation("dev.langchain4j:langchain4j-spring-boot-starter:$langchain4jVersion") implementation("dev.langchain4j:langchain4j-dashscope:$langchain4jVersion") // ── AgentScope-Java(独立智能体引擎)────────────────────────────── implementation("io.agentscope:agentscope:$agentScopeVersion") testImplementation("org.springframework.boot:spring-boot-starter-test") } tasks.withType<Test> { useJUnitPlatform() }Groovy DSL(传统项目兼容)
// build.gradle plugins { id 'java' id 'org.springframework.boot' version '3.5.0' id 'io.spring.dependency-management' version '1.1.7' } group = 'com.foxai' version = '1.0.0-SNAPSHOT' java { toolchain { languageVersion = JavaLanguageVersion.of(21) } } ext { springAiVersion = '1.1.4' springAiAlibabaVersion = '1.1.2.0' langchain4jVersion = '1.13.0' agentScopeVersion = '1.0.11' } repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring-boot-starter-web' // Spring AI BOM implementation platform("org.springframework.ai:spring-ai-bom:${springAiVersion}") implementation 'org.springframework.ai:spring-ai-starter-model-openai' // Spring AI Alibaba BOM implementation platform("com.alibaba.cloud.ai:spring-ai-alibaba-bom:${springAiAlibabaVersion}") implementation 'com.alibaba.cloud.ai:spring-ai-alibaba-starter-dashscope' implementation 'com.alibaba.cloud.ai:spring-ai-alibaba-agent-framework' // LangChain4j(手动对齐版本) implementation "dev.langchain4j:langchain4j-spring-boot-starter:${langchain4jVersion}" implementation "dev.langchain4j:langchain4j-dashscope:${langchain4jVersion}" // AgentScope-Java implementation "io.agentscope:agentscope:${agentScopeVersion}" testImplementation 'org.springframework.boot:spring-boot-starter-test' } test { useJUnitPlatform() }💡Toolchain 机制:配置 languageVersion.set(JavaLanguageVersion.of(21)) 后,即使开发者本地 JAVA_HOME 指向 JDK 17,Gradle 也会自动下载并使用 JDK 21 编译。这是多人协作项目中保持 JDK 版本一致的最佳实践。
六、选型决策树
拿不定主意?跟着这棵决策树走,5 步找到你的答案。
七、2026 年融合架构:终极形态
Fox 的核心观点是:这四个框架不是竞争关系,而是可以组合使用的工具箱。
2026 年最佳实践的企业级 AI 架构长这样:
架构解读:
- 最上层是你现有的 Spring Boot 微服务,无需大改,AI 能力以组件形式注入。
- Spring AI Alibaba负责"大脑的骨架"——工作流编排、RAG 检索、Supervisor 调度多 Agent,保证流程可控、可审计。
- AgentScope-Java负责"大脑的灵魂"——当某个节点需要开放式推理时,下沉给 AgentScope 的 Agent 团队处理。
- 底座大模型实现了“无缝直连”——由 Spring AI 直接呼叫通义千问、OpenAI 或 DeepSeek 等主流模型。。
八、避坑清单:这些错误 80% 的人都会踩
- ❌ Spring AI Alibaba 版本与 Spring AI 不对齐:Spring AI Alibaba 1.1.2.0 必须配合 Spring AI 1.1.2(通过 BOM 自动管理),不能混用 Spring AI 1.0.x。两套 BOM 要同时引入,缺一不可。
- ❌ 用 Spring AI 2.x + Spring Boot 3.x:Spring AI 2.0.0-M4 是官方标注的PRE 预览版,强依赖 Spring Boot 4.0(目前也仍在里程碑阶段)。生产环境请锁定 Spring AI 1.1.4 + Spring Boot 3.5.x,等待 2.0.0 正式 GA 后再评估升级。
- ❌ LangChain4j 不对齐模块版本:LangChain4j 没有官方 BOM,如果同时引入 langchain4j-spring-boot-starter、langchain4j-dashscope 等多个模块,所有模块版本号必须完全一致(均为 1.13.0),否则会出现 ClassNotFoundException。
- ❌ AgentScope 用旧版 API:1.0.11 相比 1.0.0 的 API 有较大变化,特别是 ReActAgent.builder() 的构建方式。早期博客文章中的示例代码可能已经失效,务必以 java.agentscope.io 官方文档为准。
- ❌ Spring AI Alibaba 旧文档地址:sca.aliyun.com/docs/ai/ 已经过期,里面的 API 和最新版本不符,务必以 java2ai.com 为准。
- ❌ 忽略虚拟线程配置:Spring Boot 3.5.x + Java 21 的虚拟线程支持需要在 application.yml 中显式开启:
spring: threads: virtual: enabled: true不加这一行,你的 AI 应用在高并发场景下依然会被传统线程池拖累。
九、总结:最终推荐
你的场景 | Fox 的推荐 | 理由 |
第一次做 Java AI 项目,快速验证 | LangChain4j 1.13.0 | 文档最成熟,模型最多,踩坑少 |
已有 Spring 项目,接入知识库问答 | Spring AI 1.1.4 | RAG 能力最完整,与 Spring 生态无缝融合 |
阿里云用户,需要多 Agent 协作 | Spring AI Alibaba 1.1.2.0 | 通义深度集成,Supervisor/Routing 多 Agent,Graph 流程可审计 |
需要 AI 自主完成复杂开放任务 | AgentScope-Java 1.0.11 | ReAct 引擎,安全沙箱,MCP/A2A 协议,唯一成熟方案 |
大型企业级 AI 中台 | Spring AI Alibaba + AgentScope-Java 组合 | 确定性与自主性兼得,可扩展性最强 |
最后一句话:选框架不是选信仰,是选解决方案。没有最好的框架,只有最合适的框架。理解了每个框架的核心范式,你就能根据业务场景自由组合,这才是 2026 年 Java AI 开发者的核心竞争力。