行业资讯 2025年08月6日
0 收藏 0 点赞 403 浏览 3164 个字
摘要 :

文章目录 一、认识DeepSeek大模型 二、Spring AI集成DeepSeek大模型的方法步骤 三、本地部署DeepSeek大模型 四、总结 Spring宣布可以通过Spring AI 接入DeepSeek啦!De……




  • 一、认识DeepSeek大模型
  • 二、Spring AI集成DeepSeek大模型的方法步骤
  • 三、本地部署DeepSeek大模型
  • 四、总结

Spring宣布可以通过Spring AI 接入DeepSeek啦!DeepSeek可是咱们国产大模型里的佼佼者,由深度求索公司发布。这次Spring与DeepSeek的合作,让不少开发者都跃跃欲试,想知道怎么基于DeepSeek大模型开发智能应用。别着急,今天这篇文章就带你一步步了解。Spring AI 如何接入集成 DeepSeek

一、认识DeepSeek大模型

DeepSeek推出了两款不同功能侧重的模型,能满足各种不同的需求。

  • DeepSeek V系列:主打对话功能,模型名称是deepseek – chat。有了它,开发的应用就能和用户像朋友聊天一样顺畅交流,不管是解答问题,还是陪用户谈天说地都不在话下。
  • DeepSeek R系统:主要负责推理,模型叫deepseek – reasoner。它就像个“智慧大脑”,遇到复杂问题时,能通过推理给出合理的答案,比如分析数据、解决逻辑难题等。

要是你想了解DeepSeek模型的发布和演化过程,可以去它的官方更新日志看看,地址是https://api-docs.deepseek.com/zh-cn/updates ,这里面详细记录了模型的演变轨迹。

二、Spring AI集成DeepSeek大模型的方法步骤

DeepSeek AI开源了DeepSeek V3模型,这个模型的推理和解决问题的能力特别厉害。Spring AI是通过重用现有的OpenAI客户端来和DeepSeek AI集成的。在开始集成之前,咱们得做好下面这些准备工作:

  1. 获取API密钥:先去https://api-docs.deepseek.com/zh-cn/ 创建API密钥,拿到密钥后,在Spring AI项目里,把它配置到spring.ai.openai.api-key这个属性里。如果不会获取deepseek api请参考:

    如何获取 DeepSeek API?

    文章目录 第一步:注册DeepSeek 第二步:创建并复制API Key 补充说明 常见工具接入DeekSee […]

  2. 设置基本URL:接着把spring.ai.openai.base-url属性设置成api.deepseek.com
  3. 选择模型:用spring.ai.openai.chat.model=<model name>这个属性来指定要用的模型。可以从支持的型号里挑选,比如想用对话功能就选deepseek – chat,想用推理功能就选deepseek – reasoner。

做好准备工作后,咱们就可以开始集成DeepSeek了,具体步骤如下:

  1. 引入依赖:在项目的依赖配置文件里加上下面这段代码:
<dependency>
    <groupId>org.springframework.ai</groupId>
    <artifactId>spring-ai-openai-spring-boot-starter</artifactId>
</dependency>

这段代码的作用是告诉项目,我们要使用Spring AI的OpenAI相关功能,为后续集成DeepSeek大模型打下基础。
2. 进行配置:在项目的配置文件里添加如下配置:

spring:
  ai:
    openai:
      api-key: sk-xxx   // 填写自己申请的key
      base-url: https://api.deepseek.com
      chat:
        options:
          model: deepseek-chat

这里把前面获取的API密钥、设置的基本URL以及选择的模型都配置好了,让Spring AI能顺利连接到DeepSeek大模型。
3. 实现聊天示例:下面是一个简单的聊天示例代码:

package com.ivy.controller;

import org.springframework.ai.chat.messages.UserMessage;
import org.springframework.ai.chat.model.ChatResponse;
import org.springframework.ai.chat.prompt.Prompt;
import org.springframework.ai.openai.OpenAiChatModel;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import reactor.core.publisher.Flux;
import java.util.Map;

@RestController
public class ChatController {
    // 注入OpenAiChatModel,用于与DeepSeek大模型进行交互
    private final OpenAiChatModel chatModel;

    public ChatController(OpenAiChatModel chatModel) {
        this.chatModel = chatModel;
    }

    // 处理/generate请求,返回生成的文本
    @GetMapping(\"/ai/generate\")
    public Map<String, String> generate(@RequestParam(value = \"message\", defaultValue = \"Tell me a joke\") String message) {
        // 调用chatModel的call方法,传入用户消息,获取生成的文本
        return Map.of(\"generation\", this.chatModel.call(message));
    }

    // 处理/generateStream请求,返回流式的聊天响应
    @GetMapping(\"/ai/generateStream\")
    public Flux<ChatResponse> generateStream(@RequestParam(value = \"message\", defaultValue = \"Tell me a joke\") String message) {
        // 创建一个包含用户消息的Prompt对象
        Prompt prompt = new Prompt(new UserMessage(message));
        // 调用chatModel的stream方法,传入Prompt对象,获取流式的聊天响应
        return this.chatModel.stream(prompt);
    }
}

这段代码实现了两个接口,/ai/generate用于返回生成的文本,/ai/generateStream用于返回流式的聊天响应,让应用能和用户进行实时交互。

三、本地部署DeepSeek大模型

现阶段,由于资源限制,DeepSeek的在线服务可能不太稳定。要是遇到这种情况,咱们可以在本地部署一个DeepSeek大模型,这样就能在本地学习和使用啦。如果想要本地部署deepseek可以参考文章:

如何本地部署deepseek开源AI大模型

文章目录 一、LM Studio部署步骤 二、模型下载要点 三、模型使用体验 最近这过年期间,AI领域可谓热闹 […]

四、总结

总的来说,Spring AI接入DeepSeek大模型的操作并不复杂,而且还实现了阻塞和流式聊天模式,方便开发者根据实际需求选择。DeepSeek大模型的函数调用、角色定义以及结构化输出等功能,和之前文章里讲的差不多,这里就不多说了。要是你对这些内容感兴趣,可以去看看本站的其他文章。

微信扫一扫

支付宝扫一扫

版权: 转载请注明出处:https://www.zuozi.net/10281.html

管理员

相关推荐
2025-08-06

文章目录 一、Reader 接口概述 1.1 什么是 Reader 接口? 1.2 Reader 与 InputStream 的区别 1.3 …

988
2025-08-06

文章目录 一、事件溯源 (一)核心概念 (二)Kafka与Golang的优势 (三)完整代码实现 二、命令…

465
2025-08-06

文章目录 一、证明GC期间执行native函数的线程仍在运行 二、native线程操作Java对象的影响及处理方…

348
2025-08-06

文章目录 一、事务基础概念 二、MyBatis事务管理机制 (一)JDBC原生事务管理(JdbcTransaction)…

456
2025-08-06

文章目录 一、SnowFlake算法核心原理 二、SnowFlake算法工作流程详解 三、SnowFlake算法的Java代码…

517
2025-08-06

文章目录 一、本地Jar包的加载操作 二、本地Class的加载方法 三、远程Jar包的加载方式 你知道Groo…

832
发表评论
暂无评论

还没有评论呢,快来抢沙发~

助力内容变现

将您的收入提升到一个新的水平

点击联系客服

在线时间:08:00-23:00

客服QQ

122325244

客服电话

400-888-8888

客服邮箱

122325244@qq.com

扫描二维码

关注微信客服号