「 Milvus | 征文」笨功夫与巧心思,Milvus开源社区的成长

Zilliz 发布于 04/29 17:13
阅读 233
收藏 1

大家好,我是顾钧,来自Milvus团队。Milvus向量搜索引擎(Linux基金会孵化项目),专为AI应用而生。如果你正在被faiss折磨,那就可以来试试Milvus。Milvus在集成底层ANNS算法库(faiss,annoy,hsnwlib等等)的基础上,在数据管理,稳定性和易用性方面做了很多工作。

很高兴Milvus入选了首期“OSC开源软件趋势榜”前十名。Milvus于2019年10月15日开源,至今虽然刚过半年,但也取得了一些小小的成绩:

  • 2020年1月通过LF AI技术答辩,4月下旬完成全部手续(春节因素+疫情影响,耽搁了不少时间),正式成为Linux基金会的孵化项目。
  • 保持了每月一个小版本的迭代速度,是LF AI中开发最活跃的项目(依据https://lfanalytics.io/projects/lfai)。谦虚地说,Milvus是Linux基金会中开发最活跃的AI项目。
  • 目前已经积累了上百家社区用户,在机器视觉(CV)、自然语言处理(NLP)和声音识别(Voice)等领域吸引了众多用户。

和开源界的前辈相比,我们还有很大的进步空间。但这6个月,我们也积累了一些宝贵的经验,相信会给大家带来一些启发。

开源,基础软件的未来

我对开源没有情怀,我的GitHub账号是2019年7月24号才创建的。我以前一直抱着怀疑的眼光看待开源技术。为什么那些重复造轮子的开源软件却成了大家传颂的新技术?即便很多知名的开源项目,初期也是在对标那些名声在外的闭源软件去做开源实现。这事情的意义在哪里?

开源软件能避免供应商锁定(vendor locking),从而降低企业的IT成本?作为一个在金融IT领域工作过14年的人,这不是一个能让我信服的答案。首先,企业IT成本中软件占比并不高,大头在于电费,网费,人力成本等等。更何况,开源软件虽然没有许可证费用,但也会有订阅费用、服务支持费用等。其次,很多企业从来都不害怕vendor locking,IT服务永远都是有成本的,不是付给vendor A就是付给vendor B。很多时候,企业需要一个IT方面的最终责任人。宕机了把供应商老板叫来赔礼道歉,或者自己卷铺盖走人,CTO会选哪一个?

真正害怕vendor locking的不是企业,而是你,是我这样的IT从业人员。 闷头花了5年时间,你终于成了一个Oracle(或Db2)专家,结果抬头发现周围人都在去IOE。于是过往经验的价值大大缩水,凭什么勤奋的你要被这些日落西山的vendor连累?!这就是为什么越来越多开发人员热衷研究主流的开源技术。因为这些经验更保值,毕竟付出的是自己的人生。

因此,Milvus这样的新一代基础软件,虽然没有现成的对标项目,但一样要坚持开源。不是企业不敢用闭源的基础软件,而是不开源的基础软件没什么人愿意花时间学。

开源是基础软件的未来,这不是由新的商业模式决定的,这是人性使然。

开源的捷径

做开源软件是件很辛苦的事。不同于传统模式,开源模式下,软件的迭代速度要快的多。项目管理,代码开发,技术推广,用户反馈,开源之轮转起来飞快。也许在某些环节上能抄抄近路,但如果没有真实有效的输入输出,开源的飞轮依然是转不起来的。开源的捷径在我看来就是坚持正确的方式,从而少走弯路。

什么是正确的方式?在我看来可以概括为:“下笨功夫,用巧心思。”(我不敢说我理解正确的方式,这里仅供参考与讨论)。

GitHub的星可以邀请亲戚朋友来点赞,但代码commit数、版本发布周期、issue回复的及时性、文档完备程度、社区活跃度、技术输出频率等等等等,这些只能是下笨功夫一点点积累起来。所以不愿意下笨功夫的“聪明人”就不要来搞开源了。即便目前开源受到越来越多的关注,但空有表面功夫的团队,是很难在开源这种高度透明的模式下坚持下去的。

下苦功是基础,但也还不够。因为往往我们下了苦功,结果团队以外的人根本不知道。网上经常有段子嘲印度工程师,说他们做了1分工作就得夸出3分成果。我们不要夸夸其谈,但好歹得让大家了解我们究竟付出了多少努力吧。这时候就需要一点“巧心思”。

共建开源社区

目前,开源已经成了一种高度依赖团队协作的模式。单人匹马的个人开发者要想运作一个开源项目是比较困难的,时间与精力的投入都是巨大的。好在国内目前有不少活跃的开源项目社区,如果个人开发者有兴趣参与开源的话,可以选择融入其中。

如果大家对开源AI、高性能计算、向量搜索(ANNS)有兴趣,欢迎加入Milvus开源社区。让我们一起为Milvus的毕业而努力。

加载中
返回顶部
顶部