DeepSeek R1本地部署 DeepSeek Api接口调用 java go版本

news/2025/2/22 22:49:20/

1、本地ollama的API接口

接着上一章所本地部署deepseek,这一章我们调用ollama api

image-20250213145757287

对应的curl:

curl --request POST \--url http://localhost:11434/api/generate \--header 'Accept: */*' \--header 'Accept-Encoding: gzip, deflate, br' \--header 'Connection: keep-alive' \--header 'Content-Type: application/json' \--header 'User-Agent: PostmanRuntime-ApipostRuntime/1.1.0' \--data '{"model":"deepseek-r1:7b","prompt":"你是谁","stream":false}1'

javaAPI_23">2、java版本的API调用

java版本对应的github地址

https://github.com/cativen/chat-api-java/

pom.xml

java">  <dependencies><dependency><groupId>com.squareup.okhttp3</groupId><artifactId>okhttp-sse</artifactId><version>3.14.9</version></dependency><dependency><groupId>com.squareup.okhttp3</groupId><artifactId>logging-interceptor</artifactId><version>3.14.9</version></dependency><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.83</version> <!-- 请检查并使用最新版本 --></dependency></dependencies>

ChatRequest

java">public class ChatRequest {private String model;private String prompt;private Boolean stream;public String getModel() {return model;}public void setModel(String model) {this.model = model;}public String getPrompt() {return prompt;}public void setPrompt(String prompt) {this.prompt = prompt;}public Boolean getStream() {return stream;}public void setStream(Boolean stream) {this.stream = stream;}
}

ChatResponse

java">public class ChatResponse {private String model;private String response;private String created_at;public String getModel() {return model;}public void setModel(String model) {this.model = model;}public String getResponse() {return response;}public void setResponse(String response) {this.response = response;}public String getCreated_at() {return created_at;}public void setCreated_at(String created_at) {this.created_at = created_at;}
}

ApiTest

