学会这款 🔥全新设计的 Java 脚手架 ,从此面试不再怕!
当 Java 遇见国产大模型
SpringAI 作为 Spring 生态中面向 AI 能力的集成框架,近期正式宣布对国产大模型 DeepSeek 的直连支持——这意味着我们终于可以像使用 OpenAI 一样,以标准化方式在 Java 项目中调用国产大模型!
本文将手把手带你完成以下内容:
- 理解 SpringAI 的抽象设计哲学
- 配置 DeepSeek 直连通道
- 实现完整的对话与流式响应
- 生产环境最佳实践
一、SpringAI 的设计哲学
1.1 统一的 API 抽象
SpringAI 的核心价值在于统一不同 AI 供应商的差异化 API。无论是 OpenAI、Azure 还是 DeepSeek,开发者都通过同一套 ChatClient
接口进行操作:
public interface ChatClient {
ChatResponse call(ChatRequest request);
Flux<ChatResponse> stream(ChatRequest request);
}
这种设计完美契合六边形架构思想,将 AI 能力作为可插拔的端口(Port)接入系统,业务核心逻辑则通过适配器(Adapter)与具体实现解耦。
1.2 配置即连接
通过 Spring Boot 的 application.yml
,我们可以灵活切换不同 AI 供应商:
spring:
ai:
provider: deepseek # 只需修改这个值即可切换供应商
deepseek:
base-url: https://api.deepseek.com/v1
api-key: ${
DEEPSEEK_API_KEY}
这种配置方式与 Spring Security 的认证体系、Spring Cloud 的微服务配置中心天然契合,特别适合需要动态切换模型供应商的企业场景。
二、快速接入 DeepSeek
2.1 添加依赖
在 pom.xml
中引入 SpringAI 的 DeepSeek 模块:
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-deepseek</artifactId>
<version>0.8.1