把 DeepSeek1.5b 部署在显卡小于4G的电脑上
这里写自定义目录标题
- 介绍
- 准备
- 安装 Ollama
- 查看CUDA需要版本
- 安装CudaToolkit
- 检查Cuda是否装好
- 设置Ollama环境变量
- 验证是否跑在GPU上
- ollama如何导入本地下载的模型
- 安装及配置docker
- 安装open-webui
- 启动open-webui
- 开始对话
- 调整gpu精度
介绍
Deepseek1.5b能够运行在只用cpu和gpu内存小的情况下,经过试用,电脑只使用cpu是很慢的。
在实际使用过程中,我发现使用cpu和gpu是有区别的,使用gpu会出现答非所问的情况,发现默认情况下,GPU可能会使用半精度浮点数(float16)来加速计算,这可能会影响模型的准确性。尝试将精度改为单精度浮点数(float32)。修改后回答正常符合预期.
准备
Docker Desktop Installer.exe
open-webui
DeepSeek-R1-Distill-Qwen-1.5B
OllamaSetup
CUDA
其中OllamaSetup下载慢,需要网盘下载
模型从modelscope下载
open-webui从gitee下载2
安装 Ollama
Ollama 的官方网站下载很慢,最好从百度网盘下载
安装完成后,打开命令行界面并输入
ollama
命令。如果屏幕上出现以下提示信息,那么恭喜你,Ollama 已经成功安装。

查看CUDA需要版本
查看当前显卡驱动中的cuda版本
有两种方法:
1. 使用控制台命令查看。
nvidia-smi 是 NVIDIA 提供的用于监控 GPU 状态的工具,也可以用来检查 CUDA 的版本。
该命令会显示 GPU 的状态和性能信息,包括驱动程序版本和 CUDA 版本。
nvidia-smi

查看显卡驱动的cuda版本
2.通过nvdia控制面板查看。桌面右键打开nvdia控制面板

查看显卡驱动的cuda版本
安装CudaToolkit
CudaToolkit版本 不能大于 上面的显卡Cuda版本。
Cuda各版本下载地址:https://developer.nvidia.com/cuda-toolkit-archive

Cuda安装
检查Cuda是否装好
nvcc 是 CUDA 的编译器工具,可以用来检查 CUDA 的版本信息。输入以下命令:
nvcc --version
如果 CUDA 安装成功,该命令会返回 CUDA 的版本信息:

设置Ollama环境变量
这里略去Ollama安装过程。
Ollama安装好后,为了让推理跑在GPU上,可以按照如下步骤 设置环境变量:
在“系统变量”中,点击“新建”按钮。
添加以下环境变量:
变量名:OLLAMA_GPU_LAYER
变量值:cuda
如果需要指定特定的 GPU,可以添加以下环境变量:
变量名:CUDA_VISIBLE_DEVICES
变量值:GPU的UUID(按编号有时找不到,所以使用UUID)
在控制台输入nvidia-smi -L,即可查看GPU的UUID
可以在命令行中使用set命令
set OLLAMA_GPU_LAYER="cuda"
nvidia-smi -L
set CUDA_VISIVLE_DEVICES="UUID"

获取GPU的UUID
设置好后的效果如图:

设置环境变量,让Ollama调用指定GPU
验证是否跑在GPU上
在推理时使用Ollama ps即可查看负载情况:
ollama ps
我的显存是12G。
使用8b模型推理时,GPU显存够用,所以是100% GPU。
使用14b模型推理时,为避免显存爆掉,系统会自动将一部分分给CPU运行。这里是6%CPU,94%GPU

具体的分配可以看Log

将Log内容贴在AI中进行分析

可能会遇到的问题
如果是先装了Ollama,再装cuda,可能会出现这种情况:
按照上面设置后,控制台使用Ollama ps 显示GPU是主要负载,但是任务管理器中看到的却是GPU没怎么跑,CPU占用很高。
解决办法是:重装一下Ollama。 或者在任务栏的Ollama图标上 右键点击Update即可自动重装并更新至新版本。
ollama如何导入本地下载的模型
git clone https://www.modelscope.cn/deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B.git
下载模型文件
在模型所在目录创建一个Modelfile
Modelfile内容示例:
FROM ./DeepSeek-R1-Distill-Qwen-1.5B
在模型所在目录进入cmd,执行
ollama create qwen2:7b -f Modelfile

