Java项目如何使用 DeepSeek4J 集成 DeepSeek
本文主要讲解Java项目如何使用 DeepSeek4J 集成 DeepSeek,并介绍下DeepSeek4J 的一些亮点。DeepSeek4J 最近迎来了重大更新。此次更新主要解决主流框架在集成DeepSeek R1模型时的难题,为Java开发者提供了更加高效、便捷的集成方案。我们一起来看下DeepSeek4J的亮点、核心特性、使用方法等等。
一、DeepSeek4J是什么?
DeepSeek4J是专门针对Java生态系统开发的DeepSeek模型集成框架。它的出现,就是为了打破现有框架的束缚,让Java开发者能够轻松将DeepSeek模型融入到自己的项目中。这个框架的API设计得简洁又好用,开发者仅需编写一行代码,就能完成DeepSeek模型的接入工作,大大降低了集成门槛。
- 项目地址:https://github.com/pig-mesh/deepseek4j
- 文档地址:https://javaai.pig4cloud.com/deepseek
二、DeepSeek4J 特性亮点
(一)解决方案:基于OpenAI4J架构的创新
开源项目Pig的开发者参考OpenAI4J项目的优秀架构,精心打造出了DeepSeek4J这个开箱即用的解决方案。它针对现有框架的痛点进行了全面优化,不仅增强了对DeepSeek独有的思维链和账单特性的支持,还加入了对Project Reactor的全面响应式支持,为开发者提供了更灵活、高效的开发体验。此外,DeepSeek4J还提供了集成Spring Boot Starter,支持自动配置,进一步简化了在Spring Boot项目中的集成流程。
(二)核心特性
1)完整保留思维链与账单:DeepSeek4J能够完整地保留DeepSeek R1的思维链能力和账单信息,确保关键的推理过程和重要数据不会丢失,让开发者可以充分利用DeepSeek R1的强大功能。
2)响应式流式处理:该框架支持响应式流式处理,这意味着在数据传输过程中,用户无需等待全部数据加载完成,就能实时获取部分数据并进行处理,大大提升了用户体验。
3)简洁易用的API:DeepSeek4J的API设计简单优雅,开发者无需复杂的操作,就能快速上手,实现DeepSeek模型与Java项目的集成。
4)Spring Boot集成支持:对于使用Spring Boot进行开发的用户,DeepSeek4J提供了开箱即用的集成支持,无论是Spring Boot 2.x版本还是3.x版本,都能轻松集成,并且支持自动配置,减少了开发者的配置工作量。
5)内置调试页面与详细日志:框架内置了调试页面,方便开发者进行调试工作。同时,它还提供详细的请求响应日志,让开发者可以清晰地了解数据的传输和处理过程,便于排查问题。
6)灵活的代理配置与响应式编程支持:DeepSeek4J支持灵活的代理配置,适应不同的网络环境。并且,它对响应式编程的全面支持,让开发者可以更好地利用现代编程范式进行高效开发。
三、快速上手DeepSeek4J
(一)添加依赖
在Java项目中使用DeepSeek4J,首先需要在项目的依赖管理文件中添加相应的依赖。以Maven项目为例,在pom.xml
文件中添加如下代码:
<dependency> <groupId>io.github.pig-mesh.ai</groupId> <artifactId>deepseek-spring-boot-starter</artifactId> <version>1.1.0</version> </dependency>
这一步就像是给项目引入了一个“工具包”,让项目具备了使用DeepSeek4J的基础能力。
(二)配置参数
添加完依赖后,还需要在application.yml
文件中进行参数配置,告诉DeepSeek4J要使用的API密钥和API地址。配置代码如下:
deepseek: api-key: your-api-key-here base-url: https://api.deepseek.com/v1 # 可选,默认为官方API地址,支持火山、gitee、硅基流动
这里的api-key
就像是进入DeepSeek服务的“钥匙”,base-url
则指定了请求要发送到的地址。
如果不会获取API Key 请参考:
(三)基础使用
在完成上述配置后,就可以在代码中使用DeepSeek4J了。比如,在Spring Boot项目的控制器类中,可以通过如下代码实现一个简单的聊天功能:
// 自动注入DeepSeekClient,这是与DeepSeek进行交互的关键对象 @Autowired private DeepSeekClient deepSeekClient; // sse流式返回,根据前端传入的prompt(提示信息)获取聊天响应 @GetMapping(value = "/chat", produces = MediaType.TEXT_EVENT_STREAM_VALUE) public Flux<ChatCompletionResponse> chat(String prompt) { // 调用deepSeekClient的chatFluxCompletion方法,返回包含聊天结果的Flux流 return deepSeekClient.chatFluxCompletion(prompt); }
这段代码实现了接收前端传来的问题,通过DeepSeek4J获取回答,并以流式的方式返回给前端的功能。
(四)前端调试
DeepSeek4J还提供了便捷的前端调试方式。在项目根目录下,双击运行sse.html
文件,就能打开调试页面。在这个页面中,输入后端的SSE接口地址(例如http://127.0.0.1:8080/chat?prompt=新能源汽车优势
),点击发送按钮后,开发者就能实时查看DeepSeek的推理过程和最终的回答结果。而且,这个页面还提供了完整的前端实现代码,开发者可以将其作为集成前端功能的参考。
希望本文能帮助大家快速了解和上手DeepSeek4J,在Java项目中快速使用 DeepSeek4J 集成 DeepSeek。