NLP文档挖宝(2)——通过Huggingface Transformers 分享与上传自己的预训练模型

最近团队完成了一个面向古文语料的预训练模型(SikuBERT),基于四库全书进行的训练,效果害挺好,于是准备拥抱开源,上传至最大的预训练模型hub——huggingface。

在整个上传过程中,看了一些很早之前翻译成中文的上传手册,他们大多使用内置工具+upload方法进行上传,但是笔者按照步骤尝试之后并没有成功,所以直接查看了官方的文档,尝试了git的方法,最后成功上传。

在这来记录一下上传的方法,以便帮助遇到相似问题的朋友快速上传。

1 准备工作

准备好训练好的预训练模型

NLP文档挖宝(2)——通过Huggingface Transformers 分享与上传自己的预训练模型
sikubert训练结果放到文件夹中标题

 

2 操作记录

官网文档推荐的方法之一是使用git的方式上传,基于git组件,可以快速便捷的上传仓库中的内容

1. 注册账号

注册连接:https://huggingface.co/

注意:用户名设定后不可更改。用户名将用于之后上传填入。

2. 创建预训练模型仓库(repo)

首先,在hugging face中新建一个仓库。可以通过网页新建,也可以通过语句新建

NLP文档挖宝(2)——通过Huggingface Transformers 分享与上传自己的预训练模型
标题通过网页新建repo

.

如果选择通过语句新建,需要先通过transformers-cli内置程序进行登陆,如下所示。注意transformers的版本,过早的版本不支持直接使用内置程序,需要到Anaconda的Scripts文件中找,所以此处建议使用最新版的下transformers。

transformers-cli login
# 此处输入上面的用户名和密码

transformers-cli repo create your-model-name
# 用这条语句进行新建,如果仓库已存在,新建会失败。

transformers-cli repo create your-model-name --organization your-org-name
# * 补充上一条语句,可以补充组织信息。

3.git拉取新建的仓库。

git clone https://huggingface.co/username/your-model-name

# 注意这个时候使用的url就是刚新建的位置了。

拉取可以获得git相关信息,在新的文件夹中新建“README.md”文件,作为你的模型卡片内容。

NLP文档挖宝(2)——通过Huggingface Transformers 分享与上传自己的预训练模型
拉去并新建说明卡片

然后让入你正确命名的预训练模型。规则参照:https://huggingface.co/transformers/model_sharing.html#check-the-directory-before-pushing-to-the-model-hub

NLP文档挖宝(2)——通过Huggingface Transformers 分享与上传自己的预训练模型
放入我们的预训练模型

4.add + commit + push 一条龙

cd your-model-name
git add . && git commit -m "Update from $USER"
git push
# 第一次上传会让你输入账户密码

我的操作如下:

NLP文档挖宝(2)——通过Huggingface Transformers 分享与上传自己的预训练模型
我的说明样例

至此,我们的模型就上传成功了,可以在你的账户中刷新查看。

NLP文档挖宝(2)——通过Huggingface Transformers 分享与上传自己的预训练模型
我们的预训练模型位置,欢迎尝试

小记

语言是技术人的一道门槛,要想解决这个问题,或许是通过技术人越来越多的分享,或许是通过NLP的技术进行高质量翻译辅助……懒人心愿:希望有一天,可以不用通过看外文原文档就能解决我所有的问题。

就目前来看,对于外文文档,望洋兴叹不如泛舟,激流勇进方可一览真容。

3 参考

[1] Model sharing and uploading:https://huggingface.co/transformers/model_sharing.html

上一篇:huggingface预训练模型下载到本地如何使用和加载


下一篇:Huggingface中的BERT模型的使用方法