目前(2026年初)Spring AI 集成国产最强推理模型 DeepSeek(尤其是 DeepSeek-R1 与 DeepSeek-V3)已经非常成熟,主要有以下几种主流打法,按推荐度排序:
| 排名 | 接入方式 | 优点 | 缺点/限制 | 推荐场景 | 难度 |
|---|---|---|---|---|---|
| 1 | OpenAI兼容接口(最推荐) | 配置最简单、切换模型方便、生态最全 | 需要联网,费用(但非常便宜) | 生产环境、企业项目 | ★☆☆☆☆ |
| 2 | Ollama本地部署 | 完全免费、私有化、无网络依赖 | 硬件要求高、响应速度慢(尤其是大模型) | 开发测试、内网、隐私要求极高 | ★★★☆☆ |
| 3 | 阿里云百炼/硅基流动中转 | 高可用、限速宽松、可选很多模型 | 多了一层转发、偶尔延迟 | 预算充足、追求稳定 | ★★☆☆☆ |
| 4 | Spring AI 官方DeepSeek starter(快照版) | 原生支持、最优雅 | 目前还是快照版,不够稳定 | 尝鲜党、追求最新特性 | ★★☆☆☆ |
方式一:最常用、最推荐 – OpenAI兼容模式(硅基流动/DeepSeek官方/阿里百炼)
目前绝大多数生产项目都在用这种方式
spring:
ai:
openai:
# 下面三选一(强烈推荐硅基流动,新用户有超多免费token)
# 1. 硅基流动(最推荐,性价比最高)
base-url: https://api.siliconflow.cn/v1
api-key: sk-xxxxxxxxxxxxxxxxxxxxxxxx # 2000w免费token
# 2. DeepSeek官方
# base-url: https://api.deepseek.com
# api-key: sk-xxxxxxxxxxxxxxxxxxxxxxxx
chat:
options:
# 目前最强组合(2026年1月主流选择)
model: deepseek-ai/DeepSeek-R1 # 最强推理(类o1)
# model: deepseek-ai/DeepSeek-V3 # 最强通用/性价比之王
# model: deepseek-ai/DeepSeek-R1-Distill-Qwen-32B # 蒸馏版,速度更快
temperature: 0.6
max-tokens: 8192
top-p: 0.95
最常用代码模板(ChatClient流式写法)
@RestController
@RequestMapping("/ai")
@RequiredArgsConstructor
public class AiController {
private final ChatClient chatClient; // Spring AI 自动注入
// 普通调用
@GetMapping("/chat")
public String simpleChat(@RequestParam String msg) {
return chatClient.prompt()
.user(msg)
.call()
.content();
}
// 流式返回(前端打字机效果,必用!)
@GetMapping(value = "/stream", produces = MediaType.TEXT_EVENT_STREAM_VALUE)
public Flux<String> streamChat(@RequestParam String msg) {
return chatClient.prompt()
.user(msg)
.stream()
.content();
}
// 带历史记忆(最实用)
@GetMapping("/memory")
public String chatWithMemory(@RequestParam String sessionId, @RequestParam String msg) {
return chatClient.prompt()
.system("你是一位精通Spring Boot和AI的高级架构师,用结构化markdown回答")
.user(msg)
.advisors(
MessageChatMemoryAdvisor.builder()
.chatMemory(new InMemoryChatMemory())
.build()
)
.call()
.content();
}
}
方式二:本地私有化(Ollama + DeepSeek-R1)——适合内网/演示/毕设
步骤概览(2026最新流程)
- 安装 Ollama(官网一键安装)
- 拉取模型(显存够就直接上7B,显存少就用1.5B蒸馏版)
ollama run deepseek-r1:1.5b # 极轻量,1.5B蒸馏版,推理速度快
# 或
ollama run deepseek-r1:7b # 强推理,推荐16G+显存
- Spring Boot 配置(只需改下面几行)
spring:
ai:
ollama:
base-url: http://localhost:11434 # 本机默认
chat:
options:
model: deepseek-r1:1.5b # 必须与ollama pull的tag一致
R1模型最大亮点:原生思维链(可以看到完整思考过程)
// 让R1把思考过程完整返回(效果非常震撼)
String prompt = """
请用最严谨的逻辑,一步一步思考并解决这个问题:
xxx数学/算法/推理题xxx
请按照以下格式严格输出:
<thinking>
完整的思考过程(多步、自我质疑、验证)...
</thinking>
<answer>
最终答案
</answer>
""";
chatClient.prompt(prompt).call().content();
快速进阶功能对比表(生产必备)
| 功能 | 实现方式 | 难度 | 推荐指数 |
|---|---|---|---|
| 流式打字机效果 | .stream().content() | ★☆☆ | ★★★★★ |
| 会话记忆 | MessageChatMemoryAdvisor | ★★☆ | ★★★★★ |
| RAG(知识库问答) | + PGVector / Milvus / Elasticsearch | ★★★★ | ★★★★☆ |
| Function Calling | @Tool / FunctionCallback | ★★★ | ★★★★☆ |
| Agent(智能体) | AiServices.create() | ★★★★ | ★★★☆☆ |
| 结构化输出 | BeanOutputConverter / Json模式 | ★★★ | ★★★★☆ |
| 多模态(图文) | 目前DeepSeek暂不支持,需等待V3后续 | – | ★★☆☆☆ |
2026年一句话总结(最实用组合推荐)
生产环境首选:
Spring Boot 3.3+ / Spring AI 1.0+
- 硅基流动/DeepSeek官方 OpenAI兼容接口
- deepseek-ai/DeepSeek-R1(复杂推理) / DeepSeek-V3(万能)
- ChatClient流式 + MemoryAdvisor + 结构化输出
演示/学习/内网:
Ollama + deepseek-r1:7b(或1.5b)
- Spring AI Ollama starter
需要我针对某个具体场景(智能客服、RAG知识库、代码生成、Agent工具调用、结构化输出…)给出更详细的代码模板吗?
直接告诉我你的需求方向~ 😄