先行一步
VMware 提供培训和认证,为您的进步加速。
了解更多我们很高兴地宣布 Spring AI 1.0.0 里程碑 7 已发布。这将是最后一个里程碑版本。下个月将发布 RC1 版本,紧接着将在巴塞罗那举行的 Spring IO 大会前发布 GA 版本。
为了庆祝这个版本,我们在我们的 AI 生成的音乐播放列表 中添加了一首新歌,由 Josh Long 和 Claude 作词!查看 最新曲目 以增强您的博客阅读和编码体验。
以下是此版本的关键变化。请注意,存在破坏性变更!
Spring AI 1.0.0-M7 引入了几项重要变更,这些变更与之前在 SNAPSHOT 版本中引入的结构改进一致。这些变更创建了一个更模块化和更易于维护的代码库,同时减少了应用程序中不必要的依赖项。
最重要的变化是 Spring AI starter artifact 的命名模式
spring-ai-{model}-spring-boot-starter
→ spring-ai-starter-model-{model}
spring-ai-{store}-store-spring-boot-starter
→ spring-ai-starter-vector-store-{store}
spring-ai-mcp-{type}-spring-boot-starter
→ spring-ai-starter-mcp-{type}
一些类已移至新包以更好地反映其领域职责
KeywordMetadataEnricher
和 SummaryMetadataEnricher
从 org.springframework.ai.transformer
移至 org.springframework.ai.chat.transformer
Content
, MediaContent
, 和 Media
从 org.springframework.ai.model
移至 org.springframework.ai.content
您的 IDE 应该能够轻松处理这些重构。
如上文核心架构改进部分所述,项目已从整体式核心重构为专业领域模块。
这种模块化方法允许您只包含所需的功能,从而减小部署规模并明确组件之间的边界。
重要的是,**如果您使用 Spring AI starter,此更改不应是破坏性变更**,因为它们现在会自动导入新的模块化依赖项。只有直接引用旧的整体式 artifact 的应用程序才需要更新其依赖项。
ToolContext
类已增强,支持显式和隐式工具解析,仅在明确请求时才在模型调用中包含工具。
有关这些更改的更多详细信息,请参阅
有两种方法可以将您的项目更新到 Spring AI 1.0.0-M7
使用 Claude Code CLI tool 工具并使用此 prompt。您也可以使用其他 AI 助手工具,但我们只测试了使用 Claude Code。请注意,此自动化方法处理 artifact ID 更改、包重定位和模块结构更改,但尚未包含升级到 MCP 0.9.0 的自动更改。
请参阅升级说明以获取详细说明,包括有关手动更新 MCP 相关代码的指导。
全面的模块化架构
spring-ai-commons
:基础模块,不依赖于其他 Spring AI 模块Document
、TextSplitter
等)spring-ai-model
:在 commons 的基础上提供 AI 能力抽象ChatModel
、EmbeddingModel
和 ImageModel
ToolDefinition
、ToolCallback
)spring-ai-vector-store
:统一的向量数据库抽象VectorStore
接口SimpleVectorStore
spring-ai-client-chat
:高级会话 AI APIChatClient
接口ChatMemory
进行会话持久化OutputConverter
进行响应转换spring-ai-advisors-vector-store
:桥接聊天与向量存储以实现 RAGQuestionAnswerAdvisor
:将上下文注入到 prompts 中VectorStoreChatMemoryAdvisor
:存储/检索会话历史记录spring-ai-model-chat-memory-*
:专业的持久化实现spring-ai-rag
:用于检索增强生成 (Retrieval Augmented Generation) 的综合框架RetrievalAugmentationAdvisor
作为主要入口点模块化自动配置
spring-ai-autoconfigure-model-{model}
spring-ai-autoconfigure-vector-store-{store}
spring-ai-autoconfigure-mcp-{type}
包重组
KeywordMetadataEnricher
和 SummaryMetadataEnricher
从 org.springframework.ai.transformer
移至 org.springframework.ai.chat.transformer
Content
, MediaContent
, 和 Media
从 org.springframework.ai.model
移至 org.springframework.ai.content
框架增强
Spring AI 1.0.0-M7 集成了最新的 MCP 参考实现 Java SDK 版本 0.9.0,带来了显著的架构改进
这些改进使得 MCP 实现更加健壮、可伸缩,并且更好地与 MCP 规范保持一致。有关详细的迁移指南,请参阅升级说明中关于 MCP Java SDK 变更的部分。
Spring AI Examples repository 中的所有示例已更新,以与最新的 MCP 实现协同工作。
Anthropic Claude 更新
Mistral AI 增强
Ollama 改进
Azure OpenAI 更新
OpenAI 增强
Spring AI 1.0.0-M7 添加了对 Docker Desktop 4.40 的 Model Runner 的支持,提供了与本地运行的 AI 模型的无缝集成
spring.ai.openai.api-key=ignored
spring.ai.openai.base-url=http://localhost:12434/engines
spring.ai.openai.chat.options.model=ai/gemma3
有关详细信息,请查看 Spring AI Docker Model Runner 文档以及我们配套的博客文章 Spring AI with Docker Model Runner,其中深入探讨了这一集成。
特别感谢 Eddú Meléndez 为此功能做出的重要贡献。
工具执行框架
多模态支持
文档处理
聊天内存实现
向量存储增强
Spring Boot 集成
AOT 和 Native Image 支持
文档
还有许多其他 refactoring、bug fixing、文档增强,由广泛的贡献者完成。如果您的 PR 还没有被处理,请耐心等待,我们会处理的。感谢以下贡献者: