KeyVID / UPLOAD_GUIDE.md
RyanWW's picture
Upload KeyVID model files
57ed8f9 verified

KeyVID 上传到 Hugging Face 指南

📦 快速开始

方法1: 使用快速上传脚本 (推荐)

cd /dockerx/groups/KeyVID
python upload_fast.py

方法2: 使用完整功能上传脚本

cd /dockerx/groups/KeyVID
python upload.py

🚀 如何加快上传速度

1. 使用 multi_commits=True (已内置)

  • ✅ 允许分批提交文件,不需要等待所有文件上传完成
  • ✅ 大文件可以先开始上传,小文件可以并行
  • ✅ 即使中断,已上传的文件也会保存

2. 网络优化

# 检查当前上传速度
speedtest-cli

# 如果使用代理,确保代理设置正确
export HTTP_PROXY=http://proxy:port
export HTTPS_PROXY=http://proxy:port

3. 减少上传文件大小

  • ✅ 脚本已自动排除不必要的文件 (save_results, pycache, .git等)
  • 💡 如果需要,可以手动排除更多文件,修改 ignore_patterns

4. 使用 Hugging Face CLI (备选方案)

# 安装 Hugging Face CLI
pip install -U huggingface_hub[cli]

# 登录
huggingface-cli login

# 直接上传整个文件夹
huggingface-cli upload RyanWW/KeyVID /dockerx/groups/KeyVID --repo-type model

5. 分批上传策略 (对于超大仓库)

如果上传经常失败,可以分批上传:

# 只上传关键文件
huggingface-cli upload RyanWW/KeyVID /dockerx/groups/KeyVID/keyframe_generation --repo-type model --include "*.ckpt"

6. 使用 Git LFS (如果文件已在 Git 中)

如果文件已经在 Git LFS 中管理,可以直接推送:

cd /dockerx/groups/KeyVID
git remote add hf https://huggingface.co/RyanWW/KeyVID
git push hf main

⚙️ 优化配置

调整并发数 (upload.py)

编辑 upload.py,修改 MAX_WORKERS:

MAX_WORKERS = 16  # 增加并发线程数(根据网络和CPU调整)

环境变量设置

# 设置 Hugging Face token
export HF_TOKEN=your_token_here

# 设置上传超时(秒)
export HF_HUB_TIMEOUT=3600

# 禁用进度条(如果终端有问题)
export HF_HUB_DISABLE_PROGRESS=0

📊 预估上传时间

基于你的数据量 (67GB):

  • 10 Mbps: 约 15 小时
  • 100 Mbps: 约 1.5 小时
  • 1 Gbps: 约 9 分钟

实际时间取决于:

  • 网络速度
  • Hugging Face 服务器负载
  • 文件大小分布(大文件需要更多时间)

🛠️ 故障排除

问题1: 上传中断

# 重新运行脚本,Hugging Face 支持断点续传
python upload_fast.py

问题2: 认证失败

# 重新登录
huggingface-cli login

# 或使用 token
export HF_TOKEN=your_token

问题3: 网络超时

# 增加超时时间
export HF_HUB_TIMEOUT=7200  # 2小时

问题4: 大文件上传慢

  • 确保使用 multi_commits=True (已在脚本中)
  • 检查网络连接稳定性
  • 考虑使用更快的网络环境

📝 检查上传状态

# 查看仓库文件
huggingface-cli repo list-files RyanWW/KeyVID

# 或访问网页
# https://huggingface.co/RyanWW/KeyVID

💡 最佳实践

  1. 首次上传: 使用 upload_fast.py,它针对大文件优化
  2. 增量更新: 可以直接重新运行脚本,只会上传新文件
  3. 监控进度: 脚本会显示详细进度信息
  4. 保持连接: 确保网络连接稳定,避免中断