huggingface
data_error
ai_generated
true
ValueError: safetensors 元数据不匹配:期望 1024 个张量,实际得到 1023 个
ValueError: safetensors metadata mismatched: expected 1024 tensors, got 1023
ID: huggingface/safetensors-metadata-mismatch
85%修复率
85%置信度
1证据数
2023-11-15首次发现
版本兼容性
| 版本 | 状态 | 引入 | 弃用 | 备注 |
|---|---|---|---|---|
| safetensors>=0.3.0 | active | — | — | — |
| transformers>=4.30.0 | active | — | — | — |
| huggingface-hub>=0.16.0 | active | — | — | — |
根因分析
safetensors 文件头部元数据声明的张量数量与实际文件中存储的张量数量不一致,通常是由于下载不完整或检查点损坏导致。
English
The safetensors file header metadata declares a different number of tensors than are actually stored in the file, typically due to incomplete download or corrupted checkpoint.
官方文档
https://huggingface.co/docs/safetensors/en/troubleshooting#metadata-mismatch解决方案
-
Clear the Hugging Face cache and re-download the model: `rm -rf ~/.cache/huggingface/hub/models--org--model-name/` then `from transformers import AutoModel; AutoModel.from_pretrained('org/model-name')` -
Use the huggingface_hub CLI to force re-download: `huggingface-cli download org/model-name --cache-dir /tmp/new-cache --local-dir ./model --force-download`
-
If the file is partially downloaded, use `wget -c` to resume: `wget -c https://huggingface.co/org/model-name/resolve/main/model.safetensors`
无效尝试
常见但无效的做法:
-
Re-download the same file without clearing cache
70% 失败
If the cached file is corrupted, re-downloading to the same cache path without clearing will reuse the broken file.
-
Manually editing the safetensors metadata with a hex editor
95% 失败
Safetensors files are integrity-checked; any manual tampering causes a checksum error and breaks loading entirely.
-
Upgrading transformers to the latest version
60% 失败
The error originates from the safetensors library, not transformers; upgrading transformers alone does not fix the corrupted file.