【ArchSummit架构师峰会】探讨数据与人工智能相互驱动的关系>>> 了解详情
写点什么

进击的 AI 框架,MindSpore 开源一周年

  • 2021-04-09
  • 本文字数:4126 字

    阅读完需:约 14 分钟

进击的AI框架,MindSpore开源一周年

开源一年以来,累计发布 8 个新版本,汇聚超过 3000 名社区开发者的代码贡献,社区访问量超千万;现拥有超过 100 个大的基础模型,涵盖计算机视觉、NLP 等主流的 AI 和深度学习框架;累计 PR 数 超过 2 万个,下载量高达 22 万次,下载用户遍布全球;超过 100 所高校参与了社区活动,超过 40 家科研机构利用它去发表原创论文。这就是全场景 AI 计算框架 MindSpore 开源一年来取得的成绩!


MindSpore 如何在短短一年时间取得这些成绩的?它怎样与开发者打交道?如何打造自己的开源社区?以及它是如何落地,给企业和开发者带来真正价值的?


回答上述问题,不仅有助于我们更好的了解 MindSpore 开源项目,而且能让我们深刻的理解开源和它背后的价值与意义。

仅“一岁”的 AI 开源项目

2020 年 3 月 28 日,华为开源新一代全场景 AI 计算框架 MindSpore,并发布 MindSpore 0.1.0-alpha 版本。据悉,它具有基于源码转换的通用自动微分、自动实现分布式并行训练、数据处理、以及图执行引擎等功能特性。


MindSpore 最初是作为华为内部项目孵化的。因为在华为的某些业务场景中,传统 AI 框架无法满足需求,于是自己研发,才有了 MindSpore。


华为云与计算开源业务(OSDT)总经理、开放原子开源基金会 TOC(技术监督委员会)主席堵俊平表示,“我们认为把这个项目开源可以很好的体现(一种)利他主义精神,能为业界很多数学科学家和工程师提供一种设计友好、运行高效的开发体验,包括软硬件协同优化,适用于端、边、云全场景。


诞生 6 个月后,MindSpore 迎来另一个重要时刻。在社区力量和用户力量的共同驱动下,MindSpore 快速迭代,社区每月发布一个新版本。9 月 30 日,MindSpore 1.0 版本正式发布。


这被视为一个非常重要的版本,因为它标志着在经过 7 个版本快速迭代后,MindSpore 达到了在生产环境可用的标准。“一个开源项目达到 1.0 版本的标准,就可以投入商用,这是非常重要的。因为之前,它意味着用户要承担更多的风险。一旦达到 1.0 标准或生产商用的标准,用户用起来就会更放心,因为它经过很多实际场景的打磨”。


在堵俊平看来,一个好框架,它的 API 后续版本一定要保证向前兼容性。如果随意更改 API,这对老版本的使用或老用户的后续升级维护会带来很多挑战。


2021 年 3 月 28 日,MindSpore 开源迎来一周年,社区不仅举行了周年直播活动,而且宣布了许多新特性,比如动态图分布式训练效率的大幅提升、一键模型迁移、模型鲁棒性检测等,同时推出面向开发者的新工具 TinyMS。



开发者第一

开发者对开源社区犹如水之于河,由于水的流动,河才有生命力。同样,因为开发者的不断参与和贡献,开源社区才能壮大。一旦失去开发者,开源社区就没有了生命力,终将变成“一条干枯的河流”。


MindSpore 开源社区一直坚持“开发者第一”的原则,不断为开发者提供更好的服务。这体现在以下几个方面:


一是降低开发者参与门槛。社区通过推出新工具,降低开发者上手难度。比如用 AI 工具实现 issue 标签自动化,提高开发者参与积极性。传统上,issue 的分配和审查需要耗费社区管理者的大量工作和时间,结果造成 issue 长时间积压,无法解决。而 MindSpore 社区开发出 AI 工具,自动为每个 issue 打标签,缩短问题响应时间,提升 issue 处理效率。此外,在一周年到来之际,MindSpore 社区又推出了新工具 TinyMS,不仅简单易上手,而且端到端部署,全流程打通。同时,它还能对模型训练脚本的格式进行标准化和规范化,提高模型开发效率。


