Hugging Face Blog產業與商業

在任意雲端執行 AI 工作負載,儲存於 Hugging Face:SkyPilot 零出口儲存方案

2026年7月7日 00:00

重點摘要

模型與資料集通常存放在單一雲端區域的儲存桶,但所需的 GPU 卻可能位於不同雲端,導致跨雲傳輸時需支付費用。Hugging Face 攜手 SkyPilot,將兩者無縫整合:數據保留在 Hub,計算則在任意擁有 GPU 的叢集上執行。只需透過 hf:// URL 與 HF_TOKEN 即可掛載 Hugging Face Bucket 或任何 Hub 倉儲至 SkyPilot 任務中。

站內 AI 整理稿

Back to Articles Run AI workloads on any cloud, store on Hugging Face: zero-egress storage with SkyPilot Published July 7, 2026 Update on GitHub Upvote - Nikhil Jha njha Follow guest For most teams, models and datasets live in a bucket in one region of one cloud.

The GPUs you can get, whether for development, training, or serving, increasingly sit on a different cloud than your data.The moment those two come apart, you pay a cross-cloud transfer tax just to read your own data onto your own GPUs.

Together with Hugging Face, we've joined the two halves: your models and datasets stay on the Hub, and SkyPilot runs the compute (dev, training, or serving) on whatever cluster has the GPUs.

Mount a Hugging Face Bucket or any Hub repo into a SkyPilot job with one hf:// URL and the HF_TOKEN you already have, then launch it wherever capacity is.Hugging Face charges no egress, so reading your data onto those GPUs costs nothing, on any cloud.Here's what's new: Your Hub data in any job.

store: hf mounts a Hugging Face Bucket (read-write) or any model / dataset / Space repo (read-only) into a SkyPilot task with one hf:// URL and your existing HF_TOKEN, via MOUNT or COPY.Run it on any GPU, on any cloud.

SkyPilot finds that job compute across 20+ clouds, Kubernetes, Slurm, and on-prem, so the same run uses whichever of your reserved or on-demand GPUs is available, on any vendor.No egress to read your data.

Hugging Face Storage charges no egress or CDN fees, so wherever SkyPilot lands the job, it reads your models and datasets straight from the same bucket, with no per-cloud copies and no egress bill to pull them in.Xet-backed dedup.

Buckets are built on Xet, so incremental checkpoints and model variants only store and transfer the chunks that changed.Built together.Hugging Face and SkyPilot shipped this jointly, and the Hugging Face team upstreamed the hf-mount FUSE fixes that make it work in unprivileged containers.

Hugging Face Storage is now a first-class SkyPilot backend SkyPilot tasks already read and write cloud object stores (S3, GCS, Azure, R2, and many more) by mounting them at a local path.

Hugging Face Storage now joins that list as store: hf, reached through the hf:// scheme: file_mounts: # A Hugging Face Bucket, read-write, for checkpoints, logs, processed data./checkpoints: source: hf://buckets/my-org/qwen-sft store: hf mode: MOUNT # or COPY # A model repo, mounted read-only.

/base-model: source: hf://Qwen/Qwen3.5-4B store: hf mode: MOUNT # A dataset repo, pinned to a revision, read-only.

/data: source: hf://datasets/my-org/my-dataset@main store: hf mode: MOUNT That one hf:// scheme covers the whole lifecycle: read the model and dataset from their repos, write checkpoints to a Bucket while you train, publish the finished model back to a repo, and pull it onto inference servers when you serve.

Most teams already keep their models and datasets on the Hub, so there is no migration step and no new storage account to create.MOUNT uses Hugging Face's hf-mount FUSE backend, so a bucket or repo shows up as a local path next to SkyPilot's other FUSE mounts (gcsfuse, blobfuse2, rclone, goofys).

The fetching happens at the filesystem layer: when your code issues a read(), the driver pulls just those bytes from the Xet backend, so only the data you actually touch crosses the network, and hf-mount keeps an on-disk cache so repeat reads stay local.

That on-disk cache is the behavior SkyPilot gives its other backends under MOUNT_CACHED, where a plain MOUNT instead streams every read from the bucket with nothing kept locally.For the hf store, MOUNT and MOUNT_CACHED behave the same, so either mode keeps the cache.

Because reads are lazy, a process can start working through a large file before the whole file has downloaded, instead of blocking on a full copy first.

That keeps the GPU busy almost immediately, training on data as it streams in rather than sitting idle (and billing) while a dataset or checkpoint copies down.It pays off most on the first epoch, when nothing is cached yet.

COPY takes the other route and downloads through huggingface_hub up front, with no special requirements.Authentication is the token you already have.Set HF_TOKEN in your environment and hand it to a run with --secret HF_TOKEN; SkyPilot uses it for the mount on whatever cloud the job lands.

