Hugging Face Hubのキャッシュディレクトリを変更する方法

この記事は公開から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等から設定することをオススメします。


参考ウェブサイトなど

以上です。

シェアする

  • このエントリーをはてなブックマークに追加

フォローする