news 2026/1/18 11:26:40

激动人心!Spring AI 2.x 发布!史诗级加强!

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
激动人心!Spring AI 2.x 发布!史诗级加强!

目录

    • 版本概览与重大变更
      • **革命性的技术栈升级**
    • 📦 环境要求与项目配置
      • 环境要求
      • 依赖配置
      • 基础配置 (`application.yml`)
    • ✨ 核心新特性与升级详解
      • 1. Redis 史诗级增强:成为AI应用核心存储
      • 2. 模型生态全面爆发
      • 3. 企业级特性与基础设施
    • 💻 核心API使用示例 (适配2.x)
      • 1. 使用增强的 ChatClient
      • 2. 使用Redis Chat Memory
      • 3. 向量存储与检索 (以Redis为例)
    • 🛠️ 迁移指南与重要提示
    • 📚 资源与后续学习

版本概览与重大变更

Spring AI 2.0.0-M1 是 2.x 系列的开篇版本,带来了底层架构、模型生态和核心组件的全面升级。最重要的变化是基座升级,本版本强制要求以下环境:

  • Java 21:最低开发环境要求。
  • Spring Boot 4.0 GA:基于新一代框架构建。
  • Spring Framework 7.0:全面拥抱 Jakarta EE 11。

这意味着你可以直接享受虚拟线程、AOT编译等新特性,但迁移前需重点评估升级成本。

革命性的技术栈升级

Spring AI 2.0.0-M1 不仅仅是功能更新,更是技术范式的全面演进。基于 Spring Boot 4.0 + Spring Framework 7.0 的全新架构,标志着Java AI开发正式进入虚拟线程与AOT编译的新时代。

本次里程碑版本基于Spring Boot 4.0 GASpring Framework 7.0构建,以Jakarta EE 11为基石,并强制要求 Java 21作为最低开发环境。

整体来看,Spring AI 2.0.0-M1 一共合入了67 项改动,包括:

  • 25 项功能增强:围绕 AI 原生开发体验做了大幅扩展;

  • 32 项文档更新:对新手更友好,踩坑前多看一眼能省不少时间;

  • 7 个稳定性修复 + 3 个安全依赖升级:把基础打得更稳。

📦 环境要求与项目配置

环境要求

  • JDK 21或更高版本 (强制要求)
  • Spring Boot 4.0 GA或更高版本
  • Maven 3.6+ 或 Gradle 7.x

依赖配置

Maven
<dependencyManagement>中引入 BOM:

<dependency><groupId>org.springframework.ai</groupId><artifactId>spring-ai-bom</artifactId><version>2.0.0-M1</version><type>pom</type><scope>import</scope></dependency>

然后添加具体模块依赖,例如 OpenAI:

<dependency><groupId>org.springframework.ai</groupId><artifactId>spring-ai-openai-spring-boot-starter</artifactId></dependency>

Gradle

dependencies { implementation platform('org.springframework.ai:spring-ai-bom:2.0.0-M1') implementation 'org.springframework.ai:spring-ai-openai-spring-boot-starter' }

基础配置 (application.yml)

spring:ai:openai:api-key:${OPENAI_API_KEY}# 本次更新:默认集成了官方Java SDK,默认聊天模型已更新chat:options:model:gpt-5-mini# 默认模型已更新为前沿版本temperature:0.7

✨ 核心新特性与升级详解

1. Redis 史诗级增强:成为AI应用核心存储

Redis 在本版本中获得重大升级,集成了聊天记忆增强的向量存储能力,可作为构建生产级AI应用的首选存储方案。

  • 新增 Redis Chat Memory
    提供了基于Redis的、支持持久化的聊天记忆组件,支持跨会话保留上下文。

    <dependency><groupId>org.springframework.ai</groupId><artifactId>spring-ai-redis-store</artifactId><version>2.0.0-M1</version></dependency>

    特性包括:持久化记忆、文本搜索、范围查询,并可精细调优HNSW索引参数(M,efConstruction,efRuntime) 以平衡召回率与时延。

  • Redis Vector Store 升级
    向量存储能力同步增强,同样支持文本搜索、范围查询和HNSW参数配置,无需额外部署专门的向量数据库。

2. 模型生态全面爆发

  • Anthropic Claude 深度集成

    • 支持Claude 4.5 Opus / Haiku等最新模型。
    • 引入Citations API:可在回答中精确标注来源文档片段,极大增强RAG和问答场景的可信度。
    • 集成Files API:模型可直接生成代码、报告等可下载文件。
    • 工具调用新增Auto/Any/Tool/None四种精细控制模式。
  • OpenAI 官方SDK集成
    现在直接集成OpenAI 官方 Java SDK,稳定性和兼容性更佳,默认聊天模型更新为gpt-5-mini

  • Google Gemini 思考深度可调
    GenAI SDK升级至 1.30.0,为Gemini模型补全了ThinkingConfig/ThinkingLevel配置,允许开发者控制模型推理深度,在质量与速度间取得平衡。

3. 企业级特性与基础设施

  • Azure Cosmos DB Chat Memory:新增对应的 Spring Boot Starter,方便Azure生态用户存储聊天记录。
  • Model Context Protocol (MCP) 增强:优化了客户端自动配置,引入了可选的处理器注册表,改善了对复杂Bean类型的支持。
  • GemFire 向量存储安全加固:现在支持用户名/密码认证,满足企业合规要求。

💻 核心API使用示例 (适配2.x)

1. 使用增强的 ChatClient