One token works whether the job lands on AWS, GCP, Azure, Nebius, Lambda, or your own Kubernetes cluster, so there are no per-cloud bucket keys to juggle.No egress: storage stops deciding where you run GPU capacity rarely comes from one place anymore.

To get enough H100s and H200s, teams hold reserved and committed capacity across several vendors at once (a block on a hyperscaler, a cluster on a neocloud, maybe an on-prem rack) and run wherever they have allocation.

SkyPilot is built for this: one job spec, scheduled across 20+ clouds, Kubernetes, and on-prem, landing on whichever reserved cluster is free.Object storage has been the catch.

Object stores are regional and per-cloud, so feeding a GPU or an inference server that sits in a different vendor's data center means either keeping a copy of your data in every vendor's bucket or paying to pull it across.Most clouds charge egress (around $0.

09/GB out of AWS) the moment data leaves their network, and often between regions inside one cloud.Pulling a base model onto every inference node, or iterating a dataset for several epochs from a cluster on another cloud, adds a hefty bill on top of GPUs you have already reserved.

Teams end up pinning each run to whichever vendor holds the data and leaving the rest of their capacity idle.Hugging Face Storage takes that cost off the table where it bites: the read side.

With no egress or CDN fees and storage at $12-18/TB/month (versus AWS S3 at roughly $23/TB plus egress), the same bucket is reachable from every one of those clusters, and reading from it is free no matter where the GPUs run.

Writing back still costs your compute cloud's usual egress, the same as it would to any off-cloud store, but for most AI work the reads dominate: a dataset streamed over many epochs, or model weights pulled onto every new training or inference node.

So you stop pinning each run to whichever vendor holds a copy of the data.A quick benchmark To collect some benchmark numbers, we ran a small fine-tune: Qwen/Qwen3.

5-4B on the HuggingFaceH4/Multilingual-Thinking dataset with TRL's SFTTrainer, mounting the model read-only from its Hub repo and writing every checkpoint to a Hugging Face Bucket.The same SkyPilot YAML ran on AWS, GCP, and Lambda, changing only --infra.

SkyPilot placed each job wherever GPUs were free, and all three read and wrote the same bucket.# qwen-sft.yaml.Launch anywhere: sky launch qwen-sft.yaml --infra aws|gcp|...resources: accelerators: H100:1 # or whatever the cloud has file_mounts: /base-model: source: hf://Qwen/Qwen3.

5-4B # read-only, lazy-mounted from the Hub store: hf mode: MOUNT /checkpoints: source: hf://buckets/my-org/qwen-sft # read-write Bucket store: hf mode: MOUNT run: | python train.py --model /base-model --output_dir /checkpoints What we measured: The model loaded free on every cloud.

Lazy reads pull only what from_pretrained touches, so it was ready to train in about 30 seconds (up to 500 MB/s).Because Hugging Face charges no egress, that pull cost nothing; had the model lived in S3, every read to a GPU on another cloud would have been billed egress ($0.09/GB on AWS).

Checkpoints streamed straight to the bucket at up to ~170 MB/s (8.43 GB of weights each) and persisted past the GPU instance.

Per cloud, checkpoints wrote to the bucket at: Cloud GPU Checkpoint write AWS (us-east-2) L40S ~168 MB/s GCP (us-central1) L4 ~123 MB/s Lambda (us-west-3) H100 ~112 MB/s Xet-backed storage: dedup for checkpoints and model variants Hugging Face Buckets are built on Xet, which uses content-defined chunking to split files into ~64 KB chunks and store each unique chunk once.

Because the boundaries follow the content, an edit changes only the chunks it touches and the rest are recognized as already stored.This pays off in a few places: Incremental and adapter checkpoints.

When you freeze layers, train adapters, or otherwise leave most weights untouched between saves, only the changed chunks upload instead of the whole checkpoint.Model variants that share a base.

Fine-tunes and quantizations of one base model overlap heavily, so the shared chunks are stored once across all of them.Datasets you append to.Logs like conversation traces or inference outputs grow by appending rows to large Parquet files.

The existing row groups stay byte-identical, so only the new rows transfer: in Hugging Face's test, appending 10K rows to a 100K-row table moved about 10 MB instead of the full ~106 MB.(If you edit or delete rows in place, write with use_content_defined_chunking=True to keep changes local.

) Re-uploads skip what's already stored.In our test, re-uploading an 8.43 GB blob already in the bucket took about 8 seconds, versus 24 seconds for the first upload, because only chunk hashes move.

The same mechanism lets server-side hf buckets cp between repos and buckets copy by reference instead of re-uploading bytes.How much you save depends on how much your artifacts overlap, but the deduplication is automatic: you write a checkpoint as usual, and only the new chunks leave the machine.