java">import com.alibaba.fastjson.JSON;
import okhttp3.*;import java.io.IOException;
import java.util.concurrent.TimeUnit;public class ApiTest {public static void main(String[] args) {// 2. 开启 Http 客户端OkHttpClient client = new OkHttpClient.Builder().connectTimeout(50, TimeUnit.SECONDS).writeTimeout(50, TimeUnit.SECONDS).readTimeout(50, TimeUnit.SECONDS).build();// 构建 JSON 请求体ChatRequest chatRequest = new ChatRequest();chatRequest.setStream(false);chatRequest.setModel("deepseek-r1:7b");chatRequest.setPrompt("如何学英语");String jsonString = JSON.toJSONString(chatRequest);MediaType jsonType = MediaType.get("application/json; charset=utf-8");RequestBody body = RequestBody.create(jsonType,jsonString);// 创建 POST 请求Request request = new Request.Builder().url("http://localhost:11434/api/generate").addHeader("Content-Type", "application/json").post(body).build();// 发送同步 POST 请求try (Response response = client.newCall(request).execute()) {if (response.isSuccessful()) {ChatResponse chatResponse = JSON.parseObject(response.body().string(), ChatResponse.class);System.out.println(chatResponse.getResponse());} else {System.err.println("Request failed: " + response.code());}} catch (IOException e) {e.printStackTrace();}}
}

结果:

学习英语可以分为以下几个步骤:### 1. **打牢基础**- **听写训练**:每天听英文歌曲、短文或视频,试着跟读并写下听到的单词和句子。- **背诵单词**:使用 flashcards(正反面打印)来记忆词汇。可以用 apps 或 websites 如 Anki, Quizlet 等。- **掌握发音**:学习英语字母表、元音和辅音的发音,区分重音符号(`'`)。多听录音,模仿发音。### 2. **提高听力**- **多听音频**:每天花时间听英文新闻、 talk shows 或音乐。可以从 BBC 学习 English, Duolingo Radio 等渠道获取内容。- **观看电影/视频**:选择英语水平相近的电影或教学视频,尝试理解对话和解释。### 3. **增强阅读能力**- **读简单文章**:从基本的 grammar 到新闻报道开始。可以使用 apps 如 ESL Kids 或 Readwise。- **学习语法**:通过教材或在线课程(如 Khan Academy, Duolingo)系统地学习 grammar,确保理解每个规则。### 4. **练习口语**- **和外教对话**:如果可能的话,找一个会英语的伴练。如果没有,可以用 apps 或 tools 如 Tandem 进行线上配对。- **录播回放**:多录音并回看,找出发音、语法或语调上的错误,加以改进。### 5. **提高写作能力**- **写日记或短文**:每天写几句话或一篇小文章,记录生活或想法。可以使用 apps 如 Grammarly 来检查错误。- **模仿优秀文章**:分析 High-Commissioner 的文章,学习句式结构和表达方式。### 6. **参加活动**- **加入英语club**:与英语学习者交流,参加讨论会或比赛,提升自信心。- **参与写作比赛**:通过 Writing Contests 等平台提交作品,得到反馈并改进。### 7. **保持耐心和坚持**- **每天练习**:英语的学习需要持续性,每天花一定时间练习听、说、读、写。- **设定目标**:制定短期和长期学习目标,并逐步实现,保持动力。### 8. **利用技术工具**- **使用 apps 和工具**:如 Duolingo, HelloChinese, Memrise 等来辅助学习。- **在线课程**:如果需要系统化的学习,可以选择 online courses(如 Coursera, edX)或参加英语学校。通过以上步骤的系统学习和不断的实践,可以逐步提高英语水平。记得保持积极心态,英语学习是一个长期的过程。Process finished with exit code 0

3、go版本的API调用

go版本对应的github地址

https://github.com/cativen/chat-api-go

mian.go

package mainimport ("bytes""encoding/json""fmt""io/ioutil""net/http"
)type Completion struct {Response  string `json:"response"`Model     string `json:"model"`CreatedAt string `json:"created_at"`
}type ChatRequest struct {Model  string `json:"model"`Prompt string `json:"prompt"`Stream bool   `json:"stream"`
}func main() {url := "http://localhost:11434/api/generate"// 创建请求体结构体requestBody := ChatRequest{Model:  "deepseek-r1:7b",Prompt: "如何做好家里的卫生工作",Stream: false,}// 将结构体转换为 JSONpayload, err := json.Marshal(requestBody)if err != nil {fmt.Println("Error marshaling JSON:", err)return}// 创建请求req, err := http.NewRequest("POST", url, bytes.NewBuffer(payload))if err != nil {fmt.Println("Error:", err)return}// 设置请求头req.Header.Set("Content-Type", "application/json")req.Header.Set("Authorization", "Bearer sk-b8ebb99508964850b2b1c")// 发送请求client := &http.Client{}resp, err := client.Do(req)if err != nil {fmt.Println("Error:", err)return}defer resp.Body.Close()// 读取响应body, _ := ioutil.ReadAll(resp.Body)fmt.Println(string(body))var completion Completionerr = json.Unmarshal(body, &completion)if err != nil {fmt.Println("Error parsing JSON:", err)return}fmt.Println("Content:", completion.Response)
}

结果

做好家里的卫生工作是每个家庭成员共同努力的结果。以下是一些实用的建议和步骤,可以帮助您改善家庭卫生,创造一个干净、舒适的生活环境:### 1. **划分责任区**- 家庭成员可以轮流负责不同的区域(如客厅、厨房、卧室等),明确每个人的卫生责任。- 这样可以让大家感受到责任感,并更容易监督和检查自己的区域是否清洁。### 2. **保持日常清洁**- **每天打扫**:花几分钟时间整理桌面、书架或其他需要清洁的地方,保持整洁。- **每周性任务**:- 垃圾分类:将垃圾区的垃圾归类并丢弃到相应的垃圾桶。- 垃圾处理:定期清理厨房和卫生间,减少积存。- 环境维护:每天早晨或晚上花5-10分钟扫地,保持地面干净。### 3. **日常清洁**- 地面:使用地拖或吸尘器定期清扫地板,特别是厨房、餐厅和卧室。- 卫生间和厨房:每天用清水擦洗台面、镜柜和下水道,定期清洁卫生间的马桶。- 每周一次彻底打扫:清理沙发、窗帘、床单等布艺品,拖地或用湿布擦拭墙面。### 4. **注意细节**- 家里的角落、边缘、楼梯扶手等地方容易被忽视,需要特别关注。- 厨房和卫生间是常见的污染源,及时清理和清洁可以减少异味。- 使用温和的清洁剂或中性洗涤剂清洗家具表面,避免留下 streaks。### 5. **培养良好习惯**- 手段关灯:养成随手关闭 lights 的习惯,减少灰尘积累。- 不随便丢垃圾:将垃圾分类后放入指定垃圾桶,避免长时间暴露在空气中。- 定期大扫除:每周进行一次彻底的打扫,清理所有区域,包括地面、墙面和家具。### 6. **使用适当的工具**- 地拖:拖地时选择轻便且耐用的地拖,可以有效清洁地面。- 吸尘器:吸尘器可以帮助去除地毯和其他表面的灰尘。- 墨水:对于墙面或家具上的污渍,可以用温和的墨水擦拭。### 7. **互相监督**- 家人可以轮流检查对方是否完成卫生任务,比如“检查一下厨房的桌子是否整洁”或者“看看卫生间有没有倒掉马桶里的水”。- 如果发现卫生状况下降,及时沟通,共同寻找原因并解决。通过以上步骤和习惯的养成,您将逐渐改善家里的卫生状况。记住,保持卫生不仅是为了个人健康,也是为了家庭环境的整体舒适。

http://www.ppmy.cn/news/1572851.html

相关文章

深度学习与人工智能:解锁未来的无限可能

在当今这个科技飞速发展的时代&#xff0c;深度学习和人工智能已不再只是科幻小说中的概念&#xff0c;它们正以惊人的速度渗透到我们生活的方方面面&#xff0c;从智能手机上的语音助手到医疗领域的疾病诊断&#xff0c;从自动驾驶汽车到金融市场的风险预测&#xff0c;其影响…

驱动开发系列38 - Linux Graphics 3D 绘制流程(一)- 创建画布

一:概述 当应用程序创建 OpenGL 上下文时,它通常需要申请帧缓冲(Framebuffer,即画布)。在 X11 体系下,应用程序不会直接向内核的 DRM 模块请求创建帧缓冲,而是通过 X 服务器进行申请。 虽然从技术上讲,应用程序可以直接使用 DRM 接口创建帧缓冲对象(BO),但为了将其与…

uniapp商城之首页模块

文章目录 前言一、自定义导航栏1.静态结构2.修改页面配置3.组件安全区适配二、通用轮播组件1. 静态结构组件2.自动导入全局组件3.首页轮播图数据获取三、首页分类1.静态结构2.首页获取分类数据并渲染四、热门推荐1.静态结构2.首页获取推荐数据并渲染3.首页跳转详细推荐页五、猜…

SpringBoot实战:高效获取视频资源

文章目录 前言技术实现SpringBoot项目构建产品选取配置数据采集 号外号外 前言 在短视频行业高速发展的背景下&#xff0c;海量内容数据日益增长&#xff0c;每天都有新的视频、评论、点赞、分享等数据涌现。如何高效、精准地获取并处理这些庞大的数据&#xff0c;已成为各大平…

Spring Cloud — 微服务容错保护 Hystrix入门

微服务之间是通过网络进行相互调用&#xff0c;如果单个服务出现问题&#xff0c;用户调用相关服务时或造成调用延迟或失败&#xff0c;进而可能让整个系统奔溃。提前做好应急措施&#xff0c;当遇到问题时&#xff0c;可及时启动应急方案&#xff0c;让系统进行自我调节和保护…

小蓝相机HDR拍照流程分析

和你一起终身学习&#xff0c;这里是程序员Android 经典好文推荐&#xff0c;通过阅读本文&#xff0c;您将收获以下知识点: HDR 场景下发 3 帧拍照请求HDR 3帧拍照请求帧&#xff08;478,479 480&#xff09;HDR 3帧 result callback帧HDR 算法处理算法编解码处理HDR 拍照log关…

el-table封装一个自定义列配置表格组件(vue3开箱即用)

组件核心功能 拖拽排序&#xff08;使用 vuedraggable&#xff09; 显示/隐藏控制 列宽调整 列固定状态记忆 搜索过滤列 本地存储&#xff08;localStorage&#xff09;可改成接口保存 默认配置恢复 通过 searchText 动态过滤列。 安装拖拽依赖 npm install vuedragg…

vscode环境搭建

目录 一、安装VSCode 二、安装Python 三、安装Anaconda&#xff08;可选&#xff0c;但推荐&#xff09; 四、安装深度学习相关库 五、配置VSCode 六、 结果可视化 一、安装VSCode 访问官网下载&#xff1a;从VSCode官方网站下载适合你操作系统的安装包。安装&#xff1a;运行安…