本地部署 DeepSeek:从 Ollama 配置到 Spring Boot 集成

前言

随着人工智能技术的迅猛发展,越来越多的开发者希望在本地环境中部署和调用 AI 模型,以满足特定的业务需求。本文将详细介绍如何在本地环境中使用 Ollama 配置 DeepSeek 模型,并在 IntelliJ IDEA 中创建一个 Spring Boot 项目来调用该模型。通过这些步骤,您将能够在本地环境中高效地运行和测试 AI 模型,提升开发效率。

详细步骤

一、本地配置DeepSeek

1.安装Ollama

Ollama 是一个开源平台,旨在简化大型语言模型的本地部署和管理。您可以从 Ollama官网下载适用于 Windows、Linux 或 macOS 的安装包。

安装成功后可以使用win+R并输入cmd打开终端,接着输入ollama检查是否安装成功,如果有输出对应信息则说明安装成功了

2.下载对应DeepSeek模型并运行

首先选中想要配置的DeepSeek版本并复制右侧指令

将指令复制到终端并进行下载对应版本的DeepSeek,下载完成之后到这个界面,就是下载成功了,可以输入一些信息进行测试

二、SpringBoot项目调用本地DeepSeek

1.创建springboot项目

具体操作如下:

  • 打开 IntelliJ IDEA,选择 "New Project"。
  • 选择 "Spring Initializr" 作为项目类型。
  • 填写项目的基本信息,如 Group、Artifact 等。
  • 在 "Dependencies" 中添加所需的依赖,例如 "Spring Web"。
  • 点击 "Create" 创建项目。

这里我添加了Web和Ollama的依赖,创建成功界面如下

2.添加deepseek对应配置信息

在application.properties中添加下面配置信息

XML 复制代码
spring.ai.ollama.chat.options.model=deepseek-r1:1.5b
spring.ai.ollama.base-url=http://127.0.0.1:11434
spring.ai.ollama.chat.enabled=true
server.port=9099
3.编码调用deepseek

接着创建简单controller类和service实现类,结构如图:

对应代码如下:

controller:

java 复制代码
@RestController
public class testController {

    @Autowired
    private DeepSeekTestService deepSeekTestService;

    @RequestMapping("/ask1")
    public String speak(@RequestParam String msg){
        return deepSeekTestService.getResponse(msg);
    }
}

service接口:

java 复制代码
public interface DeepSeekTestService {
    String getResponse(String message);
}

service实现类

java 复制代码
@Service
public class DeepSeekServiceImpl implements DeepSeekTestService {

    private final OllamaChatModel ollamaChatModel;

    public DeepSeekServiceImpl(OllamaChatModel ollamaChatModel) {
        this.ollamaChatModel = ollamaChatModel;
    }

    @Override
    public String getResponse(String message) {
        String response = ollamaChatModel.call(message);
        return response;
    }
}
4.测试

启动项目,在浏览器的url路径中输入对应信息进行测试,这样一个简单的springboot对接deepseek项目就完成了!

好久没有更新了,绝对不是懒哈哈哈,好吧其实就是懒了,后面会继续更新一些有关Java的学习知识!还希望大家多多点赞支持,你的支持就是我的最大动力!!!

相关推荐
bug攻城狮5 分钟前
Spring Boot 2.6+ 整合 PageHelper 启动报错:循环依赖解决方案全解析
java·spring boot·后端
好学且牛逼的马36 分钟前
MyBatis-Plus的深度解析
java
苏纪云37 分钟前
数据结构<C++>——数组
java·数据结构·c++·数组·动态数组
IT_陈寒1 小时前
Vue 3.4性能优化实战:5个鲜为人知的Composition API技巧让打包体积减少40%
前端·人工智能·后端
典则1 小时前
STM32FreeRtos入门(五)——同步互斥与通信
java·jvm·stm32
你不是我我1 小时前
【Java 开发日记】我们来讲一讲阻塞队列及其应用
java·开发语言
互联网中的一颗神经元1 小时前
小白python入门 - 9. Python 列表2 ——从基础操作到高级应用
java·开发语言·python
大厂码农老A1 小时前
我带的外包兄弟放弃大厂转正,薪资翻倍入职字节
java·后端·面试
摇滚侠1 小时前
Spring Boot3零基础教程,生命周期监听,自定义监听器,笔记59
java·开发语言·spring boot·笔记
凯子坚持 c1 小时前
Llama-2-7b在昇腾NPU上的六大核心场景性能基准报告
java·开发语言·llama