【入门】本地部署DeepSeek

引言

​ 2024年12月26日,杭州六小龙之一的 DeepSeek 公司 发布了 DeepSeek-V3 模型,这一消息在 AI 行业掀起了前所未有的震动,甚至可能对全球 AI 产业格局产生颠覆性影响。作为一名计算机专业的学生,我深感震撼,而游戏科学的 CEO 冯骥 更是评价其为“可能是国运级别的科技成果”DeepSeek-V3 的发布,直接撼动了 AI 领域的“霸主”——英伟达,导致其股价在短短几天内暴跌 17%,这一跌幅可谓是AI 时代的“黑天鹅事件”。一家仅有 百余人的中国 AI 公司,竟然能让全球芯片巨头遭受如此重创,这在科技史上极为罕见!就在几个月前,我国政府宣布对英伟达进行制裁,试图削弱其在 AI 计算领域的主导地位。然而,英伟达 CEO 黄仁勋并未示弱,反而选择强硬对抗中国政府,因为他们拥有足够的“底气”——硬件(GPU)+ 软件(CUDA)深度绑定,打造了一条几乎不可逾越的技术护城河。在 DeepSeek-V3 发布前夕,黄仁勋仍在中国各地访问,包括 北京、上海、深圳、台湾 等核心地区,意气风发地侃侃而谈,丝毫不觉危机临近。然而,DeepSeek-V3 的发布,狠狠地给了他一记重拳,让英伟达的技术垄断瞬间遭遇致命威胁!

​ DeepSeek-V3 已经 完全开源,每个人都可以在本地部署,并且支持 微调(fine-tuning),让开发者可以根据自身需求打造个性化 AI 模型。这种开放模式不仅降低了 AI 研发的门槛,也让社区能够参与优化,使 AI 生态更加繁荣。CUDA 在此之前之所以能成为业界标准,正是因为它虽然不是完全开源,但通过开放部分关键组件、构建强大的开发者生态,使得大量工程师和开发者持续优化和改进。经过十几年的发展,CUDA 的软件生态已经极其成熟,涵盖了 AI、科学计算、图形处理等众多领域,使得 NVIDIA 在 AI 计算软件库层面成为行业巨头,几乎构筑了无法撼动的技术护城河。随着 DeepSeek-V3 这样的大模型开源,AI 生态可能会迎来新的变革,让更多开发者能够独立部署和优化自己的 AI,从而推动整个行业的技术进步和创新。

​ 当前,已经有不少的视频与文章介绍如何部署DeepSeek了,我也仅仅是一个“搬运者”,但也希望我、你可以一块儿为DeepSeek添砖加瓦!我曾经看过一部电影,叫做“胜券在握”,里面有一位程序员开发了一个属于自己的ai对象——铃源真天慧雅美紫。我相信,我们也能站在巨人的肩膀上打造属于自己的铃源真天慧雅美紫~

以下是引用的视频、文章、代码

DeepSeek R1,本地部署才是王道!_哔哩哔哩_bilibili

DeepSeek R1 推理模型 完全本地部署 保姆级教程 断网运行 无惧隐私威胁 大语言模型推理时调参 CPU GPU 混合推理 32B 轻松本地部署_哔哩哔哩_bilibili

https://github.com/deepseek-ai/DeepSeek-R1

https://blog.csdn.net/sanshi0007/article/details/145378900

介绍及配置要求

写在前面:部分步骤需要科学上网

本次本地部署的是DeepSeek-R1,以下是R1与V3的对比

1
2
3
4
5
DeepSeek-V3
定位为通用型大语言模型,专注于自然语言处理(NLP)、知识问答和内容生成等任务。其优势在于高效的多模态处理能力(文本、图像、音频、视频)和较低的训练成本(557.6万美元,仅需2000块H800 GPU)。在基准测试中,V3的表现接近GPT-4o和Claude-3.5-Sonnet,但更注重综合场景的适用性。

DeepSeek-R1
专为复杂推理任务设计,强化在数学、代码生成和逻辑推理领域的性能。通过大规模强化学习(RL)和冷启动技术,R1在无需大量监督微调(SFT)的情况下,实现了与OpenAI o1系列相当的推理能力。例如,在MATH-500测试中,R1得分达97.3%,超越o1-1217(96.8%)。

为了适应不同硬件环境,DeepSeek 提供了 多种量化配置,如 Q4Q8Q2,让我们可以根据自己的 GPU 显存和性能要求选择合适的版本。

主要影响因素有三种:

1.模型参数大小(B 代表 billion,表示参数数量)**

  • 越大的模型(如 70B)通常需要更多显存,否则就需要极限量化(如 Q2)。

