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-uncasedGit 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-uncasedWARNING
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モデルのライセンス条件はモデルごとに異なります。商用利用前には必ずライセンスを確認してください。