开发机配置外网代理并使用 git lfs 高速下载 Hugging Face 数据集流程

本文档将介绍如何配置开发机的代理,登录 Hugging Face,并使用 git-lfs (Git Large File Storage)进行数据集的高速下载。


1. 配置代理连接外网

开发机在某些网络环境下可能无法直接访问外网,因此需要配置代理以保证能够访问外部资源(如 Hugging Face 数据集)。执行以下步骤来配置 HTTP 和 HTTPS 代理:

步骤 1.1:编辑系统的 /etc/profile 文件

首先,我们需要在 /etc/profile 文件中添加代理配置:

sudo vim /etc/profile

在文件末尾添加以下内容:

# 设置 HTTP 和 HTTPS 代理
export http_proxy="http://xxxxxx"
export https_proxy="http://xxxxxx"

请根据实际的代理地址替换 xxxxxx 部分。

步骤 1.2:使配置生效

修改完 /etc/profile 文件后,需要执行以下命令使配置生效:

source /etc/profile

2. 安装 git-lfs 并进行设置

git-lfs 是用于管理和下载大文件的 Git 扩展,特别适用于存储在 Git 仓库中的大型文件。在本步骤中,我们将安装 git-lfs 并进行相关设置。

步骤 2.1:安装 git-lfs

使用 yum 包管理器来安装 git-lfs

sudo yum install git-lfs
步骤 2.2:初始化 git-lfs

安装完成后,我们需要初始化 git-lfs

git lfs install

此命令将设置 Git LFS 的必要配置,确保它能够正确工作。

3. 登录 Hugging Face 并配置 Git

为了能够从 Hugging Face 下载数据集,我们需要进行认证。下面是登录过程:

步骤 3.1:安装 huggingface-cli

huggingface-cli 是 Hugging Face 提供的命令行工具,可以用来进行认证和访问数据集。

pip install huggingface-cli
# 或者
pip3 install huggingface_hub --upgrade
步骤 3.2:登录 Hugging Face

使用 huggingface-cli login 命令登录 Hugging Face:

huggingface-cli login

系统会要求输入 token,复制并粘贴你的 Hugging Face 账户的 token。你可以通过以下链接获取 token:

Hugging Face 账户页面

4. 配置 Git 存储凭据

为避免每次推送或拉取时都需要输入密码,可以配置 Git 存储凭据:

git config --global credential.helper store

这将使 Git 保存凭据信息,避免频繁地要求输入认证信息。

5. 克隆并下载数据集

步骤 5.1:克隆数据集仓库

使用 git clone 命令来克隆数据集仓库。为了提高下载速度,执行 git-lfs 拉取大文件时使用 GIT_LFS_SKIP_SMUDGE=1 跳过初始化文件下载,避免速率限制:

GIT_LFS_SKIP_SMUDGE=1 git clone https://huggingface.co/datasets/mlfoundations/MINT-1T-PDF-CC-2024-18

该命令将克隆指定的 Hugging Face 数据集仓库。

步骤 5.2:进入克隆后的仓库目录

进入数据集仓库的目录:

cd MINT-1T-PDF-CC-2024-18
步骤 5.3:使用 git lfs pull 拉取大文件

接下来,使用 git lfs pull 命令触发大文件的下载,并完成数据集的下载。这个操作会确保通过 Git LFS 完成大文件的下载:

git lfs pull

下载完成后,你将能够使用这些大文件。

步骤5.4 配置超时时间和重试次数

在lfs pull可能因为访问频繁导致任务被kill , 可以在lfs pull之前配置超时时间和重试次数,保证lfs拉取数据长稳运行。

# 设置超时时间为1小时,重试10次
export GIT_LFS_TIMEOUT=3600
export GIT_LFS_RETRIES=10

6. 完成

git lfs pull 完成后,数据集将下载完毕,输出如下信息:

echo "pull done"

此时,你已经成功下载了 Hugging Face 上的 MINT-1T 数据集,并能够在本地进行使用。


vim /etc/profile
export http_proxy="http://s8"
export https_proxy="http://s8"
source /etc/profile
yum install git-lfs
git lfs install
huggingface-cli login
token:  xxxxxxx
git config --global credential.helper store
# 设置超时时间为1小时,重试10次
export GIT_LFS_TIMEOUT=3600
export GIT_LFS_RETRIES=10
GIT_LFS_SKIP_SMUDGE=1 git clone https://huggingface.co/datasets/mlfoundations/MINT-1T-PDF-CC-2024-18
cd MINT-1T-PDF-CC-2024-18
git lfs pull  # 触发认证后的下载,速率限制降
echo "pull done"

总结

  1. 配置代理:通过修改 /etc/profile 配置 HTTP 和 HTTPS 代理。
  2. 安装 git-lfs:使用 yum install git-lfs 安装 Git LFS,并初始化它。
  3. 登录 Hugging Face:通过 huggingface-cli login 登录 Hugging Face 账户。
  4. 克隆和下载数据集:使用 git clonegit lfs pull 克隆数据集并下载大文件。

通过这些步骤,你能够顺利配置开发机的代理、登录 Hugging Face 账户并使用 git-lfs 下载大数据集。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