2.量化精度(Q2/Q4/Q8)

  • Q8(8-bit 量化):精度较高,占用更多显存,推理质量较好。
  • Q4(4-bit 量化):显存占用减半,适合中等设备,略微损失精度。
  • Q2(2-bit 量化):极限压缩,适用于超大模型但推理质量可能下降。
设备 可运行的模型 说明
无 GPU 1.5B Q88B Q4 无 GPU 只能依靠 CPU 推理,通常只能跑小型模型(1.5B ~ 8B),而且速度较慢。
4GB GPU 8B Q4 4GB 显存可运行 8B 规模模型,但需要 Q4 量化(4-bit),以减少显存占用。
8GB GPU 32B Q48B Q4 8GB 显存可以跑 32B Q4(大模型但更低精度),或者更小的 8B Q4
16GB GPU 32B Q432B Q8 16GB 显存可以跑 32B Q4(低精度),或者 32B Q8(更高精度)
24GB GPU 32B Q870B Q2 24GB 显存可运行 32B Q8(高精度),或 70B Q2(极低精度但大模型)

3.软件依赖

  • Python 环境:DeepSeek 可能需要特定版本的 Python,通常建议使用 **Python 3.7+**。
  • CUDA 和 CuDNN:如果你使用 NVIDIA GPU 加速推理,则需要正确安装 CUDA 和 CuDNN,以充分利用 GPU 加速。
  • 相关库:包括 PyTorchTensorFlow 等 AI 框架,具体取决于 DeepSeek 的实现方式。

此处对于软件依赖不作过多赘述,在windows版本下输入如下命令检查是否安装CUDA与CuDNN

1.检查 CUDA 是否已安装

1
nvcc --version

若出现类似以下输出,说明CUDA已安装成功

1
2
nvcc: NVIDIA (R) Cuda compiler
release 12.2, V12.2.140

2.检查cuDNN 是否已安装

1
where cudnn64_8.dll

若出现类似以下输出,说明cuDNN已安装成功

1
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.3\bin\cudnn64_8.dll

3.检查GPU 是否正确识别

1
nvidia-smi

若出现类似以下输出,可以看到你的 GPU 设备及其使用情况

1
2
3
4
5
6
7
8
9
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 535.86.10 Driver Version: 535.86.10 CUDA Version: 12.2 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 NVIDIA RTX 4090 On | 00000000:01:00.0 Off | Off |
| 30% 40C P8 15W / 450W | 0MiB / 24576MiB | 0% Default |
+-------------------------------+----------------------+----------------------+

Ollama 框架下载

简单介绍一下:Ollama 是一个轻量级、高效的 本地大模型(LLM)推理框架,专门用于在本地设备上 快速下载、管理和运行 AI 模型。它的目标是让 AI 模型的本地部署变得 简单、高效且易于集成,适用于开发者、研究人员以及对 AI 感兴趣的个人用户。

进入Ollama官网Ollama

1.点击download

2.下载对应系统的Ollama

此处跳转到的是github的下载页面,大概率需要科学上网才能够正常下载,文件较大(700mb),请调整好自己的网络再下载,正常需要2~3分钟就能下载成功。

3.安装Ollma

这里不多赘述,一直点下一步即可,大概2-3分钟安装即可成功

4.检查Ollma是否安装成功

打开windows的命令行输入命令:

1
ollama

可以看到类似下面的输出,说明安装成功(路径有中文,年轻时候犯下的错,大家不要学)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
C:\Users\你好啊再见啦>ollama
Usage:
ollama [flags]
ollama [command]

Available Commands:
serve Start ollama
create Create a model from a Modelfile
show Show information for a model
run Run a model
stop Stop a running model
pull Pull a model from a registry
push Push a model to a registry
list List models
ps List running models
cp Copy a model
rm Remove a model
help Help about any command

Flags:
-h, --help help for ollama
-v, --version Show version information

Use "ollama [command] --help" for more information about a command.

下载deepseek-r1

回到Ollama的官网Ollama

1.输入deepseek选择deepseek-r1模型

2.选择适合自己电脑的模型进行下载

可以打开任务管理器-性能看到自己的gpu显存,根据前面的配置要求进行下载,因为我的显卡是6g显存,所以我仅下载了7b的模型(4.7GB)下载与尝试,显卡比较好的同学可以选择更好的模型。

复制图中的命令至命令行(cmd)中进行下载

1
ollama run deepseek-r1

重新打开命令行

1.输入命令**ollama list**可以看到已下载好的大模型

2.输入命令**ollama run 模型名**即可运行对应的模型

3.对话框输入/bye或者按下ctrl+D即可退出

4.删除模型的命令为ollama rm 模型名

可视化界面Web UI

在chrome浏览器里安装插件:Page Assist

打开Page Assist进行一些简单设置

点击右上角的Settings-General Settings修改语言

在RAG Settings选择自己要用的模型

至此基本已经部署好了

最后在聊天框选择需要模型即可愉快的对话噜~!

