240602-通过命令行实现HuggingFace文件上传

A. 登录显示

A.1 MacOS

在这里插入图片描述

A.2 Windows

在这里插入图片描述

B. 操作步骤

B.1 操作细节

要通过命令行将文件上传到 Hugging Face,可以使用 huggingface-cli 工具。以下是详细步骤:

  1. 安装 huggingface_hub 包:
    首先,确保已经安装了 huggingface_hub 包。可以使用 pip 安装:

    pip install huggingface_hub
    
  2. 登录 Hugging Face 账户:
    使用 huggingface-cli 命令行工具登录到你的 Hugging Face 账户:

    huggingface-cli login
    

    系统会提示你输入 Hugging Face 的访问令牌。你可以在 Hugging Face 的网站上生成一个新的访问令牌。

  3. 创建一个新的模型仓库:
    你可以在 Hugging Face 上创建一个新的模型仓库。假设你要创建一个名为 my-new-model 的仓库:

    huggingface-cli repo create my-new-model
    
  4. 克隆仓库到本地:
    将你刚刚创建的模型仓库克隆到本地计算机上:

    git clone https://huggingface.co/your-username/my-new-model
    cd my-new-model
    
  5. 将文件添加到仓库:
    将你要上传的文件复制到这个仓库目录中,然后添加、提交并推送文件:

    cp /path/to/your/file .
    git add .
    git commit -m "Add new file"
    git push
    
  6. 上传特定文件(可选):
    如果你只想上传特定文件,而不是通过 git 操作,你可以使用 huggingface_hub 的 Python API。例如:

    from huggingface_hub import HfApiapi = HfApi()
    api.upload_file(path_or_fileobj="/path/to/your/file",path_in_repo="destination/path/in/repo",repo_id="your-username/my-new-model",token="your-access-token"
    )
    

这样,你就可以通过命令行将文件上传到 Hugging Face 上的模型仓库了。如果有更多具体的需求或问题,请随时告诉我!

B.2 注意事项
  • 参见补充1+2
  • git push的时候,提交的是HuggingFace上的用户名 + WRITE TOKEN,而不是用户对应的Password

C. 参考文献

  • 如何评价huggingface平台? - 刘悦的技术博客的回答 - 知乎
  • SSLError: HTTPSConnectionPool(host=‘huggingface.co’, port=443) · Issue #17611 · huggingface/transformers · GitHub

D. 补充资料


补充1 : Linux上

Hugging Face 也不再支持密码认证,需要使用访问令牌或 SSH 密钥。以下是如何解决这个问题的步骤:

使用个人访问令牌 (PAT)
  1. 生成个人访问令牌:

    • 访问 Hugging Face 账户设置。
    • 点击 “New token” 按钮。
    • 为令牌命名并选择所需的权限(例如 repo 权限)。
    • 生成令牌并复制。
  2. 在 Git 中使用令牌:

    • 在进行 Git 操作时,使用令牌而不是密码。
    • 或者,可以将令牌存储在 Git 配置中:
      git config --global credential.helper store
      git push https://huggingface.co/GuokLIU/db-upload/
      
    • 当系统提示输入用户名时,输入你的 Hugging Face 用户名。
    • 当系统提示输入密码时,粘贴访问令牌。
使用 SSH 密钥
  1. 生成 SSH 密钥:

    • 如果你没有 SSH 密钥,可以用以下命令生成:
      ssh-keygen -t ed25519 -C "your_email@example.com"
      
    • 按照提示保存密钥。默认情况下,它将保存在 ~/.ssh/id_ed25519
  2. 将 SSH 密钥添加到 SSH 代理:

    eval "$(ssh-agent -s)"
    ssh-add ~/.ssh/id_ed25519
    
  3. 将 SSH 密钥添加到 Hugging Face 账户:

    • 将 SSH 密钥复制到剪贴板:
      cat ~/.ssh/id_ed25519.pub
      
    • 访问 Hugging Face SSH 密钥设置。
    • 点击 “New SSH key” 并粘贴你的密钥。
  4. 更新远程 URL 以使用 SSH:

    • 将远程 URL 更改为 SSH URL:
      git remote set-url origin git@huggingface.co:GuokLIU/db-upload.git
      
  5. 推送更改:

    git push
    

通过上述方法,可以解决认证问题。


补充2: Windows上

在 Windows 上使用 Hugging Face 的个人访问令牌或 SSH 密钥进行 Git 操作有一些特定的步骤。以下是详细的步骤:

