Spring AI 2.0:Java AI 开发的分水岭

Spring AI 2.0:Java AI 开发的分水岭

Spring AI 2.0.0 GA 已于 2026 年 6 月正式发布,基于 Spring Boot 4.1 和 Spring Framework 7.0 构建。从 1.0 GA 到 2.0 GA 仅一年时间,但 API 经历了一次彻底的架构重构。

ChatClient 成为唯一入口

1.x 中 ChatClient 与 ChatModel 混用,边界模糊。2.0 明确划界:业务开发统一使用 ChatClient,ChatModel 仅面向框架开发者做底层集成。工具调用、重试、记忆管理全部收敛到 ChatClient 的 Advisor 链中。

工具调用提升为 Advisor 一等公民

1.x 的工具调用循环埋在各自 ChatModel 内部,无法观测和扩展。2.0 将工具循环提升为 Advisor 链中的可组合组件,ToolCallingAdvisor 自动注册,管理完整的工具执行生命周期。定义工具只需 @Tool 注解:

java 复制代码
class WeatherTools {
    @Tool(description = "获取指定城市的当前天气")
    public String getWeather(String city) {
        return weatherService.fetch(city);
    }
}

String response = ChatClient.create(chatModel)
    .prompt("阿姆斯特丹天气如何?")
    .tools(new WeatherTools())
    .call()
    .content();

官方测试表明,新架构在 OpenAI、Anthropic 和 Gemini 上实现了 34%--64% 的 Token 消耗降低。

自纠错结构化输出

entity() 接口新增 validateSchema() 开关。当模型返回的 JSON 不符合目标 Schema 时,校验错误会自动回传给模型重新生成,默认重试 3 次,无需开发者编写任何解析或重试逻辑。

java 复制代码
ActorsFilms films = chatClient.prompt()
    .user("生成一位随机演员的电影作品列表")
    .call()
    .entity(ActorsFilms.class, spec -> spec.validateSchema());

底层全面升级

2.0 强制要求 Java 21 ,最低 Spring Boot 4.0;Jackson 2 升级至 Jackson 3;全面引入 JSpecify 空安全注解,在编译期校验 API 层面的空指针风险。

对于新项目,直接上 2.0 是最优选择;老项目则需先评估 Spring Boot 3.x → 4.x 的迁移成本。

相关推荐
程序员海军2 小时前
用了两年多 GPT,我最近开始换模型了,还折腾了个求职避坑 Agent
前端·人工智能·后端
码士集团小青2 小时前
SpringBoot 集成缓存性能之王 Caffeine
spring boot·后端·缓存
excel3 小时前
IndexNow:让搜索引擎更快发现网站更新的主动通知协议
前端·后端·架构
Json____4 小时前
用 FastAPI + Vue3 打造一套完整的在线考试系统:从组卷到阅卷的业务闭环实践
后端·node.js·fastapi·it学习·wwwoop.com
小灰灰搞电子5 小时前
Rust+Slint 实现FTP客户端调试助手源码分享
开发语言·后端·rust
专业程序开发源5 小时前
springboot欧缇蔓月子中心管理系统82697-计算机课程设计、毕业设计
java·spring boot·后端·python·spring·django·课程设计
卷无止境6 小时前
面向arm64桌面客户端开发全景:语言、框架与生态
后端·python
IT_陈寒6 小时前
JavaScript的闭包陷阱,这个坑我躺了三天才爬出来
前端·人工智能·后端
用户8356290780516 小时前
如何使用 Python 对 Excel 数据进行分组和分级显示
后端·python
vx_Biye_Design7 小时前
django房屋租赁推荐系统78455-计算机课程设计、毕业设计
vue.js·spring boot·后端·python·django·课程设计·express