Skip to content

Hugging Faceモデルのダウンロード方法

Hugging Faceは機械学習モデルのホスティングプラットフォームとして広く利用されていますが、モデルのダウンロード方法は複数存在します。ここでは様々なシナリオに応じた効率的なダウンロード方法を紹介します。

公式ライブラリを使用する方法

Hugging Faceモデルをダウンロードする最も一般的で推奨される方法は、公式のPythonライブラリを使用することです。

transformersライブラリを使用

python
from transformers import AutoTokenizer, AutoModelForMaskedLM

tokenizer = AutoTokenizer.from_pretrained("bert-base-uncased")
model = AutoModelForMaskedLM.from_pretrained("bert-base-uncased")

このコードを初めて実行すると、自動的にモデルがダウンロードされ、ローカルキャッシュに保存されます。デフォルトの保存先は通常 ~/.cache/huggingface/ または ~/.cache/torch/ です。

huggingface_hubライブラリを使用

より細かい制御が必要な場合は、huggingface_hub ライブラリを使用できます。

python
from huggingface_hub import snapshot_download

# モデル全体をダウンロード
model_path = snapshot_download(repo_id="bert-base-uncased")

# 特定のファイルのみダウンロード
from huggingface_hub import hf_hub_download
model_file = hf_hub_download(
    repo_id="bert-base-uncased",
    filename="pytorch_model.bin"
)

コマンドラインツールを使用する方法

huggingface-cliの利用

Hugging Face公式のCLIツールを使用することで、コマンドラインから直接モデルをダウンロードできます。

bash
# huggingface_hubのインストール
pip install huggingface_hub

# モデルのダウンロード
huggingface-cli download bert-base-uncased

Git LFSを使用する方法

多くのHugging FaceモデルはGit LFS(Large File Storage)で管理されています。

bash
# Git LFSのインストール(未の場合)
# https://git-lfs.com/ からインストール
git lfs install

# モデルのクローン
git clone https://huggingface.co/google-bert/bert-base-uncased

WARNING

git lfs clone コマンドは非推奨となっています。代わりに git clone を使用してください。

直接ダウンロードする方法

Webブラウザやコマンドラインツールを使用して直接ファイルをダウンロードすることも可能です。

ブラウザからのダウンロード

  1. モデルページ(例: https://huggingface.co/bert-base-uncased)にアクセス
  2. 「Files and versions」タブをクリック
  3. ダウンロードしたいファイル横のダウンロードアイコンをクリック

wgetやcurlを使用する場合

bash
# wgetを使用した例
wget https://huggingface.co/bert-base-uncased/resolve/main/pytorch_model.bin

# curlを使用した例
curl -L -O https://huggingface.co/bert-base-uncased/resolve/main/pytorch_model.bin

複数ファイルがある場合はスクリプトを使用すると便利です。

bash
#!/bin/bash
for i in {1..15}; do
    wget --show-progress -c "https://huggingface.co/model-name/resolve/main/file-0000${i}-of-00015.gguf" \
         -O "file-0000${i}-of-00015.gguf"
done

ネットワーク環境が不安定な場合の対処法

低速または不安定なネットワーク環境では、以下の方法が有効です。

bash
# レスミュでダウンロード(途中から再開可能)
wget -c [URL]

# curlで低速安定ダウンロード
curl -L -O [URL] --limit-rate 500k

サードパーティツールの利用

コミュニティによって開発されたツールも利用できます。

bash
# HuggingFaceModelDownloaderの使用例
pip install hfdownloader
hfdownloader -m bert-base-uncased

キャッシュの場所の確認

ダウンロードしたモデルは以下のパスにキャッシュされます。

  • Linux: ~/.cache/huggingface/hub
  • Windows: C:\Users\[USERNAME]\.cache\huggingface\hub
  • Mac: ~/Library/Caches/huggingface/hub

まとめ

Hugging Faceからモデルをダウンロードする方法は多岐にわたりますが、用途に応じて最適な方法を選択しましょう。

  • 開発環境では: transformers ライブラリの自動ダウンロード機能が最も便利
  • バッチ処理では: huggingface-clisnapshot_download が適している
  • 大容量モデルでは: Git LFSまたは直接ダウンロードが信頼性が高い
  • ネットワーク制限がある場合: レジューム機能を持つwgetやcurlが有効

INFO

Hugging Faceモデルのライセンス条件はモデルごとに異なります。商用利用前には必ずライセンスを確認してください。