Spring AI Alibaba 是基于 Spring AI 构建的,专门针对阿里云生态(如通义千问、OSS 等)进行深度适配和功能增强。
Spring AI Alibaba 提供高层次的 AI API 抽象与云原生基础设施集成方案,帮助开发者快速构建 AI 应用。
主要功能
Spring AI Alibaba 提供的主要功能如下:
- 开发复杂 AI 应用的高阶抽象 Fluent API — ChatClient。
- 提供多种大模型服务对接能力,包括主流开源与阿里云通义大模型服务(百炼)等。
- 支持的模型类型包括聊天、文生图、音频转录、文生语音等。
- 支持同步和流式 API,在保持应用层 API 不变的情况下支持灵活切换底层模型服务,支持特定模型的定制化能力(参数传递)。
- 支持 Structured Output,即将 AI 模型输出映射到 POJOs。
- 支持矢量数据库存储与检索。
- 支持函数调用 Function Calling。
- 支持构建 AI Agent 所需要的工具调用和对话内存记忆能力。
- 支持 RAG 开发模式,包括离线文档处理如 DocumentReader、Splitter、Embedding、VectorStore 等,支持 Retrieve 检索等。
- 支持 MCP 调用。
正式版发布
Spring AI Alibaba 在前段时间也发布了第一个 GA(General Availability,正式发布版) 版 1.0.0.2,这是第一个 GA 版本!
“Spring AI Alibaba 支持 ChatBot、Workflow 和 Multi-agent(多智能体)应用程序的开发。
主要特点
- 全面框架集成:无缝连接阿里巴巴服务,包括百联的 Dashscope,支持 Qwen 和 Deepseek 等各种主流 AI 模型。
- 多智能体框架:基于图的多代理框架:受 Langgraph 的启发,Spring AI Alibaba Graph 可以轻松构建工作流和多代理应用程序。
- 企业级 AI 代理解决方案
- Nacos MCP 注册表。
- 分布式 MCP 发现和负载均衡。
- 动态 API 到 MCP 代理。
- NL2SQL 用于将自然语言查询转换为 SQL 语句。
- 可观察性。
快速开始
1.引入 spring-ai-alibaba-starter 依赖
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <version>3.3.4</version> </dependency> <dependency> <groupId>com.alibaba.cloud.ai</groupId> <artifactId>spring-ai-alibaba-starter</artifactId> <version>1.0.0.2</version> </dependency>
2.设置配置文件 application.yml
spring: ai: dashscope: api-key: ${AI_DASHSCOPE_API_KEY}
3.注入 ChatModel
private final ChatModel dashScopeChatModel; public DashScopeChatModelController(ChatModel chatModel) { this.dashScopeChatModel = chatModel; }
4.编写控制器
@GetMapping("/simple/chat") public String simpleChat() { return dashScopeChatModel.call(new Prompt(DEFAULT_PROMPT)).getResult().getOutput().getContent(); } /** * Stream 流式调用。可以使大模型的输出信息实现打字机效果。 * @return Flux<String> types. */ @GetMapping("/stream/chat") public Flux<String> streamChat(HttpServletResponse response) { // 避免返回乱码 response.setCharacterEncoding("UTF-8"); Flux<ChatResponse> stream = dashScopeChatModel.stream(new Prompt(DEFAULT_PROMPT)); return stream.map(resp -> resp.getResult().getOutput().getContent()); }
至此,已经完成了 DashScope 的基本接入。现在您已经可以和 DashScope 模型对话了。
官方案例
官方社区开发了一个 Playground 示例,其中包括基于 Spring AI Alibaba 的完整前端 UI 和后端。Playground 允许用户体验所有核心框架功能,例如聊天、可观察性、多轮对话、图像生成、多模态、工具调用、MCP 和 RAG,体验了一下它的文生图还不错,如下图所示:
项目地址:https://github.com/springaialibaba/spring-ai-alibaba-examples/tree/main/spring-ai-alibaba-playground
小结
AI 已经不再是选择题,而是生死题的今天,早早行动起来,拥抱 AI、享受 AI 赋予这个时代的红利,才是事业稳定和成功的关键,所以一起搞起来吧~