当前位置: 首页 > article >正文

本地部署 DeepSeek-R1

本地部署 DeepSeek-R1

一、前言

最近 DeepSeek 很出圈啊,很久没分享过内容了,趁着今年过年有时间,跟大家分享一下如何本地部署 DeepSeek-R1。

那么,本地部署 DeepSeek-R1 适合什么样的人?

  • 开发者,希望借助本地部署的模型灵活做些事情的 🧑‍💻
  • 希望数据保密,不想数据通过网络上传的 🔒
  • 我不管,我就是想本地部署玩玩的 🫡

本地部署不适合什么样的人?

  • 只是简单用一下聊天功能的
  • 数据不敏感的,可以放心与在线服务交互、且没有特殊需求的。

总结一下:

不想要折腾的人,直接使用在线的服务就可以了。在线服务快捷方便,不费心思不动脑,现在还是免费的,就算以后推出会员版本的话,直接开会员就行了,本地跑模型不也要掏电费的嘛,不用在乎这点小钱。

另外,消费级个人电脑肯定也没法部署太大的模型,跑一跑蒸馏出来的 32b 或者 70b 模型基本就到头了,而线上的模型动辄数百B参数起步,效果必然也比小模型好很多。如果现在劝退你了,你就可以不用往后看啦~

如果你还是想要折腾,那就来吧,开始喂饭!

二、安装 Ollama

本地部署开源大模型,目前常用的选择有两种,Ollama​ 和 LM Studio​。其中 Ollama​ 使用起来更轻量便捷,LM Studio​ 相对笨重一些、但功能更加强大。

我们只是想把开源的 DeepSeek-R1 蒸馏模型在本地部署运行,那直接选择更简单的 Ollama​ 即可,如果你有其他需求,可以考虑 LM Studio​。

官网地址:

  • Ollama​ : https://ollama.com/​
  • LM Studio​: https://lmstudio.ai/​

不论是 Ollama​ 还是 LM Studio​,都可以直接从官网下载,然后直接安装即可。两者都支持 macOS​、Windows​、Linux​ 全平台。

1、安装

比如这是 Ollama​ 的官网,下载安装即可:
在这里插入图片描述
安装完成后,运行 Ollama​,然后我们打开终端(Windows​ 下面就是 cmd​)。

输入:

ollama -h

输出:

Large language model runner

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.

如果正常出现了使用说明,并且没有报错的话,那么恭喜你,安装已经完成了。

2、额外设置

模型下载目录调整 (macOS​ 和 Linux​ 用户可跳过)

如果你使用的是 Windows​,此时 Ollama​ 默认会将模型保存在 C​ 盘下,完整路径为 C:\Users\<用户名>\.ollama\models​。

如果你想调整,可以通过修改 Windows​ 环境变量的方式实现,添加一个名为 OLLAMA_MODELS​ 的系统环境变量,变量值为你期望的模型保存路径,如 D:\Ollama\OllamaModels​。

如果你不知道该怎么修改环境变量,参考这个路径:

右键此电脑​或计算机​ -> 属性​ -> 高级系统设置​ -> 高级​选项卡 -> 环境变量​ -> 系统环境变量​下的新建​按钮,然后输入变量名和变量值即可。

远程连接设置(不需要可跳过)

设想这两种场景:

  • 你想要在电脑上部署 DeepSeek-R1​,然后在手机、平板或者其他地方调用电脑上部署的大模型服务
  • 你有一台高性能但不常用的台式机,以及一台办公常用但性能相对较弱的笔记本,你想要在台式机上部署运行大模型,然后在笔记本或者其他设备上使用它

默认情况下 Ollama​ 仅在本地运行,不对外提供服务。如果你属于上面说的两种场景之一,我们需要先设置 Ollama​ 的远程连接服务。

分不同系统讨论具体的设置方法,更多的细节请参考 Chatbox​ 编写的帮助文档:

