Hugging Faceモデルのダウンロード方法
Hugging Faceは機械学習モデルのホスティングプラットフォームとして広く利用されていますが、モデルのダウンロード方法は複数存在します。ここでは様々なシナリオに応じた効率的なダウンロード方法を紹介します。
公式ライブラリを使用する方法
Hugging Faceモデルをダウンロードする最も一般的で推奨される方法は、公式のPythonライブラリを使用することです。
transformersライブラリを使用
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
ライブラリを使用できます。
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ツールを使用することで、コマンドラインから直接モデルをダウンロードできます。
# huggingface_hubのインストール
pip install huggingface_hub
# モデルのダウンロード
huggingface-cli download bert-base-uncased
Git LFSを使用する方法
多くのHugging FaceモデルはGit LFS(Large File Storage)で管理されています。
# 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ブラウザやコマンドラインツールを使用して直接ファイルをダウンロードすることも可能です。
ブラウザからのダウンロード
- モデルページ(例: https://huggingface.co/bert-base-uncased)にアクセス
- 「Files and versions」タブをクリック
- ダウンロードしたいファイル横のダウンロードアイコンをクリック
wgetやcurlを使用する場合
# 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
複数ファイルがある場合はスクリプトを使用すると便利です。
#!/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
ネットワーク環境が不安定な場合の対処法
低速または不安定なネットワーク環境では、以下の方法が有効です。
# レスミュでダウンロード(途中から再開可能)
wget -c [URL]
# curlで低速安定ダウンロード
curl -L -O [URL] --limit-rate 500k
サードパーティツールの利用
コミュニティによって開発されたツールも利用できます。
# 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-cli
やsnapshot_download
が適している - 大容量モデルでは: Git LFSまたは直接ダウンロードが信頼性が高い
- ネットワーク制限がある場合: レジューム機能を持つwgetやcurlが有効
INFO
Hugging Faceモデルのライセンス条件はモデルごとに異なります。商用利用前には必ずライセンスを確認してください。