huggingface/hf-mount

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

何を解決するか

hf-mount は、Hugging Face バケットやリポジトリを、コンピュータ上のローカルフォルダのようにアクセスできるようにします。これにより、使用前に巨大なモデルやデータセットを完全にダウンロードする必要がなくなり、ディスク容量を節約し、ダウンロード待ちの時間を短縮できます。

動作方法

このツールはアプリケーションと Hugging Face Hub の間のブリッジとして機能し、FUSE(Userspace内のファイルシステム)または NFS(ネットワークファイルシステム)を使用して仮想ファイルシステムを提供します。ファイルは遅延読み込み(lazy loading)で取得され、コードが実際に読み込むバイトのみをダウンロードします。また、順次アクセスを最適化するための適応的プリフェッチバッファも使用しています。xet-core を用いたコンテンツアドレス付きストレージと、fuser を用いた FUSE 実装に基づいて構築されています。

対象ユーザー

  • 機械学習エンジニアおよび研究者:大規模なモデルやデータセットでの学習、推論、評価など、読み取り中心のワークロードを実行する人。
  • ディスク容量が限られた開発者:ローカルに完全なリポジトリを保存できないユーザー。
  • AIエージェントlscatgrep などの標準的な UNIX ツールを使ってデータとやり取りできるが、専用の API は必要ないエージェント。

特徴

  • 遅延読み込み:必要に応じてデータを取得し、リポジトリの完全なクローンを避ける。
  • 二重バックエンド:NFS(root権限不要)と FUSE(カーネル統合がより密接)の両方をサポート。
  • サブフォルダマウント:リポジトリやバケットの特定のサブディレクトリをマウント可能。
  • オーバーレイモード:読み取り専用のリモートビューを書き込み可能なローカルディスクと重ね合わせられる。共有コンパイルキャッシュに有用。
  • リモート同期:バックグラウンドでポーリングを行い、リモートの変更を自動検出し、ローカルビューを更新。
  • 高度な書き込みサポート:ローカルステージングファイルを介して、ランダム書き込み、シーク、上書きをサポート。

関連

  • Dispatch
  • プロジェクト
  • Dispatch
  • Dispatch
  • Dispatch