DeepSeek 部署过程中的问题

文章目录

  • DeepSeek 部署过程中的问题
    • 一、部署扩展:docker 部署 DS
      • 1.1 部署
      • 1.2 可视化
    • 二、问题
    • 三、GPU 设置
      • 3.1 ollama GPU 的支持情况
      • 3.2 更新 GPU 驱动
      • 3.3 安装 cuda
      • 3.4 下载 cuDNN
      • 3.5 配置环境变量
    • 四、测试

DeepSeek 部署过程中的问题

1738492827_qdqfqc68qj.png1738492827238.png

Windows 中 利用 ollama 来搭建 deepseek R1-CSDN博客

一、部署扩展:docker 部署 DS

1.1 部署

在上文Windows 中 利用 ollama 来搭建 deepseek R1-CSDN博客中,我们使用Windows直接部署ollama,当然我们也可以使用docker来进行ollama的部署。 hub.docker.com/r/ollama/ollama

Docker安装到入门_deping 覆盖安装docker-CSDN博客

部署命令:

docker run -d --gpus=all -v ollama:/root/.ollama -p 9000:11434 -e OLLAMA_ORIGINS=* --restart always --name ollama ollama/ollama  # 在容器内部运行ollamadocker exec -it ollama ollama run deepseek-r1:7b  # 运行模型

命令运行后:
1738835627_m6n0j9clqs.png1738835625823.png

1738844955_nycubx07kw.pngPasted image 20250206175416.png

我们发现,ollama环境已被我们创建。

查看本地能否访问,并且在容器内部是否运行

1738835710_71vfykv1yv.png1738835709239.png

开始部署大模型

1738836333_u99stbl8rh.png1738836332618.png

1.2 可视化

我们创建的模型也可以在Chatbox网站进行调用Chatbox,而不是使用 docker 部署 web UI,这样过于浪费系统资源

1738836382_nbmgwii9hg.png1738836380700.png

1738836406_j1l8bvnh4p.png1738836405172.png

1738836440_l1xmrhpdkj.png1738836439654.png

二、问题

在我们运行deepseek-r1:7b,使用它生成内容时,会发现CPU被严重占用,这里我是使用 wsl 布置的 docker 容器,并且在容器中运行大模型。因此,ollama 其默认并没有使用 GPU 来运行 Deepseek,其是使用 CPU,来运行。

1738840498_80hdoag52i.png1738840496765.png

1738841006_7bktx4fg68.png1738841005476.png

而,GPU 却处于闲置的状态,而我们通过ollama list看到的processor

1738841274_u9655bgtcp.png1738841273366.png

同时,结合torch库的检测

1738841448_01hbaew505.png1738841447318.png

我们可以断定,cuda不能运行,我们需要配置cuda

三、GPU 设置

3.1 ollama GPU 的支持情况

ollama-doc/ollama/docs/Ollama 对GPU 支持信息.md at main · qianniucity/ollama-doc · GitHub

Compute CapabilityFamilyCards
9.0NVIDIAH100
8.9GeForce RTX 40xxRTX 4090 RTX 4080 RTX 4070 Ti RTX 4060 Ti
NVIDIA ProfessionalL4 L40 RTX 6000
8.6GeForce RTX 30xxRTX 3090 Ti RTX 3090 RTX 3080 Ti RTX 3080 RTX 3070 Ti RTX 3070 RTX 3060 Ti RTX 3060
NVIDIA ProfessionalA40 RTX A6000 RTX A5000 RTX A4000 RTX A3000 RTX A2000 A10 A16 A2
8.0NVIDIAA100 A30
7.5GeForce GTX/RTXGTX 1650 Ti TITAN RTX RTX 2080 Ti RTX 2080 RTX 2070 RTX 2060
NVIDIA ProfessionalT4 RTX 5000 RTX 4000 RTX 3000 T2000 T1200 T1000 T600 T500
QuadroRTX 8000 RTX 6000 RTX 5000 RTX 4000
7.0NVIDIATITAN V V100 Quadro GV100
6.1NVIDIA TITANTITAN Xp TITAN X
GeForce GTXGTX 1080 Ti GTX 1080 GTX 1070 Ti GTX 1070 GTX 1060 GTX 1050
QuadroP6000 P5200 P4200 P3200 P5000 P4000 P3000 P2200 P2000 P1000 P620 P600 P500 P520
TeslaP40 P4
6.0NVIDIATesla P100 Quadro GP100
5.2GeForce GTXGTX TITAN X GTX 980 Ti GTX 980 GTX 970 GTX 960 GTX 950
QuadroM6000 24GB M6000 M5000 M5500M M4000 M2200 M2000 M620
TeslaM60 M40
5.0GeForce GTXGTX 750 Ti GTX 750 NVS 810
QuadroK2200 K1200 K620 M1200 M520 M5000M M4000M M3000M M2000M M1000M K620M M600M M500M

