提交 edd74241 编写于 作者: 螺旋猫猫头's avatar 螺旋猫猫头

Update 第三章 开源项目发展现状.md

上级 3d3e4e1d
......@@ -177,8 +177,109 @@ _非软件_
![在这里插入图片描述](https://img-blog.csdnimg.cn/111f92c5f2e446528b5d33a3fb5c10e7.png#pic_center)
表11 编程语言 Top 10 排行榜
## 2022-2023年度OSS Compass国内开源发展现状洞察报告
本报告以开源指南针(OSS Compass,https://oss-compass.org)数据呈现国内开源项目的活跃度与发展趋势。开源指南针为国内和国际开源社区提供了一个公开的 SaaS 服务,用于开源社区健康分析。开源指南针面向 GitHub、Gitee 等托管平台上托管的所有开源项目开放。本报告以收录于开源指南针平台的国内代表性开源项目为样本,对国内开源软件的发展状态进行评估和洞察。报告涉及的国内开源软件项目74个,涵盖了人工智能、OS发行版、数据库、云原生、前端、中间件、嵌入式OS、安全等多个领域。
### 一、开源指南针(OSS Compass)平台简介
开源指南针平台由开源中国、华为等国内著名企业以及南京大学、北京大学等国内知名高校联合发起,于2023年2月21日正式对外发布并提供服务。其创立的愿景是为包括但不限于 OSPOs、社区管理人员、学术研究人员、项目所有者、维护者、开发者等广大开源社区的参与者提供公开、客观、量化的评估指标体系和评估结果。通过分析大量开源项目的实际数据,并参照行业最佳实践和学术界的研究结果,以评估促发展,为开源软件社区和生态的健康发展提供助力。
图1 开源指南针评估体系
如图1所示,开源指南针平台目前以“产业生态健康(Business Ecosystem Health)”理论模型为指导,通过连接国际开源社区健康评估组织CHAOSS社区的指标体系,形成了针对开源软件项目和生态的三维度健康评估体系。该三维度体系包括生产力、稳健性和创新力。该指标体系可以从内部效度、外部效度和结构效度等多个方面,采用包括内容效度、因素独立性、区分于预测能力等多项指标,对其有效性进行充分的评估和验证。基于该健康评估模型,开源指南针平台针对托管在GitHub和Gitee上的大量项目进行了评估和分析。目前,针对GitHub和Gitee托管平台,已经实现了针对包括人工智能深度学习框架、ChatGPT、大数据、数据库、云原生、代码分析等在内的超过200个领域、18000个开源软件仓库的评估,并在持续增长过程中。
通过开源指南针提供的SaaS服务,开源软件社区的参与者和研究者能够直接获取针对所收录开源项目的评估结果,避免进行数据获取、清洗和指标计算等在内的繁琐的重复性工作,提高工作效率。同时,通过开源指南针的Lab版面(https://oss-compass.org/lab),用户可以在线创建评估模型、选择评估对象,实现定制化的评估。
在接下来的章节中,本报告基于上述开源指南针SaaS服务,对国内开源领域的发展现状进行洞察。
### 二、基于OSS Compass的国内开源领域发展现状洞察
本报告基于开源指南针已经公布的协作开发指数、社区服务与支撑、活跃度和组织活跃度四个度量模型,针对2022-2023年度的数据开展分析。其中每个度量模型由多个原子度量指标综合形成,具体参见开源指南针的评估模型定义(https://oss-compass.org/docs/zh/dimensions-define/)。在使用上述度量模型开展分析的同时,本报告也针对构成指标模型的,具有代表性的指标开展洞察和分析。
#### 2.1 整体现状洞察、年度数据
本节选取OSS Compass所收录的国内在各典型领域中的代表性开源项目,对国内开源的年度发展状态进行洞察。在时间划分方面,我们定义2022-2023年度具体时间为2022年5月1日 - 2023年4月30,用于对比的上一年度具体时间为2021年5月1日 - 2022年4月30日。
#### 2.1.1 代表性领域和开源项目
如表1所示,本洞察报告参考OSS Compass专家意见和上一年度的开源蓝皮书相关章节,选择了人工智能、OS发行版、数据库和云原生等九个典型的应用领域中包括MindSpore、PaddlePaddle、THUDM、OpenLMLab、OpenHarmony、ShardingSphere等在内的共74个国内具有代表性的开源项目作为样本开展分析。
表1 本洞察报告所包含的代表性领域和开源项目
#### 2.1.2 整体概览
图2 国内开源的整体发展趋势年度对比
如图2所示,在2022-2023年度,国内开源的整体平均活跃度、组织活跃度、协作开发指数、社区服务与支撑指数为0.326、0.153、0.333和0.314。相较于2021-2022年度,本年度的活跃度、组织活跃度、协作开发指数、社区服务与支撑指数分别上升了3.5%、6.3%、4.4%和3.3%。对比上一年度,2022-2023年度国内开源的整体发展呈现稳中求进,在波动中上升的态势。
#### 2.2 典型领域洞察 —— 人工智能领域
随着深度学习技术在近年来的持续发展,特别是ChatGPT等大语言模型取得的突破性进展。人工智能领域得到了各界的广泛关注,包括华为的MindSpore、百度的PaddlePaddle、清华大学THUDM团队的项目、OpenLMLab、TVM等项目都是国内在人工智能领域的典型代表。为此,我们选择人工智能领域作为典型,开展深入分析。
#### 2.2.1 人工智能领域整体概览和关键事件
图3 人工智能领域的发展趋势。自上而下分别是活跃度、组织活跃度、协作开发指数和社区服务与支撑指数。蓝色均值和绿色中位数分别表示人工智能领域在相关指数上的均值和中位数。黄色的总均值和总中位数,则对应了表1中所有领域在相关指数上的均值和中位数
从图3中可以看出,除社区服务与支撑指数,人工智能领域对比其它领域在活跃度、组织活跃度、协作开发指数上,其均值和中位数均稳定保持在总均值和总中位数之上,展示出了人工智能领域的长期活跃。同时,可以明显看到在2023年3月左右,人工智能领域的活跃度、协作开发指数和社区服务与支撑指数呈现出了一个爆发式的增长。特别是社区服务与支撑指数,从低于总均值和总中位数的位置,短期形成了大幅超越。
ChatGPT的发布这一重要事件应当是引这一轮人工智能领域在2023年初的爆发式增长的主要因素。自2022年12月以来,OpenAI对ChatGPT进行了一系列的发布(https://help.openai.com/en/articles/6825453-chatgpt-release-notes#h_026e1e86a4)。由于其颠覆以往模型的优异性能,在各个领域都产生了深远影响,更是刺激了人工智能领域的相关研发和应用形成了新的高潮。从开源指南针的指数洞察角度看,国内的人工智能领域对这一事件进行了快速响应。考虑到开源指南针平台90天的统计周期,尽管相关指数的跃升在2023年3月被观察到,但实际的爆发式增长在2022年末、2023年初就已经开始了。
接下来,我们针对人工智能领域的发展按模型再进行分解,开展更为深入的洞察。
#### 2.2.3 按模型开展洞察
本节针对开源指南针当前所公布的四个指数模型:活跃度指数、组织活跃度指数、协作开发指数、社区服务与支撑指数,针对人工智能领域围绕2022年底至2023年初这一段时期的数据开展深入洞察。
**a) 活跃度指数分析**
活跃度用来描述一个开源社区或者项目的活跃程度。为了使一个开源项目持续发展,必须在首次发布后进行持续的维护和改进。活跃度展示了一个项目随着时间的推移持续展开的工作有多少。高活跃度的社区可能表明该项目是可持续的,高活跃度的社区可能表明该项目面临风险。本节通过对构成活跃度指数模型的其中两个指标:贡献者数量和代码提交频率开展解读和分析。
图4 人工智能领域活跃度指数模型关键构成指标变化趋势
从图4可以看出,尽管在2023年农历新年期间,贡献者的数量有所下降,代码提交频率也有所降低。但是从2023年3月20日开始,构成活跃度指标权重最大的贡献者数量指标有了快速的抬升,代码提交频率也趋于稳定。从而解释了图3中活跃度的提升。
**b) 组织活跃度指数分析**
组织活跃度指数模型用于评估社区中组织(商业公司、高校等)的活跃程度。对于一个开源项目,尤其是对于平台型软件项目,越多的组织参与到社区贡献,表明社区的生态构建是朝向繁荣方向发展的。因为只有软件项目能够提供组织所需要的商业价值或者学术价值绑定,相关组织才愿意以组织身份参与社区贡献。本节通过分析构成该模型的两个指标:组织数量和组织贡献者数量,来对组织活跃度的变化趋势进行解读。
图5 人工智能领域组织活跃度指数模型关键构成指标变化趋势
如图5所示,我们可以看出,在2023年初这一段时间中,在人工智能领域典型项目中活跃的组织数量逐渐下降,但是贡献者数量维持稳定并在农历新年后逐步增长。对指数的解读也解释了图3中展示的人工智能领域整体的组织活跃度维持稳定并略有下降趋势的原因。同时,从指标分解的结果中我们也可以看出,目前在组织投入方面,人工智能领域的组织活跃呈现出一定的聚集趋势:头部组织的投入开始占据主导。
**c) 协作开发指数分析**
开源项目作为人类群体智能的典型表现,是否能够建立协作式的开发管理,是促成项目成功的关键要素。而代码作为一个软件项目的最终输出件,是整个社区的核心内容。协作开发指数围绕一系列与代码贡献相关的间接指标,来评估开发流程管理,社区协作式开发做得如何。本节选取构成该指标模型的重要指数,即,代码提交关联PR的比率、PR关联Issue的比率、代码审查比率和代码合并比率,对协作开发指数指数的变化趋势进行解读。
图6 人工智能领域协作开发指数模型关键构成指标变化趋势
在协作开发指数方面,如图6所示,我们可以明显看到在2023年2月初开始,代码提交关联PR的比率和PR关联Issue的比率开始上升。但是到了2023年3月中旬,包括代码提交关联PR的比率、PR关联Issue的比率、代码审查比率和代码合并比率都出现了显著的下降。注意我们在此处忽略了已经在图4中展示过的“贡献者数量”这一权重最高的指标。从图中可以看出,尽管图3显示出人工智能领域的整体协作开发指数呈现了明显的增长,但这一增长很可能是由快速增长的贡献者数量,以及2月初代码提交关联PR的比率、PR关联Issue的比率两项指标的抬升所引起的。整体上和协作有关的指数趋势提示我们:仍需要加强社区协作开发的投入力度,维持增长的后劲。
**d) 社区服务与支撑指数分析**
该模型用于评估开发者在贡献过程中,直接感知到的社区提供的服务和支撑做得如何。需要注意的是,这并不意味着只做到模型中提及的指标就足够了,模型为了保证指标间的独立性,做了强相关性指标降维处理;所以如果想长期保持该项模型的长期积极发展,社区付出的努力要远远超过当前指标包含的内容。本报告选取构成社区服务与支持指数模型中重要的两个指标:更新Issue数量和关闭PR数量,对指数的变化趋势进行解读。
图7 人工智能领域社区服务与支撑指数模型关键构成指标变化趋势
如图7所示,在社区服务与支撑方面,可以看到2023年3月以来更新的Issue数量出现明显提升,超过了1000个,从而部分解释了图3所示的整体社区服务与支撑指数的抬升。而关闭的PR数量则呈现出持续下降的趋势。结合上一节对协作开发指数的分析,一种可能的解释为:人工智能领域在短期内的快速发展已经接近或超过当前社区承载的能力,需要我们在保持投入的同时,稳中求进,确保高速、高质量的发展。
#### 2.3 有效性威胁
上述针对各个领域的指数度量基于开源指南针(OSS Compass)的数据,相应的分析结果限于表1所示的典型项目,不能完全代表庞大的中国开源社区的发展趋势。相应的分析结论仅是基于指标趋势和已知事件开展讨论,不构成因果关系,也无法覆盖所有可能的影响因素。
### 三、挑战、机遇与建议
加大基础软件的投入:从表1可以看出,相较前端项目,国内在基础软件,如OS发行版、中间件、数据库等领域能够发掘出的代表性开源软件项目的数量仍相对较少。基础软件作为卡脖子的关键软件,如何培养国内相应的优秀开源社区,提升整体研发能力,是值得关注的一个话题。
人工智能领域要维持发展后劲:在本报告重点关注的人工智能领域,我们可以看到随着ChatGPT的提出,国内的相关框架、模型和应用发展迅速。目前国内有百度的文心一言、华为盘古、清华大学的ChatGLM、复旦大学的MOSS等模型。人工智能作为未来发展的重点方向之一,是一个充满机遇的领域。但是总体而言,国内开源的大模型框架仍然较少,中文支持仍不够强大。从第2.2.3节的指标分析结果来看,整个国内人工智能社区要维持其发展的后劲,还需要更多的投入。
要提高个人贡献者的数量和比例:综合本报告2.2.3节对活跃度和组织活跃度的指标分析,我们可以看出,在当下备受关注的人工智能领域,每周平均活跃贡献者数量不超过500,其中近30%的活跃贡献者来自于组织,且有向头部组织聚集的趋势。如何在国内的广大程序员、相关专业学生群体中,培养开源文化,丰富贡献者的来源,壮大国内开源贡献者队伍规模,是我们要长期关注并采取切实行动的一个重要问题。
## 开源操作系统现状
国产开源操作系统在近年来得到飞速发展,从趋势上看,已经进入行业整体即将起飞的阶段。从传统上看,操作系统的开发属于底层基础软件,复杂性很高,开发和维护资源投入需求巨大,却很难直接转化成商业利益回报,因此一直以来大型企业对于自研操作系统的决策都是非常谨慎的,而国内专业从事操作系统开发的软件企业、操作系统厂商(OSV),却都一直处境艰难,直到今天在中国尚未出现像红帽公司(Red Hat)这样具有全球影响力的操作系统厂商,更不用说微软这样的产业巨头。近年来随着政府一系列鼓励本土操作系统发展的政策推动,国家应对信息安全威胁的需求,再加上国内市场的旺盛需求,以及国内科技实力的提升,国产操作系统的发展进入了一个迅猛发展的前夜,腾飞指日可待。
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册