Hugging Face联手SkyPilot推出零流量存储 跨云AI训练成本骤降

2 阅读5分钟开源
Hugging Face联手SkyPilot推出零流量存储 跨云AI训练成本骤降

背景

在多数企业的 AI 流程中,模型与数据往往固定在单一云厂商的对象存储里。当计算资源分布在不同云平台时,跨云读取会产生高额的 egress 费用。为打破这一瓶颈,Hugging Face 与开源项目 SkyPilot 联手,推出 Zero‑Egress Storage,让 Hub 中的模型、数据集和 Bucket 能直接被任何云上的 GPU 读取。

关键特性

  • 统一挂载协议:只需在 SkyPilot 作业中声明 hf://buckets/your-org/your-bucket(可选 MOUNTCOPY),系统会自动使用 Hugging Face 的 hf‑mount FUSE 后端完成挂载。
  • 跨 20+ 云无缝调度:SkyPilot 能在 AWS、GCP、Azure、Lambda、Kubernetes 等多云环境中寻找空闲 GPU,作业调度与存储路径完全解耦。
  • 零流量费用:Hugging Face 对存储读取不收取 egress,意味着无论作业落在何处,读取模型或数据的成本均为 $0。
  • Xet 去重存储:底层基于 Xet 的内容感知分块,实现增量 checkpoint、模型变体和数据集追加写入时仅传输变更块,大幅降低网络流量。

性能基准(内部实验)

云平台GPU 类型检查点写入速率备注
AWS us-east-2L40S~168 MB/s读取模型 30 秒内完成
GCP us-central1L4~123 MB/s读取同样免费
Lambda us-west-3H100~112 MB/s读取模型零费用

实验使用 Qwen3.5‑4B 在 HuggingFaceH4/Multilingual‑Thinking 数据集上进行微调。模型通过 hf://Qwen/Qwen3.5-4B 只读挂载,检查点写入 hf://buckets/my-org/qwen-sft。跨云读取时间约 30 秒,带宽可达 500 MB/s,且未产生任何 egress 计费。

去重机制细节

Xet 将文件切分为约 64 KB 的内容块,仅在块内容改变时重新上传。

  • 增量 checkpoint:冻结大部分权重,仅训练少量 adapter 时,仅有几 MB 的新块被上传。
  • 模型变体共享:不同量化或微调版本共享基模型块,存储空间与网络流量均被压缩。
  • 数据集追加:对 Parquet 等列式文件追加新行时,仅新增行的块被传输,示例中 10 K 行追加仅消耗约 10 MB。

快速上手指南

pip install \"skypilot[huggingface]\"
export HF_TOKEN=YOUR_TOKEN
# 示例 SkyPilot 作业 yaml
file_mounts:
  /base-model: source: hf://Qwen/Qwen3.5-4B
  /checkpoints: source: hf://buckets/my-org/qwen-sft
run: |
  python train.py --model /base-model --output_dir /checkpoints
  • 使用 MOUNT 模式实现懒加载,代码读取时才拉取所需字节,GPU 可立即开始训练。
  • 若希望一次性下载全部文件,可改为 COPY 模式,SkyPilot 会在作业启动前通过 huggingface_hub 完整拉取。

行业意义

零流量存储消除了跨云数据迁移的费用壁垒,使得团队可以更灵活地在多家云提供商之间分配 GPU 资源,提升算力利用率。尤其在 H100、H200 等高端 GPU 供不应求的场景下,成本优势更加明显。

开源生态

该功能的实现依赖三大开源项目:

  • SkyPilot:统一的多云作业调度层。
  • hf‑mount:Hugging Face 提供的 FUSE 挂载实现,已在非特权容器中完成适配。
  • huggingface_hub 客户端:负责 token 鉴权与对象元数据管理。

所有代码均在 GitHub 上公开,社区可自行扩展或贡献新后端。

“零流量存储让我们在不同云之间自由切换 GPU,省下的费用足以再投入一台 H100。”——Hugging Face 产品团队

本文是对第三方新闻源的主观解读。消息可能出现过时、不准确、歧义或错误的地方,仅供参考使用。点击此处查看消息源。