如果提示找不到模型,进入模型文件夹继续上一步,Tab键可以输入部分名称后补全
安装及配置docker
1 docker安装后升级到最新,不需要注册直接跳过
2 如果不报错但不能正常启动没显示"Engine running",先启动"Docker Desktop Service"
3需要添加国内源,不然非常慢
在"设置"页面的"Docker Engine"即可配置
{"builder": {"gc": {"defaultKeepStorage": "20GB","enabled": true}},"experimental": false,"registry-mirrors": ["https://registry.cn-hangzhou.aliyuncs.com","https://mirror.ccs.tencentyun.com","https://registry.cn-hangzhou.aliyuncs.com","https://registry.docker-cn.com","http://hub-mirror.c.163.com"]
}
点击"Apply",如果不能正常启动,说明输入有误,不能省略https,注意标点
安装open-webui
如图运行该命令,在readme.md文件中找

注意需要替换源加快速度,否则等一晚上也不行

启动open-webui
如图所示安装好是这样的,如果报错需要在设置中升级docker,如果点进去报错修改半天也没用,升级就好

如果你想尝试使用此编辑器, 你可以在此篇文章任意编辑。当你完成了一篇文章的写作, 在上方工具栏找到 文章导出 ,生成一个.md文件或者.html文件进行本地保存。
开始对话

