Hugging Face是一个机器学习(ML)和数据科学平台和社区,帮助用户构建、部署和训练机器学习模型。它提供基础设施,用于在实时应用中演示、运行和部署人工智能(AI)。用户还可以浏览其他用户上传的模型和数据集。Hugging Face通常被称为机器学习界的GitHub,因为它让开发人员公开分享和测试他们所训练的模型。

本次分享如何快速部署本地训练的 Bert-VITS2 语音模型到 Hugging Face。

本地配置HuggingFace

首先注册HuggingFace平台:

https://huggingface.co/join

随后在用户的设置界面新建token,也就是令牌:

这里令牌有两种权限类型,一种是写权限,另外一种是读权限。

随后本地安装Huggingface客户端:

pip install huggingface_hub

随后运行命令登录Huggingface账号:

huggingface-cli login

此时需要用到刚刚创建的token,复制写token,粘贴到命令行中:

E:\work>huggingface-cli login  

    _|    _|  _|    _|    _|_|_|    _|_|_|  _|_|_|  _|      _|    _|_|_|      _|_|_|_|    _|_|      _|_|_|  _|_|_|_|
_| _| _| _| _| _| _| _|_| _| _| _| _| _| _| _|
_|_|_|_| _| _| _| _|_| _| _|_| _| _| _| _| _| _|_| _|_|_| _|_|_|_| _| _|_|_|
_| _| _| _| _| _| _| _| _| _| _|_| _| _| _| _| _| _| _|
_| _| _|_| _|_|_| _|_|_| _|_|_| _| _| _|_|_| _| _| _| _|_|_| _|_|_|_| A token is already saved on your machine. Run `huggingface-cli whoami` to get more information or `huggingface-cli logout` if you want to log out.
Setting a new token will erase the existing one.
To login, `huggingface_hub` requires a token generated from https://huggingface.co/settings/tokens .
Token can be pasted using 'Right-Click'.
Token:
Add token as git credential? (Y/n) y
Token is valid (permission: write).
Cannot authenticate through git-credential as no helper is defined on your machine.
You might have to re-authenticate when pushing to the Hugging Face Hub.
Run the following command in your terminal in case you want to set the 'store' credential helper as default. git config --global credential.helper store Read https://git-scm.com/book/en/v2/Git-Tools-Credential-Storage for more details.
Token has not been saved to git credential helper.
Your token has been saved to C:\Users\zcxey\.cache\huggingface\token
Login successful

显示Login successful即代表登录成功。

随后,可以使用命令来创建模型的repo项目:

huggingface-cli repo create wizard3

这里创建巫师3系列角色模型。

程序返回:

E:\work>huggingface-cli repo create wizard3
git version 2.31.0.windows.1
git-lfs/2.13.2 (GitHub; windows amd64; go 1.14.13; git fc664697) You are about to create v3ucn/wizard3
Proceed? [Y/n] y Your repo now lives at:
https://huggingface.co/v3ucn/wizard3 You can clone it locally with the command below, and commit/push as usual. git clone https://huggingface.co/v3ucn/wizard3

说明已经创建好模型项目了。

当然,过程中可能会报443的错误,如果您身在国内,这是十分合理的现象。

此时,可以通过给git配置代理来解决:

配置socks5  

git config --global http.proxy socks5 127.0.0.1:7890
git config --global https.proxy socks5 127.0.0.1:7890 配置http git config --global http.proxy 127.0.0.1:7890
git config --global https.proxy 127.0.0.1:7890

其中7890为您在国内学术上网用的端口号,啥叫学术上网?很抱歉这里无法多做解释。

同时也可以通过命令取消git学术上网:

git config --global --unset http.proxy
git config --global --unset https.proxy

接着本地克隆项目:

git clone https://huggingface.co/v3ucn/wizard3

随后将模型本体和配置文件config.json放入wizard3目录。

提交后,推送即可:

E:\work>cd wizard3  

E:\work\wizard3>git add -A  

E:\work\wizard3>git commit -m "commit from liuyue "
[main cd327b9] commit from liuyue
2 files changed, 114 insertions(+)
create mode 100644 G_200.pth
create mode 100644 config.json E:\work\wizard3>git push
Uploading LFS objects: 0% (0/1), 925 MB | 2.4 MB/s

此时,git就会把模型推送到Huggingface云端。

推送完毕后,访问线上地址,即可查看模型:

https://huggingface.co/v3ucn/wizard3/tree/main

结语

Hugging Face的优势包括可访问性、集成性、快速原型设计和部署、社区和成本效益,是不可多得的机器学习交流平台。

