面包屑图标 当前位置: 首页
AI资讯
热点详情

任意云运行AI工作负载,SkyPilot零出口存储至HuggingFace

AI热点日报
AI热点日报时间:2026-07-08
热点解读

好的,作为一名在云基础设施与AI工作流领域深耕多年的技术专家,我将为您重新梳理这一技术整合方案,用更通俗易懂的语言呈现。 先说说目前多数团队的真实处境:您的数据和模型通常存放在某个云厂商的单一区域存储桶里。然而,开发、训练或推理所需的 GPU 却越来越频繁地出现在另一朵云上。一旦两者分离,您若想将数

好的,作为一名在云基础设施与AI工作流领域深耕多年的技术专家,我将为您重新梳理这一技术整合方案,用更通俗易懂的语言呈现。 先说说目前多数团队的真实处境:您的数据和模型通常存放在某个云厂商的单一区域存储桶里。然而,开发、训练或推理所需的 GPU 却越来越频繁地出现在另一朵云上。一旦两者分离,您若想将数据读取到自己的 GPU 上,就不得不支付一笔可观的“跨云过路费”。 现在,我们(Hugging Face 和 SkyPilot)将这两块完美拼合:您的模型和数据集继续安稳地存放在 Hugging Face Hub 上,而 SkyPilot 则负责在任意拥有空闲 GPU 的集群上启动计算任务。操作非常简单——只需一个 `hf://` 链接加上您已有的 `HF_TOKEN`,就能将一个 Hugging Face 存储桶或 Hub 仓库挂载到 SkyPilot 任务中,随后您可以在任何位置运行任务。最关键的是,Hugging Face 不收取任何出口流量费,因此将数据读取到不同云上的 GPU 成本为零。 来看看我们具体做了什么: * **您的 Hub 数据,任何任务都能用。** 通过一个 `hf://` URL 和您的 `HF_TOKEN`,在 SkyPilot 任务中即可挂载一个 **存储桶**(可读写)或任意 **模型/数据集/Space 仓库**(只读)。支持 `MOUNT`(挂载)或 `COPY`(拷贝)模式。 * **任意云上的任意 GPU,随您跑。** SkyPilot 会在 20 多朵云、Kubernetes、Slurm 以及本地环境中寻找计算资源。同一个任务可以自动运行在您预留或按需使用的任一种 GPU 上,不受厂商限制。 * **读取数据,不掏一分钱。** Hugging Face 存储不收取出口流量费和 CDN 费。因此,无论 SkyPilot 将任务调度到哪朵云上,它都能直接从您的存储桶中读取模型和数据集,无需为每朵云都存一份数据,也不用支付高昂的“搬家费”。 * **基于 Xet 的去重技术。** 存储桶底层采用 Xet 技术,这意味着增量检查点和模型变体在存储和传输时,只会处理真正发生改变的部分,效率极高。 * **强强联合,共同打造。** 这个功能由 Hugging Face 和 SkyPilot 团队协作开发。Hugging Face 团队还修复了 `hf-mount` FUSE 文件系统的若干问题,使其能在无特权容器中正常运行。 ### Hugging Face 存储正式成为 SkyPilot 的一等公民 SkyPilot 的任务此前已能通过挂载方式读写各种云对象存储(S3、GCS、Azure、R2 等)。现在,Hugging Face 存储也正式加入,以 `store: hf` 的形式呈现,通过 `hf://` 协议访问: ```yaml file_mounts: # 一个 Hugging Face 存储桶,可读写,用于存放检查点、日志和处理后的数据 /checkpoints: source: hf://buckets/my-org/qwen-sft store: hf mode: MOUNT # 或者用 COPY # 一个模型仓库,只读挂载 /base-model: source: hf://Qwen/Qwen3.5-4B store: hf mode: MOUNT # 一个数据集仓库,固定到特定版本,只读 /data: source: hf://datasets/my-org/my-dataset@main store: hf mode: MOUNT ``` 这个 `hf://` 协议覆盖了整个生命周期:从仓库中读取**模型**和**数据集**,训练时向**存储桶**写入**检查点**,最后将训练好的模型发布回仓库,再到推理服务上拉取使用。大多数团队本就习惯将模型和数据放在 Hub 上,因此这几乎是无缝衔接,无需任何迁移,也不用新开存储账号。 `MOUNT` 模式使用 Hugging Face 的 `hf-mount` FUSE 后端。这样一来,存储桶或仓库在您的任务中就如同本地路径一样。其核心是“懒加载”:只有当您的代码真正执行 `read()` 操作时,驱动才会从后台拉取对应数据。这意味着只有您实际使用的数据才会通过网络传输,同时 `hf-mount` 还会在本地磁盘做缓存,重复读取时使用缓存速度飞快。由于读取是按需进行的,一个进程可以立即开始处理一个大文件,无需等到整个文件下载完毕。这对 GPU 来说至关重要——它能立刻投入工作,而不是干等数据集或检查点慢慢拷贝过来,白白浪费资源。`COPY` 模式则是另一条路径,它会通过 `huggingface_hub` 库先将所有文件下载到本地,适合有特殊需求的场景。 认证使用您现有的 `HF_TOKEN`。设置好这个环境变量后,使用 `--secret HF_TOKEN` 传给任务,SkyPilot 就会用这个 token 进行挂载,无论任务最终落在 AWS、GCP、Azure 还是您自己的 Kubernetes 集群。一个 token 搞定所有云,无需再为不同云厂商的存储桶准备一堆密钥。 ### 零出口费:别让存储决定您把活干在哪 现在的 GPU 资源很难只从一个地方获得。为了拿到足够的 H100 或 H200,团队往往需要在多个厂商同时预留容量(比如在某朵大云上抢一批,在某个新兴云上租一些,可能本地机房还摆了一排机柜)。SkyPilot 的设计正是为了应对这种局面:一份任务配置,能调度到 20 多朵云、Kubernetes 和本地机房,自动落在有空闲资源的集群上。 以往,一个绕不过去的难题是对象存储。对象存储是分区域、分厂商的。您在一朵云的 GPU 上跑任务,但训练数据存放在另一朵云的存储桶里,怎么办?要么在每个厂商的存储桶里都放一份数据,要么就得花钱把数据拉过来。多数云厂商对数据出站都要收费(比如 AWS,大约 $0.09/GB),跨区域传输也可能产生费用。试想一下,把一个大模型拉到每个推理节点上,或者从另一个云的集群上反复读取数据集进行多轮训练,这笔费用可不是小数目。结果就是,团队不得不将每个任务都绑定在数据所在的厂商上,而其他云上预留的 GPU 只能闲置。 Hugging Face 存储直接将最令人头疼的“读取”成本拿掉了。它不收取出口费和 CDN 费,存储成本为 $12-18/TB/月(相比之下 AWS S3 约 $23/TB/月,还要加上出口费)。这意味着,同一个存储桶可以从任何一个 GPU 集群上访问,而且读取完全免费。虽然写回数据仍需支付计算云本身的出站流量(这是向任何外部存储写数据的正常开销),但 AI 工作流的大部分操作都是读取:数据集需要被反复流式读取多次,模型权重需要下载到每个新的训练或推理节点上。因此,您再也不用为了数据存放的位置,而将任务限定在某一朵云上了。 ### 一个快速的基准测试 为了给大家一些直观数据,我们跑了一个小规模的微调任务:使用 `HuggingFaceH4/Multilingual-Thinking` 数据集微调 `Qwen/Qwen3.5-4B`,采用 TRL 的 `SFTTrainer`。模型从 Hub 仓库只读挂载,每个检查点都写入 Hugging Face 存储桶。同一个 SkyPilot YAML 文件,仅通过 `--infra` 参数切换,分别在 AWS、GCP 和 Lambda 上运行。 ```yaml # qwen-sft.yaml. 在任何地方启动: sky launch qwen-sft.yaml --infra aws|gcp|... resources: accelerators: H100:1 # 或者云上有什么别的 GPU file_mounts: /base-model: source: hf://Qwen/Qwen3.5-4B # 只读,从 Hub 懒加载挂载 store: hf mode: MOUNT /checkpoints: source: hf://buckets/my-org/qwen-sft # 可读写存储桶 store: hf mode: MOUNT run: | python train.py --model /base-model --output_dir /checkpoints ``` 我们测了几个关键指标: * **模型在任何云上加载都免费。** 懒加载只拉取 `from_pretrained` 实际使用的字节,因此大约 30 秒就能开始训练(读取速度达到 500 MB/s)。因为 Hugging Face 不收出口费,这次拉取成本为零。试想一下,如果模型存在 S3 里,每次从另一朵云的 GPU 上读取,都要按 $0.09/GB 支付出口费。 * **检查点直写存储桶**,写入速度高达 ~170 MB/s(每个检查点约 8.43GB),而且数据在 GPU 实例销毁后依然保留。 各云上的检查点写入速度如下: | 云 | GPU | 检查点写入速度 | | :------- | :-- | :-------------- | | AWS (us-east-2) | L40S | ~168 MB/s | | GCP (us-central1) | L4 | ~123 MB/s | | Lambda (us-west-3) | H100 | ~112 MB/s | ### 基于 Xet 的内容去重:专为检查点和模型变体优化 Hugging Face 存储桶底层依赖 Xet 技术。它采用内容定义的块切分,将文件切成约 64KB 的小块,每个唯一块只存一份。由于切分边界由内容决定,一段编辑只会改变它触及的那些块,而其他块会被识别为已存储,无需重复保存。这个特性在几个场景下非常有价值: * **增量检查点和适配器。** 当您冻结一些层、只训练适配器,或者大部分权重在两次保存之间未变化时,只有真正变化的那部分块会上传,而不是整个检查点。 * **共享基座的模型变体。** 从一个基础模型微调或量化出的多个版本之间重叠度很高,共享的块在所有版本之间只存一次。 * **追加数据的数据集。** 例如对话记录或推理输出这类日志,通常通过向大型 Parquet 文件末尾追加行来增长。已有的行组字节不会变,所以只有新增的行会真正传输。在我们的测试中,向一个 10 万行的表中追加 1 万行,只传输了大约 10MB 的数据,而不是整个 106MB 的文件。(如需原地编辑或删除行,请使用 `use_content_defined_chunking=True` 参数来保证改动局部化。) * **重新上传已有内容,秒级完成。** 在我们的测试中,重新上传一个已经在桶里的 8.43GB 文件,只花了大约 8 秒,而首次上传用了 24 秒。这是因为只有新块的哈希值需要传输。同样的机制还让服务端的 `hf buckets cp` 命令在存储桶和仓库之间复制数据时,能通过引用方式完成,而不是真的重新上传字节。 能省多少取决于您的工件之间有多少重叠,但这个去重是全自动的:您像往常一样写检查点,只有真正的新块才会离开您的机器。 ### 快速上手 ```bash pip install "skypilot[huggingface]" hf auth login # 或者: export HF_TOKEN=<您的 token> ``` 然后,将 `hf://` 挂载地址加到您的 SkyPilot 任务 YAML 里,就可以启动了。注意,`MOUNT` 模式需要一个 glibc 2.34+ 的基础镜像,并且容器内需支持 `/dev/fuse`。 ### 合作成果:Hugging Face 与 SkyPilot `store: hf` 的支持最初由 Nikhil Jha 贡献。Hugging Face 团队接手并持续开发,修复了 `hf-mount` FUSE 文件系统在无特权容器(很多 Kubernetes 集群的默认设置)中的挂载问题。SkyPilot 团队则将其无缝集成为存储后端。整个路线全部开源:包括 SkyPilot、Hugging Face 的 `hf-mount` 以及 `huggingface_hub` 客户端。 ### 相关资源 * SkyPilot 存储文档 * Hugging Face 存储桶指南 * `hf-mount` * Xet:内容定义的分块与去重技术 (图片来源于网络,侵删)
热点追踪提示词
你是一名 AI 行业编辑,请围绕下面这条热点输出一份资讯解读:
热点:任意云运行AI工作负载,SkyPilot零出口存储至HuggingFace要求:
1. 先用一句话解释这条热点在讲什么
2. 再总结它为什么重要
3. 说明会影响哪些 AI 产品或内容方向
4. 最后给出 3 个适合资讯站使用的标题
来源:https://www.bestblogs.dev/article/923d7742?utm_source=rss&utm_medium=feed&utm_campaign=resources&entry=rss_article_item
Face

