跳至主要內容

重磅!Spring AI 1.0 正式发布,Java 开发者的 AI神器!

程序猿DD原创Spring AISpring AI大约 4 分钟

重磅!Spring AI 1.0 正式发布,Java 开发者的 AI神器!

Spring AI 1.0 GA版本终于正式发布!第一个正式版本,超多内容,每个Java开发者都必须了解一下!

Spring AI全新Logo

核心功能包括支持20个AI模型的ChatClient接口、适配20个向量数据库的检索模块、支持滑动窗口和向量搜索的对话记忆功能、基于@Tool注解的工具调用机制,以及模型评估、可观测性和Model Context Protocol(MCP)支持。此外,新增RAG流水线、ETL框架、工作流驱动和自主代理功能,并提供与微软Azure、AWS、Google Cloud等云服务商的集成案例。

1. ChatClient核心接口

  • 作为与AI模型交互的主要接口,支持20个AI模型(如Anthropic、ZhiPu、DeepSeek、MiniMax等),涵盖多模态输入输出(若模型支持)和JSON格式结构化响应。
  • 各支持模型的横向特性对比如下:
供应商多模态支持工具/功能支持流式传输支持重试支持可观测性支持内置JSON支持本地化支持兼容OpenAI API
Anthropic Claude文本、PDF、图像
Azure OpenAI文本、图像
DeepSeek (OpenAI代理)文本
Google VertexAI Gemini文本、PDF、图像、音频、视频
Groq (OpenAI代理)文本、图像
HuggingFace文本
Mistral AI文本、图像
MiniMax文本(未明确)
Moonshot AI文本(未明确)
NVIDIA (OpenAI代理)文本、图像
OCI GenAI/Cohere文本
Ollama文本、图像
OpenAI输入:文本、图像、音频
输出:文本、音频
Perplexity (OpenAI代理)文本
QianFan文本
ZhiPu AI文本
Amazon Bedrock Converse文本、图像、视频、文档(PDF、HTML、MD、DOCX等)

2. 检索增强生成(RAG)与向量数据库

  • 向量存储抽象:适配20个向量数据库(如Azure Cosmos DB、Weaviate),支持SQL-like过滤语言及原生查询回退。
  • ETL框架:通过可插拔DocumentReader支持本地文件、网页、GitHub、云存储(AWS S3、Azure Blob等)及数据库输入,内置分块、元数据 enrichment 和嵌入生成。
  • RAG流水线:基础QuestionAnswerAdvisor和模块化RetrievalAugmentationAdvisor,参考案例Retrieval Augmented Generation (R.A.G.) with Vector Storesopen in new window

3. 对话记忆(ChatMemory)

  • 基础实现MessageWindowChatMemory通过滑动窗口存储最近N条消息,支持JDBC、Cassandra、Neo4j等持久化存储。
  • 高级功能VectorStoreChatMemoryAdvisor基于向量搜索检索语义相似历史消息,参考案例《Guide to chat memory implementation》open in new window

4. 工具调用(Function Calling)

@Component
class DogAdoptionScheduler {

    @Tool(description = "schedule an appointment to pickup or adopt a " +
            "dog from a Pooch Palace location")
    String schedule(int dogId, String dogName) {
        System.out.println("Scheduling adoption for dog " + dogName);
        return Instant
                .now()
                .plus(3, ChronoUnit.DAYS)
                .toString();
    }
}

5. 模型评估与可观测性

  • 评估组件RelevancyEvaluator验证响应相关性,FactCheckingEvaluator基于上下文校验事实准确性,引用Hugging Face专家指出“LLM作为裁判”的局限性(如模式崩溃、冗长偏见)。
  • 可观测性:集成Micrometer追踪模型延迟、Token使用、工具调用等指标,支持日志记录和Micrometer Tracing。

6. 模型上下文协议(MCP)

  • 客户端:通过spring-ai-starter-mcp-client快速连接MCP服务器,支持stdio和HTTP-SSE端点,示例连接Brave搜索引擎。
  • 服务器:使用spring-ai-starter-mcp-server@Tool注解构建MCP服务器,集成Spring Batch/Cloud Config提供企业级工具,支持OAuth安全认证。

7. 代理支持

  • 工作流驱动代理:包含评估优化(自评估响应)、路由(智能分配请求)、编排(动态任务分解)、链式(分步处理)、并行化(批量调用聚合结果)等模式。
  • 自主代理:通过MCP动态发现工具,维护执行记忆,支持递归策略优化,孵化项目Spring MCP Agent演示相关能力。

小结

这次 Spring AI 的正式发布,对于 Java 开发者来说,是一次重大的升级。它不仅提供了强大的 AI 能力,还提供了丰富的工具和框架,帮助开发者更轻松地构建 AI 应用。DD也一直有在用Spring AI,最近也会第一时间把项目升级到正式版本,如果遇到问题,再继续分享。

最后,做个小调研,你现在用什么框架来构建AI应用呢?留言区聊一聊吧~

感谢阅读!如果您学习过程中如遇困难?可以加入我们超高质量的技术交流群open in new window,参与交流与讨论,更好的学习与进步!

上次编辑于:
贡献者: didi