Spring AI Alibaba是什么

官方:Spring AI Alibaba(SAA) 是一款以 Spring AI 为基础,深度集成百炼平台,支持 ChatBot、工作流、多智能体应用开发模式的 AI 框架。

从这个描述中我们可以看出其几个主要特点

1)基于Spring AI:Spring AI Alibaba并不是Spring AI的竞品,而是基于Spring AI的扩展

2)深度集成百炼平台:内部集成了许多百炼大模型、知识库、智能体等内容,方便用户直接使用

3)提供工作流、多智能体等高级组件

定位

相比于Spring AI 定位 AI 应用开发底层框架,Spring AI Alibaba 定位 AI 智能体开发框架

官方文档中举了个例子,如果说 Spring AI 是 LangChain 生态中的 Langchain 框架的话,则 Spring AI Alibaba 则是 Langchain 生态中的 Langraph 框架

个人理解,如果说Spring AI 是 AI开发中的 JDK,那么Spring AI Alibaba 就是AI开发中的Spring框架,是基于底层包的扩展,方便用户更好的开发企业级的AI应用

前置知识

因为 Spring AI Alibaba 是基于 Spring AI 的,所以在学习 Spring AI Alibaba 前,最好先学习 Spring AI 的相关知识,可以参考我之前的 spring-ai 1.0.0 学习相关章节

如何使用

1)java版本:需要java 17 或以上版本

2)spring-ai 及 spring-ai-alibaba版本:目前稳定版为spring-ai 1.0.0 spring-ai-alibaba 1.0.0.2

3)依赖版本管理:可以使用spring-ai-bom管理spring-ai相关包,使用spring-boot-dependencies管理spring-boot相关包,使用spring-ai-alibaba-bom管理spring-ai-alibaba相关包

也可以通过spring-ai-alibaba-bom中的spring-ai-alibaba-bom-1.0.0.2.pom文件查看spring-ai-alibaba都有哪些扩展包

4)核心依赖:开发前需引入spring-boot-starter-web和spring-ai-alibaba-starter-dashscope

之后maven会自动引入所需要的spring-ai核心包和spring-ai-alibaba核心包

    <properties>
		<java.version>24</java.version>
		<spring-ai.version>1.0.0</spring-ai.version>
		<spring-ai-alibaba.version>1.0.0.2</spring-ai-alibaba.version>
		<spring-boot.version>3.4.5</spring-boot.version>
	</properties>

    <dependencyManagement>
		<dependencies>
			<dependency>
				<groupId>com.alibaba.cloud.ai</groupId>
				<artifactId>spring-ai-alibaba-bom</artifactId>
				<version>${spring-ai-alibaba.version}</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
			<dependency>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-dependencies</artifactId>
				<version>${spring-boot.version}</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
			<dependency>
				<groupId>org.springframework.ai</groupId>
				<artifactId>spring-ai-bom</artifactId>
				<version>${spring-ai.version}</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>

		</dependencies>
	</dependencyManagement>

	<dependencies>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>

		<dependency>
			<groupId>com.alibaba.cloud.ai</groupId>
			<artifactId>spring-ai-alibaba-starter-dashscope</artifactId>
		</dependency>
	</dependencies>

5)之后需要添加api key

spring.ai.dashscope.api-key=百炼平台api key

以上工作完成后即可像spring-ai项目一样,自动装配ChatClient后调用大模型

后续学习内容

后续将分3个方面来进行学习

1)基础

Spring AI Alibaba 的jar包盘点

Spring AI Alibaba 新增的配置内容及如何查找对应配置项

2)扩展组件

splitter:语义切分器

prompt:提示词配置中心

chat memory:对聊天记忆的扩展

document parser:文档读取相关扩展,

mcp:基于nacos的mcp

nl2sql:自然语言转sql

rerank:重排序模型

graph:基于图算法的智能体编程框架

studio:待定

3)集成工具

tools:集成各种外部工具,如高德地图

document reader:集成各种平台的内容,如飞书文档

知识库:集成百炼知识库

智能体:集成百炼智能体

store:集成阿里云数据存储

websearch:集成阿里云的 IQS,信息检索服务

arms:集成阿里云ARMS监控服务

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