如何将 Chatbox 连接到远程 Ollama 服务:逐步指南(https://chatboxai.app/zh/help-center/connect-chatbox-remote-ollama-service-guide)

macOS:

打开终端,输入:

launchctl setenv OLLAMA_HOST "0.0.0.0"
launchctl setenv OLLAMA_ORIGINS "*"

重启 Ollama​。

Windows:

也是通过修改环境变量的方式实现,新建两个环境变量:

  • 变量名:OLLAMA_HOST​ ,变量值 0.0.0.0
  • 变量名:OLLAMA_ORIGINS​,变量值 *

重启 Ollama​。

Linux:

打开终端,调用 systemctl edit ollama.service​ 编辑 systemd 服务配置。

在打开的配置文件中,[Service]​ 部分下添加两行环境变量信息:

[Service]
Environment="OLLAMA_HOST=0.0.0.0"
Environment="OLLAMA_ORIGINS=*"

保存并退出,然后在终端中执行命令重新加载 systemd​:

systemctl daemon-reload
systemctl restart ollama

重启 Ollama​。

防火墙

Ollama​ 默认使用 11434​ 端口,如果你的防火墙有入站的端口拦截,请开放 11434​ 端口。

3、选择并下载模型

Ollama​ 的官网上,可以找到目前 Ollama​ 支持的模型列表,地址为 https://ollama.com/search

在列表页面中,我们能够找到 deepseek-r1​ 模型,并看到它支持 1.5b​/7b​/8b​/14b​/32b​/70b​/671b​ 共七种不同规格的模型。
在这里插入图片描述

在详情页中,可以看到不同规格模型的参数量大小:
在这里插入图片描述

接下来,我们需要根据自己的电脑参数选择合适的模型规格,这个就看自己电脑情况了,每个人不一样,电脑配置更高,就可以尝试跑更大的模型。一个最简单的方法是,先看你显卡的显存大小,比如你显卡显存是 24GB​,那你就不用考虑参数文件大于 24GB​ 的模型了,比如 70b​ 和 671b​。然后在剩下的模型中,优先选择参数量更大的,如果跑不起来、或者运行缓慢,再逐步降级到更次一级的模型去,直到选择到合适的模型。

不过 671b​ 这个,真的是家用机完全不用想了,404GB​ 太恐怖了…

值得一提的是,Ollama​ 现在已经支持 AMD​ 的显卡了(不过只支持了部分,如果你的显卡不在支持列表中,可能需要做一些额外修改),用 AMD​ 显卡的小伙伴们也可以畅享 DeepSeek-R1​ 了。

我有一台 m1 pro​ 芯片的 32GB​ 内存的 macbook pro​,测试下来跑 deepseek-r1:8b​ 比较流畅,而 deepseek-r1:14b​ 能跑但是运行缓慢,一秒蹦几个字…

还有一台 7900XTX​ 显卡的台式机,测试下来可以流畅运行 deepseek-r1:32b​。

选择好想要运行的模型,就可以开始实际操作了,我以在 macOS​ 上运行 deepseek-r1:8b​ 为例演示下载和运行的过程,其他平台/模型的操作方式基本一致。

打开终端:

输入:

ollama run deepseek-r1:8b

输出:

pulling manifest
pulling 6340dc3229b0...  11% ▕███████████████                                                                                                                                ▏ 526 MB/4.9 GB   58 MB/s   1m15s

这种情况就是开始下载了,静等下载完成。

下载完成后就自动进入到命令行交互了:
在这里插入图片描述

你可以通过命令行直接和模型进行交互,比如我问它,2025年是闰年吗?

回答:

根据目前的了解,2024年是闰年,因此2025年不是闰年。闰年的判断标准是:能被4整除但不能被100整除,或者能被400整除。2025年不符合这些条件,所以它不是闰年。

如果问 deepseek-r1:14b​ 同样的问题,回答是:

2025年不是闰年。

闰年的判断规则如下:

  1. 普通年能被4整除的为闰年,但世纪年(即能被100整除的年份)必须能被400整除才是闰年。

  2. 例如:

    • 2008年是闰年(普通年且能被4整除)。
    • 1900年不是闰年(世纪年但不能被400整除)。
    • 2000年是闰年(世纪年且能被400整除)。

计算过程:

  • 2025 ÷ 4 = 506.25,有余数。
  • 因此,2025年不是闰年。

结论:
2025年不是闰年。

能够看到,对于简单的问题,不论是 8b​ 还是 14b​,都回答得挺好的。

三、安装 Chatbox

如果只是在命令行中和大模型交互,那目前所有的工作都已经做完了。但在命令行中进行交互,毕竟还是不太方便,我们可能更想要通过界面进行交互,并且赋予大模型额外的功能。

此类工具这里我也推荐两个,一个是 Chatbox​,另一个是 AnythingLLM​。两者的区别其实也和前面提到的 Ollama​ 和 LM Studio​ 差不多, Chatbox​ 更轻量便捷,适合个人日常使用,AnythingLLM​ 稍微笨重一些但功能更强大,适合企业端构建知识库、分用户管理等场景。

两者的官网我也放在下方:

  • Chatbox​ : https://chatboxai.app/zh​
  • AnythingLLM​ : https://anythingllm.com/​

这里我们依然选择更为简单便捷的 Chatbox​ 进行演示,如果有其他需求,可以自行安装 AnythingLLM​。

Chatbox​ 直接从官网下载就可以了,支持 Windows​ / macOS​ / Android​ / iOS​ / Linux​ 以及网页端。

打开 Chatbox​ 之后,可以从左下角找到 ⚙️ 设置​ ,打开设置页面,模型提供方​ 选择 OLLAMA API​,API 域名​ 如果是本机部署的就填 http://127.0.0.1:11434​ ,如果是部署在其他机器上的就填写http://机器ip:11434​ , 填写完成后在 模型​ 选择框内就能够看到该机器上已经下载好的模型,选择你要使用的,点击保存即可。

比如我这里是部署在同局域网下的台式机上,ip 为 192.168.31.252​,使用的模型是 deepseek-r1:32b​。
在这里插入图片描述

至此,我们就完成了所有设置,接下来正常使用就可以了。比如我们在 Chatbox​ 的对话中选择 Just chat​,然后和模型对话。

问:”请使用 Python 实现最小生成树算法“。

思考链路:
在这里插入图片描述

正式答复:
在这里插入图片描述

内容比较多,我就不完整截取了,大家可以自行测试。

Chatbox​ 里面还有一些基于提示词和角色设定的搭档工具,比如翻译助手、夸夸机之类的,我就不一一演示了,有兴趣也可以自行探索。

值得一提的是里面有个叫 Artifact Preview​ 的搭档工具挺有意思的,你可以跟它提需求让它写 HTML​ 页面,写完之后可以预览效果,并根据你给出的反馈进一步迭代页面,我觉得还挺有意思的。

输入

一个看起来比较有科技感的页面,正中间有几个字 “DeepSeek”

deepseek-r1:32b 写出的页面
在这里插入图片描述

背景中的三个光圈还是有动画的,会规律性地放大缩小周期运动,我没有截取动态图片。

四、总结

提供两个版本的总结, deepseek-r1:32b​ 的和我的。

deepseek-r1:32b

通过本文的介绍,我们详细探讨了如何本地部署并配置Ollama模型,以及如何在Chatbox或其他交互界面中实现高效的对话交互。整个过程涵盖了从环境准备、工具安装到参数调整和优化的完整流程,并针对实际应用中可能遇到的问题提供了相应的解决方案。

本地化部署Ollama不仅能够显著提升响应速度和性能表现,还为用户带来了更高的数据控制权和隐私安全性。通过合理选择模型大小、调优配置参数以及充分利用硬件资源,我们可以充分发挥大语言模型的强大能力,满足多样化的应用场景需求。

未来,在AI技术不断进步的背景下,本地化部署和优化将成为更多开发者和用户的关注焦点。希望本文能够为读者提供有价值的参考,帮助大家更好地理解和实践Ollama模型的本地化应用,并在此基础上进一步探索和创新。

emmm…它这个总结我部分认可吧,有些小毛病,但整体看起来也没啥大问题。

没什么好说的了,深度求索公司这波操作确实厉害,真真正正实现了破圈的现象级热点,很强。愿中国科技腾飞,愿华夏人人如龙吧!

🤖 对了,最后再强调一句,如果真的不是有什么硬需求的话,真的还是别折腾了,老老实实去用线上端或者API吧,本地部署的性能是不可能追上线上端的~


http://www.kler.cn/a/528475.html

相关文章:

  • 高速稳定,功能强大的免费下载工具!!
  • STM32 TIM定时器配置
  • android Camera 的进化
  • Redis代金卷(优惠卷)秒杀案例-单应用版
  • 计算机组成原理——数据运算与运算器(二)
  • 【Leetcode 每日一题】541. 反转字符串 II
  • 面试问题知识
  • 数据库优化:提升性能的关键策略
  • numpy 中的各种用法(笔记向)
  • 【Docker】dockerfile识别当前构建的镜像平台
  • QT知识点复习
  • OpenCV 图像旋转
  • 925.长按键入
  • 吴恩达深度学习——优化神经网络
  • php的使用及 phpstorm环境部署
  • 设计模式学习(二)
  • Airflow:深入理解Apache Airflow Task
  • TDengine:no taos in java.library.path
  • 磐维数据库PanWeiDB2.0集群部署安装
  • ArkTS编程规范
  • 大白话讲清楚embedding原理
  • 高速稳定,功能强大的免费下载工具!!
  • Java小白入门教程:HashMap
  • pandas分组
  • Git图形化工具【lazygit】
  • DeepSeek的提示词使用说明