二是解决开发者问题。MindSpore 社区提供了完备的开发者文档,包括 MindSpore 编程指南、Python API、C++ API、Java API、设计和规格等各类文档。文档不仅结构分明,清晰直观,而且详细完备,对开发者非常友好。通过社区文档,开发者不仅可以快速了解 MindSpore 的重要信息,而且能快速上手。


三是以开发者为主体,通过悉心服务汇聚大量开发者。开发者加入社区,不管是加入 MindSpore Study Group(简称 MSG,一个让开发者进行技术研讨、案例分享、互相交流的开发者社群),还是参与社区活动,甚至提 issue,他都能得到快速反馈。为了更好地给开发者答疑解惑,社区运营团队不仅有微信群、QQ 群,甚至还建立了一个“知乎老乡送温暖”的群。“如果知乎里有人提出问题,我们会先拉到‘送温暖’微信群。如果微信群里解决不了,我们再到 QQ 群。因为 QQ 群,我们要求研发专家必须驻场。简言之,千方百计解决大家的问题”。


此外,制度规定又是另一重保障。社区有针对开发者响应的 SLA 制度,保证最快 4 小时内闭环一般性问题,最慢一个版本周期内落地大特性问题。与此同时,社区还有开发者开放治理制度,定义了 Contributor 和 Approvers 两类角色,任何参与社区的开发者都有机会成为 Contributor 或 Approvers,从而在社区承担更关键、更重要的角色。


或许,正是抱着一心为开发者服务的态度,MindSpore 才能在开发者群体中产生越来越大的影响力,吸引更多开发者参与,为社区做贡献。

开源社区优先

开源界有句话,“如果你有一个好的代码,但是没有一个好的社区,那么聪明人都会走开,你的代码也就慢慢腐烂;如果你有一个哪怕是不那么好的代码,但是你有好的社区,吸引很多优秀的人加入,慢慢地改造代码,代码本身会变得更好,软件也会变得更好“。因此,一个开源项目的成功与否,开源社区发挥着关键作用。


据悉,MindSpore 社区采取开放治理架构,它既有技术治理委员会(Technical Steering Committee,简称 TSC),负责把控开源项目大的发展方向,也有特殊兴趣组(SIG)和工作组(Working Group,简称 WG)。具体说来,日常的模块开发通常通过 SIG 的形式由开发者自由组队,并通过推举 SIG Lead 的方式来产生模块开发的负责人,管理日常工作。工作组 WG 则主要是负责一些涉及到多个 SIG 的需求传递、设计讨论等工作。此外,在国内的深圳、杭州、苏州、上海等城市以及海外的俄罗斯、新加坡、印尼等均已建立 MSG 组织,方便开发者深入交流。


堵俊平称,“有一句话说‘独行快,众行远’。我们要打造一个包容、开放的社区,让更多人加入进来,贡献自己的经验和智慧。我们希望跟广大的开发者一道,让 MindSpore 不仅走得快,而且走得远。”


在 MindSpore 社区建设中,社区运营起到非常重要的作用,因为它是社区和开发者之间的桥梁。据悉,社区运营开展了很多面向开发者的活动,比如 MindSpore 两日集训营、21 天实战营等。以 21 天实战营为例,社区邀请专家采取直播+录播+作业的授课形式,帮助开发者们深度解读深度学习每一个步骤,帮助小白更快的上手高性能深度学习框架。


与传统的社区运营不同,MindSpore 的社区运营活动以开发者为主体,一切围绕着开发者。“不是说请大牛给大家讲课,大家进行提问,而是社区策划一个活动,让大家真正参与进来,互相比拼谁的模型的精度最高”。


