DeepSeek本地部署避坑指南:Ollama安装与模型尺寸选择

简介:这份PDF资料面向对大模型感兴趣的技术爱好者与研发人员,聚焦DeepSeek在本地环境下的部署方法与核心训练原理,帮助读者以低成本方式搭建可离线运行的大模型应用。内容从本地部署的三个实操步骤切入,逐步延伸至LLM基础概念、Transformer架构,以及预训练、监督微调与强化学习的训练流程,并重点图解DeepSeek-R1的完整训练过程,包括含R1-Zero的中间推理模型与通用强化学习两项核心创新。资源包共1个PDF文件,约2.64MB,以图文并茂的图解形式呈现,配合大量操作界面截图,便于对照理解部署细节与推理模型的构建逻辑。目前已有2199人学习,适合希望快速上手本地部署、同时想深入理解强化学习驱动推理模型训练思路的读者参考。

1. 本地跑 DeepSeek 这件事,版本选错第一步就卡住

上周帮一个做后端的朋友在旧笔记本上装 DeepSeek,他上来就ollama pull deepseek-r1:7b,结果 8G 内存的机器直接卡到风扇狂转,命令行十分钟没吐出第一个字。这不是模型坏了,是版本和硬件没对上。DeepSeek 本地部署这件事,说穿了就三步:装 Ollama、拉模型、跑对话,但真正让人翻车的是「拉哪个尺寸」。1.5b、7b、8b 这些后缀不是版本号,是参数量,b 代表 billion,1.5b 就是 15 亿参数,7b 是 70 亿。参数量越大推理能力越强,但对内存和显存的要求也水涨船高。普通办公本、没有独显的机器,老老实实从deepseek-r1:1.5b起步,跑通了再考虑往上换。这套方案适合想在自己电脑上离线用大模型、又不想折腾编译环境的人,尤其是数据不能外传的场景。装不好最典型的后果就是:命令敲下去没反应、模型加载到一半被系统杀掉、或者对话界面一直转圈。

2. 装 Ollama 与拉取 DeepSeek-R1:从零到能对话的三步

2.1 为什么用 Ollama 而不是自己编译

本地跑大模型有好几条路,自己用 transformers 加载权重、用 llama.cpp 编译、或者走 Ollama 这类模型管理器。前两种对新手不友好,光是 CUDA 版本、PyTorch 版本、量化格式就能耗掉一整天。Ollama 的思路是把模型下载、量化、推理引擎打包成一个命令行工具,装完之后管理模型就像用 docker 拉镜像一样直接。它内置了量化后的模型文件,不需要你单独去 HuggingFace 下几个 G 的权重再转格式。对于「我就想在本机跟模型聊两句」这个需求,Ollama 是目前踩坑最少的路径。它支持 Windows、macOS、Linux 三个平台,安装包都是下一步下一步,装完在终端里能直接调起来。

2.2 安装 Ollama 并确认命令可用

去 Ollama 官网下载对应系统的安装包,Windows 是.exe,macOS 是.dmg,Linux 用一条脚本。安装过程基本就是点下一步,不需要改路径。装完之后打开命令窗口(Windows 用 cmd 或 PowerShell,macOS 用 Terminal),输入下面这行:

ollama --version

如果能看到版本号输出,说明安装成功。接着输入ollama回车,会列出它支持的所有子命令,大概十来个,常用的就几个:pull拉模型、run跑模型、list看本地已有模型、rm删模型、serve启动后台服务。这一步的意义是确认环境变量已经配好,终端能找到 ollama 这个可执行文件。如果提示'ollama' 不是内部或外部命令,说明安装时没勾选加入 PATH,Windows 下重新跑一遍安装包,或者手动把安装目录加到系统环境变量里。

提示:Linux 下如果用脚本安装,装完可能需要重新登录一次 shell,或者执行source ~/.bashrc,否则当前终端认不到命令。

