Hugging Face와 SkyPilot 통합으로 제로 이그레스 AI 스토리지
Hugging Face와 SkyPilot이 통합되어 AI 개발자가 Hugging Face Hub에 모델과 데이터셋을 저장하면서 어떤 클라우드 공급자에서도 컴퓨팅 워크로드를 실행할 수 있게 되었습니다. 이 통합은 제로 이그레스 스토리지를 제공함으로써 '크로스 클라우드 전송 세금'을 제거하며, GPU가 위치한 위치에 관계없이 사용자가 Hub 리포지토리와 버킷을 SkyPilot 작업에 직접 마운트할 수 있도록 합니다.
다중 클라우드에서의 제로 이그레스 스토리지
클라우드 GPU 용량은 하이퍼스케일러, 네오클라우드, 온프레미스 등 여러 공급자에 걸쳐 종종 조각화되어 있습니다. 전통적으로, 지역 객체 스토어(AWS S3 등)에서 다른 클라우드의 GPU로 데이터를 이동할 때 상당한 이그레스 요금이 발생합니다(AWS 기준 약 $0.09/GB).
이그레스 또는 CDN 요금이 없는 Hugging Face Storage를 사용하면 팀은 20+ 클라우드, Kubernetes, 온프레미스 클러스터 전반에 걸쳐 단일 소스에서 모델과 데이터셋을 읽을 수 있습니다.これにより、每个供应商的存储桶之间数据的冗余副本을 유지할 필요가 없어지고, 데이터가 위치한 곳에 따라 특정 클라우드로 워크로드가 '핀ning'되는 것을 방지합니다.
기술적 구현: store: hf and hf://
SkyPilot은 이제 store: hf 구성과 hf:// URI 스키마를 통해 Hugging Face Storage를 일급 백엔드로 지원합니다.これにより, 허브 자산 세 가지 유형을 마운트할 수 있습니다:
- Hugging Face Buckets: 읽기-쓰기 액세스를 체크포인트, 로그, 처리된 데이터에 제공합니다.
- Model Repositories: 모델 가중치에 대한 읽기 전용 액세스
- Dataset Repositories: 데이터셋에 대한 읽기 전용 액세스, 종종 특정 리비전에 고정됨
마운트 모드: MOUNT vs. COPY
- MOUNT: Utilizes the
hf-mountFUSE backend. It performs lazy reads, pulling only the bytes required by the application. This allows GPUs to begin training or inference almost immediately without waiting for a full download.MOUNTalso maintains an on-disk cache for repeat reads. - COPY: Downloads the assets via the
huggingface_hubclient upfront, requiring no special FUSE requirements.
인증은 단일 HF_TOKEN을 SkyPilot 실행에 시크릿으로 전달하여 처리되며, 이는 모든 클라우드 공급자에서 작동합니다.
효율을 위한 Xet 기반 중복 제거
Hugging Face 버킷은 Xet 위에 구축되어 있으며, Xet은 콘텐츠-정의 청킹을 사용하여 파일을 약 64 KB 청크로 나눕니다.このアーキテクチャはいくつかの効率向上を提供します:
- Incremental Checkpoints: 저장 사이에 변경된 청크만 업로드되어 어댑터 체크포인트 또는 동결된 레이어의 전송 시간이 단축됩니다.
- Model Variants: 기본 모델과 그 파인튜닝 또는 양자화 간에 공유되는 청크는 한 번만 저장됩니다.
- Dataset Appends: 큰 Parquet 파일에 행을 추가할 때 새로운 데이터만 전송됩니다. 테스트에서 100K 행 테이블에 10K 행을 추가할 때 약 10 MB가 전송되었고, 약 106 MB가 아닌 경우였습니다.
- Fast Re-uploads: 버킷에 이미 존재하는 blob을 재업로드할 때 청크 해시만 전송되므로 znacz히 빠릅니다(예: 8.43 GB 파일의 경우 8초 vs 24초).
성능 벤치마크
Qwen/Qwen3.5-4B와 Multilingual-Thinking 데이터셋을 사용한 파인튜닝 테스트에서 다음과 같은 결과가 관찰되었습니다:
- Model Loading: 모델은 약 30초 안에 훈련 준비가 되었으며, 속도는 초당 ~500 MB까지 도달했습니다. 제로 이그레스 정책 덕분에 AWS, GCP, Lambda에서 비용이 발생하지 않았습니다.
- Checkpoint Writing: 각 8.43 GB의 체크포인트가 다음과 같은 처리량으로 버킷에 스트리밍되었습니다:
| 클라우드 | GPU | 체크포인트 쓰기 속도 |
|---|---|---|
| AWS (us-east-2) | L40S | ~168 MB/s |
| GCP (us-central1) | L4 | ~123 MB/s |
| Lambda (us-west-3) | H100 | ~112 MB/s |
시작하기
이 통합을 사용하려면 사용자는 필요한 패키지를 설치할 수 있습니다:
pip install "skypilot[huggingface]"
사용자는その後 hf auth login을 사용하거나 HF_TOKEN 환경 변수를 내보내어 인증해야 합니다. MOUNT 모드의 경우, 기본 이미지는 /dev/fuse와 glibc 2.34 이상을 가져야 합니다.
Sources
관련
- Dispatch
- Dispatch
- Dispatch
- Dispatch
- Dispatch