3.2 更新 GPU 驱动

首先使用nvidia-smi,查看版本信息。

1738842761_3t8de2xshq.png1738842760541.png

也可以在控制面板查看版本信息,

1738843024_z6fbiury03.png1738843022904.png

如果没有把 NVIDIA 驱动更新到最新版,则需要在:

Download The Official NVIDIA Drivers | NVIDIA

1738843118_dpi9r7972p.png1738843116764.png

1738843148_9f2p2k3hw9.png1738843147219.png

3.3 安装 cuda

下载CUDA Toolkit:CUDA Toolkit 12.8 Downloads | NVIDIA Developer

1738843258_70wq698zih.png1738843257394.png

3.4 下载 cuDNN

CUDA Deep Neural Network (cuDNN) | NVIDIA Developer

选择与 CUDA 版本兼容的 cuDNN 版本进行下载。

1738844051_v3dd5fziie.png1738844050469.png

  • 安装 cuDNN:
    • Windows:解压下载的 cuDNN 文件,将其中的 binincludelib 文件夹中的文件复制到 CUDA 安装目录对应的文件夹中。
    • Linux:解压下载的 cuDNN 文件,将其中的文件复制到 CUDA 安装目录。

使用nvcc -v查看信息
1738844249_ogzelrjs7l.png1738844248262.png

3.5 配置环境变量

1738844311_i9028z7nu7.png1738844310581.png

CUDA_SDK_PATH = C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.8
CUDA_LIB_PATH = %CUDA_PATH%\lib\x64
CUDA_BIN_PATH = %CUDA_PATH%\bin
CUDA_SDK_BIN_PATH = %CUDA_SDK_PATH%\bin\win64
CUDA_SDK_LIB_PATH = %CUDA_SDK_PATH%\common\lib\x64

环境变量配置完记得重启
而后cmd运行:

cd "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.8\extras\demo_suite"bandwithTest.exe
deviceQuery.exe

第一个运行结果:

1738844501_myic8gw4di.png1738844500442.png

第二个运行结果:

1738844547_selzrhd64b.png1738844545963.png

配置完后,一定要记得重启。

四、测试

首先,我们使用torch测试:

1738847826_dlkkycb0p5.png1738847825643.png

发现可以检测到cuda的存在

其次,我们运行模型,先部署1.5b的蒸馏模型:

docker exec -it ollama 
ollama run deepseek-r1:1.5b # /bye  # 在进入终端聊天界面后,退出界面
ollama ps

1738847966_81cf6x5zy3.png1738847964838.png

可以发现,其GPU100%占用的

而,我们运行7b的蒸馏模型时:

ollama stop deepseek-r1:1.5b 
ollama run deepseek-r1:7b# /bye  # 在进入终端聊天界面后,退出界面
ollama ps

1738848203_4ielr8riy7.png1738848202605.png

发现和原来是一样的,因此我推测,由于7b的模型太大,ollama 会自动调用CPU的资源,GPU没有问题

我们使用nvidia-smi进行GPU资源判断时:

当模型没有被调用时:

1738850112_7dcwooqy9k.png1738850111710.png

当模型被调用时:

