Deepseek整合SpringAI
在现代应用开发中,问答系统是一个常见的需求,尤其是在客服、教育和技术支持领域。本文将介绍如何使用 Spring Boot、Deepseek 和 Spring AI 构建一个简单的问答系统,并通过 Postman 调用 API 接口实现问答功能。通过本文,你将学习如何整合这些技术,快速实现一个高效的问答系统。
1. 技术栈介绍
- Spring Boot:用于快速构建 Java 后端服务。
- Deepseek:高性能的深度学习推理框架,用于问答模型的推理。
- Spring AI:Spring 生态中的 AI 工具包,用于简化 AI 模型的集成。
- Postman:用于测试和调用 API 接口。
2. 环境准备
在开始之前,请确保你已经完成以下准备工作:
- 安装 JDK 17 或更高版本。
- 安装 Maven:用于构建和管理项目依赖。
- 安装 Postman:用于测试 API 接口。
- 准备 Deepseek 模型:确保你已经有一个训练好的问答模型(如
qa_model.ds
)。
3. 创建 Spring Boot 项目
3.1 初始化项目
- 打开 Spring Initializr。
- 配置项目:
-
- Project:Maven Project
- Language:Java
- Spring Boot:3.1.0
- Dependencies:Spring Web、Spring AI
- 点击“Generate”下载项目压缩包,并解压到本地。
3.2 导入项目
- 打开 IntelliJ IDEA,选择
File > Open
,导入解压后的项目。 - 等待 Maven 自动下载依赖。
4. 集成 Deepseek 和 Spring AI
4.1 添加 Deepseek 依赖
- 在
pom.xml
中添加 Deepseek 的依赖:
<dependency>
<groupId>ai.deepseek</groupId>
<artifactId>deepseek-java</artifactId>
<version>1.0.0</version>
</dependency>
4.2 配置 Spring AI
- 在
application.properties
中添加 Spring AI 的配置:
spring.ai.deepseek.model-path=/path/to/qa_model.ds
spring.ai.deepseek.device=cpu
4.3 创建问答服务
- 在
src/main/java/com/ts/demo
目录下创建QAService.java
:
package com.ts.demo;
import ai.deepseek.DeepseekModel;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service
public class QAService {
private final DeepseekModel model;
@Autowired
public QAService(DeepseekModel model) {
this.model = model;
}
public String answer(String question) {
// 调用 Deepseek 模型进行推理
return model.infer(question);
}
}
4.4 创建控制器
- 在
src/main/java/com/ts/demo
目录下创建QAController.java
:
package com.ts.demo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@RestController
@RequestMapping("/api/qa")
public class QAController {
private final QAService qaService;
@Autowired
public QAController(QAService qaService) {
this.qaService = qaService;
}
@PostMapping("/ask")
public String askQuestion(@RequestBody String question) {
return qaService.answer(question);
}
}
5. 运行项目
- 在 IntelliJ IDEA 中,右键点击
DemoApplication.java
,选择Run
。 - 项目启动后,控制台会输出类似以下信息:
Started DemoApplication in 2.5 seconds
6. 使用 Postman 测试 API
6.1 创建 Postman 请求
- 打开 Postman,点击
New > Request
。 - 配置请求:
-
- Method:POST
- URL:
http://localhost:8080/api/qa/ask
- Body:选择
raw
,格式为JSON
,输入以下内容:
{
"question": "什么是深度学习?"
}
6.2 发送请求
- 点击
Send
按钮,发送请求。 - 查看响应结果,例如:
{
"answer": "深度学习是机器学习的一个分支,通过多层神经网络模拟人脑的学习过程。"
}
7. 项目结构
以下是项目的完整结构:
src/main/java/com/ts/demo/
├── DemoApplication.java # Spring Boot 启动类
├── QAController.java # 控制器
├── QAService.java # 问答服务
└── DeepseekConfig.java # Deepseek 配置类(可选)
src/main/resources/
├── application.properties # 配置文件
└── qa_model.ds # Deepseek 模型文件