https://zhuanlan.zhihu.com/p/663712983
1. 官方加速方案:hf_transfer + huggingface‑cli 🛠
这是 Hugging Face 推荐的加速方式。
pip install -U huggingface_hub
pip install "huggingface_hub[hf_transfer]"
export HF_HUB_ENABLE_HF_TRANSFER=1
huggingface-cli download Qwen/Qwen2-VL-7B-Instruct --local-dir ./models/Qwen2-VL-7B-Instruct
- hf_transfer 是由官方提供、基于 Rust 的高性能下载工具,用于加速大文件传输 (知乎专栏, Hugging Face)。
- 支持断点续传、并行下载、进度显示,下载速度明显提升。
2. 国内镜像 + huggingface-cli
配合国内镜像如 https://hf-mirror.com
,可以极大提升国内下载速度:
export HF_ENDPOINT=https://hf-mirror.com
export HF_HUB_ENABLE_HF_TRANSFER=1
huggingface-cli download Qwen/Qwen2-VL-7B-Instruct --local-dir ./models/Qwen2-VL-7B-Instruct --resume-download
3. 使用“hf-mirror‑cli”工具
专门为国内用户定制,整合镜像 + 并发 + 断点续传:
pip install hf-cli
hf-mirror-cli download Qwen/Qwen2-VL-7B-Instruct --local-dir ./models/Qwen2-VL-7B-Instruct
- 自动检测网络、支持断点续传、并行下载,兼容官方命令行 (CSDN博客)。
4. 使用“hfd”(镜像站开发的下载工具)
轻量脚本 + aria2
,更稳定,对大文件更友好:
wget https://hf-mirror.com/hfd/hfd.sh
chmod +x hfd.sh
export HF_ENDPOINT=https://hf-mirror.com
./hfd.sh Qwen/Qwen2-VL-7B-Instruct --tool aria2c -x 4
- 支持并发下载、断点续传,完全绕过官方 hub 的速度瓶颈 (CSDN博客)。
5. Python SDK + 手动参数控制
如果你希望整合下载代码,可用 Python 接口:
from huggingface_hub import snapshot_download
snapshot_download(
repo_id="Qwen/Qwen2-VL-7B-Instruct",
local_dir="./models/Qwen2-VL-7B-Instruct",
cache_dir="/data/models/hf_cache", # 对应 HF_HOME
endpoint="https://hf-mirror.com", # 镜像源
local_dir_use_symlinks=False, # 复制而非软链
resume_download=True # 断点续传
)
- 完全自定义缓存路径、镜像源、断点续传等选项 。
方法对比
方法 | 加速手段 | 并发 / 断点续传 | ease of use |
---|---|---|---|
hf_transfer + CLI | 官方 Rust 加速库 | 支持 | 官方推荐、CLI 保持一致性 |
CLI + 镜像源 | 更换域名 + 加速库 | 支持 | 稳定、支持自定义目录 |
hf‑mirror‑cli | 镜像 + 自动配置 | 支持 | 一键集成,针对国内优化 |
hfd + aria2 | 脚本 + aria2 并发下载 | 支持 | 高性能下载大模型 |
Python snapshot_download | 完全代码化 | 支持 | 灵活整合到工程中 |
推荐方案
对于希望“即好用又快速”的选择,推荐以下顺序:
- CLI + 镜像源 + hf_transfer:最简单且高速。
- hf-mirror-cli:配置最少,一键加速体验佳。
- hfd + aria2:适合下载大文件,稳定性强。
- Python 接口方式:适合集成到脚本或自动化流程中。