Hub documentation

入门仓库

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

入门仓库

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

要求

本文档介绍了如何通过 Web 界面和终端来管理仓库。使用 UI 时没有特殊要求。如果您想通过终端进行操作,请遵循这些安装说明。

如果尚未将 git 作为 CLI 命令使用,则需要为您的平台 安装 Git。您还需要 安装 Git-Xet,它将用于处理图像和模型权重等大文件。

要能够从 Git 下载和上传大文件,您需要安装 Git Xet 扩展。

要将代码推送到 Hub,您需要先进行身份验证。最简单的方法是安装 hf CLI 并运行登录命令:

# Install hf:
#   brew install hf
#   or
#   pip install hf
hf auth login

本文档“入门”部分的内容也有视频版!

创建仓库

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

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

  2. 输入您的模型名称。这也将是仓库的名称。

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

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

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

请注意,Hub 会提示您创建一个 Model Card,您可以在 Model Cards 文档 中了解相关内容。在模型仓库中包含 Model Card 是最佳实践,但由于我们目前只是创建一个测试仓库,因此可以跳过此步骤。

向仓库添加文件(Web UI)

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

创建新文件

选择创建新文件后,您将进入以下编辑器界面,在此您可以为文件命名、添加内容,并保存文件,同时附上一段总结所做更改的信息。您可以选择Open as a pull request来创建一个Pull Request,而不是直接将新文件提交到仓库的main分支。

上传文件

如果选择 Upload file,您可以选择一个本地文件进行上传,并附带一条消息来总结您对仓库所做的更改。

与创建新文件一样,您可以选择Open as a pull request来创建一个Pull Request,而不是将更改直接添加到仓库的main分支。

向仓库添加文件(CLI)

您可以使用 hf CLI 直接从终端将文件上传到您的仓库。使用 hf upload 命令来推送本地文件或整个文件夹:

# Upload a single file to your model repo
hf upload your-username/your-model-name model.safetensors

# Upload an entire directory
hf upload your-username/your-model-name ./my-model-directory

# Upload to a dataset repo
hf upload your-username/your-dataset-name ./data --repo-type dataset

hf CLI 会自动处理大文件——无需额外配置。

向仓库添加文件(git)

克隆仓库

将仓库下载到本地机器称为克隆。您可以使用以下命令加载您的仓库并进入该目录:

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-xet 进行跟踪,您可以通过以下方式初始化:

git xet install

使用 Hugging Face 创建仓库时,Hugging Face 会在 .gitattributes 文件中自动提供常见机器学习大文件的常见文件扩展名列表,git-xet 会利用该列表来高效地跟踪大文件的变更。如果您的文件类型尚未被处理,可能需要添加新的扩展名。您可以通过 git xet track "*.your_extension" 来实现。

推送文件

你可以使用 Git 将新文件以及对现有文件的任何更改保存为一组称为 commit 的更改,可以将其视为对项目的“修订”。要创建 commit,你需要先 add 文件,以告知 Git 我们计划保存这些更改,然后 commit 这些更改。为了将新的 commit 与 Hugging Face Hub 同步,你还需要将该 commit 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,因此该仓库使用 Xet 进行跟踪。

如果您通过 HTTP 克隆了仓库,每次执行推送操作时都可能被要求输入用户名和密码。避免重复输入的最简单方法是改用 SSH 而非 HTTP。或者,如果您必须使用 HTTP,可以考虑配置 git credential helper 来自动填充用户名和密码。

查看仓库的历史记录

每次你完成 add-commit-push 循环,仓库都会记录你对文件所做的所有更改。UI 允许你浏览模型文件和提交,并查看每个提交引入的差异(也称为 diff)。要查看历史记录,你可以点击 History: X commits 链接。

您可以单击某个单独的提交,以查看该提交引入了哪些更改:

Update on GitHub