# springaibook
**Repository Path**: xhyym/springaibook
## Basic Information
- **Project Name**: springaibook
- **Description**: 一份涵盖Spring AI从基础到RAG、Agent、MCP、Prompt所有教程的仓库;持续更新中...
- **Primary Language**: Java
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 1
- **Created**: 2025-09-04
- **Last Updated**: 2025-09-10
## Categories & Tags
**Categories**: Uncategorized
**Tags**: SpringAI, SpringBoot, AI, MCP, SpringAIAlibaba
## README
_博主工作原因,更新时间不定,敬请谅解;有需要可在issue留言或添加博主vx沟通_
# 🌱 从 0 开始 Spring AI
> 一个全面、易懂、可运行的 Spring AI 学习指南,助你快速构建 AI 增强型 Java 应用。
[](LICENSE)
[](https://spring.io/projects/spring-boot)
[](https://openjdk.org/)
[](https://spring.io/projects/spring-ai)
📖 **中文教程 | 阿里云通义千问集成 | 可运行示例 | 持续更新**
---
## 📚 目录
- [环境准备](#-环境准备)
- [快速入门](#-快速入门)
- [1. 获取通义千问 API Key](#1-获取通义千问-api-key)
- [2. 引入依赖](#2-引入依赖)
- [3. 配置文件](#3-配置文件)
- [4. 编写控制器](#4-编写控制器)
- [5. 运行效果](#5-运行效果)
- [后期规划](#-后期规划)
- [许可证](#-许可证)
- [致谢](#-致谢)
---
## ⚙️ 环境准备
- ✅ Java 17 或更高版本
- ✅ Maven 3.6+
- ✅ Spring Boot 3.1+
- ✅ 通义千问大模型账号([阿里百炼平台](https://bailian.console.aliyun.com/#/home))
- ✅ Docker(可选,用于运行向量数据库)
---
## 🚀 快速入门
### 1. 获取通义千问 API Key
前往 [阿里百炼平台](https://bailian.console.aliyun.com/#/home) 注册账号,创建应用并获取 `DASHSCOPE_API_KEY`。
> 🔐 建议将密钥配置为环境变量,避免泄露。
---
### 2. 引入依赖
在 `pom.xml` 中添加以下依赖管理与 Starter:
```xml
1.0.0
1.0.0.2
3.5.4
17
com.alibaba.cloud.ai
spring-ai-alibaba-bom
${spring-ai-alibaba.version}
pom
import
org.springframework.boot
spring-boot-dependencies
${spring-boot.version}
pom
import
org.springframework.ai
spring-ai-bom
${spring-ai.version}
pom
import
org.springframework.boot
spring-boot-starter-web
com.alibaba.cloud.ai
spring-ai-alibaba-starter-dashscope
org.springframework.boot
spring-boot-starter-test
test
```
---
### 3. 配置文件
创建 `application.yml`,配置通义千问模型:
```yaml
spring:
ai:
alibaba:
dashscope:
api-key: ${DASHSCOPE_API_KEY} # 推荐使用环境变量
chat:
model: qwen-plus # 可选: qwen-turbo, qwen-max, qwen-vl 等
```
> 💡 提示:可通过环境变量 `DASHSCOPE_API_KEY=your_key_here` 启动应用。
---
### 4. 编写控制器
创建一个简单的聊天接口:
```java
@RestController
public class ChatController {
private final ChatClient chatClient;
public ChatController(ChatClient.Builder builder) {
this.chatClient = builder.build();
}
@GetMapping("/chat")
public Flux chat(
@RequestParam(defaultValue = "你是谁") String message,
HttpServletResponse response) {
response.setCharacterEncoding("UTF-8");
return chatClient.prompt()
.user(message)
.stream()
.content();
}
}
```
---
### 5. 运行效果
启动应用后,访问:
```
http://localhost:8080/chat?message=你好,Spring AI!
```
你将看到通义千问以 **流式响应(Streaming)** 返回回答,支持中文,响应迅速。
> 🎯 提示:浏览器中可看到逐字输出效果,适合构建聊天机器人界面。
---
## 📅 后期规划
我们计划持续更新以下内容:
- [ ] **项目实战**:构建 AI 客服、智能文档问答系统
- [ ] **Graph 教程**:使用 Spring AI Flow 构建复杂 AI 工作流
- [ ] **LangChain4j 系列教程**:对比学习 Java 生态主流 AI 框架
- [ ] **向量数据库集成**:Chroma、PGVector、Milvus 实战
- [ ] **RAG(检索增强生成)完整案例**
欢迎在 [Issues](https://github.com/your-username/spring-ai-tutorial/issues) 中提出你感兴趣的专题!
---
## 📄 许可证
本项目基于 [Apache 2.0 许可证](LICENSE) 开源,可自由使用、修改和分发。
---
## 🙏 致谢
- 📚 [Spring AI 官方文档](https://docs.spring.io/spring-ai/reference/index.html)
- 📚 [Spring AI Alibaba 官方文档](https://java2ai.com/)
- 💡 阿里云通义实验室
- 🌍 以及所有开源社区贡献者
---
🎯 **立即开始你的 Spring AI 之旅吧!**