what is Spring AI(超详细版)
技术栈:Java + Spring Boot + 大模型(OpenAI、DeepSeek、Qwen、Claude、Gemini 等)
一、什么是 Spring AI?
Spring AI 是 Spring 官方推出的 AI 应用开发框架。
它的目标只有一句话:
让 Java 开发者像使用 Spring Boot 一样开发 AI 应用。
官方给出的定位是:
Spring AI 是一个 AI Engineering(AI 工程)框架,用于连接 企业数据、业务系统和各种 AI 大模型,同时保持 Spring 一贯的简单、模块化和可移植设计。:contentReference[oaicite:0]{index=0}
简单来说:
以前 Java 调用 ChatGPT:
Java ↓HTTP请求 ↓OpenAI API ↓自己解析JSON ↓自己管理上下文 ↓自己处理异常
代码很多。
而 Spring AI:
Java ↓Spring AI ↓ChatClient ↓OpenAIClaudeDeepSeekGeminiQwenOllama...
开发者几乎不用关心底层接口。
一句代码即可调用 AI。
二、为什么会出现 Spring AI?
AI 大模型越来越多:
- OpenAI
- Claude
- Gemini
- DeepSeek
- Qwen(通义千问)
- Ollama(本地模型)
- Amazon Bedrock
- Azure OpenAI
- HuggingFace
每一家:
API 不一样
参数不一样
返回格式不一样
如果以后公司:
今天用 GPT
明天换 Claude
后天换 DeepSeek
那么代码几乎全部重写。
Spring AI 就是解决这个问题。
它提供了一层统一抽象:
你的代码 │Spring AI │────────────────────OpenAIClaudeGeminiDeepSeekQwenOllama
所以:
业务代码基本不用修改,只需要切换配置即可。 :contentReference[oaicite:1]{index=1}
三、Spring AI 能干什么?
Spring AI 不只是聊天。
它支持很多 AI 能力。
1)聊天(Chat)
例如:
用户:你好 ↓AI:你好,请问有什么可以帮助你?
这是最基本的能力。
2)文本生成
例如:
写一篇博客↓AI 输出文章
3)图片生成
例如:
画一只猫 ↓AI 生成图片
4)Embedding(向量化)
把文本转换成向量。
例如:
Java很好学 ↓[0.23,0.91,0.62....]
主要用于:
- 知识库
- RAG
- 相似度搜索
5)语音识别
音频 ↓文字
6)文字转语音
你好 ↓AI读出来
7)Tool Calling(工具调用)
AI 可以调用:
- 数据库
- 天气接口
- 企业系统
- Java 方法
- 第三方 API
例如:
用户: 今天北京天气?↓AI↓调用天气API↓返回天气
Spring AI 可以通过 @Tool 等方式,把 Java 方法暴露给模型调用。:contentReference[oaicite:2]{index=2}
8)RAG(检索增强生成)
企业最常见。
例如:
企业文档↓向量数据库↓Spring AI↓ChatGPT↓回答企业内部问题
例如:
公司员工: 年假怎么算?↓AI↓查询公司制度↓回答
这就是:
企业知识库 AI。
四、Spring AI 的核心思想
官方一直强调一句话:
Connect Your Enterprise Data and APIs with AI Models
翻译:
把企业的数据和 API 连接到 AI。 :contentReference[oaicite:3]{index=3}
所以:
Spring AI 不是聊天机器人。
而是:
企业数据库企业系统RedisMySQLESMQ↓Spring AI↓ 大模型
真正帮助企业实现 AI 能力。
五、Spring AI 支持哪些模型?
目前支持主流模型。
| 模型 | 是否支持 |
|---|---|
| OpenAI GPT | ✅ |
| DeepSeek | ✅ |
| Claude | ✅ |
| Gemini | ✅ |
| Ollama | ✅ |
| Azure OpenAI | ✅ |
| Amazon Bedrock | ✅ |
| HuggingFace | ✅ |
| Anthropic | ✅ |
| Mistral | ✅ |
未来如果新增模型:
通常只需要增加 Starter。
六、Spring AI 的核心组件
1)ChatClient
最重要。
类似:
JdbcTemplateRedisTemplate ↓ChatClient
调用 AI:
javaString result = chatClient.prompt() .user("你好") .call() .content();
是不是很像 Spring 风格?
2)Prompt
提示词。
例如:
你是Java专家。回答:Spring Boot是什么?
Prompt:
就是告诉 AI:
“你应该如何回答。”
3)Message
消息对象。
包括:
System MessageUser MessageAssistant Message
例如:
System:你是老师。 ↓User:Java是什么? ↓Assistant:Java是一门语言。
4)Model
真正的大模型。
例如:
OpenAIClaudeDeepSeekGemini
Spring AI 提供统一接口。
5)Embedding
生成向量。
例如:
文本↓Embedding↓向量数据库
6)Vector Store(向量数据库)
用于:
知识库。
例如:
PDF↓Embedding↓Milvus↓Spring AI↓问答
Spring AI 提供统一的向量存储 API,可对接多种向量数据库。:contentReference[oaicite:4]{index=4}
七、Spring AI 与 LangChain 有什么关系?
很多人都会问。
其实:
Spring AI 借鉴了:
- LangChain
- LlamaIndex
但是:
不是 Java 版 LangChain。
官方明确说明:
Spring AI 受到这些项目启发,但不是它们的直接移植。:contentReference[oaicite:5]{index=5}
区别:
| LangChain | Spring AI |
|---|---|
| Python 为主 | Java 为主 |
| 社区项目 | Spring 官方 |
| Python 生态 | Spring Boot 生态 |
| 学习成本高 | Spring 风格一致 |
八、Spring AI 与 Spring Boot 的关系
Spring Boot:
负责:
Web数据库RedisMQ
Spring AI:
负责:
AI
所以:
二者关系:
Spring Boot + Spring AI = AI应用
九、Spring AI 典型应用场景
企业最常见:
AI 客服
客户↓Spring AI↓知识库↓回答
AI 办公助手
例如:
写日报 总结会议 写邮件 生成 PPT
AI 编程助手
例如:
解释代码 生成代码 优化代码
企业知识库
例如:
上传:PDF、Word、Excel ↓ RAG ↓ AI回答
AI Agent(智能体)
例如:
AI↓调用数据库↓调用天气API↓调用搜索↓生成结果
十、Spring AI 的优势
① Spring 风格一致
对于 Java 开发者来说:
学习成本低。
② 支持多个模型
不用修改业务代码。
只换配置。
③ 与 Spring Boot 无缝集成
可以直接结合:
- Spring MVC
- Spring Security
- MyBatis
- Redis
- RabbitMQ
- Kafka
④ 易于扩展
后续:
换模型。
增加工具。
增加知识库。
都很方便。
十一、Spring AI 学习路线
建议按下面顺序学习:
Spring Boot │ ▼OpenAI API 基础 │ ▼Spring AI 基础 │ ▼Prompt 工程 │ ▼ChatClient │ ▼Embedding │ ▼Vector Store │ ▼RAG │ ▼Tool Calling │ ▼MCP(Model Context Protocol) │ ▼AI Agent
十二、Spring AI 面试高频问题
Q1:Spring AI 是什么?
Spring 官方推出的 AI 应用开发框架,用于统一接入各种大模型,并帮助 Java 开发者快速开发 AI 应用。
Q2:Spring AI 最大优势是什么?
统一接口。
不用关心底层模型差异。
Q3:Spring AI 支持哪些模型?
支持:
- OpenAI
- Claude
- Gemini
- DeepSeek
- Ollama
- Azure OpenAI
- Amazon Bedrock
- Hugging Face
- Anthropic 等主流模型。:contentReference[oaicite:6]{index=6}
Q4:什么是 RAG?
RAG(Retrieval-Augmented Generation,检索增强生成)是一种先从知识库检索相关内容,再结合大模型生成回答的技术,能够让 AI 回答企业私有数据相关的问题。
Q5:什么是 Tool Calling?
让 AI 能够主动调用外部工具(Java 方法、数据库、第三方 API 等)获取信息或执行操作,再根据结果生成最终回答。
十三、一张图理解 Spring AI
text 用户 │ ▼ Spring Boot 项目 │ ┌──────────┴──────────┐ │ │ ▼ ▼ Spring AI 企业业务系统 │ │ │ MySQL / Redis │ Elasticsearch │ 文件系统 │ 第三方 API ▼ ChatClient / Prompt / Tool │ ▼ OpenAI / DeepSeek / Claude Gemini / Ollama / Qwen ... │ ▼ AI 回复
十四、总结
Spring AI 是 Spring 官方推出的 AI 开发框架,它将 Spring Boot 与大语言模型结合,为 Java 开发者提供了统一、可扩展的 AI 开发能力。
它屏蔽了不同 AI 模型之间的接口差异,提供统一的 Chat API、Embedding API、Vector Store API、Tool Calling、RAG 等能力,使开发者能够专注于业务逻辑,而不是底层模型细节。随着 AI 在企业应用中的普及,Spring AI 已成为 Java 后端开发者进入 AI 工程领域的重要技术之一。:contentReference[oaicite:7]{index=7}
学习总结(一句话)
Spring AI = Spring Boot + 大模型(LLM)+ 企业数据 + AI 工程能力。