2.3 拉取 deepseek-r1:1.5b 并进入对话

确认 ollama 可用之后,拉模型就一行命令:

ollama pull deepseek-r1:1.5b

这条命令会从模型仓库把 1.5b 版本的 DeepSeek-R1 下载到本地,下载量大概在 1G 出头。下载速度取决于网络,中途断了重新执行同一条命令会续传。拉完之后用ollama list能看到本地已有的模型列表,确认deepseek-r1:1.5b在列。

接着启动对话:

ollama run deepseek-r1:1.5b

第一次 run 的时候如果模型还没拉,ollama 会自动先 pull 再 run,所以这两步其实可以合并。进入对话界面后,直接输入问题回车就行。DeepSeek-R1 是推理模型,它的回复会先输出一段thinking标签包裹的思考过程,然后才是正式回答。思考过程是模型在「打草稿」,正式回答在 `` 结束标签之后。如果你只想看结果,等它输出完就行,不用打断。

2.4 模型尺寸怎么选:1.5b、7b、8b 的硬件对照

拉模型之前先看自己机器的内存和显存,选错了尺寸就是白等。下面这张表是常见尺寸的大致要求,实际占用会因为量化方式和系统差异有浮动:

模型尺寸参数量内存/显存大致需求适用机器
deepseek-r1:1.5b15 亿2~4G普通办公本、无独显
deepseek-r1:7b70 亿8~10G16G 内存以上、有入门独显
deepseek-r1:8b80 亿10~12G32G 内存、中端显卡
deepseek-r1:14b 及以上140 亿+16G 显存起步专业工作站

我一般会建议先用 1.5b 把流程跑通,确认 ollama 和对话界面都正常,再根据机器配置往上换。换模型不需要重装 ollama,直接ollama pull新尺寸,然后ollama run新名字就行。旧模型不删也不影响,只是占磁盘。

3. 配置与调优:让 DeepSeek 在本地跑得更稳

3.1 环境变量与模型存储路径

Ollama 默认把模型存在系统盘的用户目录下,Windows 是C:\Users\用户名\.ollama\models,macOS 和 Linux 是~/.ollama/models。1.5b 的模型不大,但如果你后面要拉 7b、14b,系统盘很快就会被吃掉几十个 G。改存储路径通过环境变量OLLAMA_MODELS控制:

# Linux / macOS,写入 shell 配置文件 export OLLAMA_MODELS=/data/ollama/models # Windows PowerShell,设置用户级环境变量 [Environment]::SetEnvironmentVariable("OLLAMA_MODELS", "D:\ollama\models", "User")

设置完之后要重启终端,或者重启 ollama 服务,新路径才会生效。已经拉过的模型不会自动搬过去,需要手动把旧目录下的blobs和manifests两个文件夹复制到新位置。这一步很多人会忘,结果换了路径之后ollama list是空的,以为模型丢了,其实是没搬文件。

3.2 后台服务模式与端口调整

ollama run是前台交互模式,关掉终端对话就断了。如果想让模型常驻后台、给其他程序调用,用ollama serve启动服务:

ollama serve

默认监听127.0.0.1:11434,提供 HTTP API。其他程序可以通过这个端口发请求,比如用 curl 测试:

curl http://127.0.0.1:11434/api/generate -d '{ "model": "deepseek-r1:1.5b", "prompt": "用一句话解释什么是Transformer", "stream": false }'

如果 11434 端口被占用,通过OLLAMA_HOST环境变量改端口:

export OLLAMA_HOST=127.0.0.1:11435

改完重启服务。注意OLLAMA_HOST的值要带协议和端口,只写端口号在某些版本上不生效。

3.3 推理参数怎么调:温度、上下文长度、并发

Ollama 支持在 run 的时候传参数,或者在 Modelfile 里固化。常用的几个参数:

# 启动时指定温度和上下文窗口 ollama run deepseek-r1:1.5b --temperature 0.6 --num-ctx 4096

