跳到主要内容

1.0.2

云端
Spring AI 学习者

Spring AI 1.0.2 正式发布,累计合并 91 个提交,涉及 263 个文件(+4,387 / -651 行),重点更新了 OpenAI GPT-5 系列模型适配、Azure OpenAI 增强以及 Bedrock 可配置性改进。

模型厂商

OpenAI

  • GPT-5 系列模型 —— 新增 gpt-5-minigpt-5-nanogpt-5-chat-latest 三个模型枚举,其中 gpt-5-chat-latest 替代了原有的 GPT_5_2025_08_07 快照
  • verbosity 参数 —— OpenAiChatOptions 新增 verbosity 配置项(low / medium / high),控制模型回复的简洁程度
  • maxTokens 互斥校验 —— 新增 maxCompletionTokens 支持,与 maxTokens 采用"最后设置优先"策略,设置其中一个会自动清除另一个并输出警告,避免 API 调用错误

Azure OpenAI

  • maxCompletionTokens —— 新增 maxCompletionTokens 配置项,适配 GPT-5 及 reasoning 系列模型(o1、o3、o4-mini)
  • 修复 Azure OpenAI ChatModel 中消息重排序问题(GH-4156)
  • 清理 AzureOpenAiChatOptions 中重复的配置行

Bedrock

  • 可配置启用开关 —— 新增 spring.ai.bedrock.cohere.embedding.enabledspring.ai.bedrock.converse.chat.enabled 属性,允许按需禁用 Cohere Embedding 和 Converse Chat 功能
  • 移除 BedrockProxyChatModel 中错误且不可达的 BedrockChatOptions 类型转换分支
  • Bedrock Converse ChatModel 正确合并 Tool Calling 相关的 ChatOptions

Mistral AI

  • 移除已弃用的 OPEN_CODESTRAL_MAMBA 模型常量
  • 改进 JavaDoc 并更新文档链接

核心改进

Tool Calling

  • 修复流式模式下 null / 空工具调用参数导致失败的问题——自动将空参数默认为 "{}"
  • 修复 ToolCallback#call(String, ToolContext) 默认实现的处理逻辑

Tokenizer

  • 修复二进制数据 Token 估算——改用 Base64 编码,提升非文本内容 Token 计数的准确性

可观测性

  • 补充 Metrics 指标的文档说明
  • 改进 Chinese 字符的 Unicode 属性匹配支持

CI/CD 优化

1.0.2 对持续集成流水线进行了大量优化:

  • 基于模块受影响范围的选择性构建,跳过无变更模块
  • 修复快速构建模式下根模块的测试发现逻辑
  • CI 运行名称修正为显示 commit hash

Bug Fix 汇总

问题修复
MongoDB Atlas SSL Bundle 无限递归修复 getSslBundle() 中的 StackOverflowError(GH-4149)
JDBC ChatMemory 冗余异常捕获清理 JdbcChatMemoryRepository 中不必要的 try-catch
HSQLDB scope 错误hsqldb 依赖 scope 从 runtime 修正为 test
线程安全性DateTimeFormatter 替代 SimpleDateFormat
Tool Calling AutoConfig 日志ClassNotFoundException 仅输出类名,避免完整堆栈

Spring AI 1.0.2 延续了稳定迭代的节奏,重点补齐了 GPT-5 生态的适配拼图,同时通过 CI/CD 优化提升了项目的开发效率。