Spring AI 从入门到精通-Spring AI 是什么
2026/6/8 6:01:50 网站建设 项目流程

1. 先别急着写代码——搞懂 Spring AI 是什么

1.1 故事时间:三个程序员和 AI

想象一下,你公司有三个程序员,老板说:“给我们的系统加上 AI 功能。”

程序员 A直接去调 OpenAI 的 HTTP API。他写了 500 行代码处理请求、解析 JSON、管理连接池、处理错误重试。两个月后,老板说"换成 Claude 吧"。程序员 A 哭了。

程序员 B用了 LangChain。Python 写得很爽,但公司项目是 Java/Spring Boot 的。他需要维护两套代码、两套部署、两套监控。他也很累。

程序员 C用了 Spring AI。他把spring-ai-openai-starter换成spring-ai-anthropic-starter,改了一行配置,其他代码完全不用动。他下班了。

这就是 Spring AI 的核心价值:可移植性。它在 Spring 生态上构建了一层抽象,让你用统一的 API 操作不同的 AI 模型,就像 JDBC 让你用统一的 API 操作不同的数据库。

1.2 Spring AI 到底是什么?

用一句话说:Spring AI 是一个让你用 Spring 的方式构建 AI 应用的框架。

用一段话说:它把 Spring 的设计哲学——可移植的 Service Abstraction、模块化设计、POJO 驱动——搬到了 AI 领域。你不需要关心底层是 OpenAI 还是 Anthropic 还是 Ollama 本地模型,你只需要跟 Spring AI 的接口打交道。

具体实现

Spring AI 抽象层

你的 Spring Boot 应用

ChatClient

EmbeddingModel

VectorStore

ChatModel 接口

EmbeddingModel 接口

VectorStore 接口

OpenAI

Anthropic

Ollama

PGVector

Redis

Chroma

1.3 Spring AI 能做什么?

先给你一个全景图,后面每个模块都会展开讲:

模块干什么的类比
ChatClient跟 AI 对话的入口JDBC 的 JdbcTemplate
ChatModel不同 AI 模型的抽象JDBC 的 Driver
Embedding把文本变成向量数字翻译官,把"意思"翻译成数字
VectorStore存向量、搜向量AI 的外部记忆库
RAG检索文档 + AI 生成回答考试时翻书再答题
ETL把文档变成可检索的数据食材加工流水线
Tool Calling让 AI 调用你的函数给 AI 装上手和脚
Advisors拦截和增强 AI 请求Spring 的 Interceptor
Chat Memory对话历史管理聊天记录本
MCP标准化的工具/资源协议USB 接口标准
Structured Output让 AI 输出 Java 对象不是散文,是填表
Observability监控和指标仪表盘
Testing评估 AI 输出质量单元测试,但是给 AI 的

1.4 版本和依赖

Spring AI 1.0.0 已经发布到 Maven Central,支持 Spring Boot 3.4.x 和 3.5.x。

Maven:

<dependencyManagement><dependencies><dependency><groupId>org.springframework.ai</groupId><artifactId>spring-ai-bom</artifactId><version>1.0.0</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement><dependencies><dependency><groupId>org.springframework.ai</groupId><artifactId>spring-ai-starter-model-openai</artifactId></dependency></dependencies>

Gradle:

dependencies{implementationplatform("org.springframework.ai:spring-ai-bom:1.0.0")implementation'org.springframework.ai:spring-ai-starter-model-openai'}

⚠️ 注意:如果你用的是快照版(Snapshot),需要额外配置 Spring Snapshot 仓库。1.0.0 正式版直接用 Maven Central 就行。


需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询