temperature控制输出的随机性,值越低回答越确定,做代码和数学题建议 0.2~0.6,做创意写作可以调到 0.8 以上。num_ctx是上下文窗口大小,默认 2048,调大会增加内存占用。1.5b 模型在 8G 内存的机器上,num_ctx开到 4096 基本是上限,再大就容易触发内存交换,速度断崖式下降。num_predict控制最大生成 token 数,不设的话模型可能一直输出到上下文塞满。

注意:DeepSeek-R1 的思考过程会消耗大量 token,如果num_predict设得太小,可能出现思考没结束就被截断的情况,正式回答根本出不来。

3.4 用 Modelfile 固化一套常用配置

每次 run 都敲一长串参数很烦,可以写一个 Modelfile 把配置存下来:

# 创建自定义模型,基于 deepseek-r1:1.5b ollama create my-deepseek -f ./Modelfile

Modelfile 内容示例:

FROM deepseek-r1:1.5b PARAMETER temperature 0.5 PARAMETER num_ctx 4096 PARAMETER num_predict 2048 SYSTEM "你是一个简洁的技术助手,回答控制在三段以内。"

FROM指定基础模型,PARAMETER是推理参数,SYSTEM是系统提示词。创建完之后ollama run my-deepseek就直接带上这套配置。改配置就改 Modelfile 再 create 一次,同名会覆盖。这个做法在需要固定人设或固定输出格式的场景下很实用,不用每次手动传参。

4. 避坑与排查:装 DeepSeek 最常见的五个翻车现场

4.1 拉模型卡在 pulling 不动

现象是ollama pull执行后进度条长时间不动,或者速度只有几十 KB。原因通常是模型仓库的网络连接不稳定,或者本地 DNS 解析慢。解决方式是先 Ctrl+C 中断,重新执行同一条 pull 命令,ollama 支持断点续传,不会从头下。如果反复卡,检查一下系统代理设置,ollama 会读取HTTP_PROXY和HTTPS_PROXY环境变量,代理配错了反而更慢。另外磁盘空间不足也会导致下载中断,拉之前用df -h或资源管理器确认目标盘有足够空间。

4.2 运行时报 model requires more system memory

现象是ollama run之后报内存不足,或者模型加载到一半进程被杀。原因是选的模型尺寸超过了物理内存。1.5b 在 4G 内存的机器上勉强能跑,7b 至少需要 8G 可用内存。解决办法是换小尺寸模型,或者关掉其他占内存的程序。如果机器有独显但 ollama 没用上,检查显卡驱动和 CUDA 版本,ollama 在 Linux 下需要正确的 NVIDIA 驱动才能走 GPU,否则默认走 CPU,速度会慢很多。

4.3 对话回复乱码或语言混杂

现象是模型输出中英文混在一起,或者出现重复无意义的字符。这在 1.5b 这种小模型上比较常见,参数量小导致语言一致性差。解决方式是在 SYSTEM 提示词里明确指定「请用中文回答」,或者把 temperature 调低到 0.3 以下。如果还是乱,换 7b 版本会明显改善。DeepSeek-R1 的 R1-Zero 阶段本身就有语言混合的问题,官方在通用强化学习阶段做了优化,但小尺寸模型受限于容量,优化效果有限。

4.4 ollama serve 启动后端口连不上

现象是ollama serve显示在运行,但 curl 请求 11434 端口返回 connection refused。原因是OLLAMA_HOST绑定到了127.0.0.1,只监听本地回环,外部机器访问不到。如果只是本机调用没问题,如果要给局域网其他机器用,需要改成0.0.0.0:11434。另外防火墙可能拦了端口,Linux 下用ss -tlnp | grep 11434确认监听状态,Windows 下检查防火墙入站规则。

4.5 模型删不干净导致磁盘占满

