Buckets:

HuggingFaceDocBuilder's picture
|
download
raw
5.91 kB
# Authentication
The `huggingface_hub` library allows users to programmatically manage authentication to the Hub. This includes logging in, logging out, switching between tokens, and listing available tokens.
For more details about authentication, check out [this section](../quick-start#authentication).
## login[[huggingface_hub.login]]
#### huggingface_hub.login[[huggingface_hub.login]]
[Source](https://github.com/huggingface/huggingface_hub/blob/vr_4113/src/huggingface_hub/_login.py#L58)
Login the machine to access the Hub.
The `token` is persisted in cache and set as a git credential. Once done, the machine
is logged in and the access token will be available across all `huggingface_hub`
components. If `token` is not provided, it will be prompted to the user either with
a widget (in a notebook) or via the terminal.
To log in from outside of a script, one can also use `hf auth login` which is
a cli command that wraps [login()](/docs/huggingface_hub/pr_4113/en/package_reference/authentication#huggingface_hub.login).
> [!TIP]
> [login()](/docs/huggingface_hub/pr_4113/en/package_reference/authentication#huggingface_hub.login) is a drop-in replacement method for [notebook_login()](/docs/huggingface_hub/pr_4113/en/package_reference/authentication#huggingface_hub.notebook_login) as it wraps and
> extends its capabilities.
> [!TIP]
> When the token is not passed, [login()](/docs/huggingface_hub/pr_4113/en/package_reference/authentication#huggingface_hub.login) will automatically detect if the script runs
> in a notebook or not. However, this detection might not be accurate due to the
> variety of notebooks that exists nowadays. If that is the case, you can always force
> the UI by using [notebook_login()](/docs/huggingface_hub/pr_4113/en/package_reference/authentication#huggingface_hub.notebook_login) or [interpreter_login()](/docs/huggingface_hub/pr_4113/en/package_reference/authentication#huggingface_hub.interpreter_login).
**Parameters:**
token (`str`, *optional*) : User access token to generate from https://huggingface.co/settings/token.
add_to_git_credential (`bool`, defaults to `False`) : If `True`, token will be set as git credential. If no git credential helper is configured, a warning will be displayed to the user. If `token` is `None`, the value of `add_to_git_credential` is ignored and will be prompted again to the end user.
skip_if_logged_in (`bool`, defaults to `True`) : If `True`, do not prompt for token if user is already logged in. Set to `False` to force re-login. In CLI, use `--force` instead.
## interpreter_login[[huggingface_hub.interpreter_login]]
#### huggingface_hub.interpreter_login[[huggingface_hub.interpreter_login]]
[Source](https://github.com/huggingface/huggingface_hub/blob/vr_4113/src/huggingface_hub/_login.py#L235)
Displays a prompt to log in to the HF website and store the token.
This is equivalent to [login()](/docs/huggingface_hub/pr_4113/en/package_reference/authentication#huggingface_hub.login) without passing a token when not run in a notebook.
[interpreter_login()](/docs/huggingface_hub/pr_4113/en/package_reference/authentication#huggingface_hub.interpreter_login) is useful if you want to force the use of the terminal prompt
instead of a notebook widget.
For more details, see [login()](/docs/huggingface_hub/pr_4113/en/package_reference/authentication#huggingface_hub.login).
**Parameters:**
skip_if_logged_in (`bool`, defaults to `True`) : If `True`, do not prompt for token if user is already logged in. Set to `False` to force re-login. In CLI, use `--force` instead.
## notebook_login[[huggingface_hub.notebook_login]]
#### huggingface_hub.notebook_login[[huggingface_hub.notebook_login]]
[Source](https://github.com/huggingface/huggingface_hub/blob/vr_4113/src/huggingface_hub/_login.py#L298)
Displays a widget to log in to the HF website and store the token.
This is equivalent to [login()](/docs/huggingface_hub/pr_4113/en/package_reference/authentication#huggingface_hub.login) without passing a token when run in a notebook.
[notebook_login()](/docs/huggingface_hub/pr_4113/en/package_reference/authentication#huggingface_hub.notebook_login) is useful if you want to force the use of the notebook widget
instead of a prompt in the terminal.
For more details, see [login()](/docs/huggingface_hub/pr_4113/en/package_reference/authentication#huggingface_hub.login).
**Parameters:**
skip_if_logged_in (`bool`, defaults to `True`) : If `True`, do not prompt for token if user is already logged in. Set to `False` to force re-login. In CLI, use `--force` instead.
## logout[[huggingface_hub.logout]]
#### huggingface_hub.logout[[huggingface_hub.logout]]
[Source](https://github.com/huggingface/huggingface_hub/blob/vr_4113/src/huggingface_hub/_login.py#L119)
Logout the machine from the Hub.
Token is deleted from the machine and removed from git credential.
**Parameters:**
token_name (`str`, *optional*) : Name of the access token to logout from. If `None`, will log out from all saved access tokens.
## auth_switch[[huggingface_hub.auth_switch]]
#### huggingface_hub.auth_switch[[huggingface_hub.auth_switch]]
[Source](https://github.com/huggingface/huggingface_hub/blob/vr_4113/src/huggingface_hub/_login.py#L161)
Switch to a different access token.
**Parameters:**
token_name (`str`) : Name of the access token to switch to.
add_to_git_credential (`bool`, defaults to `False`) : If `True`, token will be set as git credential. If no git credential helper is configured, a warning will be displayed to the user. If `token` is `None`, the value of `add_to_git_credential` is ignored and will be prompted again to the end user.
## auth_list[[huggingface_hub.auth_list]]
#### huggingface_hub.auth_list[[huggingface_hub.auth_list]]
[Source](https://github.com/huggingface/huggingface_hub/blob/vr_4113/src/huggingface_hub/_login.py#L190)
List all stored access tokens.

Xet Storage Details

Size:
5.91 kB
·
Xet hash:
3263acfadfe2f8f1ddcdd928993fddf39ca9172fbd04de6c644c17d3c89a0ec7

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.