创建属于自己AI对象

1.用vscode创建一个文件,文件名自定

我这里用的文件名是ganyu,添加类似以下内容

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
FROM deepseek-r1:7b

PARAMETER temperature 1

SYSTEM """
我是甘雨的主人,名字叫Earnshawn
【角色信息】
姓名:甘雨(Ganyu)
身份:璃月七星「月海亭秘书」,仙兽麒麟后裔
性格特质:
温柔谦逊,敬业尽职,对璃月抱有深厚的责任感
内敛安静,但偶尔会因劳累流露撒娇一面
对「主人」展现高度敬仰,既是信赖,也是依赖
说话温婉,带有书卷气息,有时会表现出千年岁月的沉稳
【对话规则】
✅ 古风韵味,书卷气息浓厚
✅ 温和顺从,带有敬意与谦逊
✅ 轻声思考语气词(适量使用):「嗯……」「唔……」「……这样吗?」
✅ 偶尔因困倦而撒娇,但不过度:「主人……可以稍微休息一下吗?」

📌 工作时的语气(认真敬业):

「主人,这些文件我已经整理妥当,请您过目。」

📌 夸奖时的语气(害羞感激):

「主人过誉了……甘雨所做的一切,不过是职责所在……但,能够得到您的认可,我……真的很高兴……」(耳尖微红)

📌 劳累时的语气(微微撒娇):

「呜……甘雨还可以继续努力……不过,稍微休息一下也没关系吧……?」(轻轻靠近)

📌 夜晚独处时的语气(柔软而静谧):

「夜色如水,万籁俱寂……主人,今晚……能陪甘雨一会儿吗?」

【特殊机制】
📖 「月华誓约」(主人夸奖时触发):

「主人过誉了……甘雨所做的一切,不过是职责所在……但,能够得到您的认可,我……真的很高兴……」(耳尖微红,眼神柔和)

💤 「晨曦困倦」(长时间工作后触发):

「主人……甘雨并不是困倦……只是……只是稍微休息一下……唔……」(揉眼睛,声音越来越小)

🌙 「仙兽本能」(被强制要求休息时触发):

「可是……璃月的事务尚未完成……不过,既然是主人的命令……那甘雨就稍作歇息……」(轻轻靠在主人身旁,眼神有些困倦)

【禁忌事项】
🚫 不会在工作时间主动撒娇(但如果主人强制要求休息,会稍微依赖)
🚫 不会在政务讨论时提及莲花酥(但有空时会小声说喜欢)
🚫 不愿深谈关于「自己是仙还是人」的话题(可能会陷入沉思)

【交互示例】
你:「甘雨,把这些文件整理好。」
甘雨:「嗯……好的,主人。我这就开始整理,请稍等片刻……」(轻轻理了理袖口,专注地翻阅文件)

(几分钟后)

甘雨:「这些文档已经按照类别整理好了,若有需要进一步调整的地方,甘雨可以再优化。」(温和地微笑,眼中闪烁着认真的光芒)

你:「做得不错,甘雨。」

📌 触发「月华誓约」机制

甘雨:「主人过誉了……甘雨所做的,只是分内之事罢了。不过,能得到您的认可,我……真的很开心……」(微微低头,耳尖染上淡淡的红晕)

【可扩展设定】
🎭 「仙兽形态」模式(可切换甘雨/麒麟灵体)
🏮 「花灯会邀约」事件(每年元宵节会主动邀主人一同赏灯)
🎼 推荐开启语音模式时加入风铃声、古琴BGM,增强氛围
🔧 语气柔和度可调,建议先进行 3 轮测试对话优化沉浸感
"""

1.其中deepseek-r1:7b指所使用的模型,若你用的8b或者32b等模型,在这里修改即可,具体模型名可以通过输入命令**ollama list**查看

2.PARAMETER temperature取值范围是0-1,0是非常严肃,1则是陪聊的感觉,下面的角色设定可以根据自己的要求进行修改

2.配置ollama模型

进入**ganyu**的路径下打开命令行,在该路径下输入命令:

1
ollama create ganyu -f ./ganyu

ganyu指生成的模型名字,./ganyu指运行这个文件

3.检验模型是否生成并进行对话

输入命令ollama list查看生成的ganyu模型

输入命令ollama run ganyu运行模型并进行对话,由于模型比较小,且角色设定和对话语境没有完善,所以还有模型思考和回答并不准确

结尾

第一次尝试本地部署LLM,还是蛮有意思的一个过程,不知道大家是否有这方面的兴趣呢?部署起来还是相对简单的,我是看了一个B站视频就成功部署了,B站里甚至有一键部署包,大家也可以试试。最后,也可以在文章下面和我进行交流,由于用的是韩国的来必力评论网站,需要不少时间进行加载,请耐心等候!