现象是ollama rm删了模型,但磁盘空间没释放。原因是 ollama 的模型文件按 blob 存储,多个模型可能共享底层 blob,直接 rm 只删了 manifest,blob 还在。彻底清理用ollama prune,或者手动删OLLAMA_MODELS目录下的blobs文件夹里没有被引用的文件。更稳妥的做法是定期ollama list看哪些模型不用了,先 rm 再 prune。我一般会在拉新模型之前先清一遍,避免磁盘悄悄被吃满。

5. 装完怎么验证:三条命令确认 DeepSeek 真的跑通了

装完之后别急着关终端,走一遍验证流程,确认模型是真的能用,而不是「看起来装上了」。第一条,确认模型在本地列表里:

ollama list

输出里应该有deepseek-r1:1.5b这一行,后面跟着尺寸和修改时间。如果列表是空的,说明 pull 没成功或者模型存到了别的路径。

第二条,用 API 模式发一个请求,不进入交互界面:

curl http://127.0.0.1:11434/api/generate -d '{ "model": "deepseek-r1:1.5b", "prompt": "1+1等于几?只回答数字。", "stream": false }'

返回的 JSON 里response字段应该包含答案。这一步验证的是后台服务和 API 通路,如果你后面要用 Python 或其他程序调用模型,这条命令通了就说明接口没问题。

第三条,进交互模式问一个需要推理的问题,观察思考过程是否正常:

ollama run deepseek-r1:1.5b

输入「一个笼子里有鸡和兔共 10 只,脚共 28 只,鸡兔各几只?」。正常情况会先输出thinking包裹的推理步骤,然后给出答案。如果思考过程完整、答案正确,说明模型加载和推理都正常。如果思考过程被截断,检查num_predict是不是设太小了。

下面这张表是我一般会对照的验证清单:

验证项命令通过标准
模型已下载ollama list列表中有目标模型
API 可用curl 发 generate 请求返回 JSON 含 response
推理正常ollama run问推理题思考过程完整、答案正确
配置生效ollama show 模型名参数与 Modelfile 一致

ollama show deepseek-r1:1.5b能看到模型的参数、模板、系统提示词等信息,用来确认自定义配置有没有生效。如果改了 Modelfile 但 show 出来的还是旧参数,说明 create 的时候没覆盖成功,检查模型名是不是写错了。

从那以后我每次装完新模型,都强制走一遍「list → curl → run 推理题」这三步,不看到思考过程完整输出就不算装完。很多人卡在「命令没报错」就以为好了,结果真用的时候发现模型根本没加载对。希望这套流程能帮你少走点弯路。

本文还有配套的精品资源,点击获取

相关新闻

AI培训不是一门课,而是四条职业轨道的选择题

AI培训不是一门课,而是四条职业轨道的选择题

1. 别急着报班:先拆解“AI培训”这个词到底在指什么很多人点开“AI培训”广告时,脑子里浮现的是同一个画面:一个穿格子衬衫的年轻人,在黑底白字的终端前敲出一行python train.py --modelllm,然后模型精度飙升、工资翻倍…

2026/10/20 18:30:19 阅读更多 →
多模态SCA与全周期协同:中间件开源风险治理实践解析

多模态SCA与全周期协同:中间件开源风险治理实践解析

最近行业中公布了一轮开源安全与风险治理优秀案例评选,某AI安全公司基于“多模态SCA全周期协同”的中间件开源风险治理实践,成功入选了“开源安全及风险治理”类别的典型案例。这不算一个堆了一堆安全工具的“面子工程”,而是把软件成分分析&…

2026/10/20 18:30:19 阅读更多 →
Java实现节假日/周末/工作日全量落库方案

Java实现节假日/周末/工作日全量落库方案

