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 HfApi
    
    api = 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. 参考文献

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 密钥进行认证。

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

GuokLiu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值