新编程语言Mojo开源

2024年3月29日,Modular AI公司宣布其备受瞩目的AI编程语言Mojo的核心组件正式开源,这一举措迅速吸引了大量关注。

mojo Mojo

Mojo的诞生

Mojo 语言是编译器大佬Chris Lattner 的创业项目,他曾是许多大型技术项目的领导者,包括 LLVM、Clang、Swift等等。此外,在Google期间,Chris Lattner也为TensorFlow 建立和管理了一系列与 AI 相关的编译器、运行器和编程语言团队。2022年1月,Chris Lattner 宣布创业,和 Tim Davis 共同建立了「Modular AI」。他们希望通过 Mojo,一个全新的编程语言,来自下而上地重建全球ML基础设施。

mojo Tim Davis(左)和 Chris Lattner(右)

Mojo的优势

Mojo 的设计理念是结合Python的易用性与C语言的高效性能。在AI领域,开发者通常使用Python来实现神经网络部分,因为Python易于学习和使用,但其运行速度相对较慢。对于性能要求更高的部分,开发者往往转向C++,尽管C++运行更快,但学习曲线陡峭。Mojo的出现,旨在打破这一局面,提供一个既易于上手又能高速运行的解决方案,使得开发者能够以更快的速度编写高效的AI模型,而无需深入掌握复杂的技术语言如C++。

据官方给出的数据,在性能方面,Mojo的表现尤为突出。最初的测试表明Mojo在运行某些算法时比原始Python快3.5万倍。随后,这一数字被提升到6.8万倍。在Mojo登陆Mac平台后,Modular公司宣称,在Apple MacBook Pro M2 Max上,Mojo的速度快了约9万倍。这样的性能提升,无疑将为AI开发带来革命性的变化,尤其是在需要处理大量数据和复杂计算的领域。

mojo Mojo 将 Python 的可用性与 C 的性能相结合

Mojo的成功不仅体现在性能上,其背后的技术支持同样令人瞩目。Mojo的开发受到了Python、Rust和其他编程语言的影响。它基于MLIR(Multi-Level Intermediate Representation)技术,这是LLVM项目的一个演进成果,专为支持AI硬件加速器而设计。MLIR技术使得Mojo能够生成优化度更高的代码,同时支持GPU和其他加速器,从而充分利用现代硬件的性能。

Mojo的开源

Mojo自去年8月份发布以来,已经吸引了超过17.5万名开发者和5万个组织的关注。开源的消息一经公布,Mojo在GitHub上的star数在短时间内便达到了17.6k,并有2.1k的分支,显示出极高的社区活跃度和参与热情。【我截图的时候已经是18.7k star和2.2k 分支了】

mojo https://github.com/modularml/mojo

Modular公司希望通过开源,能够获得更广泛的开发者反馈,从而促进Mojo的不断发展和完善。他们采取了一种开放式的开发模式,允许开发者通过GitHub pull request提交贡献,并鼓励社区成员积极参与到Mojo的开发过程中。此外,Modular还分享了Mojo标准库完整的commit历史记录,以便开发者追踪代码的演变过程,更好地理解代码背景。

Mojo的开源策略也非常具有前瞻性。他们选择了Apache 2 LLVM许可证进行开源,这是一种经过定制的许可证,旨在解决与其他开源许可证(如GPL2)结合使用时可能出现的问题。这种灵活的许可策略有助于Mojo与各种开源项目更好地融合,同时也保证了开发者在使用Mojo时的自由度。

Modular公司表示,开源Mojo标准库的核心部分是一个重要的起点,而不是终点。这一决定意味着Mojo将接受更广泛的开发者社区的反馈和贡献,从而推动语言的进一步发展和完善。Modular公司对Mojo的未来发展充满信心,他们鼓励开发者尝试Mojo,认为它可能在未来50年内对AI发展产生重大影响。

Mojo的开源无疑是AI编程领域的一个重要里程碑。它不仅提供了一个新的、快速的编程语言选项,还鼓励了社区的参与和贡献,有望在AI编程领域产生重大影响。

GitHub - modularml/mojo: The Mojo Programming Language

标签: 技术 Mojo