国内的开源AI模型共享网站(AI模型的GitHub)—— modeldscope —— 对标外网的“huggingface”,modelscope好用吗?

搞AI的应该都是知道huggingface是啥的,这里不过多介绍,简单的来说就是AI模型的Github,之所以这么说是因为计算机的项目往往都是代码文件,所有计算机项目的Github只需要上传项目的代码文件即可,而AI项目则与传统的计算机project不同,是在代码文件之外还需要有有神经网络的模型文件。


不同于项目的代码文件只有几个KB或几个MB的大小,AI的神经网络模型权重往往都是几百MB或者几个GB的大小,虽然一直有人把模型权重进行网络共享,但是往往都是使用网络云盘的方式来实现,基本采用了项目代码和权重文件分开的方式,而且由于神经网络权重往往需要较大的存储空间(几百MB甚至几个GB),因此更多的人不选择公开神经网络权重的方式而只公开项目代码。虽然只公开项目代码的开源形式是最为广泛的,但是由于神经网络项目往往具有较大的随机性,也就是说能获得好用的权重往往是一个随机的事情,即使参数炼丹搞的再好也是需要运气加成的,而且往往一个神经网络项目的权重训练需要较长的运行时间和计算资源的消耗,这里比较有名的就是OpenAI的ChatGPT了,为了训练20个G的权重用了近万台服务器和显卡,训练上半年甚至一年时间,其花销是极为巨大的,也正是因此开源神经网络项目的神经网络权重一直是行业痛点。


世界上第一个选择为众多神经网络项目建立一个权重共享的网站的是美国的huggingface,但是由于中美贸易战的问题我们国家是无法直接访问该网站的,这也是美国政府为了打压中国科技发展的一个举措,为此在国内我们的AI领域的researcher就需要采用其它方式来访问huggingface网站了,来绕过美国政府对我们的封锁。


为了构建国内的AI模型分享网站,也是为了对标美国的huggingface,华为推出了mindspore的分享网站,虽然设立目标是转为mindspore框架的,但是其实也没有一定的限制,因此也可以作为不限制AI计算框架的权重分享网站(前几年刚创建时对上传分享者有着较强的资格限制,比如上传者必须有公网IP等,因此多年来再也没有选择支持过mindspore社区,不过据说最近华为的mindspore社区有了较大改善,不过这也是后话了);虽然华为推出了mindspore的神经网络权重分享网站,但是有些不温不火,不过最近阿里公司也是在大语言模型火爆AI领域的大背景下选择跟进,推出了对标huggingface的modelscope,当然阿里的modelscope在功能上有极小一部分和华为的mindspore重叠,但是也有一些独立的服务和功能,比如是把modelscope独立为一个网站来运营,并且只做神经网络权重分享,因此和华为的mindspore还是有一定的差异性的,而且和美国的huggingface也更为相近。



在modelscope上创建模型分享项目还是比较容易操作的,我这里也是创建了一个测试用处的Demo:
链接:
https://www.modelscope.cn/models/devilmaycry812839668/devil/summary
image

可以说,在modelscope上创建项目还是比较简单的,很容易操作,难点是如何为这个项目上传文件和下载文件。





首先要知道,在modelscope上的项目是分为私有项目和公开项目两种的,下载私有项目是需要使用秘钥字符串的,我们可以在项目的页面上找到秘钥的字符串(token):

image


在下载私有项目,或者推送更改(不区分私有项目还是共有项目)都需要将这个秘钥字符串作为密码进行输入验证的。因为modelscope资源的下载和上传可以通过sdk和git两种方式的,因此也就有下面两种方式的秘钥输入方式。


通过验证秘钥的方式通过git方式下载项目:
image




上传神经网络模型参数,git方式上传LFS文件:

点击查看代码
git lfs track "*.psd" // 指定要追踪的大文件类型
git add .gitattributes // 将.gitattributes添加到版本控制中
git add file.psd
git commit -m "Add a LFS file"
git push origin master



下载神经网络模型参数,检出LFS文件:

点击查看代码
git clone https://github.com/user/repository.git
cd repository
git lfs install
git lfs pull

不过亲测了一下,这个使用git lfs方式下载文件的速度是极慢的,几个几百MB的模型参数也需要较长的时间:

image


通过git lfs方式上传模型参数文件还是比较快捷的,但是使用git lfs下载模型参数则是较慢的,甚至可以说基本不可行的。

参考:
https://www.modelscope.cn/docs/%E6%A8%A1%E5%9E%8B%E7%9A%84%E4%B8%8A%E4%BC%A0



Ubuntu安装git lfs(git的大文件支持):

sudo apt-get update
sudo apt-get install git-lfs --fix-missing


参考:

  1. Git LFS 安装及使用
  2. Git LFS Install详解

posted on 2024-01-01 13:30  Angry_Panda  阅读(1016)  评论(0编辑  收藏  举报

导航