springboot集成Deepseek4j的項(xiàng)目實(shí)踐
Deepseek4j快速開(kāi)始
Maven 依賴
在你的 pom.xml
中添加以下依賴:
<dependency> <groupId>io.github.pig-mesh.ai</groupId> <artifactId>deepseek-spring-boot-starter</artifactId> <version>1.4.2</version> </dependency>
基礎(chǔ)配置
在 application.yml
或 application.properties
中添加必要的配置:
deepseek: api-key: your-api-key-here # 必填項(xiàng):你的 API 密鑰 base-url: https://api.deepseek.com # 可選,默認(rèn)為官方 API 地址 log-requests: true # 可選,是否記錄請(qǐng)求日志 log-responses: true # 可選,是否記錄響應(yīng)日志 # 可選的超時(shí)配置(單位:秒) connect-timeout: 10 read-timeout: 30 call-timeout: 60 # 代理配置(可選) proxy: host: proxy.example.com port: 8080 # 日志級(jí)別配置(可選) log-level: BASIC
基礎(chǔ)使用示例
1. 流式返回示例
@Autowired private DeepSeekClient deepSeekClient; @GetMapping(value = "/chat", produces = MediaType.TEXT_EVENT_STREAM_VALUE) public Flux<ChatCompletionResponse> chat(String prompt) { return deepSeekClient.chatFluxCompletion(prompt); }
2. 進(jìn)階配置示例
@GetMapping(value = "/chat/advanced", produces = MediaType.TEXT_EVENT_STREAM_VALUE) public Flux<ChatCompletionResponse> chatAdvanced(String prompt) { ChatCompletionRequest request = ChatCompletionRequest.builder() // 模型選擇,支持 DEEPSEEK_CHAT、DEEPSEEK_REASONER 等 .model(ChatCompletionModel.DEEPSEEK_REASONER) // 添加用戶消息 .addUserMessage(prompt) // 添加助手消息,用于多輪對(duì)話 .addAssistantMessage("上輪結(jié)果") // 添加系統(tǒng)消息,用于設(shè)置角色和行為 .addSystemMessage("你是一個(gè)專業(yè)的助手") // 設(shè)置最大生成 token 數(shù),默認(rèn) 2048 .maxTokens(1000) // 設(shè)置響應(yīng)格式,支持 JSON 結(jié)構(gòu)化輸出 .responseFormat(...) // 可選 // function calling .tools(...) // 可選 .build(); return deepSeekClient.chatFluxCompletion(request); }
3. 同步輸出 (非實(shí)時(shí)響應(yīng)流)
不推薦使用同步阻塞調(diào)用方式,R1模型推理耗時(shí)較長(zhǎng)易導(dǎo)致客戶端連接超時(shí),且響應(yīng)延遲會(huì)影響用戶體驗(yàn)
@GetMapping(value = "/sync/chat") public ChatCompletionResponse syncChat(String prompt) { ChatCompletionRequest request = ChatCompletionRequest.builder() // 根據(jù)渠道模型名稱動(dòng)態(tài)修改這個(gè)參數(shù) .model(deepSeekProperties.getModel()) .addUserMessage(prompt).build(); return deepSeekClient.chatCompletion(request).execute(); }
到此這篇關(guān)于springboot集成Deepseek4j的項(xiàng)目實(shí)踐的文章就介紹到這了,更多相關(guān)springboot集成Deepseek4j內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- SpringBoot兩種方式接入DeepSeek的實(shí)現(xiàn)
- SpringBoot快速接入DeepSeek?api(帶頁(yè)面)保姆級(jí)教程
- SpringBoot調(diào)用DeepSeek接口的實(shí)現(xiàn)
- SpringBoot或SpringAI對(duì)接DeepSeek大模型的詳細(xì)步驟
- SpringBoot接入deepseek深度求索示例代碼(jdk1.8)
- SpringBoot整合DeepSeek實(shí)現(xiàn)AI對(duì)話功能
- SpringBoot調(diào)用DeepSeek?API的完整操作指南
- springboot接入deepseek深度求索代碼示例(java版)
相關(guān)文章
Maven項(xiàng)目引用第三方j(luò)ar包找不到類ClassNotFoundException
這篇文章主要為大家介紹了Maven項(xiàng)目引用第三方j(luò)ar包找不到類ClassNotFoundException解決及原因分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-07-07SpringBoot使用knife4j進(jìn)行在線接口調(diào)試
這篇文章主要介紹了SpringBoot使用knife4j進(jìn)行在線接口調(diào)試,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09Spring中@Validated和@Valid區(qū)別淺析
@Valid是javax.validation里的,?@Validated是@Valid?的一次封裝,是Spring提供的校驗(yàn)機(jī)制使用,下面這篇文章主要給大家介紹了關(guān)于Spring中@Validated和@Valid區(qū)別的相關(guān)資料,需要的朋友可以參考下2022-04-04Java將Object轉(zhuǎn)換為數(shù)組的代碼
這篇文章主要介紹了Java將Object轉(zhuǎn)換為數(shù)組的情況,今天在使用一個(gè)別人寫的工具類,這個(gè)工具類,主要是判空操作,包括集合、數(shù)組、Map等對(duì)象是否為空的操作,需要的朋友可以參考下2022-09-09Spring Cloud Hystrix 服務(wù)容錯(cuò)保護(hù)的原理實(shí)現(xiàn)
這篇文章主要介紹了Spring Cloud Hystrix 服務(wù)容錯(cuò)保護(hù)的原理實(shí)現(xiàn),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-05-05java騰訊AI人臉對(duì)比對(duì)接代碼實(shí)例
這篇文章主要介紹了java騰訊AI人臉對(duì)比對(duì)接,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-03-03Java原生服務(wù)器接收上傳文件 不使用MultipartFile類
這篇文章主要為大家詳細(xì)介紹了Java原生服務(wù)器接收上傳文件,不使用MultipartFile類,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-09-09MAC配置java+jmeter環(huán)境變量過(guò)程解析
這篇文章主要介紹了MAC配置java+jmeter環(huán)境變量過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-09-09mybatis 為什么千萬(wàn)不要使用 where 1=1
這篇文章主要介紹了mybatis 為什么千萬(wàn)不要使用 where 1=1,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-05-05