如何快速部署本地训练的 Bert-VITS2 语音模型到 Hugging Face的更多相关文章

  1. docker快速部署本地项目到服务器(tomcat8+mysql8)

    目标是:将本地运行的spring项目,部署到服务器上 为什么使用docker? 环境隔离 服务器上,各种环境交杂,使用docker,能清楚的把各个项目进行隔离,不单维护的人员方便,也会省去很多维护这些 ...

  2. 三分钟快速上手TensorFlow 2.0 (下)——模型的部署 、大规模训练、加速

    前文:三分钟快速上手TensorFlow 2.0 (中)——常用模块和模型的部署 TensorFlow 模型导出 使用 SavedModel 完整导出模型 不仅包含参数的权值,还包含计算的流程(即计算 ...

  3. 使用VMDepot镜像快速部署CKAN开放数据门户

    最新发布的CKAN VMDepot镜像针对中国用户强化了中文支持,提升了与MS Office办公软件的互操作性,并集成了常用插件和最佳实践配置参数. 使得CKAN原本十分复杂繁琐的部署流程变得非常简单 ...

  4. 【转】使用sinopia五步快速完成本地npm搭建

    使用sinopia五步快速完成本地npm搭建 时间 2016-03-01 14:55:30  繁星UED 原文  http://ued.fanxing.com/shi-yong-sinopiawu-b ...

  5. 如何快速部署国人开源的 Java 博客系统 Tale

    除了闷头专研技术之外,程序员还需要不断地写作进行技术积累,写博客是其中最重要的方式之一.商业博客平台不少,但是更符合程序员背景的方案,是自己开发一个博客平台或者使用开源的博客平台. 开源的博客平台多如 ...

  6. 如何使用华为软件开发云快速部署PHP网站

    华为软件开发云这个工具,从去年推出我就一直在关注,毕竟是华为最新的一款软件开发工具,最近我一直在使用华为软件开发云进行开发项目管理,它有在线编译和构建.云端在线代码检查等功能,编译省去了很多物理机器的 ...

  7. Hexo快速部署教程

    一直有建立博客的需要,使用过Wordpress动态博客,一直访问速度比较慢,刚开始以为是空间域名的解析的问题,尝试使用Hexo静态博客,部署后感觉速度正常很多,特意发文快速部署教程 准备 本文是在wi ...

  8. 【干货】快速部署微软开源GPU管理利器: OpenPAI

    [干货]快速部署微软开源GPU管理利器: OpenPAI 介绍 不管是机器学习的老手,还是入门的新人,都应该装备上尽可能强大的算力.除此之外,还要压榨出硬件的所有潜力来加快模型训练.OpenPAI作为 ...

  9. 【技术解析】如何用Docker实现SequoiaDB集群的快速部署

    1. 背景 以Docker和Rocket为代表的容器技术现在正变得越来越流行,它改变着公司和用户创建.发布.运行分布式应用的方式,在未来5年将给云计算行业带来它应有的价值.它的诱人之处在于: 1)资源 ...

  10. 简单快速部署nexus3私服

    本文适用范围:用户规模不大,不需要考虑maven仓库负载均衡的群体. 为何部署nexus3 之前由于懒某些原因,所有开发人员自己定义.m2的settings,大多使用ali提供的maven仓库,但是最 ...

随机推荐

  1. Substring of Sorted String 题解

    Substring of Sorted String 写篇题解纪念一下蒟蒻第一次赛时切出的 F 题. 题目简述 对一个字符串进行单点修改,区间判断操作. 修改操作为将一个字符修改为另一个,判断操作为判 ...

  2. Chromium 消息循环和线程池详解

    Chromium 中的多线程机制由 base 库提供,要理解 Chromium 中的多线程机制,首先要理解的概念就是 base::MessageLoop 和 base::TaskScheduler , ...

  3. Python拆分列中文和 字符

    需求描述:我们日常实际的工作中经常需要把一列数据按中文和 数字或者字母单独拆分出来 导入所需的库: import pandas as pd 定义函数 extract_characters,该函数接受三 ...

  4. SNN_文献阅读_Effective and Efficient Computation with Multiple-timescaleSpiking Recurrent Neural Networks

    Adaptive SRNN 基于多时间尺度脉冲循环神经网络的高效计算(SRNN) 中心思想: 使用替代梯度进行训练,克服SNN中梯度不连续的问题. 在PyTorch中直接使用BPTT进行训练. 结构 ...

  5. Net 高级调试之九:SOSEX 扩展命令介绍

    一.介绍 今天是<Net 高级调试>的第九篇文章.这篇文章设计的内容挺多的,比如:扩展的断点支持,如何查找元数据,栈回溯,对象检查,死锁检测等等,内容挺多的.功能特别强大,使用特别方便,但 ...

  6. L3-011 直捣黄龙

    #include<bits/stdc++.h> using namespace std; using pii = pair<int, int>; const int N = 3 ...

  7. mysql group by 执行原理及千万级别count 查询优化

    大家好,我是蓝胖子,前段时间mysql经常碰到慢查询报警,我们线上的慢sql阈值是1s,出现报警的表数据有 7000多万,经常出现报警的是一个group by的count查询,于是便开始着手优化这块, ...

  8. base64编码的学习

    base64编码是什么 Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法. Base64编码本质上是一种将二进制数据转成 ...

  9. Jenkins中HTML报告无法正常显示问题解决

    自动化结果生成了HTML报告,但是在Jenkins中打开报告却显示空白,打开控制台,可以看到该报错 参考https://www.jenkins.io/doc/book/security/configu ...

  10. Java8新特性Optional

    Optional类的方法 1.empty private static void createNullOptional() { // 创建一个空的Optional实例 // 方式一 Optional& ...