「SafetensorError: Error while deserializing header」の原因と対処
モデル(チェックポイントやLoRA)を読み込もうとすると、こう止まることがある。
safetensors_rust.SafetensorError: Error while deserializing header: HeaderTooLargeこれは、読み込んだファイルが正しいsafetensors形式として壊れている、という意味だ。原因のほとんどは、ファイルの破損かダウンロードの未完了にある。
まずファイルサイズを確認する
本来は数百MBから数GBあるはずのモデルが、数KBしかないことがある。その場合、中身はモデル本体ではなく、ダウンロードに失敗した断片や、Git LFSのポインタファイル、エラーページのHTMLだったりする。
ls -lh model.safetensors極端に小さいなら、それは本物のモデルではない。
取り直す
ダウンロードが途中で切れた可能性が高い。ブラウザの右クリック保存ではなく、コマンドで取り直すと安定する。
huggingface-cli download <repo> <file> --local-dir ./models置き場所と拡張子を確認する
拡張子が .safetensors で、ComfyUIやWebUIの正しいフォルダ(checkpoints / loras など)に置かれているかも確認する。
まとめ
- 原因はファイルの破損かダウンロード未完了
- まずファイルサイズを見る(小さすぎないか)
- LFSポインタやHTMLを保存していないか疑う
- コマンドで取り直す
- 拡張子と置き場所も確認する