huggingface/hf-mount

Mount Hugging Face Buckets and repos as local filesystems. No download, no copy, no waiting.

해결하는 문제

hf-mount는 Hugging Face 버킷과 리포지토리를 마치 로컬 파일 시스템인 것처럼 접근할 수 있게 해주는 도구입니다. 이로 인해 사용 전에 전체 리포지토리를 다운로드하거나 클론할 필요가 없어지며, 특히 디스크 공간이 제한된 환경이나 다운로드 시간이 현실적이지 않은 대규모 머신러닝 모델과 데이터셋을 다룰 때 매우 유용합니다.

작동 방식

이 도구는 FUSE(사용자 공간의 파일 시스템) 또는 NFS(네트워크 파일 시스템) 백엔드를 사용하여 Hugging Face 스토리지를 로컬 파일 시스템으로 노출합니다. 지연 로딩(lazy loading)을 사용하여, 코드가 실제로 파일을 읽을 때만 네트워크에서 파일을 가져옵니다.

쓰기 모드는 두 가지를 지원합니다: 간단한 추가 전용 쓰기용 기본 "스트리밍" 모드와, 로컬 스테이징 파일을 사용해 임의의 쓰기 및 탐색을 지원하는 "고급 쓰기" 모드입니다. 또한 오버레이 모드도 제공되며, 이는 읽기 전용 원격 소스 위에 쓰기 가능한 로컬 레이어를 제공합니다.

대상 사용자

  • 머신러닝 엔지니어 및 연구자: 전체 리포지토리 다운로드 없이 대규모 모델과 데이터셋을 학습, 추론, 평가에 사용하고 싶은 사람.
  • 개발자: ls, cat, find, grep 등의 표준 유닉스 도구를 사용해 리포지토리 내용을 탐색하고 싶지만, 클론하고 싶지 않은 사람.
  • 디스크 공간이 제한된 사용자: 로컬 스토리지가 제약된 환경에서 작업하는 사람.

주요 기능

  • 지연 로딩: 애플리케이션이 실제로 접근하는 바이트만 다운로드됩니다.
  • 이중 백엔드: NFS(루트 권한 필요 없음)와 FUSE(커널 통합이 더 밀접)를 모두 지원합니다.
  • 서브디렉터리 마운트: 리포지토리나 버킷의 특정 하위 디렉터리를 마운트할 수 있습니다.
  • 원격 동기화: 실시간 이벤트 스트림과 백그라운드 폴링을 사용해 로컬 뷰를 원격 변경 사항과 실시간으로 동기화합니다.
  • 오버레이 모드: 로컬 쓰기 내용을 디스크에 영구 저장하면서도 원격 소스는 읽기 전용으로 유지할 수 있습니다. 공유 컴파일 캐시에 유용합니다.
  • POSIX 메타데이터: 메모리 내에서 기본적인 파일 권한, 타임스탬프, 심볼릭 링크를 지원합니다.

관련

  • Dispatch
  • Dispatch
  • 프로젝트
  • 프로젝트
  • Dispatch