游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。

相关热点
AI热点2026-07-09 21:03
VSona推出AI伴侣开发新方案

VSona是一个开发AI伴侣的平台,提供聊天、角色扮演、创意表达等功能。用户可自定义头像和声线,支持文字或语音互动。AI伴侣具备动画反馈和语音响应,营造安全、沉浸的个性化互动空间。

AI热点2026-07-09 21:03
AI音频母带处理工具Mastermallow

MastermallowAI音频母带处理适用于音乐、播客及内容创作者。可将原始录音一键转为专业音频,提升播客音质,为音乐作品添加母带效果。特色包括智能音频分析与增强、原音与母带实时对比、高质量成品下载。

AI热点2026-07-09 21:03
MyCharacter.ai:创建收藏互动AI角色的dApp

MyCharacter AI是基于Polygon链的去中心化应用,通过CharacterGPTV2多模态AI系统生成具有独特形象和性格的AI角色。用户可与角色实时互动,并将其作为NFT收藏、交易或转让,实现AI角色生成、互动与资产化的一体化。

AI热点2026-07-09 21:03
ToMate AI自动回复客户消息

ToMate基于AI智能高效处理客户消息,适用于客服、销售及市场营销等场景。它能及时贴心回复,支持解析多种文件格式,并采用灵活定价方案,显著提升工作效率与客户满意度。

延伸阅读