据悉,社区微信群里,有一个开发者,他一直积极参与社区活动,甚至想带着 MindSpore 去参加日本的一个 AI 大赛。在社区评选优秀开发者时,他被评上,而直到参加答辩活动时(社区规定:被评上的优秀开发者需要参加公开的答辩活动),大家才知道他是一个华人,一直在日本。


从 MindSpore 社区运营过程中,堵俊平总结出一个好社区成功运营的四个关键:


第一,开源产品要有竞争力,有创新;


第二,有一套成熟的社区治理方案,包括构建社区文化。只有社区成为一个开放、包容的地方,开发者才能在里面找到归属感。这样大家才能齐聚一堂,贡献智慧。


第三,生态合作。一个开源项目要发挥自己的价值,需要有生态,比如它怎么与上层的应用结合,怎么发挥真正的价值。


第四,专业的运营团队,以及与周边力量的配合。“MindSpore 有一个非常专业的运营团队,负责人都是开源领域的一些老兵和资深贡献者,在广大开发者中树立了比较好的口碑和影响力”。


对一个开源项目来说,它真正的价值在于落地。没有真正落地的开源项目,犹如空中楼阁、水中月镜中花。当它给开发者和企业不断带来价值,这个开源项目才有长久的生命力。


由于一直找不到合适的 AI 框架,深圳湾实验室的团队在开展分子动力学模型研究时迟迟无法推进。。在一次 MSG 深圳活动上,实验室团队了解到了 MindSpore 开源项目。通过与社区的深入交流,他们发现 MindSpore 正好满足自己的需求,它不仅有很好的自动微分能力,性能好,而且其高阶导数计算灵活。因此,深圳湾实验室的团队开始与 MindSpore 社区合作,利用 MindSpore 进行大集群训练,实现分子动力学模拟,最终获得突破性的创新成果。


堵俊平表示,“通过社区,开发者接触到新场景、新技术,并把这个技术使用经验反馈回社区,发生一些化学反应,产生创新的机会。我们希望 MindSpore 成为一个全场景的创新平台”。


除了科研机构,MindSpore 落地的另一个领域是企业。据了解,Jina.ai 是一家初创公司,致力于提供面向云原生的开源神经网络搜索能力。Jina.ai 与 MindSpore 通过基于开源社区的合作,可以提供诸如以图搜图这样有趣的功能。并且,这家公司还在依靠 MindSpore 的能力尝试一些新应用,比如听歌识曲、法律文本搜索等。

未来:加速奔跑

如今,MindSpore 开源一周年,社区也举行了一系列的庆祝活动,比如一周年直播、新特性与新工具 TinyMS 发布。


开源一年来,正是奉行开发者第一原则和社区优先理念,MindSpore 才能不断吸引开发者加入进来,社区才能不断壮大,生态才能蓬勃发展。在堵俊平看来,MindSpore 开源项目取得的成绩离不开社区和广大开发者的力量,也离不开用户、合作伙伴以及与企业的合作。他说:“在这个一体共生的环境里,通过社区去连接所有要素,推动关键要素一起进行创新创造,我觉得这是一件很伟大的事情。”


面向未来,MindSpore 也在加快自己的发展步伐,“打造一个有竞争力的开源社区,让 AI 框架可以更好地普惠大众”。为此,MindSpore 一方面坚持社区优先,奉行一个更开放的策略;另一方面,在这个策略下,团结更广泛的用户,包括开发者、合作伙伴,“只有社区足够开放,产品有亮点,有让人眼前一亮的技术,这样才能吸引更多的开发者参与进来”。


附:


MindSpore 新特性及新工具 TinyMS 下载:

https://tinyms.readthedocs.io/zh_CN/latest/


MindSpore 开源项目 GitHub 地址:

https://github.com/mindspore-ai/mindspore/blob/master/README_CN.md


MindSpore 开源项目:

https://gitee.com/mindspore/mindspore?_from=gitee_search


MindSpore 官网:

https://www.mindspore.cn/


MindSpore 官方公众号



公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2021-04-09 11:477609
用户头像
万佳 前InfoQ编辑

