Hugging Face's logo
加入 Hugging Face 社区

并获得增强的文档体验

开始使用

Repository 入门

这份面向初学者的指南将帮助你掌握在 Hub 上创建和管理 repository 所需的基本技能。每个部分都建立在前一个部分的基础上,所以你可以随意选择从哪里开始!

要求

本文档演示了如何通过 Web 界面和终端处理 repository。如果使用 UI,则没有要求。如果您想使用终端,请按照这些安装说明操作。

如果您的 CLI 命令中尚无 `git`,则需要为您的平台安装 Git。您还需要安装 Git LFS,它将用于处理大型文件,例如图像和模型权重。

为了能够将您的代码推送到 Hub,您需要进行某种形式的身份验证。最简单的方法是安装 `huggingface_hub` CLI 并运行登录命令

python -m pip install huggingface_hub
hf auth login

本文档“入门”部分的内容也以视频形式提供!

创建存储库

使用 Hub 的 Web 界面,您可以轻松创建 repository、添加文件(甚至大型文件!)、探索模型、可视化差异等等。Hub 上有三种类型的 repository,本指南将创建一个**模型 repository** 用于演示。有关创建和管理模型、数据集和 Space 的信息,请参阅其各自的文档。

  1. 要创建新存储库,请访问 huggingface.co/new
  1. 指定仓库所有者:可以是您本人,也可以是您所属的任何组织。

  2. 输入模型名称。这将同时是仓库的名称。

  3. 指定您希望模型是公开的还是私有的。

  4. 指定许可证。您现在可以暂时将“许可证”字段留空。要了解有关许可证的信息,请访问**许可证**文档。

创建模型仓库后,您应该会看到类似以下页面:

请注意,Hub 会提示您创建一份“模型卡”,您可以在**模型卡文档**中了解更多信息。在模型仓库中包含模型卡是最佳实践,但由于我们目前只创建一个测试仓库,因此可以跳过此步骤。

向仓库添加文件(Web UI)

要通过 Web UI 将文件添加到您的 repository,请先选择 **Files** 选项卡,导航到所需目录,然后单击 **Add file**。您将可以选择创建新文件或直接从计算机上传文件。

创建新文件

选择创建新文件将带您进入以下编辑器屏幕,您可以在其中为文件选择名称,添加内容,并使用总结更改的消息保存文件。您也可以选择“Open as a pull request”来创建拉取请求,而不是直接将新文件提交到您的仓库的`main`分支。

上传文件

如果选择*上传文件*,您将能够选择要上传的本地文件,并附带一条消息,总结您对仓库所做的更改。

与创建新文件一样,您可以选择“打开拉取请求”以创建拉取请求,而不是直接将更改添加到您的仓库的`main`分支。

向仓库添加文件(终端)

克隆仓库

将仓库下载到本地计算机称为*克隆*。您可以使用以下命令加载仓库并导航到它:

git clone https://huggingface.co/<your-username>/<your-model-name>
cd <your-model-name>

或者对于数据集仓库:

git clone https://huggingface.co/datasets/<your-username>/<your-dataset-name>
cd <your-dataset-name>

您可以使用以下命令通过 SSH 克隆:

git clone git@hf.co:<your-username>/<your-model-name>
cd <your-model-name>

您需要将您的 SSH 公钥添加到您的用户设置中,才能推送更改或访问私有仓库。

设置

现在,您可以向仓库添加任何您想要的文件了!🔥

您有大于 10MB 的文件吗?这些文件应该使用 `git-lfs` 进行跟踪,您可以使用以下命令进行初始化:

git lfs install

请注意,如果您的文件大于 **5GB**,您还需要运行:

hf lfs-enable-largefiles .

当您使用 Hugging Face 创建仓库时,Hugging Face 会自动在 `.gitattributes` 文件中提供常见机器学习大型文件的常见文件扩展名列表,`git-lfs` 使用该文件有效地跟踪大型文件的更改。但是,如果您的文件类型尚未处理,您可能需要添加新的扩展名。您可以使用 `git lfs track "*.your_extension"` 来完成此操作。

推送文件

您可以使用 Git 将新文件和任何对现有文件的更改保存为一组称为*提交*的更改,这可以被视为对项目的“修订”。要创建提交,您必须 `add` 文件以让 Git 知道我们计划保存更改,然后 `commit` 这些更改。为了将新提交与 Hugging Face Hub 同步,您然后将提交 `push` 到 Hub。

# Create any files you like! Then...
git add .
git commit -m "First model version"  # You can choose any descriptive message
git push

大功告成!您可以在 Hugging Face 上查看您的仓库以及所有最近添加的文件。例如,在下面的屏幕截图中,用户添加了许多文件。请注意,此示例中的某些文件大小为 `1.04 GB`,因此仓库使用 Git LFS 来跟踪它。

如果您使用 HTTP 克隆了仓库,则每次推送操作时都可能会要求您填写用户名和密码。避免重复的最简单方法是切换到 SSH,而不是 HTTP。或者,如果您必须使用 HTTP,您可能会发现设置一个git 凭据助手来自动填充您的用户名和密码会有所帮助。

查看仓库历史

每次您完成 `add`-`commit`-`push` 循环后,仓库都会跟踪您对文件所做的每个更改。UI 允许您探索模型文件和提交,并查看每个提交引入的差异(也称为*diff*)。要查看历史记录,您可以单击“**历史记录:X 次提交**”链接。

您可以点击单个提交以查看该提交引入了哪些更改。

< > 在 GitHub 上更新