前言

各位朋友们是否曾因DeepSeek平台的"系统繁忙,请稍候"提示而苦恼?这种反复出现的访问障碍,反而点燃了众多开发者自主搭建系统的热情。当动辄上百GB的DeepSeek R1 671B完整版模型横空出世时,普通用户往往因存储压力而止步——毕竟主流家用电脑的存储空间根本难以承载如此庞大的数据。

让我们开启创新思维!通过组合多台性能稳定的二手硬件设备,居然能在常规办公主机上实现大模型的本地化部署。更令人振奋的是,这套创新方案的总预算可压缩到万元以内!经过实测验证,该架构可实现2.18 tokens/s的运算效率,其成本效益比堪称行业标杆。现在就让我们共同探索这个"大众化"部署方案的实现路径!!

QQ20250211-191422

【视频演示】

挑战4张2080Ti22G纯本地部署Deepseek-R1 671B满血版大模型速度可达2.53tokens/s

1. 硬件配置

服务器:技嘉X99

CPU:单路E5-2673v4

显卡:2080Ti 22G*4

内存:512G

机箱:工作站全塔机箱

电源:1200W

image-20250218112655164

2. 软件配置

操作系统:Ubuntu 22.04.5

本地大模型运行工具:Ollama

curl -fsSL https://ollama.com/install.sh | sh

大模型:DeepSeek R1 671B满血量化版 404GB

ollama run deepseek-r1:671b

3. 调优配置

如果按默认安装Ollama会报内存溢出错误,这里配置了几个调优参数,可以使得显卡不再内存溢出,会使用内存当显存,同时因为是4张显卡启动,所以在开机初始化时,加了延迟10秒启动Ollama,这样会让4张显卡启动正常后,再加载Ollama。

ExecStartPre=sleep 10
Environment="OLLAMA_HOST=0.0.0.0"
Environment="GGML_CUDA_ENABLE_UNIFIED_MEMORY=1"

image-20250218113229495

4. 实际运行效果

首先ssh登录到服务器后,查看Ollama当前环境所有大模型列表:

ollama list

image-20250218112753842

可以看到,当前已经下载好的deepseek-r1:671b满血全量模型,大小 404GB

然后运行Deepseek R1 671B:

ollama run deepseek-r1:671b

进入运行画面后,设置输出明细信息:/set verbose

image-20250218112946416

这里加载可能需要一些时间,加载完成后进行提问,即能看到实际运行的速率了:

QQ20250211-191422

5. 安装Dify服务

如果想要在网页中与Deepseek大模型交互,我们可以使用Docker来本地部署Dify服务来实现,首先需要安装Docker:

sudo curl -fsSL https://gitee.com/tech-shrimp/docker_installer/releases/download/latest/linux.sh | bash -s docker --mirror Aliyun

然后本地部署Dify:

克隆 Dify 源代码至本地环境:

git clone https://github.com/langgenius/dify.git

环境配置:

cd dify/docker  #进入 Dify 源代码的 Docker 目录
cp .env.example .env  #复制环境配置文件

启动容器:

sudo docker compose up -d

Dify 接入Ollama:

进入Dify主界面,点击设置—模型供应商—Ollama,添加模型名称,基础URL,支持Vision保存。

7cfcff463b949cc043836214a500cd1.png

image-20250219163910801

回到主页面当中,点击创建空白应用,选择deepseek-r1:671b模型,在文本框中编辑文字即可进行对话。

image-20250219162424420

6.安装内网穿透远程访问

如果想实现其他用户跨网络环境,远程访问本地部署的Deepseek R1 671B,可以通过安装cpolar内网穿透工具实现。

sudo curl https://get.cpolar.sh | sh

安装完成后,执行下方命令查看cpolar服务状态:(如图所示即为正常启动)

sudo systemctl status cpolar

img

Cpolar安装和成功启动服务后,在浏览器上输入Ubuntu主机IP加9200端口即:【http://localhost:9200】访问Cpolar管理界面,使用Cpolar账号登录后即可看到配置界面:

点击左侧仪表盘的隧道管理——创建隧道:

  • 隧道名称:可自定义,本例使用了: dify 注意不要与已有的隧道名称重复
  • 协议:http
  • 本地地址:80
  • 域名类型:随机域名
  • 地区:选择China Top

点击创建

e236629c30c2161232c1655493d22ad.png

创建成功后,打开左侧在线隧道列表,可以看到刚刚通过创建隧道生成了两个公网地址,接下来就可以在其他电脑(异地)上,使用任意一个网址在浏览器中访问即可。

成功实现使用公网地址异地远程访问本地部署的Dify在网页中与Deepseek R1 671B聊天了!

bb5906f2d50520ec228aa78b1b8b859.png

为了方便演示,我们在上边的操作过程中使用了cpolar生成的公网地址隧道,其公网地址是随机生成的。这种随机地址的优势在于建立速度快,可以立即使用,然而,它的缺点是网址是随机生成,这个地址在24小时内会发生随机变化,更适合于临时使用。

如果有长期远程访问本地 Dify开发应用平台或者其他本地部署的服务的需求,但又不想每天重新配置公网地址,还想地址好看又好记,那我推荐大家选择使用固定的二级子域名方式来远程访问,带宽会更快,使用cpolar在其他用途还可以保留多个子域名,支持多个cpolar在线进程。

配置固定Dify公网地址

我们可以为Dify配置二级子域名,该地址为固定地址,不会随机变化【ps:cpolar.cn已备案】

注意需要将cpolar套餐升级至基础套餐或以上,且每个套餐对应的带宽不一样。

登录cpolar官网,点击左侧的预留,选择保留二级子域名,地区选择china vip,然后设置一个二级子域名名称,填写备注信息,点击保留。

fe72be4b9c350c2fb34cdfb88e49320.png

然后登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道:dify,点击右侧的编辑

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名
  • Sub Domain:填写保留成功的二级子域名
  • 地区: China VIP

点击更新

463706456a7806bb596036ec151044a.png

更新完成后,打开在线隧道列表,此时可以看到随机的公网地址已经发生变化,地址名称也变成了保留和固定的二级子域名名称。

82274f0c737fed53d9b60a375935c82.png

最后,我们使用固定的公网地址访问 Dify 界面可以看到访问成功,这样一个永久不会变化的网址就设置好了。

5315f47a37dae1b8a7663b1d1d64ba6.png

接下来就可以随时随地进行cpolar生成的公网地址来远程使用本地部署的Dify与deepseek满血大模型聊天了,你也可以把分享这个固定的公网地址,方便团队协作,同时也大大提高了工作效率!自己用的话,无需云服务器,还可以实现异地其他设备登录!

总结

本次技术探索的核心创新在于,通过整合早期主流硬件设备成功搭建了DeepSeek完整模型的本地部署系统。运用cpolar网络穿透技术不仅实现了外网访问功能,更开创了跨地域协同开发的新模式。该方案的显著优势体现在:既避免了重复建设的资源浪费,又解决了云服务拥堵问题,特别适合中小团队的技术实践需求。

当前研发重点聚焦于三大优化维度:提升token处理速度、优化硬件资源配置比例以及完善系统稳定性。后续迭代版本预计将在成本控制与性能表现上取得突破性进展。诚邀技术爱好者通过互动社区参与讨论,目前已开通专属技术交流群组,针对部署过程中遇到的个性化难题,我将提供定制化解决方案。让我们共同推进大模型本地化部署的技术普及与应用创新!

Logo

欢迎加入DeepSeek 技术社区。在这里,你可以找到志同道合的朋友,共同探索AI技术的奥秘。

更多推荐