Spring AI 1.1 GA 发布
代表 Spring AI 团队,我很高兴宣布 Spring AI 1.1.0 正式发布!
Spring AI 1.1 为 Spring 生态系统带来了模型上下文协议集成、高级 AI 功能以及扩展的模型提供商支持。1.1 开发周期包含了超过 850 项改进、错误修复和文档更新。
我们衷心感谢社区贡献者、合作伙伴组织以及更广泛的 Spring AI 生态系统在这个发布周期中做出的宝贵贡献。
发布摘要
Spring AI 1.1.0 在所有领域都包含了实质性改进:
- 在 M1、M2、M3、M4 和 RC1 中总计超过 850 项改进(GitHub Release)
- 354 项增强功能,包括主要新功能和集成
- 241 项错误修复,提高了稳定性和可靠性
- 100 项文档改进,包含新指南和示例
- 23 项安全更新和依赖升级
- 来自多个组织和开源项目的社区贡献
模型上下文协议
模型上下文协议(MCP)是 Spring AI 1.1 最重要的功能集改进。Spring AI 为 MCP 集成提供了 Spring Boot 自动配置和全面的基于注解的编程模型。
MCP 文档 Spring AI MCP 功能
基于注解的编程模型:
|
|
多种传输选项:
- 用于本地进程通信的 STDIO 传输
- 用于基于 Web 集成的 HTTP SSE(服务器发送事件)
- 用于具有可恢复性的有状态会话管理的可流式 HTTP
Spring Boot 自动配置: 多个专用启动器支持 WebFlux、WebMVC 和 Servlet 环境中的客户端和服务器实现。Docker Compose 和 Testcontainers 集成支持容器化 MCP 网关部署。
安全集成: 安全文档涵盖了保护 MCP 服务器的 OAuth2 集成模式。在 Daniel Garnier-Moiroux 的博客文章中阅读更多内容:使用 Spring AI 保护 MCP 服务器。
入门指南: Christian Tzolov 的博客文章:将您的 AI 连接到一切:Spring AI 的 MCP 启动器。
对于深入的技术探讨,请观看 James Ward 和 Maximilian Schellhorn 的演讲:超越本地工具:MCP 深度探讨。
提示词缓存
Spring AI 1.1 为 Anthropic Claude 和 AWS Bedrock 添加了提示词缓存支持,可将成本降低高达 90%,同时提高响应时间。
Anthropic Claude 提示词缓存 Anthropic Claude 文档
Spring AI 为 Anthropic Claude 支持五种缓存策略:
- NONE:无缓存(默认)
- SYSTEM_ONLY:缓存系统消息
- TOOLS_ONLY:缓存工具定义
- SYSTEM_AND_TOOLS:缓存系统消息和工具定义
- CONVERSATION_HISTORY:遵循 Anthropic 最佳实践的增量缓存
缓存生存时间(TTL)选项包括 5 分钟和 1 小时缓存,具有自动缓存管理和资格跟踪。
Soby Chacko 的详细指南涵盖了实现模式:Spring AI 中使用 Anthropic Claude 的提示词缓存支持。
AWS Bedrock 提示词缓存 AWS Bedrock 文档
AWS Bedrock Converse API 现在支持 Claude 和 Nova 模型的提示词缓存,为部署在 AWS 基础设施上的应用程序提供类似的成本优化优势。
实现细节可在以下位置找到:Spring AI 中的 AWS Bedrock 提示词缓存支持。
高级 AI 功能
推理和思考模式支持 Spring AI 1.1 为具有推理能力的 AI 模型提供了跨多个提供商的原生支持:
- Ollama:通过 OpenAI 兼容性支持推理模型的思考模式,具有努力参数控制
- ZhipuAI:支持 GLM 模型的思考和 response_format 参数
- Anthropic(文档):流式思考事件,可访问推理链
- OpenAI(文档):访问推理内容和自定义参数
ReasoningContent API 使应用程序能够检查和使用模型的推理过程。
自改进 AI 代理的递归顾问 顾问文档
新的递归顾问功能使顾问能够在链中调用其他顾问,创建复杂的多步骤 AI 工作流。两个内置的递归顾问实现为常见用例提供了预配置模式,具有可配置的观察功能用于监控和调试。
此功能支持构建自改进的 AI 代理,可以通过迭代处理优化自己的输出。Christian Tzolov 的博客文章演示了该模式:使用 Spring AI 递归顾问创建自改进 AI 代理。
递归顾问模式还支持实现 LLM-as-a-Judge 评估系统,如以下内容所述:使用 Spring AI 进行 LLM 响应评估:使用递归顾问构建 LLM-as-a-Judge。
扩展的模型提供商生态系统
Spring AI 1.1 通过新集成和增强功能扩展了模型提供商支持:
新提供商集成
Google GenAI SDK 集成: Google GenAI 聊天文档 | Google GenAI 嵌入文档
- 对 Gemini Pro、Gemini 1.5 Pro 和 Gemini 2.0 Flash 模型的原生支持
- 双重身份验证:API 密钥和 Google Cloud 凭据
- 聊天和文本嵌入功能
- 缓存内容 API 支持
感谢来自 Google 的 Dan Dobrin (@ddobrin) 贡献此集成。
ElevenLabs 文本转语音: ElevenLabs 文档
- 流式音频生成
- 多种语音选项
- 支持各种音频格式
感谢 Alexandros Pappas (@apappascs) 贡献此集成。
OpenAI 和 ElevenLabs 都实现了 TextToSpeechModel 接口(文档),提供了跨提供商的一致模型级 API。
增强的模型支持
OpenAI: OpenAI 聊天文档 | OpenAI 音频文档
- GPT-5 模型系列支持(gpt-5、gpt-5-mini、gpt-5-nano)- 感谢 Alexandros Pappas (@apappascs)
- 用于上传和管理的文件 API(文档)- 感谢 Sun Yuhan (@sunyuhan1998)
- 推理内容访问
- 扩展的 TTS 和转录模型 - 感谢 Alexandros Pappas (@apappascs)
Anthropic Claude: Anthropic Claude 文档
- 最新的 Claude 模型:Sonnet 4.5、Opus 4.1
- 用于来源归因和可追溯性的 Citations API
- 用于控制函数调用的工具选择支持 - 感谢 Austin Dase (@adase11)
- 具有缓存管理的增强提示词缓存 - 感谢 Austin Dase (@adase11)
Mistral AI: Mistral AI 聊天文档
- OCR API(文档)集成,用于文档和图像文本提取 - 感谢 Alexandros Pappas (@apappascs)
- Codestral Embed 模型支持 - 感谢 Nicolas Krier (@nicolaskrier)
- 构建器模式一致性 - 感谢 Jason Smith (@jasonparallel)
ZhipuAI: ZhipuAI 聊天文档
- GLM-4.6 模型支持和国际站点集成 - 感谢 YunKui Lu (@luyunkui95)
- GLM-4.5 和 GLM-Z1 模型支持 - 感谢 YuJie Wan (@eeaters)
- 思考模式功能 - 感谢 YunKui Lu (@luyunkui95)
向量存储、聊天记忆和可观测性
向量存储增强 向量数据库文档
Spring AI 1.1 包括对检索增强生成(RAG)应用程序的改进:
- MariaDB 向量存储(文档):具有相似性评分的完全集成 - 感谢 Tilman Holube (@tilman)
- OpenSearch 近似 k-NN(文档):性能优化的近似搜索 - 感谢 Jemin Huh (@JM-Lab)
- GemFire 元数据过滤(文档):相似性搜索的高级过滤 - 感谢 Jason Huynh (@jason.huynh)
- Weaviate 配置(文档):增强的字段自定义(元前缀、内容字段、嵌入字段)- 感谢 Jonghoon Park (@dev-jonghoonpark)
- VectorStoreRetriever 接口(文档):遵循最小权限原则的只读抽象
聊天记忆存储选项 聊天记忆文档
多种对话存储选项:
- MongoDB 聊天记忆存储库:用于对话历史的 MongoDB 集成 - 感谢 Łukasz Jernaś (@deejay1)
- Oracle JDBC ChatMemoryRepository:支持 H2 和 SQLite 方言的 Oracle 数据库支持 - 感谢 guanxu (@guanxuc) 和 fanxt0218 (@fanxt0218)
- Azure Cosmos DB 聊天记忆:用于全局分布式部署的 Azure 集成 - 感谢来自 Microsoft 的 Theo van Kraay (@TheovanKraay)
可观测性和监控 可观测性文档
Micrometer 可观测性增强:
- 观察上下文增强,用于更好的上下文传播 - 感谢 Thomas Vitale (@ThomasVitale)
- 聊天客户端完成日志记录,用于调试 - 感谢 Jonatan Ivanov (@jonatan-ivanov)
- 可配置的顾问观察
- 带有 Prometheus 和 OpenTelemetry 映射指导的指标文档 - 感谢 heechann (@heechann)
其他改进
- MCP Java SDK 演进:在 1.1 开发周期中从 v0.10.0 升级到 v0.15.0
- 文档处理(文档):具有批处理功能的 MarkdownDocumentReader,增强的多模态 PDF 支持
- 开发人员体验:跨 EmbeddingOptions 和 ChatOptions 的统一构建器模式
- 网络可靠性:分布式部署的自动重试配置
- 安全文档:具有 OAuth2 模式的 MCP 安全参考
- 示例存储库:总计 37 个模块,其中 24 个具有集成测试 - Spring AI 示例
社区和生态系统
Spring AI 社区 GitHub 组织 新的 Spring AI 社区 GitHub 组织为扩展 Spring AI 的社区驱动项目提供了一个家园。
阅读公告:介绍 Spring AI 社区 GitHub 组织。
Spring AI Agents 和 Bench 用于构建和评估 AI 代理的新项目:
- Spring AI Agents(文档):用于构建代理编码工具和 AI 代理的框架
- Spring AI Bench(文档):基准测试和评估工具包
了解更多:介绍 Spring AI Agents 和 Spring AI Bench。
会议演讲和教程 Spring AI 社区通过演示和教程分享知识:
- Thomas Vitale 在 Spring I/O 2025 上的"使用 Java 和 Spring AI 构建模块化 RAG 架构"
- Devnexus 2025 - Mark Pollack 博士和 Josh Long 的 Spring AI
- Dan Vega 的 Spring AI 完整教程
MCP Java SDK 贡献 MCP Java SDK 代表了整个 Java 生态系统的协作努力。在 1.1 开发周期中对 MCP Java SDK 做出贡献的包括:
- Broadcom:Christian Tzolov (@tzolov)、Daniel Garnier-Moiroux (@Kehrlann)、Dariusz Jędrzejczyk (@chemicL)
- Oracle:Graeme Rocher (@graemerocher)、Sergio del Amo (@sdelamo)
- Confluent:Pascal Vantrepote (@pascalconfluent)
- AWS:Anurag Pant (@pantanurag555)
- Google:Yanming Zhou (@zhouyming)
- Deutsche Bank:Dmitry Bedrin (@bedrin)
- 开源社区:He-Pin (@He-Pin)(Apache Pekko PMC)、lance leehaut (@leehaut)、Liujunjie (@JunJieLiu51520)、Richie Caputo (@arcaputo3)、shaoyin.zj (@zhangjingcn)、Zizo-Vi (@Zizo-Vi)、@valuesource
开始使用 Spring AI 1.1
Spring AI 1.1 文档包括:
- MCP 入门指南(文档):模型上下文协议集成的分步介绍
- 提供商文档(文档):所有支持的 AI 提供商的完整指南
- 示例存储库(Spring AI 示例):带有集成测试的工作示例
下一步计划
我们将在接下来的几周内将主分支保持在 1.1.1-SNAPSHOT,以期待错误修复 PR。然后我们将把主分支转移到 2.0.0-SNAPSHOT,并开始支持 Spring Framework 7 和 Spring Boot 4.0。
资源
- 项目页面
- GitHub 存储库
- 问题
- 文档
- Stack Overflow
贡献者
🙏 我们感谢所有使此发布成为可能的贡献者。以下是自 1.0 GA 发布以来的贡献者集体列表。
(贡献者名单略)