身份验证
huggingface_hub
库允许用户以编程方式管理对 Hub 的身份验证。这包括登录、注销、在令牌之间切换以及列出可用令牌。
有关身份验证的更多详细信息,请查看本节。
登录
huggingface_hub.login
< 源代码 >( token: Optional = None add_to_git_credential: bool = False new_session: bool = True write_permission: bool = False )
参数
- token (
str
,可选) — 用户访问令牌,可从 https://huggingface.co/settings/token 生成。 - add_to_git_credential (
bool
,默认为False
) — 如果为True
,则令牌将被设置为 git 凭证。 如果没有配置 git 凭证帮助程序,则会向用户显示警告。 如果token
为None
,则add_to_git_credential
的值将被忽略,并将再次提示最终用户。 - new_session (
bool
,默认为True
) — 如果为True
,即使机器上已保存令牌,也会请求令牌。 - write_permission (
bool
,默认为False
) — 如果为True
,则需要具有写权限的令牌。
引发
ValueError
或 ImportError
ValueError
— 如果传递了组织令牌。 只有个人帐户令牌才能用于登录。ValueError
— 如果令牌无效。ImportError
— 如果在笔记本中运行但未安装ipywidgets
。
登录机器以访问 Hub。
token
会持久化存储在缓存中,并设置为 git 凭证。 完成后,机器将登录,并且访问令牌将在所有 huggingface_hub
组件中可用。 如果未提供 token
,则会通过小部件(在笔记本中)或终端提示用户输入。
要在脚本外部登录,还可以使用 huggingface-cli login
,这是一个包装了 login() 的 CLI 命令。
login() 是 notebook_login() 的直接替代方法,因为它包装并扩展了其功能。
当未传递令牌时,login() 将自动检测脚本是否在笔记本中运行。 但是,由于当今存在各种各样的笔记本,因此此检测可能不准确。 如果是这种情况,您可以随时使用 notebook_login() 或 interpreter_login() 强制使用 UI。
interpreter_login
huggingface_hub.interpreter_login
< 源代码 >( new_session: bool = True write_permission: bool = False )
显示登录 HF 网站并存储令牌的提示。
这相当于在非笔记本环境中运行时不传递令牌的 login()。如果您想强制使用终端提示而不是笔记本小部件,则 interpreter_login() 非常有用。
有关详细信息,请参阅 login()。
notebook_login
huggingface_hub.notebook_login
< source >( new_session: bool = True write_permission: bool = False )
显示登录 HF 网站并存储令牌的小部件。
这相当于在笔记本环境中运行时不传递令牌的 login()。如果您想强制使用笔记本小部件而不是终端中的提示,则 notebook_login() 非常有用。
有关详细信息,请参阅 login()。
logout
huggingface_hub.logout
< 源代码 >( token_name: Optional = None )
将机器从 Hub 中登出。
令牌将从机器中删除,并从 git 凭据中移除。
auth_switch
huggingface_hub.auth_switch
< 源代码 >( token_name: str add_to_git_credential: bool = False )
参数
- token_name (
str
) — 要切换到的访问令牌的名称。 - add_to_git_credential (
bool
, 默认为False
) — 如果为True
,令牌将被设置为 git 凭据。如果没有配置 git 凭据助手,将向用户显示警告。如果token
为None
,则忽略add_to_git_credential
的值,并将再次提示最终用户。
引发
ValueError
ValueError
— 如果未找到访问令牌名称。
切换到不同的访问令牌。
auth_list
列出所有已存储的访问令牌。