Windows で llama-cli から Hugging Face に直接アクセスすると SSL 証明書検証に失敗する場合の対処

Windows で llama-cli の -hf を使って Hugging Face のモデルをダウンロードするときに、SSL 証明書検証が失敗する原因と対処方法を整理します。

Windows で次のコマンドを実行したとします。

1
llama-cli -hf unsloth/gemma-4-E4B-it-GGUF

そして、次のようなエラーが表示される場合があります。

1
2
get_repo_commit: error: HTTPLIB failed: SSL server verification failed
error: failed to download model from Hugging Face

この場合、問題は CUDA や llama.cpp 本体ではないことが多いです。多くの場合、現在の環境でプログラムがシステムの証明書チェーンを正しく参照できず、HTTPS の検証に失敗しています。

ログを見ると、ggml-rpc.dllggml-cpu-alderlake.dll は正常に読み込まれています。つまり、実行環境自体はおおむね利用可能で、問題は主にモデルのダウンロード段階にあります。

一番手軽な方法:先にモデルを手動ダウンロードする

とにかく早く動かしたい場合は、ローカルに手動でダウンロードする方法がもっとも安定しています。

  1. 対象の Hugging Face リポジトリページを開きます。
  2. Files and versions から必要な .gguf ファイルをダウンロードします。
  3. ダウンロード後、ローカルファイルのパスを指定して実行します。
1
llama-cli -m C:\Users\knightli\Downloads\gemma-4-e4b-it.gguf

この方法なら、-hf のダウンロード段階で発生する SSL 検証問題を回避できます。まずモデルが正常に推論できるか確認したい場合に向いています。

それでも -hf の自動ダウンロードを使いたい場合

証明書ファイルのパスを手動で指定し、現在のセッションで利用できる CA 証明書をプログラムに見つけさせます。

cacert.pem は curl 公式が管理している CA Extract ページから取得できます。

ブラウザでダウンロードする場合は、上の直接ダウンロード URL を開いて cacert.pem として保存します。PowerShell で固定ディレクトリにダウンロードすることもできます。

1
2
New-Item -ItemType Directory -Force C:\certs
Invoke-WebRequest -Uri https://curl.se/ca/cacert.pem -OutFile C:\certs\cacert.pem

ダウンロード後、コマンドラインで次のように設定します。

1
2
set SSL_CERT_FILE=C:\certs\cacert.pem
set CURL_CA_BUNDLE=C:\certs\cacert.pem

その後、元のコマンドをもう一度実行します。

1
llama-cli -hf unsloth/gemma-4-E4B-it-GGUF

問題の原因が証明書チェーンにある場合、この方法で解決できることが多いです。

记录并分享
Hugo で構築されています。
テーマ StackJimmy によって設計されています。