Spring AI 极简入门:15分钟集成AI到Spring应用
零基础也能学会!基于 Spring AI Alibaba,用最简单的方式让Spring应用具备AI能力
什么是 Spring AI?
Spring AI 是一个让Java开发者轻松集成AI能力的框架。简单来说,它帮你处理了与AI服务通信的复杂细节,让你用几行代码就能调用大模型。
核心概念(简单理解):
- ChatClient:与AI对话的工具
- Prompt:你给AI的指令
- ChatResponse:AI返回的答案
环境准备
必需环境
- JDK 17+
- Maven 3.6+
获取阿里云API密钥
- 注册阿里云账号
- 开通百炼平台服务
- 获取API Key

15分钟快速开始
第1步:创建项目
访问 start.spring.io 快速创建项目:
配置选项:
- Project: Maven
- Language: Java
- Spring Boot: 3.5.7
- Group: com.example
- Artifact: spring-ai-demo
- Java: 17
依赖:
- Spring Web
点击"Generate"下载项目压缩包

第2步:添加依赖
在 pom.xml 的 <dependencies> 部分添加:
xml
<dependency>
<groupId>com.alibaba.cloud.ai</groupId>
<artifactId>spring-ai-alibaba-starter</artifactId>
<version>1.0.0-M5.1</version>
</dependency>
在 <project> 标签内添加仓库配置:
xml
<repositories>
<repository>
<id>spring-milestones</id>
<url>https://repo.spring.io/milestone</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
全部依赖如下,以供参考:
xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>3.5.7</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.example</groupId>
<artifactId>spring-ai-demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>spring-ai-demo</name>
<description>Demo project for Spring Boot AI</description>
<url/>
<licenses>
<license/>
</licenses>
<developers>
<developer/>
</developers>
<scm>
<connection/>
<developerConnection/>
<tag/>
<url/>
</scm>
<properties>
<java.version>17</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.alibaba.cloud.ai</groupId>
<artifactId>spring-ai-alibaba-starter</artifactId>
<version>1.0.0-M5.1</version>
</dependency>
</dependencies>
<repositories>
<repository>
<id>spring-milestones</id>
<url>https://repo.spring.io/milestone</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
第3步:配置API密钥
- 这里的API_KEY是上面获取的阿里云百炼的key
设置环境变量:
Windows:(自己在环境变量配置即可)
cmd
set AI_DASHSCOPE_API_KEY=你的API_KEY
Mac/Linux:
bash
export AI_DASHSCOPE_API_KEY=你的API_KEY
或者在 application.yml 中配置:
yml
spring:
ai:
dashscope:
api-key: ${AI_DASHSCOPE_API_KEY}
第4步:编写AI对话接口
在 src/main/java/com/example/spring_ai_demo/ 目录下创建 AiController.java:
java
package com.example.spring_ai_demo;
import com.alibaba.cloud.ai.dashscope.chat.DashScopeChatOptions;
import org.springframework.ai.chat.client.ChatClient;
import org.springframework.ai.chat.client.advisor.MessageChatMemoryAdvisor;
import org.springframework.ai.chat.client.advisor.SimpleLoggerAdvisor;
import org.springframework.ai.chat.memory.InMemoryChatMemory;
import org.springframework.web.bind.annotation.*;
@RestController
@RequestMapping("/helloworld")
public class HelloworldController {
private static final String DEFAULT_PROMPT = "你是一个博学的智能聊天助手,请根据用户提问回答!";
private final ChatClient dashScopeChatClient;
public HelloworldController(ChatClient.Builder chatClientBuilder) {
this.dashScopeChatClient = chatClientBuilder
.defaultSystem(DEFAULT_PROMPT)
// 实现 Chat Memory 的 Advisor
// 在使用 Chat Memory 时,需要指定对话 ID,以便 Spring AI 处理上下文。
.defaultAdvisors(
new MessageChatMemoryAdvisor(new InMemoryChatMemory())
)
// 实现 Logger 的 Advisor
.defaultAdvisors(
new SimpleLoggerAdvisor()
)
// 设置 ChatClient 中 ChatModel 的 Options 参数
.defaultOptions(
DashScopeChatOptions.builder()
.withTopP(0.7)
.build()
)
.build();
}
@GetMapping("/simple/chat")
public String simpleChat(String query) {
return dashScopeChatClient.prompt(query).call().content();
}
}
第5步:启动测试
-
启动项目,和正常springboot项目启动方式是一样的:

-
看到以下日志表示启动成功:
Started SpringAiDemoApplication in 1.988 seconds (process running for 2.266)

- 访问接口:
(因为通过大模型思考得到结果,所以接口返回可能慢一些,耐心等待)
http://localhost:8080/helloworld/simple/chat?query=你好,介绍一下Spring
浏览器访问:

apifox访问:

🎉 恭喜!你的第一个AI应用已经运行起来了!
测试你的应用
基础对话测试
http://localhost:8080/helloworld/simple/chat?query=用Java写一个Hello World程序

技术问题测试
http://localhost:8080/helloworld/simple/chat?query=解释一下Spring Boot的自动配置原理

遇到问题怎么办?
常见问题解决
❌ 问题1:依赖下载失败
✅ 解决:检查是否添加了Spring仓库配置
❌ 问题2:API密钥错误
✅ 解决:确认环境变量名是 AI_DASHSCOPE_API_KEY
❌ 问题3:JDK版本错误
✅ 解决:用 java -version 检查,确保是JDK 17+
快速检查清单
- start.spring.io 项目创建成功
- pom.xml 依赖和仓库配置正确
- 环境变量已设置
- 代码复制无误
- 应用启动成功(看到Started日志)
下一步学什么?
成功运行基础版本后,你可以尝试:
- 给AI设定角色 - 让AI成为编程助手、翻译专家等
- 处理复杂对话 - 实现多轮对话记忆
- 文件处理 - 让AI读取和分析文档
- 其他AI服务 - 尝试OpenAI、Azure等
总结
通过这个极简教程,你已经学会了:
- ✅ 使用start.spring.io快速创建项目
- ✅ 添加Spring AI依赖
- ✅ 配置API密钥
- ✅ 创建AI对话接口
- ✅ 测试应用
Spring AI让AI集成变得异常简单,现在你可以在任何Spring项目中快速添加AI能力了!
相关链接
标签: #SpringAI #入门教程 #JavaAI #SpringBoot #阿里云百炼