Spring AI 2.1.0-M1 接入 Responses API:升级前先看这两个限制
Spring 团队在 2026 年 9 月 25 日发布了 Spring AI 2.1.0-M1。官方公告把这次里程碑的重点归纳为三项:按顺序保存内容的 MessagePart 模型、OpenAI Responses API 支持,以及向向量存储写入预计算嵌入的能力。它基于 Spring Boot 4.2,当前里程碑构建对应 4.2.0-M2。以上版本与能力均见Spring 官方发布说明。
这篇适合正在评估 Spring AI 2.1 的团队;文中的配置依据公告整理,没有在本地项目运行验证。升级前先确认两个限制:一是当前 M1 跟随 Spring Boot 4.2.0-M2,而不是现有的 4.1 稳定线;二是持久化 ChatMemory 仓库暂不能保存新的消息 parts。已经在稳定版 2.0.1 上运行生产系统的团队,应先在独立分支验证依赖与行为,不能把 M1 视作无风险补丁。
为什么需要新的消息结构
原有消息模型更像“正文 + 工具调用列表 + 媒体列表”。面对推理内容、工具调用、文本和图片交错出现的响应,这种结构可能无法完整表达原始顺序。2.1.0-M1 的 AssistantMessage、UserMessage 与 ToolResponseMessage 改用有序的 MessagePart 列表,包含文本、推理、工具调用、工具结果和媒体等部分;旧的 getText() 等访问器仍作为视图保留。官方同时说明,各个 ChatModel 的全面适配计划在后续候选版推进,所以不能假设现在所有模型提供者都已原生使用新结构。
Responses API 怎么切换
公告展示的最小配置是:
spring.ai.openai.chat.api=responses默认值仍是 chat-completions。新 OpenAiResponsesChatModel 调用 /v1/responses,与基于 Chat Completions 的模型并存。官方说明它支持推理相关选项、结构化输出、多模态输入和部分托管工具。切换前应核对当前模型、工具调用、计费及团队对响应内容留存的要求;这行属性并不代表现有业务代码、记忆仓库和第三方模型都已经完成兼容验证。官方说明也明确提示:目前持久化的 ChatMemory 仓库还不能保存消息 parts,只有内存仓库能跨对话轮次保留推理内容;持久化支持计划放在 RC1。
升级评估顺序
先在测试分支确认 Spring Boot 4.2.0-M2 与应用其他依赖兼容,再用最短的一条对话分别测试普通文本、工具调用、历史消息恢复和故障重试。对需要多轮推理连续性的应用,尤其要测试重启进程后从持久化记忆仓库恢复对话的效果。记录真实请求和输出后,才能决定是否试用 M1。此次发布提供了一个明确的探索方向,但 API 在正式版前仍可能变化,生产升级应等待自己的回归测试与正式兼容说明。