ChatClient仍是核心接口,其构建和使用方式更加灵活。

importorg.springframework.ai.chat.client.ChatClient;importorg.springframework.stereotype.Service;@ServicepublicclassEnhancedChatService{privatefinalChatClientchatClient;// 推荐通过Builder注入publicEnhancedChatService(ChatClient.BuilderchatClientBuilder){this.chatClient=chatClientBuilder.build();}publicStringchat(StringuserMessage){returnchatClient.prompt().user(userMessage)// 可方便地接入各类Advisor(如函数调用、上下文检索等)// .advisors(...).call().content();}// 流式响应publicFlux<String>streamChat(StringuserMessage){returnchatClient.prompt().user(userMessage).stream().content();}}

2. 使用Redis Chat Memory

配置并利用Redis实现持久化、可搜索的聊天记忆。

# application.yml 配置示例spring:data:redis:host:localhostport:6379ai:memory:store:redis# 指定使用redis存储记忆

在代码中,记忆管理通常由框架自动与ChatClient集成,无需手动处理。

3. 向量存储与检索 (以Redis为例)

importorg.springframework.ai.vectorstore.VectorStore;importorg.springframework.ai.document.Document;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.stereotype.Service;importjava.util.List;@ServicepublicclassDocumentSearchService{@AutowiredprivateVectorStorevectorStore;// 添加文档到向量库publicvoidaddDocument(Stringcontent,Map<String,Object>metadata){Documentdoc=newDocument(content,metadata);vectorStore.add(List.of(doc));}// 相似性搜索(现在支持文本搜索和范围查询)publicList<Document>searchSimilar(Stringquery){returnvectorStore.similaritySearch(query);}}

🛠️ 迁移指南与重要提示

  1. 强制升级:从 Spring AI 1.x 迁移必须同时升级JDK 21Spring Boot 4Spring Framework 7。这是一个组合升级,需全面测试。
  2. 包与配置变化:部分API和配置属性可能已调整,建议参照官方2.0文档。OpenAI等模块的Starter artifactId可能包含-spring-boot-starter后缀。
  3. 拥抱新特性:积极评估并采用Redis Chat Memory向量存储来简化架构,利用Claude Citations API等增强应用能力。
  4. 测试策略:由于是里程碑版本 (M1),API在后续RC或GA版中仍有变动的可能,建议在生产环境采用前进行充分验证。

📚 资源与后续学习

  • 官方文档:优先查阅 Spring AI 2.0 Reference Documentation,这是最准确的信息源。
  • 官方示例:关注 spring-ai-samples 仓库,获取2.x的示例代码。
  • 问题反馈:开发过程中遇到的问题,可以在 GitHub Issues 进行搜索或反馈。

总而言之,Spring AI 2.0.0-M1 是一次面向未来的重大升级,通过强制采用最新技术栈和引入强大的新功能(特别是围绕Redis和各大模型),为构建下一代Java AI应用奠定了坚实的基础。开始迁移时,请务必规划好技术栈的整体升级路径。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/1/17 14:33:18

排序算法实战篇(一):6 大基础排序原理 + Python 代码 + 运行过程

作为刚学数据结构的大学生&#xff0c;排序算法曾是我的 “噩梦”—— 背完原理写不出代码&#xff0c;跑通代码又搞不清过程。直到把选择、冒泡、插入、归并、桶、计数这六大基础排序算法挨个实现并调试&#xff0c;才摸清它们的 “脾气”。这篇文章带你从代码到运行过程&…

作者头像 李华
网站建设 2026/1/14 13:27:19

基于微信小程序的乡镇医院挂号预约系统毕设源码+文档+讲解视频

前言 本课题聚焦乡镇居民就医便捷化、乡镇医院挂号管理规范化的需求&#xff0c;设计开发基于微信小程序的乡镇医院挂号预约系统。项目以 SpringBoot 作为后端核心框架&#xff0c;搭配 MySQL 实现居民信息、医生排班、科室信息、挂号预约记录、就诊记录等数据的持久化存储&…

作者头像 李华
网站建设 2026/1/15 23:45:51

2026高职移动开发专业,高薪证书报考指南

&#x1f44f;2026年的移动开发行业&#xff0c;已从“功能实现”的红海竞争迈入“数据驱动智能开发”的蓝海阶段。对高职移动开发专业学生而言&#xff0c;单纯掌握编码技能已难以匹配企业对复合型人才的需求&#xff0c;高含金量证书成为突破学历壁垒、撬动高薪就业的关键杠杆…

作者头像 李华
网站建设 2026/1/17 14:42:36

Windows系统文件UXInit.dll缺少损坏问题 下载修复

在使用电脑系统时经常会出现丢失找不到某些文件的情况&#xff0c;由于很多常用软件都是采用 Microsoft Visual Studio 编写的&#xff0c;所以这类软件的运行需要依赖微软Visual C运行库&#xff0c;比如像 QQ、迅雷、Adobe 软件等等&#xff0c;如果没有安装VC运行库或者安装…

作者头像 李华
网站建设 2026/1/17 20:29:32

城市仿真软件:CityEngine_(9).交通流仿真

交通流仿真 在城市仿真软件中&#xff0c;交通流仿真是一个非常重要的模块&#xff0c;它可以帮助城市规划者和交通工程师更好地理解城市交通系统的运行情况&#xff0c;预测交通流量&#xff0c;优化交通设计&#xff0c;提高城市交通效率。本节将详细介绍如何在CityEngine中进…

作者头像 李华