访问 Hugging Face 中的资源,需要使用Access Tokens,可以在 Hugging Face 设置页面( https://huggingface.co/settings/tokens)生成自己的token。

Hugging Face Access Tokens 四种用法_API

一旦你获得了token,可以有下面几种方法使用它:

一、直接在代码中传递token

类似如下代码,在代码中直接传递 Hugging Face 的 API 令牌。

from transformers import AutoProcessor, PaliGemmaForConditionalGeneration

access_token="您的Hugging Face的Access Token,一般hf_开头"

model_id = "google/paligemma-3b-pt-224"
processor_id = "google/paligemma-3b-pt-224"

model = PaliGemmaForConditionalGeneration.from_pretrained(model_id,token=access_token)
processor = AutoProcessor.from_pretrained(processor_id,token=access_token)
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.

优点:

  • 简单直接,适合快速测试和临时使用。

缺点:

  • 安全性较差,不适合长期和生产环境使用。
  • 代码中明文存储令牌,可能导致安全风险。

使用场景:

  • 快速测试和调试。
  • 临时脚本和一次性任务。

二、环境变量

将 Hugging Face 的 API 令牌存储在环境变量中。

在 Bash 中设置环境变量:

export HUGGINGFACE_TOKEN=your_token_here
  • 1.

在 Python 中使用:

import os
from huggingface_hub import HfApi

access_token = os.getenv('HUGGINGFACE_TOKEN')
api = HfApi()
api.list_models(token=access_token)
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.

优点:

  • 可用于任何编程环境,不局限于命令行或 Notebook。
  • 环境变量方式更隐蔽,适合自动化脚本和 CI/CD 流程。

缺点:

  • 需要手动设置环境变量,可能对新手用户不太友好。
  • 管理多个环境变量可能会增加复杂性。

使用场景:

  • 自动化脚本、CI/CD 流程。
  • 需要在不同编程语言和环境中使用 Hugging Face API 的场景。

三、notebook_login

在 Jupyter Notebook 中,使用以下代码进行登录:

from huggingface_hub import notebook_login

notebook_login()
  • 1.
  • 2.
  • 3.

运行此代码后,会弹出一个输入框,要求输入你的 Hugging Face API 令牌。

在输入一次后会保存令牌,通常不需要每次重新输入,令牌会保存到用户的本地环境。

优点:

  • 适用于 Jupyter Notebook 环境,提供交互式编程体验。
  • 简单易用,直接在 Notebook 中运行代码即可进行认证。

缺点:

  • 仅适用于 Jupyter Notebook 和类似的交互式环境。
  • 不适用于纯命令行环境。

使用场景:

  • 数据科学家和研究人员在 Jupyter Notebook 中进行模型开发和测试。
  • 教学和演示过程中需要快速认证的场景。

四、huggingface-cli login

在终端中,运行以下命令进行登录:

huggingface-cli login
  • 1.

系统会提示你输入 Hugging Face API 令牌,并根据需要配置 Git 凭证。

优点:

  • 适用于命令行操作,适合在本地终端或服务器上进行开发、部署和其他操作。
  • 可配置 Git 凭证,方便与 Git 仓库进行集成。

缺点:

  • 需要在终端中运行,可能对不熟悉命令行的用户不太友好。
  • 对于需要频繁切换环境的用户来说,可能需要多次登录。

使用场景:

  • 本地或远程服务器的模型部署、开发和管理。
  • 需要与 Git 仓库集成的场景。
需要git

这个是通过配置Git凭证实现保存的,要确保git命令在PATH环境变量中。

如果你还没有安装 Git,请从 Git 官方网站( https://git-scm.com/) 下载并安装 Git。安装完成后,请确保 Git 可执行文件已添加到系统的 PATH 环境变量中。

打开命令提示符或终端,输入以下命令以确保 Git 已正确安装并可以访问:

git --version
  • 1.

如果显示 Git 的版本信息,则表明 Git 已正确安装。

常用相关命令

huggingface-cli 常用的相关命令:

# 使用此命令登出 Hugging Face Hub。
huggingface-cli logout

# 使用此命令查看当前登录的用户信息。
huggingface-cli whoami

# 使用此命令查看 CLI 的帮助信息。
huggingface-cli --help
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.

总结

  • huggingface-cli login:适合命令行操作和与 Git 集成的场景。
  • notebook_login:适合 Jupyter Notebook 交互式编程环境。
  • 环境变量:适合自动化脚本、CI/CD 流程和跨语言使用。
  • 直接在代码中传递令牌:适合快速测试和临时使用,但安全性较差。

您根据具体的使用场景和需求选择合适的方法来访问 Hugging Face 资源。