Get started pip install "skypilot[huggingface]" hf auth login # or: export HF_TOKEN=<your-token> Add an hf:// mount to any SkyPilot task and launch.MOUNT needs a base image with glibc 2.34+ and /dev/fuse.

Built together: Hugging Face and SkyPilot The initial store: hf support started as a contribution from Nikhil Jha.The Hugging Face team carried it forward and upstreamed the hf-mount FUSE fixes that let it mount in unprivileged containers, the default on many Kubernetes clusters.

The SkyPilot team wired it into the storage backend.The whole path is open source: SkyPilot, Hugging Face's hf-mount, and the huggingface_hub client.

Resources SkyPilot storage docs Hugging Face Storage Buckets guide hf-mount Xet: content-defined chunking and deduplication SkyPilot Slack community Models mentioned in this article 1 Datasets mentioned in this article 1 More Articles from our Blog partnershipsaudioopen-source-collab Hugging Face and Cerebras bring Gemma 4 to real-time voice AI 71 July 1, 2026 guideopen-source-collab We got local models to triage the OpenClaw repo for FREE!

* 7 June 22, 2026 Community EditPreview Upload images, audio, and videos by dragging in the text input, pasting, or clicking here.Tap or paste here to upload images Comment · Sign up or log in to comment Upvote - Models mentioned in this article 1 Datasets mentioned in this article 1

Related

相關文章

一年砸下110億美元,比紅杉還兇,白宮才是AI圈最猛投資人

美國白宮過去一年在AI領域投入110億美元,規模超越紅杉資本等傳統創投,顯示政府正以國家級資源全面押注AI產業。這筆資金分散於多個聯邦機構,涵蓋基礎模型訓練、醫療及氣候應用等關鍵環節,並強調負責任AI開發。此舉反映美國對維持全球AI領導地位的危機感,但也引發市場機制扭曲與技術商業化延緩的疑慮。

剛剛

一口氣發佈三款教育插件,OpenAI教育產品再升級

OpenAI 推出三款教育插件,分別為課程助手、作業輔導員與互動學習夥伴,旨在協助教師備課與學生自主學習。這些工具整合至教育版平台,強調引導式學習而非直接給答案,並內建防護機制避免學生過度依賴。OpenAI 計畫未來加強多語言支援與特殊教育需求,持續深化教育科技布局。

剛剛

騰訊、字節、阿里,搶著給打工人配「AI助理」

騰訊、字節跳動與阿里巴巴三大中國科技巨頭,近期紛紛推出或升級企業級AI助理,目標是提升白領工作效率。各家AI助理的競爭重點從回答問題轉向執行任務,並分別強調跨應用串聯、主動式智慧與企業級安全等不同特色。儘管面臨資料隱私與AI幻覺等挑戰,但市場調查顯示超過六成中國企業計劃在一年內導入AI辦公工具。

剛剛

推行AI提效後,策劃們開始加班趕工期

當AI開始重寫小遊戲生產流程,真正的變化何時發生?這個問題在近期引發了業界廣泛討論。隨著人工智慧技術逐步滲透進創意與策劃領域,許多公司開始導入AI工具來提升工作效率,然而實際情況卻與預期有所出入。部分策劃人員反映,在推行AI提效後,他們不僅沒有減少工作量,反而因為系統調整與流程磨合,導致加班趕工期的現象頻繁出現。 這場變革的起點,源自於企業對AI生產力的高度期待。許多遊戲開發與內容製作公司,尤其是中小型團隊,紛紛導入AI輔助工具,試圖透過自動化生成文案、腳本、美術素材甚至程式碼,來縮短專案週期。

12 分鐘前

DeepSeek大漲價,Token價格戰終於要結束了?

DeepSeek大幅調漲API服務價格,引發市場對AI模型價格戰是否結束的討論。業界分析指出,漲價反映營運成本壓力與市場定位調整,可能代表中國AI產業從低價競爭轉向追求盈利與可持續發展。未來競爭焦點將從價格轉向模型效果與生態系統完整性,但漲價能否終結價格戰仍取決於市場供需與競爭對手反應。

40 分鐘前

狂攬130億!英偉達投的AI基建獨角獸又融資了

澳洲AI基礎設施獨角獸Firmus宣布完成20億美元(約136億人民幣)戰略股權融資,現有投資方英偉達與Coatue持續參投,並新增黑石旗下基金及Jane Street。該公司專注於設計、建設及營運AI工廠,核心產品HyperCube整合供電、液冷與伺服器機架,並提供GPU雲端算力服務。英偉達透過股權投資與技術合作,協助Firmus擴張亞太地區AI數據中心,同時擴大其晶片與計算架構的市場覆蓋。

44 分鐘前