背景:在Huggingface下载带有权限的私人数据集。作者已经给了我访问数据集的权限,没有权限的话可能需要发邮件向作者申请访问仓库的权限。得到访问权限后该如何进行下载呢?其他的git,网页下载等方法不介绍了,本文在Anaconda Prompt用命令行下载方法的介绍。
解决了:huggingface-cli login遇到的ValueError: Invalid token passed!问题
步骤一:
打开Hugging Face – The AI community building the future.申请访问Tokens
Create new token ---> Read ---> 随便起个名字 ---> 复制 ---> 找个地方粘贴放好
(如果后面弄丢了就刷新token就好了)


如果忘记了Token,可以在这里刷新Token再复制
步骤二:
打开电脑的Anaconda Prompt,创建一个虚拟环境,激活虚拟环境,cd到你需要下载到的文件夹路径,并在虚拟环境下安装huggingface_hub
conda create -n R2Gen
conda activate R2Gen
pip install huggingface_hub[hf_transfer]==0.24.0
步骤三:
HF_HUB_ENABLE_HF_TRANSFER=1 是一个环境变量设置,用于启用 Hugging Face Hub 的 hf_transfer 功能。这个功能可以加速文件传输,特别是在下载大型模型或数据集时。
windows系统用set,Linux 和 macOS 系统用export
set HF_HUB_ENABLE_HF_TRANSFER=1
测试一下有没有正常配置临时环境,输入以下命令,返回1就说明设置成功了
echo %HF_HUB_ENABLE_HF_TRANSFER%
步骤四:
检查能否正常联网,在Anaconda Prompt中输入以下命令行
返回200则说明能正常访问Huggingface
python -c "import requests; print(requests.get('https://huggingface.co').status_code)"
![]()
步骤五:
因为是带权限的数据,一般需要登录huggingface-cli login,但是这里一直在出错,所以我们直接不用这个方法。我们通过设置环境变量登录,直接在 Anaconda Prompt 中设置 Token
set HUGGING_FACE_HUB_TOKEN=你的Token
设置完Token后,检查一下有没有正确设置,输入下面其中一句命令行,返回你注册的用户名以及该数据集所属的组织名称就说明正确设置并且你可以访问这个数据集了。
huggingface-cli whoami
python -c "from huggingface_hub import whoami; print(whoami())"

步骤六:
下载数据集,输入以下命令行,即可开始下载
--local-dir的 ' . '是代表下载到当前文件夹路径下
huggingface-cli download 你的数据集 --repo-type dataset --local-dir .

踩雷点:
1. 一直在尝试huggingface-cli login,但是一直出错,说登录无效。解决方法是绕过CLI去登录,即设置环境变量去登录,返回你的用户名,说明登录成功;

2. 登陆不了以为是网络的问题,在终端使用ping huggingface.co,一直请求超时,后面知道Hugging Face 服务器通常禁用了 ICMP (ping) 请求,所以 ping 不通不代表网络有问题。curl -I https://huggingface.co 失败,这可能是环境没有安装curl命令。Python 请求返回 200那就说明 Python 环境能正常访问 Hugging Face

6万+

被折叠的 条评论
为什么被折叠?



