Java 后端 AI 技术选型与学习路线
技术选型总览
| 层级 | 推荐技术 | 选型结论 |
|---|---|---|
| AI 框架 | Spring AI / LangChain4j | 优先 Spring AI,LangChain4j 作为补充 |
| 向量数据库 | Milvus / pgvector / Elasticsearch | 学习阶段用 pgvector,生产环境按已有基础设施选 |
| 模型服务 | 通义千问 / DeepSeek / OpenAI API | 国内优先通义千问或 DeepSeek |
| Agent 框架 | Spring AI + MCP Java SDK | 基于 Spring AI 内置能力 + MCP 协议 |
| 工程化 | Spring Boot + Sentinel + Redis | 直接复用现有后端经验 |
一、AI 框架:Spring AI vs LangChain4j
选型建议:优先 Spring AI,LangChain4j 作为补充
Spring AI 是 Spring 官方推出的 AI 框架,截至 2026 年初已迭代到相对成熟的版本,与 Spring Boot 无缝集成。
选它的理由:
- 零学习成本:注解驱动、自动装配、Starter 依赖,和你用 Spring Data JPA 一样熟悉
- 统一抽象 :
ChatModel、EmbeddingModel、VectorStore等接口统一封装,切换模型服务商只需改配置 - 生态完整:内置 Advisor(拦截器)、Memory(记忆)、Structured Output(结构化输出)、MCP 支持
- 企业级就绪:支持 Spring Boot Actuator 监控、Prometheus + Grafana 可观测性
LangChain4j 社区更活跃,功能迭代更快,适合需要前沿特性(如复杂 Agent 编排)的场景。
最终建议:主框架用 Spring AI,遇到 Spring AI 暂不支持的能力时,引入 LangChain4j 补充。
学习路线
第 1 周:Spring AI 基础
- 引入
spring-ai-starter,配置通义千问 / DeepSeek 的 API Key - 用
ChatClient完成第一次对话调用 - 理解
ChatModel、Prompt、ChatResponse核心接口
第 2 周:进阶能力
- 学习 Advisor 机制(类似 Spring 拦截器,用于记忆、日志、安全过滤)
- 实现流式输出(
stream()方法 + SSE 推送到前端) - 结构化输出:让模型返回 Java 对象而非纯文本
第 3 周:LangChain4j 对比学习
- 用 LangChain4j 重写第 1 周的 Demo,对比两者 API 设计差异
- 了解 LangChain4j 的
AiServices声明式 API - 确定自己的主力框架
二、向量数据库:pgvector / Milvus / Elasticsearch
选型决策树
你的项目已有 PostgreSQL?
├── 是 → 直接用 pgvector(零成本,SQL 操作)
└── 否 → 你的项目已有 Elasticsearch?
├── 是 → 用 ES 的向量能力(混合搜索最强)
└── 否 → 数据量预估?
├── < 千万级 → pgvector(部署最简单)
└── > 千万级 → Milvus(性能上限最高)
学习阶段推荐 pgvector,原因:
- 一条
CREATE EXTENSION vector;即可启用 - 用熟悉的 SQL 操作向量,无需学新 API
- 支持 ACID 事务,可以和业务数据放在同一个库
生产环境推荐:
- 已有 ES 集群 → 直接用 ES,混合搜索(关键词 + 语义)效果最好
- 从零搭建、数据量大 → Milvus,千亿级向量检索性能怪兽
学习路线
第 1 周:pgvector 快速上手
- Docker 启动 PostgreSQL + pgvector
- 学习
vector类型、<=>余弦距离操作符 - 用 SQL 完成向量的插入和检索
第 2 周:Spring AI 集成向量库
- 配置
spring-ai-pgvector-store-spring-boot-starter - 实现文档 → Embedding → 存入向量库的完整链路
- 实现语义检索:输入问题 → 返回最相似的文档片段
第 3 周(进阶):Milvus 或 ES 对比
- Docker 部署 Milvus,对比与 pgvector 的 API 差异
- 或启用 ES 的
dense_vector字段,体验混合搜索 - 压测对比不同方案在万级/十万级数据下的检索延迟
三、模型服务:通义千问 / DeepSeek / OpenAI
选型建议:国内优先通义千问或 DeepSeek
| 模型 | 优势 | 适合场景 |
|---|---|---|
| 通义千问 | 阿里生态、国内合规、中文能力强 | 企业级应用、国内部署 |
| DeepSeek | 性价比极高、开源可私有化部署 | 成本敏感、需要私有化 |
| OpenAI | 能力天花板、生态最完善 | 技术预研、海外业务 |
学习阶段推荐 DeepSeek,API 兼容 OpenAI 格式,价格极低(百万 Token 仅需几块钱),适合大量调试。
生产环境推荐通义千问,阿里生态集成度高,国内访问稳定,合规无忧。
学习路线
第 1 周:API 调用基础
- 注册通义千问 / DeepSeek 开发者账号,获取 API Key
- 用 curl / Postman 手动调用一次 Chat Completion API
- 理解 Token、Temperature、Top-P、上下文窗口等参数
第 2 周:Spring AI 多模型适配
- 配置 Spring AI 同时接入两个模型服务商
- 实现模型热切换(改配置即可,不改代码)
- 学习
ChatOptions参数调优(Temperature 控制创造性、maxTokens 控制长度)
第 3 周:成本与性能优化
- Token 消耗统计与成本监控
- 语义缓存:相似问题命中缓存,避免重复调用
- 小模型做摘要 + 大模型做推理的分层策略
四、Agent 框架:Spring AI + MCP
选型建议:基于 Spring AI 内置能力 + MCP 协议
Spring AI 已经内置了 Tool Calling 和 MCP Client/Server 的支持能力,不需要额外引入 Agent 框架。
核心能力:
- Tool Calling :用
@Tool注解把 Java 方法暴露给模型调用 - MCP Client:连接外部 MCP Server,获取标准化能力
- MCP Server:把你的业务能力封装成 MCP Server,供其他 AI 应用调用
学习路线
第 1 周:Tool Calling 基础
- 用
@Tool注解定义工具方法(如查天气、查订单) - 让模型自动选择并调用工具
- 处理工具调用失败的重试与降级
第 2 周:MCP 协议入门
- 理解 MCP 的架构:Client / Server / Transport
- 用 Spring AI 搭建一个 MCP Server(暴露查数据库的能力)
- 用 Spring AI 搭建一个 MCP Client(调用上面的 Server)
第 3 周:多 Agent 协作
- 实现 Supervisor 模式(一个主 Agent 分配任务给子 Agent)
- 学习顺序 / 并行 / 条件 / 循环四种工作流
- 产出一个能自主拆解任务的 AI Agent
五、工程化:Spring Boot + Sentinel + Redis
选型建议:直接复用现有后端经验
这一层是你和纯 AI 开发者拉开差距的核心,不需要学新技术,只需要把已有经验迁移过来。
| 能力 | 技术方案 | 对应 AI 场景 |
|---|---|---|
| 限流 | Sentinel | 限制大模型 API 调用频率,防止超额计费 |
| 熔断降级 | Sentinel / Resilience4j | 模型服务不可用时返回兜底回答 |
| 缓存 | Redis | 语义缓存、会话记忆存储 |
| 异步处理 | RabbitMQ / RocketMQ | 长耗时 AI 任务异步解耦 |
| 监控 | Prometheus + Grafana | Token 消耗、响应延迟、工具成功率 |
| 安全 | Spring Security | Prompt 注入防护、RBAC 权限控制 |
学习路线
第 1 周:可观测性
- 集成 Spring Boot Actuator + Micrometer
- 暴露 AI 调用指标(Token 消耗、延迟、错误率)
- 搭建 Prometheus + Grafana 监控面板
第 2 周:稳定性保障
- Sentinel 限流:按用户/IP 限制 AI 接口调用频率
- 熔断降级:模型超时 10 秒自动返回兜底回答
- 异步任务:长文档生成放入 MQ,完成后回调通知
第 3 周:安全合规
- Prompt 注入防护:输入过滤 + 输出校验
- 敏感数据脱敏:记忆存储前自动处理手机号、身份证等
- 调用审计日志:记录每次 AI 交互的完整链路
整体学习节奏(8 周)
| 周次 | 主题 | 产出 |
|---|---|---|
| 1-2 | Spring AI 基础 + 模型调用 | 多轮对话聊天接口 |
| 3-4 | pgvector + RAG 完整链路 | 企业知识库问答系统 |
| 5-6 | Tool Calling + MCP + Agent | 能调用业务接口的 AI 助手 |
| 7-8 | 工程化(监控/限流/安全) | 生产级 AI 应用 |
每个技术组件都可以单独写成一篇 CSDN 文章,8 周 = 8 篇系列教程 + 1 篇总纲,刚好构成一个完整的专栏。
如果这篇文章对你有帮助,欢迎点赞、收藏、关注,后续会持续更新 Java + AI 实战系列。