跳到主要内容

金融与政企的内网里,为什么需要一个“私有版 Hugging Face”

· 阅读需 11 分钟

大模型在金融、政务、能源等强监管行业落地时,团队通常要面对两个问题:

  1. 把模型带进内网:公网模型库访问不了,上百 G 的权重靠人工拷贝,一次要好几天。
  2. 管好模型权限:模型是核心资产,谁能下载、修改、管理,必须有清晰的边界。

两者缺一不可。一个部署在内网、兼容 Hugging Face 的私有模型库可以同时解决:对内统一存放模型、管理权限,对外让研发团队用熟悉的方式访问。

Dynamo 多节点模型加载实践:MatrixHub 模型分发与 GPU P2P

· 阅读需 12 分钟

启动一个新的推理 Worker,实际上包含两次不同的数据移动:模型文件先进入 Worker 本地缓存,随后模型权重再进入 GPU 显存。这两个阶段经常被统称为“模型加载”,但它们面对的瓶颈不同,需要的加速机制也不同。

MatrixHub 通过靠近集群的私有化、Hugging Face 兼容模型服务加速第一阶段。ModelExpress GPU-to-GPU P2P 则面向第二阶段:当一个 Source Worker 已经加载好模型后,Target Worker 可以通过 NIXL、UCX 和 RDMA 直接接收 Source GPU 中的权重,无需再次下载权重文件。

本文记录 Runtime 构建、关键 DGD 配置和跨节点 GPU-to-GPU P2P 验证过程;随后再用 Hugging Face/MatrixHub × 直拉/P2P 四组实验解释每一阶段的实际耗时。

使用 MatrixHub 为 llm-d 加速模型分发

· 阅读需 9 分钟

llm-d 是 Kubernetes 原生的分布式推理栈,它把 vLLM 与 Envoy 路由层、Endpoint Picker 组合起来,在多个 model server 副本之间做前缀缓存感知和负载感知的调度。它解决了大规模推理的编排与路由问题,但在其之下还有一个更基础的问题:模型权重如何送达每一个推理副本。

现代大模型的权重动辄数十至数百 GB。推理服务的每一次扩容、每一次 Pod 重新调度、每一次滚动更新,都意味着一份完整的权重要重新传输到节点。当所有副本都直接从公网模型仓库拉取时,启动耗时便受制于公网带宽、限流与远端可用性;在离线或受管控的网络中,直连公网仓库甚至不可行。对生产推理而言,模型分发往往比模型服务本身更早成为瓶颈——真正拖慢启动的通常不是推理引擎,而是权重下载。

MatrixHub 是开源、可私有部署的 AI 模型仓库,正是面向这一层设计的。它提供 Hugging Face 兼容接口:将 HF_ENDPOINT 指向 MatrixHub,vLLM、SGLang 等客户端仍按原始仓库名请求模型,而文件由集群内的缓存就近供给。首次请求时 MatrixHub 从上游拉取并落盘,之后对同一模型的请求直接命中缓存,无需再回公网。它同时提供私有模型托管、按项目隔离的权限与审计,以及离线环境下的可控分发。

两者结合形成清晰的分层:llm-d 负责推理控制面——部署、路由、调度与推理 API;MatrixHub 承担其下的模型分发层——模型从哪里来、如何缓存、如何在集群内就近供给。推理编排与模型分发各有其生命周期,将两者解耦后,平台团队既能获得 Hugging Face 式的模型访问体验,又不必让生产推理依赖公网仓库的可用性与带宽。

本文通过一组实测数据量化模型分发层的作用:在 llm-d 上部署同一模型两次,以权重来源为唯一变量——一次直连公网 Hugging Face 镜像,一次经集群内 MatrixHub 缓存——分别测量其到达可用状态所需的时间。

Dynamo 多 Worker 扩容:ModelExpress 缓存复用实践

· 阅读需 7 分钟

当推理服务扩容到多个 Worker 时,每个新 Worker 都会从模型仓库下载完整模型。对于 3 GB 的模型,每个 Worker 会增加 30–40 秒;对于 70B 模型,每个 Worker 则可能要多等 10 分钟以上。

ModelExpress 是 NVIDIA Dynamo 中的模型分发缓存层,位于 Worker 与模型来源(MatrixHub 或 Hugging Face)之间。第一个 Worker 会触发下载并将模型写入 ModelExpress 缓存;之后的 Worker 都从该缓存获取模型,无需再次下载。

本次测试为 Qwen/Qwen2.5-1.5B-Instruct(约 3 GB)部署两个 Dynamo vLLM Worker,对比第一个 Worker(缓存未命中)和第二个 Worker(缓存命中)的模型获取耗时。

使用 MatrixHub 缓存加速 SGLang 模型启动

· 阅读需 5 分钟

在本地或内网环境启动推理服务时,模型下载经常是最耗时、最不稳定的一步。

SGLang、Transformers、vLLM 等工具通常会通过 Hugging Face Hub 协议获取模型文件;如果每次都直接访问公网 Hugging Face,启动时间就会受到公网带宽、限流和远端可用性的影响。

这篇文章用 Qwen/Qwen3-0.6B 做一个简单测试,对比两种启动方式:

  • SGLang 通过 MatrixHub 的 Hugging Face 兼容接口拉取模型。
  • SGLang 直接从 Hugging Face 拉取模型。

Dynamo 与 MatrixHub 集成实验

· 阅读需 5 分钟

我们做了两组实验,验证内网 MatrixHub 对 Dynamo 推理服务首次拉取模型权重的加速效果。

  • 实验一:在带 GPU 的 Kubernetes 集群上部署 Dynamo,并使用内网 MatrixHub 拉取模型权重。部署后会得到一个兼容 OpenAI 接口的推理服务,可以对 qwen3-0.6b 模型发对话请求。
  • 实验二:用同样的方式再实验一次,改成从外网 Hugging Face 拉取模型权重,对两次实验的首次下载模型时间作对比。

DeepSeek v4 跑不起来?99% 的人都卡在分发

· 阅读需 6 分钟

最近 DeepSeek 发布了 DeepSeek v4,不少团队都在第一时间尝试接入。

但如果你是在企业环境,尤其是内网或私有化部署里,很快就会发现一件事:

模型不是最大的问题,分发才是。

我们在内网落地 DeepSeek v4,踩了一堆坑,整理下来,本质其实就三类问题。

示例

· 阅读需 2 分钟

这里放一个 MatrixHub 的真实使用示例。