Spring AI 核心概念详解

AI 应用开发必懂的 10 个核心概念

基于 Spring AI 2.0 GA (2026.05.28)+ 2026 主流模型(GPT-5.5 / Claude Opus 4.8 / Gemini 3.5 Flash)整理 ------ 不是 HTTP 封装,是把模型用进生产的工程脚手架。把概念图刻在脑子里,再看代码会非常顺。


1. Model:不只是聊天

按 I/O 类型分四类:

|-----------|---------|---------------------------------------------|
| 类型 | 输入 → 输出 | 代表(2026) |
| Chat | 文本 → 文本 | GPT-5.5、Claude Opus 4.8、Gemini 3.5 Flash |
| Embedding | 文本 → 向量 | text-embedding-3-large、gemini-embedding-004 |
| Image | 文本 → 图像 | DALL·E、Stable Diffusion、Imagen |
| Audio | 文本 ↔ 语音 | Whisper、TTS |

GPT 的 P 是 Pre-trained ------ 开发者不再需要训练,直接调用。这是 AI 第一次变成"通用开发工具"。


2. Prompt:不只是聊天框那段话

API 调用里 Prompt 是带角色的消息序列:

|-------------|-----------|
| Role | 用途 |
| system | 设定人格 / 规则 |
| user | 用户提问 |
| assistant | 历史回复(多轮) |
| tool | 工具调用结果 |

Prompt 是新的代码。一个反直觉的例子:Prompt 开头加 "Take a deep breath, work step by step" 能显著提升推理质量。


3. Prompt Template:像 Spring MVC 的 View

模板 + 变量 = 最终 Prompt:

java 复制代码
new PromptTemplate("Tell me a {adj} joke about {topic}")
    .create(Map.of("adj", "funny", "topic", "cats"));

类比:模板 = View,Map = Model


4. Embedding:把意思变成数字

文本 → 浮点向量。意思相近 = 向量距离近,这让"语义搜索"变成数学问题。

|------------------------|---------------------|-------------------------|
| 模型 | 维度 | 特性 |
| text-embedding-3-small | 1536 | OpenAI 性价比款 |
| text-embedding-3-large | 3072(可截断到 256/1024) | OpenAI 旗舰,Matryoshka 学习 |
| gemini-embedding-004 | 768 | Google,免费额度大 |

Java 开发者不需要懂向量数学。只要知道:Embedding 负责转,Vector DB 负责存和找,距离越近 = 语义越像。


5. Token:钱袋子的最小单位

英文 1 Token ≈ 0.75 词,中文1 token ≈ 1--1.5 个汉字。Token = 钱,输入输出都计费。

2026.06 主流模型上下文窗口:

|----------------------|------|-----------------------------|
| 模型 | 窗口 | 备注 |
| GPT-5.5 | 1M | OpenAI 当前旗舰(2026.04 API GA) |
| GPT-5.5 Pro | 1M | 最高级 reasoning |
| Claude Opus 4.8 | 1M | Anthropic 当前旗舰(2026.05.28) |
| Claude Sonnet 4.6 | 200K | 中端主力 |
| Claude Haiku 4.5 | 200K | 高速低价 |
| Gemini 3.5 Flash | 1M | Google 当前主力(2026.05.19 GA) |
| Gemini 3.5 Pro | 1M+ | 即将发布 |
| Qwen3 / DeepSeek V4 | 1M | 国产开源,价格友好 |

关键洞察 :窗口虽到 1M 起步,但成本随 Token 线性增长。塞满 1M 上下文单次调用可能 5--10 美元 ------ RAG / Prompt Caching / 上下文压缩仍是核心工程实践。


6. Structured Output:让 AI 还你"对象"

痛点:让 AI 返回 JSON 拿到的是 String,前后还可能加 "Sure, here is:" 让 Jackson.parse 崩溃。

java 复制代码
User user = chatClient.prompt()
    .user("生成测试用户")
    .call()
    .entity(User.class);   // 直接拿 User 对象

底层做的事:自动追加 schema 指令 + 调用模型 + 反序列化。


7. RAG:给 AI 喂自己的数据

LLM 不知道你公司的业务数据。RAG 是把私有数据"塞"进 Prompt 的工程方案,两阶段:

  • 离线 ETL:文档 → 抽取 → 切 Chunk → Embedding → 写入 Vector DB
  • 在线检索:问题 → Embedding → 找 Top-K → 拼 Prompt → 调 LLM

胜负手在切分 :不能从段落/代码中间切,Chunk 大小 500--1000 Token。Spring AI 一行挂上 RAG:QuestionAnswerAdvisor(2.0 改名 RetrievalAugmentationAdvisor)。


