在任何云上运行AI工作负载,数据存储在Hugging Face:SkyPilot实现零出口存储
SkyPilot与Hugging Face合作,允许用户将模型和数据集存储在Hugging Face Hub上,并通过SkyPilot在任何云上运行计算任务,无需支付数据传输费用。
对于大多数团队来说,模型和数据集通常存放在某个云服务商的某个区域存储桶中。然而,可用于开发、训练或推理的GPU可能位于与数据不同的云上。一旦数据和计算分离,你不得不为读取自己的数据到自己的GPU支付跨云数据传输费用。
SkyPilot与Hugging Face携手解决了这一问题:你的模型和数据集保留在Hub上,而SkyPilot在拥有GPU的任何集群上运行计算任务(开发、训练或推理)。只需一个hf:// URL和已有的HF_TOKEN,即可将Hugging Face Bucket或任何Hub仓库挂载到SkyPilot任务中,然后将其启动在任何有容量的地方。Hugging Face不收取出口费用,因此从任何云上读取数据到GPU都是免费的。
主要功能包括:
- 任意任务中使用Hub数据:通过store: hf将Hugging Face Bucket(读写)或任何模型/数据集/Space仓库(只读)挂载到SkyPilot任务,使用hf:// URL和HF_TOKEN,支持MOUNT或COPY模式。
- 在任何GPU和云上运行:SkyPilot在20多个云平台、Kubernetes、Slurm和本地环境中调度任务,因此同一运行可以使用任何供应商的预留或按需GPU。
- 读取数据无出口费用:Hugging Face Storage不收取出口或CDN费用,因此无论SkyPilot将任务部署在何处,都可以直接从同一存储桶读取模型和数据集,无需在每个云上复制数据,也无需支付拉取数据的出口账单。
- 基于Xet的去重:Bucket构建在Xet之上,因此增量检查点和模型变体仅存储和传输发生变化的块。
Hugging Face Storage现已成为SkyPilot的一等后端。SkyPilot任务已能通过挂载读取和写入云对象存储(S3、GCS、Azure、R2等),现在Hugging Face Storage通过store: hf和hf://方案加入其中。
例如,以下配置展示了如何挂载一个读写Bucket作为检查点目录,以及只读挂载模型和数据集仓库:
file_mounts: /checkpoints: source: hf://buckets/my-org/qwen-sft store: hf mode: MOUNT /base-model: source: hf://Qwen/Qwen3.5-4B store: hf mode: MOUNT
MOUNT模式使用Hugging Face的hf-mount FUSE后端,仓库像本地路径一样出现。读取是惰性的,代码读取时按需拉取数据,并保留本地磁盘缓存。COPY模式则通过huggingface_hub提前下载整个文件。
身份验证使用现有的HF_TOKEN,通过--secret HF_TOKEN传递给任务。该令牌适用于任何云,无需管理每云桶密钥。
零出口意味着存储不再决定计算的位置。GPU容量通常分散在多个供应商:团队在多个云上持有预留容量,而SkyPilot将任务调度到空闲的集群。此前,对象存储的出口费用迫使团队将运行固定在持有数据的供应商上,导致其他容量闲置。Hugging Face Storage消除了读取数据的出口成本(存储$12-18/TB/月,相比之下AWS S3约$23/TB加出口),即使写入仍有正常出口费用,但大多数AI工作以读取为主,因此大大提高了灵活性。
基准测试:使用Qwen3.5-4B模型和Multilingual-Thinking数据集进行微调,在AWS、GCP和Lambda上运行相同SkyPilot YAML,所有云都读取和写入同一Bucket。模型加载免费,约30秒(最高500 MB/s),检查点写入速度在112-168 MB/s之间。
Xet存储的去重功能:通过内容定义分块,增量检查点、适配器检查点、共享基座的模型变体以及追加数据集时,仅传输更改的块。例如,向100K行表中追加10K行仅移动约10 MB而非整个106 MB。重新上传已存储的8.43 GB blob仅需约8秒,而首次上传为24秒。
开始使用: pip install "skypilot[huggingface]" hf auth login 然后添加hf://挂载到任何SkyPilot任务并启动。MOUNT需要基础镜像包含glibc 2.34+和/dev/fuse。
该项目由Nikhil Jha贡献,Hugging Face团队推动了hf-mount FUSE修复以支持非特权容器,SkyPilot团队将其集成到存储后端。所有组件均为开源:SkyPilot、hf-mount和huggingface_hub。