首页 > 其他分享 >Hugging Face Access Tokens 四种用法

Hugging Face Access Tokens 四种用法

时间:2024-08-01 15:39:22浏览次数:14  
标签:Access Git huggingface Hugging Face Tokens token 环境变量

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

一旦你获得了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)

优点:

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

缺点:

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

使用场景:

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

二、环境变量

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

在 Bash 中设置环境变量:

export HUGGINGFACE_TOKEN=your_token_here

在 Python 中使用:

import os
from huggingface_hub import HfApi

access_token = os.getenv('HUGGINGFACE_TOKEN')
api = HfApi()
api.list_models(token=access_token)

优点:

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

缺点:

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

使用场景:

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

三、notebook_login

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

from huggingface_hub import notebook_login

notebook_login()

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

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

优点:

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

缺点:

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

使用场景:

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

四、huggingface-cli login

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

huggingface-cli login

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

优点:

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

缺点:

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

使用场景:

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

需要git

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

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

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

git --version

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

常用相关命令

huggingface-cli 常用的相关命令:

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

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

# 使用此命令查看 CLI 的帮助信息。
huggingface-cli --help

总结

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

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

标签:Access,Git,huggingface,Hugging,Face,Tokens,token,环境变量
From: https://www.cnblogs.com/ghj1976/p/18336819/hugging-face-access-tokens-si-zhong-yong-fa

相关文章

  • IIS6.1+ASP+ACCESS网站迁移
    1.首先在源web服务器IIS管理器中将要迁移的网站停止,然后将要迁移的网站整个目录拷贝到目标服务器相同目录下;2.通过cmd命令进到源web服务器inetsrv目录:cd/dc:\windows\system32\inetsrv3.使用以下命令将源web服务器中IIS应用程序池配置信息导出:appcmdlistapppool/config/......
  • Access denied for user 'root'@'localhost' (using password: YES)
    1.启动项目报连接数据库被拒绝![](https://img2024.cnblogs.com/blog/3413037/202407/3413037-20240731113834004-615120424.png)2.用数据库连接工具也是提示同样错误![](https://img2024.cnblogs.com/blog/3413037/202407/3413037-20240731113958582-2045494132.png)3.查看my......
  • ACCESS 关于表设计中,验证规则的使用技巧
    验证规则分为字段级别与表级别 在字段级别的验证规则中,你只能使用本字段的数据,如果表达式涉及其他字段的数据,则会提示你: 表级别的验证规则,可使用的表内的所有数据,以适应更复杂的逻辑表达式,上图的错误,我们只需要把表达式写到表级别里面即可.另外,表级别的验证规则......
  • 阿里云设置跨域规则后调用OSS时仍然报No'Access-Control-Allow-Origin'的错误原因和解
    问题描述为了实现跨域访问,保证跨域数据传输的安全进行,在OSS控制台设置了跨域CORS规则后,通过SDK进行程序调用时报以下错误。No'Access-Control-Allow-Origin'headerispresentontherequestedresource问题原因出现跨域问题的原因如下:跨域CORS规则设置异常:未正确设......
  • 无法在 Llama Index 中加载 HuggingFace Embeddings llama3.1
    我有一个非常简单的代码,如下所示:fromllama_index.embeddings.huggingfaceimportHuggingFaceEmbeddingembed_model=HuggingFaceEmbedding(model_name="meta-llama/Meta-Llama-3-8B")我看到这个模型,meta-llama/Meta-Llama-3-8B,只有4.5GB,而我有16GBRAM,最多只使用20......
  • Pentester Academy -Windows API Exploitation Recipes: Processes, Tokens and Memor
    早年为PentesterAcademy(https://www.pentesteracademy.com/),如今为INE(https://ine.com/)002安装VS社区版https://visualstudio.microsoft.com/zh-hans/003processlistingapi正在运行的是什么:服务,AV,HIDS/IPS等其他attack开始的点:进程注入,内存dump/修改,TokenSt......
  • 鸿蒙Accessibility Kit无障碍服务开发指南(一)
    鸿蒙AccessibilityKit无障碍服务开发指南(一)文章目录鸿蒙AccessibilityKit无障碍服务开发指南(一)前言一、无障碍框架原理二、使用步骤1.继承AccessibilityExtensionAbility2.配置无障碍服务3.开启无障碍服务4.管理无障碍服务上下文前言无障碍模式是指任何人在任......
  • 流量回放新形态:基于网关 Access Log 发起
    作者:休祯背景为什么需要流量回放无论是面向即将上线的新版本做最后的性能测试,还是在遇到棘手的故障时帮助开发人员快速定位问题原因,流量回放技术都发挥着不可或缺的作用。使用真实世界的流量数据进行回放能使性能测试过程更加接近实际运行状态,确保新版本的性能真正满足用户的预......
  • conda配hugging face环境 & 服务器系统盘容量不足
    condacreate--nameenv_namepython=3.10安装pytorch:https://pytorch.org/get-started/locally/condainstalljupytercondainstall-chuggingfacetransformersdatasetsevaluatecondainstall-cfastaiacceleratecondainstallscipyscikit-learn服务器系统盘容......
  • php 访问网站时 如何不直接显示index.php,而是显示目录? .htaccess 文件
    想要的效果输入网址后显示目录,而不是indxe.phpapache的方法修改“.htaccess文件DirectoryIndexindex.phpindex.html 参考:https://www.php.cn/faq/693671.html其他.htaccess文件的使用https://www.cnblogs.com/helloworld3/p/4468582.html nginx的方法https:/......