发布了 677 篇内容, 共 335.1 次阅读, 收获喜欢 1794 次。

关注

评论 1 条评论

发布
用户头像
生态很重要,让更多人来用更重要
2021-04-15 12:25
回复
没有更多了
发现更多内容

JVM 调优神器 arthas

java易二三

编程 计算机 Arthas

重塑思维模式,实践致富法则

少油少糖八分饱

读书笔记 分享 思维 搞钱 致富

想学Python高级编程?必须了解这个小技巧:match-case!

程序员晚枫

Python

文心一言 VS 讯飞星火 VS chatgpt (68)-- 算法导论6.5 7题

福大大架构师每日一题

福大大架构师每日一题

容器化应用程序的配置管理策略与实践

DS小龙哥

7月月更

iOS 应用上架流程详解

雪奈椰子

ChatIE:通过多轮问答问题实现实命名实体识别和关系事件的零样本信息抽取,并在NYT11-HRL等数据集上超过了全监督模型

汀丶人工智能

人工智能 自然语言处理 NLP 大模型 关系抽取 命名实体识别

Spring Boot学习路线1

小万哥

Java spring 后端 Sprint Boot Sprint Cloud

使用Appuploader工具将IPA上传到App Store的最新流程和步骤

雪奈椰子

大厂程序员的水平比非大厂高很多嘛?

程序员小毕

Java 程序员 面试 程序人生 架构师

JVM类加载器子系统ClassLoader

java易二三

编程 程序员 计算机

使用Keepalived实现Nginx的自动重启及双主热备高可用

java易二三

编程 程序员 计算机

Sharepoint安装SSL证书?

百度搜索:蓝易云

Linux 运维 https SharePoint ssl

懒得改变原始对象?JavaScript代理模式教你怎样一步步偷懒!

控心つcrazy

JavaScript 设计模式 代理模式 Proxy Design Pattern

基于中文金融知识的 LLaMA 系微调模型的智能问答系统

汀丶人工智能

人工智能 自然语言处理 知识图谱 LoRa NLP 大模型

深入理解 HDFS(一):Block

冰心的小屋

hadoop hdfs 数据存储 文件分块 block

如何在几分钟内创建一个带有业务数据的官网 AI 智能客服?

Dify

开源 AI开发 LLMOps

Appuploader工具让ipa上传到App Store 的最新流程和步骤

CSS !important 规则

雪奈椰子

开心档之CSS !important 规则

Dify.AI 用户直面会:Dify 产品规划与 LLM 应用落地常见问题

Dify

开源 AI开发软件 LLMOps

Ctyun系统升级OpenSSH 9.3详细教程

百度搜索:蓝易云

云计算 Linux 运维 openssh Ctyun

用Orange Pi Zero3定制安卓电视盒子备忘

sai

Orange Pi Android TV

解决 go-zero 注册 etcd 出现 “Auto sync endpoints failed.” 的问题

非晓为骁

golang etcd go-zero etcd-client 服务注册发现

Apache服务器上安装SSL证书?

百度搜索:蓝易云

Apache Linux https SEO ssl

Nginx的高可用

java易二三

编程 程序员 计算机

请别再问Spring Bean的生命周期了!

java易二三

程序员 Spring Boot 计算机 Spring Bean生命周期

从互联网到云时代,Apache RocketMQ 是如何演进的?

阿里巴巴云原生

Apache 阿里云 RocketMQ 云原生

Mac部署AIGC图片生成服务——基于stable-diffusion

珲少

业务模块在你做之前,一定要多想呀?

Bonaparte

产品 产品经理 产品设计 产品思维 产品需求

活动回顾|火山引擎DataLeap分享:DataOps、数据治理、指标体系最佳实践(文中领取PPT)

字节跳动数据平台

数据中台 数据治理 抖音 DataOps 企业号 7 月 PK 榜

进击的AI框架,MindSpore开源一周年_开源_万佳_InfoQ精选文章