1738850315_qlhaglsosi.png1738850314045.png

1738850396_271dvq5hxk.png1738850395088.png

发现 CPU 被调用了 82% ,但是 GPU 被调用了,但是调用的不多,虽然才 31%。

这可能是因为 ollama 模型本身的问题:ollama 的速度还不错,但受限于本地硬件配置。在MacBook、PC和边缘设备上运行小型模型时表现良好,不过遇到超大模型就有些力不从心了。

Ollama则是一个轻量级、易上手的框架,让在本地电脑上运行开源大语言模型变得更加简单。VLLM是一款经过优化的推理引擎,在令牌生成速度和内存管理效率上表现出色,是大规模AI应用的理想之选。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/69208.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基础算法——二维前缀和

二维前缀和 我们先前已经了解了前缀和思想,二维前缀和感觉上就是一维前缀和的进阶,下面 ,我们剖析一下两种前缀和。 一维前缀和 一维前缀和的核心就是这两个公式,二维前缀和也差不多的嘞 下面我们来推理一下二维前缀和 已知&a…

每日Attention学习19——Convolutional Multi-Focal Attention

每日Attention学习19——Convolutional Multi-Focal Attention 模块出处 [ICLR 25 Submission] [link] UltraLightUNet: Rethinking U-shaped Network with Multi-kernel Lightweight Convolutions for Medical Image Segmentation 模块名称 Convolutional Multi-Focal Atte…

2. K8S集群架构及主机准备

本次集群部署主机分布K8S集群主机配置主机静态IP设置主机名解析ipvs管理工具安装及模块加载主机系统升级主机间免密登录配置主机基础配置完后最好做个快照备份 2台负载均衡器 Haproxy高可用keepalived3台k8s master节点5台工作节点(至少2及以上)本次集群部署主机分布 K8S集群主…

游戏引擎学习第89天

回顾 由于一直没有渲染器,终于决定开始动手做一个渲染器,虽然开始时并不确定该如何进行,但一旦开始做,发现这其实是正确的决定。因此,接下来可能会花一到两周的时间来编写渲染器,甚至可能更长时间&#xf…

链式结构二叉树(递归暴力美学)

文章目录 1. 链式结构二叉树1.1 二叉树创建 2. 前中后序遍历2.1 遍历规则2.2 代码实现图文理解 3. 结点个数以及高度等二叉树结点个数正确做法: 4. 层序遍历5. 判断是否完全二叉树 1. 链式结构二叉树 完成了顺序结构二叉树的代码实现,可以知道其底层结构…

Kubernetes 中 BGP 与二层网络的较量:究竟孰轻孰重?

如果你曾搭建过Kubernetes集群,就会知道网络配置是一个很容易让人深陷其中的领域。在负载均衡器、服务通告和IP管理之间,你要同时应对许多变动的因素。对于许多配置而言,使用二层(L2)网络就完全能满足需求。但边界网关协议(BGP)—— 支撑互联网运行的技术 —— 也逐渐出…

Linux提权--John碰撞密码提权

​John the Ripper​(简称 John)是一个常用的密码破解工具,可以通过暴力破解、字典攻击、规则攻击等方式,尝试猜解用户密码。密码的弱度是提权攻击中的一个重要因素,如果某个用户的密码非常简单或是默认密码&#xff0…

大数据学习之Spark分布式计算框架RDD、内核进阶

一.RDD 28.RDD_为什么需要RDD 29.RDD_定义 30.RDD_五大特性总述 31.RDD_五大特性1 32.RDD_五大特性2 33.RDD_五大特性3 34.RDD_五大特性4 35.RDD_五大特性5 36.RDD_五大特性总结 37.RDD_创建概述 38.RDD_并行化创建 演示代码: // 获取当前 RDD 的分区数 Since ( …

[创业之路-286]:《产品开发管理-方法.流程.工具 》-1- IPD两个跨职能团队的组织

IPD(集成产品开发)中的两个重要跨职能组织是IPMT(集成产品管理团队)和PDT(产品开发团队)。 在IPD(集成产品开发)体系中,IRB(投资评审委员会)、IPM…

