这个开源项目厉害了:一键部署DeepSeek R1!

发布于 2025-2-18 11:50
浏览
0收藏

最近在折腾 DeepSeek R1 的私有部署,发现不少开发者都遇到了类似的困扰。明明按照文档一步步来,却总是会碰到这样那样的问题 - 分片下载老是断,模型合并偶尔出错,环境配置更是让人头大。要是再遇到多机分布式、高并发或者国产芯片这些场景,那就更不好处理了。

正好最近看到一个挺有意思的开源项目 GPUStack (https://github.com/gpustack/gpustack/)。它用 Apache 协议开源,主要就是为了解决 DeepSeek R1 这类大模型的部署问题。试用下来体验还不错,分享给大家~

  • 支持 Windows、Linux、macOS,基本主流平台都能跑
  • 会自动处理资源分配,多机协同计算也不在话下
  • 硬件支持很全面,从 NVIDIA、AMD、Mac 到国产的昇腾、海光、摩尔线程都能用

说到底,DeepSeek R1 的部署之所以麻烦,主要还是因为它太"重"了 - 671B 的参数量即便量化后也不小。这就带来了几个实际问题:

  • 单机资源往往不够用
  • 量化后的模型依然很吃配置
  • 不同硬件平台的算力不好统一调度

GPUStack 的思路是通过分布式推理来解决这些问题。它能自动协调多台机器的资源,让 DeepSeek R1 在各种硬件环境下都能稳定运行。

下面我们就来看看它具体是怎么工作的,以及在实际场景中该如何使用。

桌面场景

单机运行小参数量模型

在 Windows 和 macOS 桌面设备上,单机运行 DeepSeek R1 1.5B ~ 14B 等小参数模型。如果显存不足,GPUStack 也支持将部分模型权重加载到内存,实现 GPU & CPU 混合推理,确保在有限硬件资源下的运行。

这个开源项目厉害了:一键部署DeepSeek R1!-AI.x社区

resources-desktop

这个开源项目厉害了:一键部署DeepSeek R1!-AI.x社区

models-desktop

分布式推理运行大参数量模型

单机无法满足模型运行需求时,GPUStack 支持跨主机分布式推理。例如:

多机分布式推理

  • 使用一台 Mac Studio 可以运行 Unsloth最低动态量化(1.58-bit)DeekSeek R1 671B模型,更高的量化和动态量化版本可以通过分布式推理功能,使用两台 Mac Studio 分布式运行。还可以灵活多卡切分比例和满足更多的场景需求,例如更多的分布式节点和更大的上下文设置。

这个开源项目厉害了:一键部署DeepSeek R1!-AI.x社区

这个开源项目厉害了:一键部署DeepSeek R1!-AI.x社区

异构分布式推理

使用:

  • 一台Ubuntu 服务器,搭载 NVIDIA RTX 4090(24GB VRAM)
  • 一台Windows 主机,搭载 AMD Radeon RX 7800(16GB VRAM)
  • 一台MacBook Pro,搭载 M4 Pro,拥有 36GB 统一内存

聚合这些异构设备的 GPU 资源,运行单机无法运行的 DeepSeek-R1 32B 或 70B 量化蒸馏模型,充分利用多台设备的算力来提供推理。

这个开源项目厉害了:一键部署DeepSeek R1!-AI.x社区

resources-nvidia-amd-mac

这个开源项目厉害了:一键部署DeepSeek R1!-AI.x社区

models-nvidia-amd-mac

生产场景

UI 全自动多机部署超大模型

在 2 台 8 卡 NVIDIA A100 服务器上,一键开启 GPUStack 的多机分布式推理功能,通过 UI 配置全自动实现跨多机运行 DeepSeek R1 671B 量化版本,突破单机显存限制,高效执行超大规模模型推理。

这个开源项目厉害了:一键部署DeepSeek R1!-AI.x社区

resources-a100-distributed-inference

这个开源项目厉害了:一键部署DeepSeek R1!-AI.x社区

models-a100-distributed-inference

高并发高吞吐的生产部署

在需要高并发、高吞吐、低延迟的生产环境中,使用 vLLM 高效部署推理 DeepSeek R1 全量版或蒸馏版,充分利用推理加速技术支撑大规模并发请求,提升推理效率。

这个开源项目厉害了:一键部署DeepSeek R1!-AI.x社区

resources-a100-vllm

这个开源项目厉害了:一键部署DeepSeek R1!-AI.x社区

models-a100-vllm

国产硬件适配

昇腾、海光等国产 GPU 上,GPUStack 也提供适配支持。例如,在 8 卡海光 K100_AI 上运行 DeepSeek R1 671B 量化或蒸馏版本,充分发挥国产硬件的计算能力,实现自主可控的私有化部署方案。

这个开源项目厉害了:一键部署DeepSeek R1!-AI.x社区

这个开源项目厉害了:一键部署DeepSeek R1!-AI.x社区

对于诸如上述的各种部署场景,GPUStack 都能根据环境自动选择最佳部署方案,提供自动化的一键部署,用户不需要繁琐的部署配置。同时用户也拥有自主控制部署的灵活性。

以下是 DeepSeek R1 各个蒸馏模型和满血 671B 模型在不同量化精度下的显存需求及相应推荐硬件,供在各种场景下部署提供参考:

这个开源项目厉害了:一键部署DeepSeek R1!-AI.x社区

不同的模型、量化方式、上下文大小、推理参数设置或多卡并行配置对显存需求各不相同。对于 GGUF 模型,可以使用模型资源测算工具 GGUF Parser(​​https://github.com/gpustack/gguf-parser-go​​)来手动计算的显存需求。实际部署时,GPUStack 会自动计算并分配适合的显存资源,无需用户手动配置。

这个开源项目厉害了:一键部署DeepSeek R1!-AI.x社区

gguf-parser

GPUStack 不仅仅是 LLM 推理框架,除了 大语言模型(LLM),GPUStack 还支持多种 生成式 AI 模型,覆盖更广泛的应用场景,包括:

  • 多模态模型:如 Qwen2.5-VL、InternVL 2.5
  • 图像生成模型:如 Stable Diffusion、Flux
  • 语音模型(STT/TTS):如 Whisper、CosyVoice
  • Embedding 模型:如 BGE、BCE、Jina
  • Reranker 模型:如 BGE Reranker、Jina Reranker

无论是个人开发者的桌面端,还是企业级数据中心,GPUStack 都能提供高效、灵活的私有部署方案,帮助用户轻松运行各类 AI 模型。

GPUStack 不仅仅是一个推理框架,它具备整体的部署、管理与运维解决方案,让大模型部署变得更加简单和高效,包括:

  • 国产硬件支持:兼容昇腾、海光、摩尔线程等异构算力芯片
  • 模型管理:支持模型升级、推理引擎多版本并存、离线部署
  • 高可用:多实例负载均衡,确保高效稳定的推理表现
  • 监控 & 可视化:提供GPU/LLM 观测指标、Dashboard 仪表板
  • 安全控制:用户管理、API 认证授权,满足企业级需求

如何安装 GPUStack?如果你对 GPUStack 感兴趣,可以参考以下步骤进行安装部署

安装 GPUStack

脚本一键安装

安装要求参考:​​https://docs.gpustack.ai/latest/installation/installation-requirements/​

GPUStack 支持脚本一键安装、容器安装、pip 安装等各种安装方式,这里使用脚本方式安装。

在 Linux 或 macOS 上:

通过以下命令在线安装,安装完成需要输入 sudo 密码启动服务,这个步骤需要联网下载各种依赖包,网络不好可能需要花费十几到几十分钟的时间:

curl -sfL https://get.gpustack.ai | INSTALL_INDEX_URL=https://pypi.tuna.tsinghua.edu.cn/simple sh -s -

在 Windows 上:

以管理员身份运行 Powershell,通过以下命令在线安装,这个步骤需要联网下载各种依赖包,网络不好可能需要花费十几到几十分钟的时间:

$env:INSTALL_INDEX_URL = "https://pypi.tuna.tsinghua.edu.cn/simple"
Invoke-Expression (Invoke-WebRequest -Uri "https://get.gpustack.ai" -UseBasicParsing).Content

当看到以下输出时,说明已经成功部署并启动了 GPUStack:

[INFO]  Install complete.

GPUStack UI is available at http://localhost.
Default username is 'admin'.
To get the default password, run 'cat /var/lib/gpustack/initial_admin_password'.

CLI "gpustack" is available from the command line. (You may need to open a new terminal or re-login for the PATH changes to take effect.)

接下来按照脚本输出的指引,拿到登录 GPUStack 的初始密码,执行以下命令:

在 Linux 或 macOS 上:

cat /var/lib/gpustack/initial_admin_password

在 Windows 上:

Get-Content -Path (Join-Path -Path $env:APPDATA -ChildPath "gpustack\initial_admin_password") -Raw

在浏览器访问 GPUStack UI,用户名 admin,密码为上面获得的初始密码。

重新设置密码后,进入 GPUStack:

这个开源项目厉害了:一键部署DeepSeek R1!-AI.x社区

overview

纳管 GPU 资源

GPUStack 支持纳管 Linux、Windows 和 macOS 设备的异构 GPU 资源,步骤如下。

其他节点需要通过认证 Token 加入 GPUStack 集群,在 GPUStack Server 节点执行以下命令获取 Token:

在 Linux 或 macOS 上:

cat /var/lib/gpustack/token

在 Windows 上:

Get-Content -Path (Join-Path -Path $env:APPDATA -ChildPath "gpustack\token") -Raw

拿到 Token 后,在其他节点上运行以下命令添加 Worker 到 GPUStack,纳管这些节点的 GPU(将其中的 ​​http://YOUR_IP_ADDRESS​​ 替换为你的 GPUStack 访问地址,将 YOUR_TOKEN 替换为用于添加 Worker 的认证 Token):

在 Linux 或 macOS 上:

curl -sfL https://get.gpustack.ai | INSTALL_INDEX_URL=https://pypi.tuna.tsinghua.edu.cn/simple sh -s - --server-url http://YOUR_IP_ADDRESS --token YOUR_TOKEN

在 Windows 上:

$env:INSTALL_INDEX_URL = "https://pypi.tuna.tsinghua.edu.cn/simple"
Invoke-Expression "& { $((Invoke-WebRequest -Uri "https://get.gpustack.ai" -UseBasicParsing).Content) } -- --server-url http://YOUR_IP_ADDRESS --token YOUR_TOKEN"

通过以上步骤,我们已经安装好 GPUStack 并纳管了多个 GPU 节点,接下来就可以使用这些 GPU 资源来部署所需的各种 DeekSeek R1 满血、量化、蒸馏模型和其他模型了。

总结

以上是关于如何安装 GPUStack 并在不同场景下部署 DeekSeek R1 模型的使用教程。你可以访问项目的开源仓库:​​https://github.com/gpustack/gpustack​​ 了解更多信息。

GPUStack 是一个低门槛、易上手、开箱即用的私有大模型服务平台。它可以轻松整合并利用各种异构 GPU 资源,方便快捷地为生成式 AI 应用和应用开发人员部署所需的各种 AI 模型。

GPUStack 背后的研发团队具有全球顶级开源项目经验,项目的功能设计和文档都很完整,团队自项目初期便面向全球用户,当前已有大量国内外开源用户。

本文转载自 NLP前沿


收藏
回复
举报
回复
相关推荐