当前位置: 首页 > news >正文

私有化部署DeepSeek并SpringBoot集成使用(附UI界面使用教程-支持语音、图片)

私有化部署DeepSeek并SpringBoot集成使用(附UI界面使用教程-支持语音、图片)

windows部署ollama

Ollama 是一个开源框架,专为在本地机器上便捷部署和运行大型语言模型(LLM)而设计

下载ollama

下载地址(mac、linux、windows):https://ollama.com/download
github 的Releases地址:https://github.com/ollama/ollama/releases
下载可能限速,我选择使用阿里云服务器下载然后再ftp下载到本地

 wget https://github.com/ollama/ollama/releases/download/v0.5.8-rc10/OllamaSetup.exe

我下载的版本为v0.5.8-rc10

ps:这里提供一个github加速网站
https://github.akams.cn/
在这里插入图片描述

安装ollama

下载完毕后,直接点击安装(默认安装C盘,确保你的C盘有10G以上的空间)
打开cmd 输入 ollama ,如果有usage提示,那么说明安装成功
注意,关闭ollama进程,然后再执行下面的步骤,因为安装后默认程序已经打开了
在这里插入图片描述
如何验证是否安装成功?
ctrl+r 进入cmd
输入

ollama

如果出现下面的界面说明安装成功
在这里插入图片描述

配置ollama环境变量

这一步是为了确保你以后下载的模型都放在别的地址(因为默认安装到C盘,这里可以将模型下载到别的盘)
打开【系统环境变量】,新建一个系统环境变量{OLLAMA_MODELS}值为{D:ollamamodels}
在这里插入图片描述

配置ollama端口(可选)

默认地址为http://localhost:11434
配置端口 新建一个系统环境变量{OLLAMA_HOST}值为{0.0.0.0:8080}
为什么要改?因为后面用webui里面用的8080,所以我把这里的端口改了
在这里插入图片描述

配置ollama跨域(可选)

配置跨域 新建一个系统环境变量{OLLAMA_ORIGINS}值为{*}
在这里插入图片描述

选择并下载DeepSeek版本

https://ollama.com/library/deepseek-r1
根据电脑性能选择不同的大小,对应不同的命令。

打开cmd输入命令

这里我选择使用1.5b,所以我的命令为

ollama run deepseek-r1:1.5b

然后等待pull就行了
在这里插入图片描述
安装成功后如下图所示
在这里插入图片描述

linux部署ollama

直接上命令行

curl -fsSL https://ollama.com/install.sh | sh
sudo systemctl enable ollama  
sudo systemctl status ollama
sudo systemctl start ollama
ollama run deepseek-r1:1.5b

接口形式调用DeepSeek-(SpringBoot集成)

对接api文档

ollama已经开放了非常全的api接口了,对于全面私人化定制都是可以支持,详情参照官方文档,我这里只是弄了一个简单的示例。

ollama api文档

https://github.com/ollama/ollama/blob/main/docs/api.md

新建工具类方法
package com.example.springtestdemo.ai.util;


import com.alibaba.fastjson.JSONObject;
import lombok.extern.slf4j.Slf4j;

/**
 * @date 2025-01-15 10:58:46
 */
@Slf4j
public class OllamaUtil {
    private static String DOMAIN = "http://localhost:11434/api/generate";

    public static String chatDeepSeek(String model, String question) {

        String url = DOMAIN;
        JSONObject body = new JSONObject();
        body.put("model", model);
        body.put("prompt", question);
        // 关闭流式返回,全部生成完再返回数据
        body.put("stream", false);
        String result = CommonUtil.postJson(url, body.toJSONString());
        log.info("【ollama-请求】 结果 {}", result);
        try {
            JSONObject resJson = JSONObject.parseObject(result);
            String response = resJson.getString("response");
            log.info("【ollama-请求】 结果 {}", response);
            return response;
        } catch (Exception e) {
            log.error("【ollama-请求】异常", e);
        }
        return "ok";
    }
}
新建控制器
package com.example.springtestdemo.ai.controller;

import com.example.springtestdemo.ai.QueryParam;
import com.example.springtestdemo.ai.util.OllamaUtil;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RestController;

/**
 * @date 2025-02-07 14:44:56
 */
@RestController
public class AiController {

    @PostMapping("/deepSeek")
    public String deepSeek(QueryParam query) {
        String res = OllamaUtil.chatDeepSeek("deepseek-r1:1.5b", query.getQuestion());
        return res;
    }
}

在这里插入图片描述

安装 UI使用界面

1、 直接使用eage插件使用
https://www.crxsoso.com/webstore/detail/jfgfiigpkhlkbnfnbobbkinehhfdhndo
支持图片上传什么的都有
在这里插入图片描述

相关文章:

  • 石基大商:OceanBase + Flink CDC,搭建连锁零售系统数据湖
  • IDEA 接入 Deepseek
  • comfyui使用ComfyUI-AnimateDiff-Evolved, ComfyUI-Advanced-ControlNet节点报错解决
  • 网络安全域的划分与隔离
  • 基于RKNN的嵌入式深度学习开发(1)
  • 青蛙跳杯子(BFS)
  • 如何将hf-mirror.com作为vllm默认的下载源? conda如何移除虚拟环境?conda 如何复制一份虚拟环境?
  • 15-YOLOV8OBB损失函数详解
  • Spring(三)容器-注入
  • 玩转大模型——Trae AI IDE国内版使用教程
  • 【我的Android进阶之旅】如何使用NanoHttpd在Android端快速部署一个HTTP服务器?
  • GPU、NPU与LPU:大语言模型(LLM)硬件加速器全面对比分析
  • 20241130 RocketMQ本机安装与SpringBoot整合
  • CSS2.1基础学习
  • STM32——DMA详解
  • 似然函数与极大似然估计
  • 表达式求值(后缀表达式)
  • 软考中级-数据库-3.2 数据结构-数组和矩阵
  • Deepgram推出Nova-3 Medical,AI语音转录助力医疗行业
  • 基于CURL命令封装的JAVA通用HTTP工具
  • 福田在线/天津seo排名扣费
  • 提供网站建设搭建/seo是什么字
  • 做网站建设的平台/百度网址大全 官网
  • 网络营销推广策划案/seo关键词报价查询
  • 信誉好的合肥网站建设/产品推广哪个平台好
  • 阿里巴巴做网站的/一个网站推广