0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ローカルで LLM を使うときに `from_pretrained` がエラーになる問題と解決策

Posted at

Hugging Face の transformers でローカルの LLM モデルを from_pretrained で読み込もうとしたときに、
すでに重みファイルがあるのにエラーになることがあります。
ここでは、その主な原因と解決策をまとめます。

1. ローカルファイルだけを使う(公式推奨)

すでにモデル一式(pytorch_model.bin, config.json, tokenizer.json など)がローカルにある場合、
ネットから取得しようとして失敗するのを防ぐために local_files_only=True を指定します。

from transformers import AutoModelForCausalLM, AutoTokenizer

model_dir = "/path/to/local/model_dir"  # 保存済みのモデルフォルダ
tokenizer = AutoTokenizer.from_pretrained(model_dir, local_files_only=True)
model = AutoModelForCausalLM.from_pretrained(model_dir, local_files_only=True)
  • local_files_only=True は「ローカルにあるファイルだけを使用する」設定です。
  • 完全オフライン動作にするなら環境変数も活用できます。
export HF_HUB_OFFLINE=1
# 旧バージョンでは
# export TRANSFORMERS_OFFLINE=1
  • まだローカルにファイルがない場合は、ネット接続できる環境で一度ダウンロードして
    huggingface_hub.snapshot_download() などで保存 → そのフォルダを from_pretrained に渡す方法が確実です。

2. SSL エラーを回避する(ネット経由読み込み時)

社内プロキシや中間証明書の影響で
SSL: CERTIFICATE_VERIFY_FAILED が出る場合の対処法です。

2-1. 証明書検証を無効化(応急処置)

import requests
from huggingface_hub import configure_http_backend

def backend_factory():
    session = requests.Session()
    session.verify = False  # ← 証明書検証をオフ(自己責任)
    return session

configure_http_backend(backend_factory=backend_factory)

セキュリティ上のリスクがあるため、本番環境では非推奨。

2-2. 環境変数で検証をスキップ(応急処置)

export CURL_CA_BUNDLE=""

こちらも検証を無効化するため、常用はおすすめしません。

2-3. 正攻法:社内 CA を追加

社内プロキシ(例:Cisco Umbrella)が TLS を中間復号している場合、
社内 CA 証明書を certifi のルートストアに追加するのが本来の解決策です。

まとめ

  • ローカルにモデルがある場合local_files_only=True + 必要なら HF_HUB_OFFLINE=1 を使うのが最も安全。
  • ネット経由が必要だが証明書エラーになる場合 → 社内 CA を導入(推奨)、急ぎの場合のみ検証オフで回避。
  • from_pretrained の詳細パラメータは公式ドキュメントを参照。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?