DeepSeek 提示词之角色扮演的使用技巧

老六哥的小提示:我们可能不会被AI轻易淘汰,但是会被“会使用AI的人”淘汰。 在DeepSeek的官方提示库中,有“角色扮演(自定义人设)”的提示词案例。截图如下: 在“角色扮演”的提示词案例中,其实…

第二个Qt开发实例:在Qt中利用GPIO子系统和sysfs伪文件系统实现按钮(Push Button)点击控制GPIO口(效果为LED2灯的灭和亮)

引言 本文承接博文 https://blog.csdn.net/wenhao_ir/article/details/145420998 里的代码,在那里面代码的基础上添加上利用sysfs伪文件系统实现按钮(Push Button)点击控制GPIO口的代码,进而实现LED2灯的灭和亮。 最终的效果是点击下面的LED按钮实现LED…

登山第十七梯:矩形拟合——无惧噪声

文章目录 一 摘要 二 资源 三 内容 (文章末尾提供源代码) 一 摘要 目前,获取点集的矩形拟合结果的主要方法是计算其最小外包直立矩形或者旋转矩形。这些方法简单、易用,在数据质量良好的情况下能够较好的贴合矩形形状。然而,在数据缺失时,最小外包围盒方法将会…

57. Uboot图形化界面配置

一、Uboot图形化配置方法 1、通过终端配置。 2、进入到uboot的源码根目录下。 3、首先默认配置 make mx6ull_alientek_emmc_defconfig //默认配置 4、输入make menuconfig。打开图形化配置界面。 5、注意,新电脑需要安装ncurses库。sudo apt-get install libncurs…

kalman滤波器C++设计仿真实例第三篇

1. 仿真场景 水面上有条船在做匀速直线航行,航行过程中由于风和浪的影响,会有些随机的干扰,也就是会有些随机的加速度作用在船身上,这个随机加速度的均方差大约是0.1,也就是说方差是0.01。船上搭载GPS设备,…

(2025|ICLR,音频 LLM,蒸馏/ALLD,跨模态学习,语音质量评估,MOS)音频 LLM 可作为描述性语音质量评估器

Audio Large Language Models Can Be Descriptive Speech Quality Evaluators 目录 1. 概述 2. 研究背景与动机 3. 方法 3.1 语音质量评估数据集 3.2 ALLD 对齐策略 4. 实验结果分析 4.1 MOS 评分预测(数值评估) 4.2 迁移能力(在不同…

stm32生成hex文件详解

1.产生的map文件干啥的? 2.组成情况??? 废话少说,直接上代码具体内容况: Component: ARM Compiler 5.06 update 7 (build 960) Tool: armlink [4d3601]Section Cross Referencesstartup_stm32f103xe.o(S…

百度热力图数据获取,原理,处理及论文应用6

目录 0、数据简介0、示例数据1、百度热力图数据日期如何选择1.1、其他实验数据的时间1.2、看日历1.3、看天气 2、百度热力图几天够研究?部分文章统计3、数据原理3.1.1 ** 这个比较重要,后面还会再次出现。核密度的值怎么理解?**3.1.2 Csv->…

[转]Java面试近一个月的面试总结

本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/46753275 前言 打算换个工作,近一个月面试了不少的公司,下面将一些面试经验和思考分享给大家。另外校招也快要开始了,为…

学习threejs,tga格式图片文件贴图

👨‍⚕️ 主页: gis分享者 👨‍⚕️ 感谢各位大佬 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍⚕️ 收录于专栏:threejs gis工程师 文章目录 一、🍀前言1.1 ☘️TGA图片1.2 ☘️THREE.Mesh…

MSPFN 代码复现

1、环境配置 conda create -n MSPFN python3.9 conda activate MSPFN pip install opencv-python pip install tensorflow pip install tqdm pip install matplotlib2、train 2.1 创建数据集 2.1.1 数据集格式 |--rainysamples |--file1: |--file2:|--fi…