使用个人访问令牌 (PAT)
  1. 生成个人访问令牌:

    • 访问 Hugging Face 账户设置。
    • 点击 “New token” 按钮。
    • 为令牌命名并选择所需的权限(例如 repo 权限)。
    • 生成令牌并复制。
  2. 在 Git 中使用令牌:

    • 打开 PowerShell 或命令提示符。
    • 配置 Git 使用存储的凭证:
      git config --global credential.helper wincred
      
    • 尝试推送代码:
      git push https://huggingface.co/GuokLIU/db-upload/
      
    • 当系统提示输入用户名时,输入你的 Hugging Face 用户名。
    • 当系统提示输入密码时,粘贴访问令牌。
使用 SSH 密钥
  1. 生成 SSH 密钥:

    • 打开 PowerShell 并生成 SSH 密钥:
      ssh-keygen -t ed25519 -C "your_email@example.com"
      
    • 按照提示保存密钥。默认情况下,它将保存在 C:\Users\YourUsername\.ssh\id_ed25519
  2. 将 SSH 密钥添加到 SSH 代理:

    • 在 PowerShell 中运行:
      Start-Service ssh-agent
      ssh-add ~\.ssh\id_ed25519
      
  3. 将 SSH 密钥添加到 Hugging Face 账户:

    • 将 SSH 密钥复制到剪贴板:
      Get-Content ~/.ssh/id_ed25519.pub | Set-Clipboard
      
    • 访问 Hugging Face SSH 密钥设置。
    • 点击 “New SSH key” 并粘贴你的密钥。
  4. 更新远程 URL 以使用 SSH:

    • 在你的项目目录中运行以下命令:
      git remote set-url origin git@huggingface.co:GuokLIU/db-upload.git
      
  5. 推送更改:

    git push
    

这些步骤应该能够帮助你在 Windows 上正确配置 Git 以使用 Hugging Face 的个人访问令牌或 SSH 密钥进行认证。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/846683.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于springboot实现青年公寓服务平台系统项目【项目源码+论文说明】计算机毕业设计

基于springboot实现青年公寓服务平台系统演示 摘要 传统信息的管理大部分依赖于管理人员的手工登记与管理,然而,随着近些年信息技术的迅猛发展,让许多比较老套的信息管理模式进行了更新迭代,房屋信息因为其管理内容繁杂&#xff…

“人工智能AI+” 应用场景盘点

在这个科技与梦想交相辉映的时代,人工智能已不再停留于遥不可及的概念构想,而是化身为一股汹涌的创新洪流,深刻塑造着社会的每一个角落。从文化艺术的智慧火花到生命科学的精密探索,从工业制造的革新升级到日常生活的细致入微&…

Delphi使用TMS.MQTT开发Mqtt客户端

服务端用的是 mosquitto ,下载地址Download | Eclipse Mosquitto 安装完成后需要配置 找到安装目录:mosquitto.conf,打开后修改 allow_anonymous false(禁止匿名登录),password_file D:\Program Files\mosquitto\pwfile.example(密码存放位置) 创建新用户,安装目录…

Least-Squares Rigid Motion Using SVD——文献精读(使用 SVD 方法求解 ICP 问题)

