当前位置: 代码网 > it编程>编程语言>Java > springboot集成Deepseek4j的项目实践

springboot集成Deepseek4j的项目实践

2025年03月26日 Java 我要评论
deepseek4j快速开始maven 依赖在你的pom.xml中添加以下依赖:<dependency> <groupid>io.github.pig-mesh.ai<

deepseek4j快速开始

maven 依赖

在你的 pom.xml 中添加以下依赖:

<dependency>
  <groupid>io.github.pig-mesh.ai</groupid>
  <artifactid>deepseek-spring-boot-starter</artifactid>
  <version>1.4.2</version>
</dependency>

基础配置

在 application.yml 或 application.properties 中添加必要的配置:

deepseek:
  api-key: your-api-key-here  # 必填项:你的 api 密钥
  base-url: https://api.deepseek.com  # 可选,默认为官方 api 地址
  log-requests: true  # 可选,是否记录请求日志
  log-responses: true  # 可选,是否记录响应日志
  
  # 可选的超时配置(单位:秒)
  connect-timeout: 10
  read-timeout: 30
  call-timeout: 60
  
  # 代理配置(可选)
  proxy:
    host: proxy.example.com
    port: 8080
    
  # 日志级别配置(可选)
  log-level: basic

基础使用示例

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. 进阶配置示例

@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)
        // 添加助手消息,用于多轮对话
        .addassistantmessage("上轮结果")
        // 添加系统消息,用于设置角色和行为
        .addsystemmessage("你是一个专业的助手")
        // 设置最大生成 token 数,默认 2048
        .maxtokens(1000)
        // 设置响应格式,支持 json 结构化输出
        .responseformat(...) // 可选
        // function calling
        .tools(...) // 可选
        .build();
        
    return deepseekclient.chatfluxcompletion(request);
}

3. 同步输出 (非实时响应流)

不推荐使用同步阻塞调用方式,r1模型推理耗时较长易导致客户端连接超时,且响应延迟会影响用户体验

@getmapping(value = "/sync/chat")
public chatcompletionresponse syncchat(string prompt) {
  chatcompletionrequest request = chatcompletionrequest.builder()
      // 根据渠道模型名称动态修改这个参数
      .model(deepseekproperties.getmodel())
      .addusermessage(prompt).build();

  return deepseekclient.chatcompletion(request).execute();
}

到此这篇关于springboot集成deepseek4j的项目实践的文章就介绍到这了,更多相关springboot集成deepseek4j内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网! 

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com