この記事は公開から1年以上経過しています。
巷で話題のオンプレで使えるChatGPTのような大規模言語モデルMeta LLaMA 2
を試したときにAutoTokenizer.from_pretrained(cache_dir='xxx')
などのモデルダウンロード先ディレクトリを設定しても、ユーザーディレクトリ配下の~/.cache/huggingface/hub
配下にモデルがダウンロードされてしまっていたため、その対応についての備忘録。
Hugging Faceの事前学習済モデルのダウンロード先ディレクトリを変更したい場合は、過去のエントリ「Hugging Faceのモデルダウンロード先ディレクトリを変更する方法」をご参照ください。
対応
環境変数HUGGINGFACE_HUB_CACHE
にキャッシュディレクトリを設定しておく。
※本例では実行時のカレントディレクトリ内にcacheディレクトリを設定しています。
ソースから設定する場合:
import os
# transformersがインポートされる前にキャッシュディレクトリを設定しておく
os.environ['HUGGINGFACE_HUB_CACHE'] = 'cache'
import transformers
VSCodeのlaunch.jsonで設定する場合:
{
"version": "0.2.0",
"configurations": [
{
"name": "Python: Current File",
"type": "python",
"request": "launch",
"program": "${file}",
"console": "integratedTerminal",
"justMyCode": false,
"env": {
// ここでキャッシュディレクトリを設定しておく
"HUGGINGFACE_HUB_CACHE": "cache"
}
}
]
}
ソースコードではなくシェルやlaunch.json
等から設定することをオススメします。
参考ウェブサイトなど
- Hugging Face Docs
Manage huggingface_hub cache-system
以上です。