搞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

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




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

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

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


上传神经网络模型参数,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的模型参数也需要较长的时间:

通过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详解

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

  1. 24款WordPress网站AI插件大盘点

    ------------恢复内容开始------------ 你想把AI(人工智能)技术和机器学习技术添加到自己的WordPress网站吗?本文中,我会分享24个利用AI技术和机器学习技术的WordP ...

  2. 【AI测试】人工智能 (AI) 测试--开篇

    人工智能测试 什么是人工智能,人工智能是怎么测试的.可能是大家一开始最想了解的.大家看图中关于人工智能的定义.通俗点来说呢,就是 让机器实现原来只有人类才能完成的任务:比如看懂照片,听懂说话,思考等等 ...

  3. ATC:一个能将主流开源框架模型转换为昇腾模型的神奇工具

    摘要:本文介绍了昇腾CANN提供的模型转换工具ATC,介绍了其功能.架构,并以具体样例介绍了该工具的基本使用方法以及常用设置. 本文分享自华为云社区<使用ATC工具将主流开源框架模型转换为昇腾模 ...

  4. 国内2大Git代码托管网站

    可以说GitHub的出现完全颠覆了以往大家对代码托管网站的认识.GitHub不但是一个代码托管网站,更是一个程序员的SNS社区.GitHub真正迷人的是它的创新能力与Geek精神,这些都是无法模仿的. ...

  5. keras入门(三)搭建CNN模型破解网站验证码

    项目介绍   在文章CNN大战验证码中,我们利用TensorFlow搭建了简单的CNN模型来破解某个网站的验证码.验证码如下: 在本文中,我们将会用Keras来搭建一个稍微复杂的CNN模型来破解以上的 ...

  6. 基于Jforum开源项目的论坛网站

    基于Jforum开源项目的论坛网站 开发原因: 刚完成了以wordpress及其插件simple-press为基础的论坛网站,因为一直从事java方面开发, 所以尝试一下使用java开源项目Jforu ...

  7. 开源小程序CMS网站, JeeWx-App-CMS 1.1 版本升级发布,持续更新!

    JeeWx-App-CMS开源小程序CMS网站,持续更新ing~ JeeWx-App-CMS 是jeewx开发的小程序网站开源项目,基于小程序wepy语言,具备cms网站的基本功能,能够打造简单易用的 ...

  8. 为什么国内的好多具备 HTTPS 的网站却没有使用 HTTPS 重定向功能

    为什么国内的好多具备 HTTPS 的网站却没有使用 HTTPS 重定向功能 HTTPS 重定向 good demos ️ HTTPS http://www.xgqfrms.xyz/ https://w ...

  9. eventloop & actor模式 & Java线程模型演进 & Netty线程模型 总结

    eventloop的基本概念可以参考:http://www.ruanyifeng.com/blog/2013/10/event_loop.html Eventloop指的是独立于主线程的一条线程,专门 ...

  10. IIS 发布网站到外网

    前段时间做了一个项目在局域网中测试后要发布到外网上,一时间不知怎么搞,以为直接在IIS中修改发布时的IP就可以了,但是不可行,经过摸索终于成功发布到外网,下面是具体步骤. 前期准备:公网IP,掩码,网 ...

随机推荐

  1. java8 多条件的filter过滤

    java8 多条件的filter过滤 package com.example.core.mydemo.java; import java.io.Serializable; import java.ti ...

  2. Mysql int类型字段插入表达式,值为0或1

    CREATE TABLE `t_user` ( `uId` INT(11) DEFAULT NULL, `uName` VARCHAR(20) DEFAULT NULL, `uPwd` VARCHAR ...

  3. 有点儿神奇,原来vue3的setup语法糖中组件无需注册因为这个

    前言 众所周知,在vue2的时候使用一个vue组件要么全局注册,要么局部注册.但是在setup语法糖中直接将组件import导入无需注册就可以使用,你知道这是为什么呢?注:本文中使用的vue版本为3. ...

  4. python logging日志没有写入到指定文件,写到其他项目的日志文件

    背景: 项目A为主框架项目,使用到了项目B的方法 项目A.B均有封装好的日志方法,且均在封装好的日志文件里面,增加了logger = MyLogger().info,其他文件要使用日志时,引入logg ...

  5. Mysql 使用(一)

    一.数据库的种类 关系型数据库 非关系型数据库 二.常见关系型数据库 oracle:在以前的大型项目中使用,银行,电信等项目 mysql:web时代使用最广泛的关系型数据库 ms sql server ...

  6. UF_MB_ask_button_id 测试

    # tesy UF_MB_ask_button_id import NXOpen import NXOpen_UF as nuf def main(): ses = NXOpen.Session.Ge ...

  7. 牛客小白月赛97 A-D题解

    AAAAAAAAAAAAAAAAAAAAA -----------------------------题解------------------------------------------- 统计数 ...

  8. ubuntu16 python2 安装M2Crypto报错

    正文 pip2 install M2Crypto # 报错: # unable to execute 'swig': No such file or directory # error: comman ...

  9. SpringBoot学习备忘

    在 mapper.xml 中的 like 的写法 db1.name like "%"#{name}"%" 参考mybatis mapper.xml中like的写 ...

  10. MFC基于对画框工程笔记->更改窗口图标以及生成的.exe图标

    一.前言 继前一篇生成MFC基于对话框工程->新建MFC对话框后,开始改动对话框图标以及生成的.exe图标. 原对话框图标以及.exe图标: 在菜单栏中选择生成目录为Release 打开Rele ...