# deepseek-sdk
**Repository Path**: kuangtuzhm/deepseek-sdk
## Basic Information
- **Project Name**: deepseek-sdk
- **Description**: DeepSeeek-SDK 是DeepSeek的Java开源软件开发工具包,助力开发者快速构建智能化搜索应用。
- **Primary Language**: Unknown
- **License**: MIT
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 1
- **Created**: 2025-04-08
- **Last Updated**: 2025-04-08
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# DeepSeek-SDK
DeepSeeek-SDK 是DeepSeek的Java开源软件开发工具包,助力开发者快速构建智能化搜索应用。
**注意**:
1. 此开发包的JDK版本为JAVA21。此开发包体量很小,如在更低JDK版本的项目中使用,你可以复制源码的形式自行导入。
2. 此开发包未遵循标准的sdk设计原则,依赖了如下第三方库:okhttp 4.12.0、fastjson 2.0.56、lombok 1.18.36
## 快速开始
### 导入程序包
Maven:
~~~
io.gitee.milk-lynk
deepseek-sdk
1.0.2
~~~
Gradle:
~~~
implementation 'io.gitee.milk-lynk:deepseek-sdk:1.0.2'
~~~
其它导入方式或版本列表:https://central.sonatype.com/artifact/io.gitee.milk-lynk/deepseek-sdk
### 样例
~~~java
//实例化DeepSeek对象,传入你申请的ApiKey;
DeepSeek deepSeek = new DeepSeek("sk-xxxxxxxxxxxxxxxx");
//定义一个消息列表
List messages = new ArrayList<>();
//创建请求,指定模型
ChatRequest chatRequest = ChatRequest.builder()
.model(Model.DeepSeek_V3.getName())
.messages(messages)
.build();
//创建系统消息(可选)
Message systemMessage = Message.builder()
.role(Role.SYSTEM.getType())
.content("无论用户说什么你都得回答“阿巴阿巴”")
.build();
//创建用户消息(可选)
Message userMessage = Message.builder()
.role(Role.USER.getType())
.content("你叫什么")
.build();
//将消息添加进消息列表
messages.add(systemMessage);
messages.add(userMessage);
try {
//非流式调用(等deepseek说完将文字全部返给你)
//第一次
ChatResponse chatResponse = deepSeek.chatCompletion(chatRequest);
System.out.println(chatResponse.getFirstChoiceMessage());
//第二次 先将第一次的返回消息添加进去
messages.add(chatResponse.getFirstChoiceMessage());
Message userMessage2 = Message.builder()
.role(Role.USER.getType())
.content("请你不要说阿巴阿巴")
.build();
messages.add(userMessage2);
ChatResponse chatResponse2 = deepSeek.chatCompletion(chatRequest);
System.out.println(chatResponse2.getFirstChoiceMessage());
//流式调用(实时获取消息块)
deepSeek.chatCompletionStream(chatRequest,new StreamCallback(){
@Override
public void onResponse(ChatResponse response) {
//每次响应时
System.out.println(response);
}
@Override
public void onComplete() {
//回复完成时
}
@Override
public void onError(Exception e) {
//出现错误时
}
});
} catch (Exception e) {
throw new RuntimeException(e);
}
~~~
### 提示
你可以下载javadoc来查看每个属性的作用,此软件包的javadoc为中文。
