Files
2026-06-16 11:46:53 +08:00

2.1 KiB
Raw Permalink Blame History

修复模型下载失败

当前状态

mineru-models-download --source modelscope 在执行时,12 个小型配置文件下载成功,但最大的文件 model.safetensors(2.45 GB)下载失败。

错误分析

[Errno 2] No such file or directory:
'/opt/models/modelscope/models/._____temp/OpenDataLab/MinerU2.5-Pro-2605-1.2B/model.safetensors'

modelscope 的 snapshot_download() 将大文件先写入临时目录 ._____temp,再移动到最终位置。临时目录创建不完整或下载中断导致大文件失败。

修复方案

步骤 1:清理损坏的下载状态

在宿主机上删除临时目录和损坏文件,保留已下载成功的 12 个小文件:

rm -rf /opt/project/mineru-rocm/docker/data/models/modelscope/models/._____temp
rm -f /opt/project/mineru-rocm/docker/data/models/modelscope/models/OpenDataLab/MinerU2.5-Pro-2605-1.2B/model.safetensors

步骤 2:确保宿主机目录完整

mkdir -p /opt/project/mineru-rocm/docker/data/{input,output,models/modelscope,miopen}

步骤 3:重启所有容器使挂载生效

cd /opt/project/mineru-rocm/docker
docker compose down
docker compose up -d
docker compose --profile gradio up -d

步骤 4:在 worker0 中重试下载

modelscope 的 snapshot_download 会检查已有文件并跳过,只重新下载缺失的 model.safetensors:

docker compose exec worker0 mineru-models-download --source modelscope
# 交互提示选 all

步骤 5(备选):如果重试仍然失败

在 worker0 容器内手动创建临时目录后重试:

docker compose exec worker0 bash -c "
mkdir -p /opt/models/modelscope/models/._____temp/OpenDataLab/MinerU2.5-Pro-2605-1.2B
mineru-models-download --source modelscope
"

备注

  • 本次仅在 worker0 下载,但因为 /opt/models 是共享卷挂载(./data/models:/opt/models),所有容器都可见
  • 模型持久化在宿主机 ./data/models/,容器重建不会丢失
  • 如果 modelscope 下载持续不稳定,可切换到 huggingface 源:MINERU_MODEL_SOURCE=huggingface(需要代理)