Hugging Face CLI 更新:迁移至 hf 命令

Hugging Face 正式将 huggingface-cli 重命名为 hf,并推出了重新组织的命令结构,以提升易用性和可发现性。此更新简化了用户与 Hub 的交互,同时引入了 hf jobs,这是一项在 Hugging Face 基础设施上执行脚本和 Docker 镜像的新服务。

新的命令结构和语法

hf CLI 采用可预测的 hf <resource> <action> 语法。这种重组摆脱了之前不够一致的命令结构,转而使用更直观的格式,按所管理的资源对命令进行分组。

核心命令组

大多数功能现在按特定资源进行组织。关键的命令组包括:

  • hf auth:管理身份验证,包括登录、登出以及在访问令牌之间切换。
  • hf cache:处理本地缓存目录。
  • hf repo:管理 Hub 上的仓库。
  • hf repo-files:管理仓库内的文件。
  • hf uploadhf download:由于使用频率高,这两个命令仍保留在根级别。

安装与验证

要使用新 CLI,用户必须安装或更新 huggingface_hub 库:

pip install -U huggingface_hub

通过运行 hf version 可以验证安装是否成功,它会返回 huggingface_hub 的版本(例如,版本 0.34.0)。

从 huggingface-cli 迁移

虽然旧的 huggingface-cli 仍可使用,以确保平稳过渡,但它已被弃用。使用旧命令会触发警告,提示用户使用对应的 hf 命令。

身份验证变更

迁移过程中最重要的变化涉及身份验证命令。映射示例包括:

  • huggingface-cli login $ ightarrow$ hf auth login
  • huggingface-cli whoami $ ightarrow$ hf auth whoami
  • huggingface-cli logout $ ightarrow$ hf auth logout

引入 hf jobs

hf jobs 是一项新服务,允许用户在 Hugging Face 基础设施上使用按需计费模式运行脚本或 Docker 镜像。此服务仅对 Pro 用户以及团队或企业组织开放。

功能与命令集

hf jobs 命令集受 Docker CLI 启发,支持在特定硬件规格(例如 A10G GPU)上执行任务。

示例命令:

hf jobs run --flavor=a10g-small ubuntu nvidia-smi

可用的 hf jobs 子命令:

  • run:执行作业。
  • ps:列出活跃的作业。
  • logs:获取特定作业的日志。
  • inspect:显示一个或多个作业的详细信息。
  • cancel:取消作业。
  • uv:使用 UV 在 HF 基础设施上运行带有内联依赖的 Python 脚本。

Sources