一、文章信息与摘要 文章标题:Least-Squares Rigid Motion Using SVD(使用奇异值分解的最小二乘刚性运动) 说明本文的核心目标:计算对齐两组对应点的最佳拟合刚性变换的步骤 二、问题描述 假设P{p1,p2,...,pn}和Q{q1,q2,...,qn…

Feature Manipulation for DDPM based Change Detection

基于去噪扩散模型的特征操作变化检测 文章提出了一种基于去噪扩散概率模型(DDPM)的特征操作变化检测方法。变化检测是计算机视觉中的经典任务,涉及分析不同时间捕获的图像对,以识别场景中的重要变化。现有基于扩散模型的方法主要…

C++ 习题精选(2)

目录 1. 验证回文串2. 字符串相乘 1. 验证回文串 题目描述:如果在将所有大写字符转换为小写字符、并移除所有非字母数字字符之后,短语正着读和反着读都一样。则可以认为该短语是一个 回文串 。字母和数字都属于字母数字字符。给你一个字符串 s&#xff…

Vue01-vue的简介

一、Vue是什么? 一套用于构建用户界面的渐进式javaScript框架。 构建用户界面: 渐进式: 目前Vue的地位:生态完善,国内前端工程师必备技能。 二、Vue的特点 一个XXX.vue就是一个组件,封装的概念&#xff0c…

threejs的三维前端项目用THREEPlaneGeometry创建平面几何体对象的方法

在 Three.js 中,可以使用THREE.PlaneGeometry类来创建平面几何体对象。THREE.PlaneGeometry类用于创建一个具有指定宽度和高度的平面几何体。 艾斯视觉作为行业ui设计与前端开发服务商很高兴能在这里与你共同探讨:以下是一个示例代码,展示了如…

文心一言 VS 讯飞星火 VS chatgpt (272)-- 算法导论20.2 7题

七、试说明如果 PROTO-vEB-MINIMUM 中的第 9 行被执行,则proto-vEB 结构为空。如果要写代码,请用go语言。 文心一言: 在 PROTO-vEB-MINIMUM 算法中,我们假设你指的是一个基于位向量(bit-vector)的扩展二进…

OSG学习记录

学习自OpenSceneGraph Quick Start Guide的中文版,建议学习书(比较全面) OSG的内存管理机制 程序保存一个指向根节点的指针,不保存场景图形中其他节点的指针。根节点将直接或间接地“引用”场景图形中的所有的节点。 当应用程序…

回溯算法 -- 77. 组合

目录 一.题目描述 二.解题思路 三.回溯三部曲 3.1确定递归函数的返回值以及参数 3.2回溯算法的终止条件 3.3确定单层循环搜索逻辑 四.具体的代码 一.题目描述 给定两个整数 n 和 k,返回范围 [1, n] 中所有可能的 k 个数的组合。 你可以按 任何顺序 返回答案…

【Linux】进程间通信(System V IPC)

这节我们开始学习System V IPC方案。 分别是共享内存,消息队列与信号量 会着重讲解共享内存,但是消息队列与信号量只会说明一下原理。 原因:System V是新设计的一套标准 与文件的整合度不高只能进行本地通信 更何况,我们现在有…

若依开发-数据库修改密码

若依忘记密码 在SecurityUtils类添加 public static void main(String[] args) {System.out.println(SecurityUtils.encryptPassword("admin123"));}即可打印出加密后密码

探索安全之道 | 企业漏洞管理:从理念到行动

如今,网络安全已经成为了企业管理中不可或缺的一部分,而漏洞管理则是网络安全的重中之重。那么企业应该如何做好漏洞管理呢?不妨从业界标准到企业实践来一探究竟!通过对业界标准的深入了解,企业可以建立起完善的漏洞管…

谷歌发布文生视频模型——Veo,可生成超过一分钟高质量1080p视频

前期我们介绍过OpenAI的文生视频大模型-Sora 模型,其模型一经发布,便得到了大家疯狂的追捧。而Google最近也发布了自己的文生视频大模型Veo,势必要与OpenAI进行一个正面交锋。 Veo 是Google迄今为止最强大的视频生成模型。它可以生成超过一分…

JVM虚拟机性能监控工具

命令行工具 jps 虚拟机进程状况查询工具 jps(JVM Process Status Tool),可以列出正在运行的虚拟机进程,并显示虚拟机执行主类名称或者jar文件名,还有这些进程的本地虚拟机唯一ID(LVMID,Local Virtual Machine Identifier)。 # …

网页安全登陆的设计思路

对于Web网站来讲,不管是企业内容信息化系统,还是公共站点(博客、音视频站等),都有需要用户注册和登录的功能。用以识别用户、信息交互、信息隔离以及商业行为等场景。用户数据已成为网站的重要资产。保护用户信息(数据)是网站安全运行的关键任务。本文以用户安全登录的场…

521源码-网站源码-Thinkphp聊天室H5实时聊天室群聊聊天室自动分配账户完群组/私聊/禁言等功能/全开源运营版本

全开源运营版本聊天室H5实时聊天室群聊聊天室自动分配账户完群组/私聊/禁言等功能 都是去年买的,很多买的源码基本都下架了,详情还是套已经老站的,可能网上已经流传了点,不过还是不影响这个源码的牛逼所在 运营版本的聊天室&…

JVM之【运行时数据区2——堆】

三、堆(Heap) 1、什么是堆 在Java虚拟机(JVM)中,堆(Heap)是用于动态分配内存的区域。在Java程序运行时,所有对象和数组都是在堆中分配内存的。堆是Java内存模型的重要组成部分&…

21.Redis之分布式锁

1.什么是分布式锁 在⼀个分布式的系统中, 也会涉及到多个节点访问同⼀个公共资源的情况. 此时就需要通过 锁 来做互斥控制, 避免出现类似于 "线程安全" 的问题. ⽽ java 的 synchronized 或者 C 的 std::mutex, 这样的锁都是只能在当前进程中⽣效, 在分布式的这种多…