Huggingface镜像站使用方法总结
方法三:使用 hfd 下载
hfd 是本站开发的 huggingface 专用下载工具,基于成熟工具 git+aria2
,可以做到稳定下载不断线。
0、安装aria2
sudo apt install aria2
如果没有sudo权限或者只想在conda虚拟环境:
conda install -c conda-forge aria2
1、下载hfd
wget https://hf-mirror.com/hfd/hfd.sh
chmod a+x hfd.sh
2、设置环境变量
Linux:
export HF_ENDPOINT=https://hf-mirror.com
Windows Powershell:
$env:HF_ENDPOINT = "https://hf-mirror.com"
3、下载
下载模型:
./hfd.sh gpt2 --tool aria2c -x 4
下载数据集:
./hfd.sh wikitext --dataset --tool aria2c -x 4
4、为命令设置别名
可以为命令创建别名,就可以在任何位置直接使用该命令
alias hfd="$PWD/hfd.sh"
设置别名后,例如下载模型就可以用(直接下载到当前目录):
hfd Qwen/Qwen1.5-0.5B-Chat
命令解释:
$ hfd -h
Usage:
hfd <repo_id> [--include include_pattern] [--exclude exclude_pattern] [--hf_username username] [--hf_token token] [--tool aria2c|wget] [-x threads] [--dataset] [--local-dir path]
Description:
Downloads a model or dataset from Hugging Face using the provided repo ID.
Parameters:
repo_id The Hugging Face repo ID in the format 'org/repo_name'.
--include (Optional) Flag to specify a string pattern to include files for downloading.
--exclude (Optional) Flag to specify a string pattern to exclude files from downloading.
include/exclude_pattern The pattern to match against filenames, supports wildcard characters. e.g., '--exclude *.safetensor', '--include vae/*'.
--hf_username (Optional) Hugging Face username for authentication. **NOT EMAIL**.
--hf_token (Optional) Hugging Face token for authentication.
--tool (Optional) Download tool to use. Can be aria2c (default) or wget.
-x (Optional) Number of download threads for aria2c. Defaults to 4.
--dataset (Optional) Flag to indicate downloading a dataset.
--local-dir (Optional) Local directory path where the model or dataset will be stored.
Example:
hfd bigscience/bloom-560m --exclude *.safetensors
hfd meta-llama/Llama-2-7b --hf_username myuser --hf_token mytoken -x 4
hfd lavita/medical-qa-shared-task-v1-toy --dataset
方法四:使用环境变量(非侵入式)
非侵入式,能解决大部分情况。huggingface 工具链会获取HF_ENDPOINT
环境变量来确定下载文件所用的网址,所以可以使用通过设置变量来解决。
HF_ENDPOINT=https://hf-mirror.com python your_script.py
不过有些数据集有内置的下载脚本,那就需要手动改一下脚本内的地址来实现了。
不想使用命令行的话,也可以在代码开头添加:
import os
os.environ["HF_ENDPOINT"] = "https://hf-mirror.com"