简介:本资源是一份面向Java后端开发者与数据库应用学习者的实用工具型代码包,解决企业级排班系统、考勤管理或日历服务中需动态生成并持久化年度工作日/周末/节假日数据的核心需求。压缩包为7z格式,仅含1个核心Java源文件(SaveYea…

2026/10/20 18:30:19 阅读更多 →

最新新闻

上下文模式深度解析:架构设计、选型逻辑与工程实践

上下文模式深度解析:架构设计、选型逻辑与工程实践

1. 从"上下文模式"说起:一个被低估的架构决策第一次看到"context-mode"这个词,很多人会下意识地把它当成某个框架里的一个配置项,或者某个API的一个参数。但如果你真正在系统设计里摸爬滚打过几年,就会意识到…

2026/10/20 19:10:10 阅读更多 →
电话实现技术三要素:信令、媒体与状态管理

电话实现技术三要素:信令、媒体与状态管理

1. 项目概述:这不是一本“说明书”,而是一份电话系统工程师的实战手记FreeSWITCH权威指南-基础篇-1.2-电话实现技术——这个标题里藏着三个关键信号:FreeSWITCH是核心平台,权威指南意味着它不是零散教程拼凑,而是体系化…

2026/10/20 19:10:10 阅读更多 →
Spring Boot + Vue 3全栈项目新建与联调部署实践指南

Spring Boot + Vue 3全栈项目新建与联调部署实践指南

1. 为什么我把Spring Boot Vue当作个人项目的标准起手式 说实话,第一次用Spring Boot Vue搭项目的时候,我根本没想那么多。后端用Spring Boot因为简历上写着Java,前端用Vue因为教程里都这么配。可真等自己在几个项目里摸爬滚打过之后&…

2026/10/20 19:10:10 阅读更多 →
biliTickerBuy 免费完整教程:B站会员购自动抢票脚本的安装、配置与毫秒级校时实战

biliTickerBuy 免费完整教程:B站会员购自动抢票脚本的安装、配置与毫秒级校时实战

biliTickerBuy 免费完整教程:B站会员购自动抢票脚本的安装、配置与毫秒级校时实战 【免费下载链接】biliTickerBuy b站会员购购票辅助工具 项目地址: https://gitcode.com/GitHub_Trending/bi/biliTickerBuy biliTickerBuy 是一个开源免费的 B站会员购自动抢…

2026/10/20 19:10:10 阅读更多 →
企业微信 API 接口对接踩坑全记录:消息丢失、鉴权失败与高并发应对方案

企业微信 API 接口对接踩坑全记录:消息丢失、鉴权失败与高并发应对方案

直接讲三个我在企微对接里真踩过的坑——消息丢失、鉴权失败、高并发打挂服务,以及最后是怎么修好的。每个坑都带排查思路和落地代码。 坑一:消息"偶尔丢失",其实是重复推送被当新消息 现象:客户说发了三条消息&#…

2026/10/20 19:10:10 阅读更多 →
C++11类功能升级:移动语义与资源管理实战

C++11类功能升级:移动语义与资源管理实战

1. 先从一次编译报错说起:为什么需要这些“新功能”大概两年前,我在某公司接手一个老项目,代码库基于C98标准,其中一个核心类维护着手写的内存缓冲区。当时新增需求要支持从另一个对象“转移”资源,我按C98的老思路写了…

2026/10/20 19:09:07 阅读更多 →

日新闻

CLRC663芯片Pin-to-Pin替代实战:从评估到量产全记录

CLRC663芯片Pin-to-Pin替代实战:从评估到量产全记录

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 1:01:30 阅读更多 →
ESP32舵机控制指南:原理、多路驱动与避坑实战

ESP32舵机控制指南:原理、多路驱动与避坑实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 1:01:30 阅读更多 →
位移法实现一阶低通滤波:单片机ADC采样降噪实战

位移法实现一阶低通滤波:单片机ADC采样降噪实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 1:01:30 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/20 10:02:13 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/19 17:32:41 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/20 2:50:50 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 10:02:08 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 9:50:17 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 9:50:45 阅读更多 →