8. Tool Calling:让 AI 调你的代码

LLM 训练后就冻结了 ------ 没实时数据,不能改外部世界。Tool Calling 给模型装上"手脚",6 步交互:

  1. Define Tools ------ 工具定义塞进 Prompt
  2. LLM Decides ------ 模型决定调谁、传什么参
  3. Call Tool ------ 应用反射执行方法
  4. Return Result ------ 工具返回数据
  5. Send Result ------ 结果发回模型
  6. Final Answer ------ 模型生成最终回答
java 复制代码
@Tool(description = "查询指定城市的天气")
public Weather getWeather(String city) {
    return weatherService.query(city);
}

schema 生成、对话循环、反射调用、结果回传 ------ 框架全包。


9. MCP:2026 年的行业标准

Tool Calling 每家协议都不一样 ------ 为 OpenAI 写的工具换 Claude 要重写。Model Context Protocol(MCP) 是 Anthropic推出的开放标准,写一次,所有 LLM 通用

到 2026 年 MCP 已成事实标准:

  • 上千个 MCP Server(数据库、文件系统、Slack、GitHub、浏览器...)
  • OpenAI / Google / Anthropic 全部支持
  • Spring AI 2.0 原生集成,2.0-M5 起 MCP Server 支持工具过滤:
XML 复制代码
<dependency>
    <groupId>org.springframework.ai</groupId>
    <artifactId>spring-ai-starter-mcp-client</artifactId>
</dependency>

配好 MCP Server,应用自动发现并调用上百个工具 ------ 比手写 Tool Calling 高效一个量级,是 2026 年最重要的能力升级。


10. Evaluation:从 Demo 到生产的必经之路

AI 有概率性,生产环境必须能回答:改了 Prompt 效果变好还是变差?换模型准确率掉多少?

主流做法:用 AI 评估 AI。把"问题 + 回答 + RAG 上下文"喂给评估模型,看四个维度:

  • Relevance ------ 回答和问题相关吗?
  • Coherence ------ 内部逻辑通顺吗?
  • Factual Correctness ------ 事实经得起核对吗?
  • Hallucination ------ 是否忠实于资料?

Spring AI 提供 Evaluator API。把它当成 AI 应用的"单元测试"。


端到端串成一张图

学习路径

|------|--------------------------------|
| 阶段 | 重点 |
| 入门 | Model + Prompt + Template |
| 进阶 1 | Embedding + RAG + Vector DB |
| 进阶 2 | Tool Calling + MCP |
| 生产 | Structured Output + Evaluation |

Spring AI 版本选型(2026.06)

|------------|-------------------------------|---------------|---------|
| 版本 | Spring Boot | 状态 | 适用场景 |
| 1.0.7 | 3.x | 稳定 | 老项目维护 |
| 1.1.6 | 3.x | 当前稳定主线 | 新项目首选 |
| 2.0 GA | 4.0(JSpecify + Jackson 3) | 2026.05.28 发布 | 新项目长期投资 |

延伸

  1. Spring AI Getting Started
  2. Spring AI MCP Boot Starters
  3. MCP 官方协议

相关推荐
TechWJ1 小时前
被 Intercom Zendesk收费坑过?我用Chatwoot搭了个免费客服站
docker·ai·开源·客服·chatwoot
星之尘10211 小时前
Claude Code 安装与 MiniMax 配置指南
ai·agent·claude·minimax·vibe coding
weixin_468466851 小时前
深度学习损失函数新手实战指南
人工智能·python·深度学习·算法·机器学习·ai
Dragon Wu1 小时前
AI视频创作笔记(一)构图、光影、调度
ai
-嘟囔着拯救世界-1 小时前
Claude Code 平替来了?DeepSeek-TUI 保姆级安装教程
人工智能·ai·ai编程·deepseek·vibecoding·deepseek-tui
it&s me1 小时前
源码部署 LiteLLM
ai·litellm
Artech1 小时前
[MAF预定义ChatClient中间件-01]LoggingChatClient——在调用前后输出日志
ai·logging·agent·maf·ichatclient
子非鱼@Itfuture2 小时前
国内可直接用、免费额度/永久免费的大模型API清单(含 SiliconFlow、火山、阿里、智谱、百度、Kimi、DeepSeek、DMXAPI 等)
百度·ai·aigc·个人开发
wengqidaifeng2 小时前
4. 拆解 tmtpost-news-daily:一个 OpenClaw 每日早报 Skill 如何落地
搜索引擎·ai·openclaw