很多人第一次跑 ollama pull 时,进度条能挂半小时不动,或者走到某一步直接超时。这不一定是你家网的问题,更多是默认拉取源、DNS 解析和并发策略叠加的结果。这篇不讲原理大道理,只按「先量、再换源、后兜底」的顺序,把能自己动手做的几步列清楚,让你在十分钟内判断卡在哪一环,并选一条适合自己网络的加速方式。
很多人第一次跑 ollama pull,进度条能挂半小时不动,或者走到某一步直接超时。这不一定是你家网差,更多是默认拉取源、DNS 解析和并发策略叠加出来的结果。别急着到处找偏方,按「先量、再换源、后兜底」的顺序走一遍,十分钟就能判断卡在哪一环。
这篇只讲能自己动手做的几步:怎么量基线、换源时要注意什么、代理和并发怎么调、实在不行怎么离线搬。每一步都配了判断标准,改完一项复测一次,别一口气全改,不然出问题你也不知道是哪项惹的祸。
先分清卡在哪:是 DNS、握手还是传输
同样是「慢」,卡点位置不同,解法完全不同。拉取刚开始就卡住,多半是域名解析或握手环节;进度条动起来但速度上不去,才是传输本身的问题。先看清楚它卡在哪一段,比盲目换源有效得多。
| 表现 | 大概率卡在 | 先做什么 |
|---|---|---|
| 命令敲下去很久没任何输出 | DNS 解析或连接建立 | 换 DNS、确认终端能访问外网 |
| 有输出但速度长期很低 | 传输带宽或源站限速 | 测基线带宽,考虑换镜像源 |
| 走一段后直接超时中断 | 链路不稳定或并发抢占 | 降低并发,一次只拉一个 |
| 进度条忽快忽慢反复 | 本机网络被其他程序占用 | 关掉在下载的其他任务再试 |
- 先用一次完整拉取观察卡点位置,别凭感觉说是网络问题
- 测一下你的网络基线延迟和下载带宽,拿一个不知道底数的网去判断软件快慢没意义,站内 /tools/speed-test 可以量出这条线路的基准
- 确认终端有没有被本地代理软件接管,很多加速失败的根因是浏览器走了代理、命令行没走,两边结果对不上
- 什么情况不适用:如果你拉的是几十 GB 的大模型,慢本身属于正常,别急着改配置
换镜像源:成本最低、优先级最高的一步
如果确认卡在传输环节,换源是性价比最高的一步,改的是拉取入口,不动你本地的其他配置。但要留意镜像侧的标签命名可能和默认源不一样,照抄默认源的名字经常拉不到东西。
- 查目标模型是否被镜像覆盖先看该模型在镜像侧有没有对应仓库和标签,覆盖范围各家差很多,有的只同步热门模型。到站内 /models 对照你目标模型的规格,确认要拉的量化档位。
- 按镜像侧的实际标签拉取标签命名可能和默认源不同,照抄默认源名字容易报找不到。拉到后核对模型大小和量化档位是否和预期一致,镜像只改入口,不改模型本身的精度。
- 多个镜像轮流试一个源慢不代表所有源都慢,不同镜像的同步范围差别很大。每次只换一个变量,换完复测耗时,把结果记下来。
什么情况不适用:企业内网如果统一走网关出口,个人改源可能被策略覆盖,先问网络管理员再动手,不然改半天不生效还以为是源的问题。
代理与并发:把等待时间压下来的调参项
这一节的思路是减少无谓的等待。代理这块最常见的坑是命令行和图形界面走了两套网络出口,一个通一个不通;并发这块最常见的误区是以为同时拉好几个会更快,实际往往是互相抢带宽。
- 让命令行和图形界面走同一套网络出口,改完重启 ollama 服务再试,不然配置不生效
- 并发拉取不是越多越快,同时开几个大模型往往整体更慢,建议一次只拉一个,拉完再拉下一个
- 把拉取安排在空闲时段,办公网和家宽在不同时段的实际吞吐差别可能很大
- 改完一项就复测一次,别一次改五项,后面不知道哪项起作用
- 什么情况不适用:公司网络限制多的时候,先确认改动是否违反内部上网策略,别为了提速度踩了红线
兜底方案:离线搬运与内网分发
如果换源和代理都压不下来,离线搬运是最稳的兜底。核心是在一台能正常下载的机器上先拉好,再把模型目录整体拷到目标机器。前提是两边 ollama 版本和模型存储路径要对得上。
- 在通畅的机器上拉好模型找一台网络正常的机器完整拉取,拉完用模型列表命令确认已就位,别只看文件在不在。
- 整体拷贝模型目录把模型存储目录整体拷到目标机器,注意两边路径要一致,路径不一致会认不出来。
- 迁移后验证在目标机器上先用模型列表确认能识别,再跑一次对话验证。别只看文件大小对不对,大小对不代表能跑。
- 内网多台机器批量分发内网有多台机器要同一模型时,一台准备好后做内网分发,比每台各自去拉省事得多,也更可控。
什么情况不适用:跨大版本升级的 ollama 可能读不了旧目录,升级前后最好各自独立处理,别混着来。
改完怎么确认真的快了,以及出问题怎么退回去
改完别只看某一次的峰值速度,那说明不了问题。要看的是同样的模型拉取总耗时有没有下降、还会不会中途断。为了能退回去,改过的东西必须留痕迹。
- 用同一个模型做前后对比,看总耗时和是否中断,而不是单次峰值速度
- 把改过的环境变量、源地址、代理配置记在一个文件里,出问题逐项注释回去排查
- 换源后如果出现校验失败或模型跑不起来,先退回原始配置确认模型本身没问题,再判断是不是镜像内容有差异
- 长期做法是把常用模型提前拉好、定期更新,比临时救火省心
常见问题
ollama pull 卡住不动,是网络问题还是模型太大?
先看总大小再判断。如果目标模型体积本身就很大,长时间传输属于正常;如果进度条从零开始就没有任何变化,或者反复停在连接阶段,那基本是网络入口的问题,优先按换源或代理方向排查,而不是等下去。
换成镜像源之后模型效果会变差吗?
镜像只影响文件从哪里下载,不改变模型权重本身。只要标签对应的是同一个模型和同一个量化档位,效果就该一致。要注意的是别把不同量化档位的标签当成同一个来用,那样输出质量确实会有差别。
公司内网完全不让连外网,还有办法吗?
走离线搬运。在一台能联网的机器上完成拉取,再把模型目录整体复制到内网机器,保持 ollama 版本和存储路径一致即可。多台机器需要同一模型时,先在一台准备再用内网分发,比逐台重拉高效。