在界面的左上角选择您的 DeepSeek R1 大模型,之后便可开始对话。
注意这是任务管理器中是cpu在跑还是gpu在跑
调整gpu精度
**要在Windows 10上使用Ollama时将GPU的默认浮点计算从float16改为float32,您需要在运行模型之前设置相应的环境变量或直接在代码中进行配置。**以下是一些常见的操作方法:
方法一:设置环境变量
对于许多深度学习框架,可以通过设置环境变量来改变默认的浮点精度。在命令行中执行以下命令:
set CUDA_VISIBLE_DEVICES=0 # 指定使用哪个GPU(例如,0表示第一个GPU)
set TF_FORCE_GPU_ALLOW_GROWTH=true # 允许GPU内存按需增长
set TF_FP32_CONVOLUTIONS=1 # 对于TensorFlow,强制使用float32进行卷积操作
set TF_ENABLE_ONEDNN_OPTS=0 # 禁用OneDNN优化,有时这会影响到精度设置
然后运行您的Ollama脚本。
注意:
GTX 1650支持float16和float32计算,但float16通常用于加速计算。在某些情况下,使用float32可能会降低性能,但可以提高数值稳定性。
相关文章:
把 DeepSeek1.5b 部署在显卡小于4G的电脑上
这里写自定义目录标题 介绍准备安装 Ollama查看CUDA需要版本安装CudaToolkit检查Cuda是否装好设置Ollama环境变量验证是否跑在GPU上ollama如何导入本地下载的模型安装及配置docker安装open-webui启动open-webui开始对话 调整gpu精度 介绍 Deepseek1.5b能够运行在只用cpu和gpu内…...
Git子模块实战:大型后台管理系统模块拆分实践
案例背景 某企业级后台管理系统需要拆分为三个核心模块: 权限中心 (auth-center):负责RBAC权限管理数据可视化 (data-visualization):包含BI看板模块工作流引擎 (workflow-engine):审批流程核心组件 每个模块由独立团队开发维护…...
【做一个微信小程序】校园事件页面实现
前言 为了进一步扩展校园事件页面的功能,我们可以添加 搜索、分类筛选 和 渐变卡片色 等特性。以下是详细的方案和源码实现。 扩展功能设计 1. 搜索功能 在页面顶部添加搜索框,用户输入关键词后,筛选出匹配的事件。2. 分类筛选 在页面顶部添加分类标签(如“全部”、“活动…...
基于 Filebeat 的日志收集
在现代分布式系统中,日志数据作为关键的监控与故障排查依据,越来越受到重视。本文将深入探讨 Filebeat 的技术原理、配置方法及在 ELK(Elasticsearch、Logstash、Kibana)生态系统中的应用,帮助开发者构建高效、稳定的日…...
Python教程108:针对面向对象Class类知识要点,源码示例再演示
类的基础结构,比如定义类、初始化方法__init__,然后实例化对象。然后是类的属性,包括实例属性和类属性。接着是方法,比如实例方法、类方法、静态方法的区别。还有继承和多态,这是面向对象的重要部分。可能还需要提到特…...
如何在Excel和WPS中进行翻译
文档翻译我们可以用在线翻译工具,Excel工作表的翻译使用在线翻译工具就不是特别方便,那么如何快速进行翻译呢,我们今天介绍在不同的场景下如何利用翻译函数和Python程序来实现单元格的快速翻译。 一、在wps中进行翻译 WPS是我们常用的办公软…...
zola + github page,用 workflows 部署
之前的Zola都是本地build之后,再push到github上,这种方式很明显的弊端就是只能在本地编辑,而不能通过github编辑,再pull到本地,缺乏了灵活性。因此将zola用workflows来部署。 repo地址:https://github.com/…...
DeepSeek从入门到精通:提示词设计的系统化指南
目录 引言:AIGC时代的核心竞争力 第一部分 基础篇:提示词的本质与核心结构 1.1 什么是提示词? 1.2 提示词的黄金三角结构 第二部分 类型篇:提示词的六大范式 2.1 提示语的本质特征 2.2 提示语的类型 2.2.1 指令型提示词 …...
org.apache.kafka.common.errors.TimeoutException
个人博客地址:org.apache.kafka.common.errors.TimeoutException | 一张假钞的真实世界 使用kafka-console-producer.sh向远端Kafka写入数据时遇到以下错误: $ bin/kafka-console-producer.sh --broker-list 172.16.72.202:9092 --topic test This is …...
DeepSeek免费部署到WPS或Office
部署到WPS - 通过OfficeAI插件接入: - 准备工作:安装最新版本的WPS Office软件;访问DeepSeek官网,点击右上角的“API开放平台”,登录账号(若无账号需先注册),登录成功后,…...
智能手表表带圆孔同心度检测
在智能手表的制造工艺中,表带圆孔同心度检测是确保产品品质的关键环节。精准的同心度不仅关乎表带与表体的完美适配,更直接影响用户的佩戴舒适度和产品的整体美观度。稍有偏差,就可能导致表带安装困难、佩戴时出现晃动,甚至影响智…...
C# 变量,字段和属性的区别
总目录 前言 在C#中,变量(Variables)、字段(Fields) 和 属性(Properties) 是三个容易混淆但作用截然不同的概念。以下是它们的核心区别与使用场景: 一、变量(Variables&…...
如何设置linux系统时间?
在 Linux 系统中,可以通过不同的方法来设置系统时间,下面详细介绍几种常见的方式。 目录 方法一:使用date命令手动设置时间 方法二:同步硬件时钟(BIOS 时钟) 方法三:使用timedatectl命令设置…...
完美解决 error:0308010C:digital envelope routines::unsupported
查看专栏目录 Network 灰鸽宝典专栏主要关注服务器的配置,前后端开发环境的配置,编辑器的配置,网络服务的配置,网络命令的应用与配置,windows常见问题的解决等。 文章目录 windows电脑完美解决办法:设置说明…...
【OJ项目】深入剖析 JudgeServiceImpl 类:题目的判题逻辑详解
《深入剖析 JudgeServiceImpl 类:题目的判题逻辑详解》 一、引言 在编程竞赛或者在线编程平台中,判题服务是核心功能之一。它负责对用户提交的代码进行编译、执行,并根据预设的测试用例判断代码的正确性。今天我们就来详细剖析一个名为 Jud…...
MATLAB图像处理:Sobel、Roberts、Canny等边缘检测算子
边缘是图像中像素值剧烈变化的区域,反映了目标的轮廓、纹理等关键信息。边缘检测是图像分割、目标识别等任务的基础。本文将系统解析 六种经典边缘检测算子 的数学原理、实现方法及适用场景,并给出完整的MATLAB代码示例和对比分析。 1. 边缘检测基础 1…...
【设计模式】02-理解常见设计模式-结构型模式
上一篇,我们介绍了设计模式-创建型模式的内容,并给出了相关代码示范。 这一篇我们接着介绍剩下的内容之一“结构型模式” 一、概述 结构型模式主要用于处理类或对象的组合,以获得新的功能或实现更灵活的结构。 二、常见的结构型模式 1、适…...
LabVIEW太阳能制冷监控系统
在全球能源需求日益增长的背景下,太阳能作为一种无限再生能源,被广泛应用于各种能源系统中。本基于LabVIEW软件和STM32F105控制器的太阳能制冷监控系统的设计与实现,提供一个高效、经济的太阳能利用方案,以应对能源消耗的挑战。 项…...
MambaMorph brain MR-CT
loss代码实现了几种用于医学图像配准(Registration)和分割(Segmentation)任务的损失函数,主要包括以下几种: NCC (Normalized Cross-Correlation): 功能: 计算局部归一化互相关损失,用于衡量两个图像之间的相似性。 应用场景: 通常用于图像配准任务,通过最大化图像之间…...
DeepSeek计算机视觉(Computer Vision)基础与实践
计算机视觉(Computer Vision)是人工智能领域的一个重要分支,专注于让计算机理解和处理图像和视频数据。计算机视觉技术广泛应用于图像分类、目标检测、图像分割、人脸识别等场景。DeepSeek提供了强大的工具和API,帮助我们高效地构建和训练计算机视觉模型。本文将详细介绍如…...
C语言-------结构体(1)
数据类型 (1)基本数据类型 整型 浮点型 字符型 (2)构造类型 数组 结构体 结构体: 用来处理,现实生活中,更复杂的数据的描述 用来 描述复杂数据的 一种用户自定义的数…...
单片机原理与运用
个人主页:java之路-CSDN博客(期待您的关注) 目录 一、走进单片机的世界 二、单片机是什么 (一)定义与本质 (二)与普通计算机的区别 三、单片机的工作原理深度剖析 (一)硬件组成及功能 &am…...
【leetcode】关于循环数组的深入分析
原题:https://leetcode.cn/problems/rotate-array/description/ 给定一个整数数组 nums,将数组中的元素向右轮转 k 个位置,其中 k 是非负数。 示例 1: 输入: nums [1,2,3,4,5,6,7], k 3 输出: [5,6,7,1,2,3,4] 解释: 向右轮转 1 步: [7,1…...
一个根据输入内容过滤下拉选的组件
1.element的select自定义过滤不是很灵,使用了input和dropdown 组件 <template><div class"autocomplete-wrapper"><!-- 使用 el-input 组件 --><el-inputv-model"inputValue"input"handleInput"placeholder&q…...
C++17中的clamp函数
一、std::clamp() 其实在前面简单介绍过这个函数,但当时只是一个集中的说明,为了更好的理解std::clamp的应用,本篇再详细进行阐述一次。std::clamp在C17中其定义的方式为: template< class T > constexpr const T& cl…...
Linux | 进程相关概念(进程、进程状态、进程优先级、环境变量、进程地址空间)
文章目录 进程概念1、冯诺依曼体系结构2、进程2.1基本概念2.2描述进程-PCB2.3组织进程2.4查看进程2.5通过系统调用获取进程标识符2.6通过系统调用创建进程-fork初识fork の 头文件与返回值fork函数的调用逻辑和底层逻辑 3、进程状态3.1状态3.2进程状态查看命令3.2.1 ps命令3.2.…...
$ npx electron-forge import 一直报权限问题 resource busy or locked,
jackLAPTOP-7DHDAAL0 MINGW64 /e/project/celetron-project/my-electron-app (master) $ npx electron-forge import > Checking your system > Checking git exists > Checking node version > Checking packageManager version √ Found node22.14.0 √ Found gi…...
sqli-labs靶场实录(四): Challenges
sqli-labs靶场实录: Challenges Less54确定字段数获取数据库名获取表名获取列名提取密钥值 Less55Less56Less57Less58爆库构造爆表构造爆列构造密钥提取构造 Less59Less60Less61Less62爆库构造 Less63Less64Less65免责声明: Less54 本关开始上难度了 可以看到此关仅…...
HTML,API,RestFul API基础
一文搞懂RESTful API - bigsai - 博客园 1. API 路径 开头必须 /,表示绝对路径,不支持 . 或 ..(相对路径)。API 结尾 / 通常不需要,但部分框架会自动处理 / → 无 /。 ✅ 推荐 GET /api/v1/products # 资源集合…...
Spring框架中都用到了哪些设计模式?
大家好,我是锋哥。今天分享关于【Spring框架中都用到了哪些设计模式?】面试题。希望对大家有帮助; Spring框架中都用到了哪些设计模式? 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 Spring框架中使用了大量的设计模…...
