Modular在Mojo 1.0发布一周后,把编译器和工具链开源了,用的是Apache 2.0 with LLVM Exceptions许可证,兑现了自2023年5月就挂在嘴边的承诺。但"开源"两个字在这里没那么简单——开发者能看、能改的是编译器源码,真正打包好、装上就能跑的Modular SDK和MAX产品,仍然锁在Modular Community License之下。
这更像一种"开放核心技术、保留商业发行权"的打法,跟Python、Rust那种彻头彻尾开源不是一回事。
编译器开源了,条款比"Apache 2"三个字复杂
代码放在modular/modular仓库里,包含Mojo源码树和KGEN编译器组件,想看编译器怎么把类Python语法编译成GPU代码,现在可以直接翻源码。
但许可证的准确名字是Apache License 2.0 with LLVM Exceptions,不是未修改的标准Apache 2.0。这个"加料版"许可证在LLVM生态里很常见,目的是让代码更容易和GPL项目共存,同时减轻衍生项目的署名负担。差别不大,但对企业法务团队来说,这种细节决定了能不能放心用。
仓库还特意提醒,想要稳定版本得去找对应8月18日发布的release标签,别直接拉main分支——那条分支跟踪的是夜间开发版,随时可能编译不过。
开源不等于随便商用
这才是原文轻描淡写过去的关键点:源码许可和产品使用许可,压根不是同一件事。
企业如果想拿这套开源编译器做二次商业分发,或者把打包好的Modular SDK塞进自己的商业产品里,仍然要仔细核对Community License的边界,不是看到"Apache 2"就以为万事大吉。
- 风险.把"编译器开源"直接理解成"随便拿去商用",容易在合规上踩坑,尤其是打算基于Mojo做商业产品的团队。
这种"开放底层引擎、锁住成品发行"的模式,在AI基础设施类创业公司里并不罕见。逻辑很直白:开放代码换开发者信任和外部贡献,商业化的口子留在打包产品和云服务上。Modular不是第一个这么干的,也不会是最后一个。
放弃Python超集,赌注押在AI辅助迁移上
Mojo最初的算盘是做Python的高性能超集,靠Python现成的生态冷启动自己的用户群。这个计划在2025年8月左右悄悄改了口径:官方论坛的说法是"Mojo可能不会演变成Python完全超集,这也没关系",转而强调对AI辅助编码工具把Python迁移到Mojo的信心。
语言不再追兼容,把迁移成本转手给了工具和用户
这个转向意味着什么:如果你手里有一大堆Python代码,指望"稍微改改就能在GPU上跑Mojo"的路径,现在基本走不通了。Modular把这份兼容性压力,从语言设计本身,转移到了未来的AI迁移工具身上——而这类工具目前是否靠得住,还没有拿得出手的实证。
考虑从Python迁移到Mojo做GPU计算的工程团队,现在评估迁移成本,得把"AI辅助工具能不能扛住"算进去,不能再假设Mojo会一直朝着Python靠近。
从时间线看,这次开源不是临时起意。今年6月发的还是26.4版本、Mojo 1.0.0 Beta2,编译器尚未完全公开;8月18日的1.0加开源,与Modular在ModCon大会上公告的发布节奏对得上。这更像一次筹备了半年的既定动作,不是突发新闻。
这次开源能不能撬动GPU计算这块被Nvidia CUDA长期垂直垂直垂直把守的地盘,现在还看不清。真正值得盯的信号,是编译器仓库开放后,有没有出现活跃的外部贡献、独立fork,而不是"代码公开"这个动作本身。
