用 SkyPilot 在任何云上跑 AI,数据存 Hugging Face,零出口费

大多数团队把模型和数据集放在一个云服务商的某个区域,而能抢到的 GPU 却越来越分散在多个云上。一旦计算和数据分离,你就得为跨云读取自己的数据支付高昂的传输费。这篇文章解决的问题很直接:SkyPilot 在任何有 GPU 的地方跑任务,同时从 Hugging Face Hub 无任何出口费地读取数据,彻底解耦了存储位置和计算资源的选择。

核心做法是把 Hugging Face Storage 变成 SkyPilot 的一等存储后端。你在任务配置里用 hf:// URL 直接挂载一个 Hub 仓库或 Bucket,就像挂 S3 或 GCS 一样简单。因为 Hugging Face 不收出口费,所以无论 SkyPilot 把任务调度到 AWS、GCP、Lambda 还是你自己的 Kubernetes 集群上,从 Hub 拉取模型和数据都不产生额外费用。具体实现上,挂载模式 (MOUNT) 使用基于 Xet 的 FUSE 驱动,采用惰性读取,代码只拉取实际触及的字节,并且带有本地磁盘缓存。这带来了两个直接好处:一是训练进程几乎能立刻开始使用 GPU,不用等整个数据集下载完;二是跨云工作流不再需要为每个云保留一份数据副本。

这次合作给了 AI infra 一个很实际的启发:“数据引力”可以被技术架构主动消解,而不是被动接受。过去你总得把数据放在算力旁边,或者为跨云读取付税。现在 SkyPilotHugging Face 的结合展示了一条路——用零出口费的共享存储加上智能调度,让计算真正自由流动。对我这种经常在多云间做训练和推理的人来说,最直接的价值就是不再需要为选择哪个云而纠结,也不用维护一堆云上的存储桶和密钥。这种彻底解耦存储与计算的思路,或许会成为未来分布式 AI 工作负载的标准模式。

Run AI workloads on any cloud, store on Hugging Face: zero-egress storage with SkyPilot

查看原文