Rust与Mojo正悄然取代Python底层引擎

Python登顶背后的悖论
Python再次以史上最大优势登顶编程语言排行榜第一。这里所说的排行榜主要指TIOBE等编程语言流行度指数,它们通过搜索引擎结果、在线课程数量、第三方供应商等多维指标来衡量语言热度。Python自1991年由Guido van Rossum发布以来,长期以「胶水语言」的低调身份存在,直到2010年代数据科学与机器学习爆发,才真正登上王座——它之所以能借AI浪潮扶摇直上,恰恰因为它降低了非计算机科班出身的研究者和分析师进入编程的门槛。
但一个耐人寻味的现象是:几乎每个正经的AI团队,都在悄悄地把Python从关键部分里替换掉。
这看似矛盾,实则揭示了Python一直以来的真实定位——它从来都不是那个真正干活的角色,而更像是方向盘。当你用Python训练模型时,Python本身几乎不运行,它只是把繁重的数学运算交给了底层的C和CUDA。而现在,这个「引擎」正在被悄然更换。
一个直观的例子:当你执行 pip install polars,你实际上安装的是一大堆Rust代码。今天你的代码检查工具、包安装器、数据框架,很多都是Rust在静默运行。而Mojo,则正在觊觎Python从未真正触及的最后一块蛋糕——GPU代码本身。
Python的两大原罪:速度与GIL
公平地说,Python赢得AI领域是有充分理由的:它读起来像大白话,能把各种工具粘合在一起,Notebook让数据处理变得直观,几乎每个主流库都支持它。没有人真心希望它消失。
但这份友好是有代价的,代价就是速度。纯Python的运行速度很慢,同样的循环通常比C语言慢25到100倍。对于网页应用你感觉不到,但对于需要运算数十亿个数字的AI来说,这就是一堵砖墙。
更深层的问题是GIL(全局解释器锁)。这个锁保证同一时刻只能运行一个线程,无论你买了多少个CPU核心。买了16核的CPU,标准Python也只会开心地用其中一个,其余15个在旁边干瞪眼。这并非偷懒——GIL正是让那些快速的C扩展不会互相破坏内存的保障。Python用「把自己绑在一个核心上」的代价,换来了传奇般的简洁,这个默契维系了整个生态30年的稳定。
你可能没注意到,变化正从Python内部发生。3.14版本中,无GIL构建(free-threaded)正式从实验性功能转为受支持。但每个C扩展都需要手动实现线程安全,因此真正的迁移是一项耗时长达十年的工程。这不只是一个新功能,更是对现状的承认:旧模式已经行不通了。
双语言问题:被拴住的自由
为了绕开性能瓶颈,整个生态系统巧妙地「作弊」了。NumPy、PyTorch、TensorFlow这些库,真正繁重的工作会完全脱离Python,下沉到编译后的C和CUDA中运行。你调用的PyTorch,超过90%都不是Python,你的代码只是指向数据,然后等待结果返回。

这种模式有个名字——双语言问题:用简单的语言做原型,再把运行缓慢的核心用更复杂的语言重写。两种语言、两套技能、两套代码库,稍不留神就会不同步,而所有难缠的bug都爱藏在那层快速运行的底层里。
在过去15年里,这个底层主要是CUDA,它只能在英伟达的硬件上运行。CUDA(Compute Unified Device Architecture)是英伟达在2007年推出的并行计算平台,它让开发者能够用类C语言直接调度GPU上数以千计的计算核心。GPU原本为图形渲染设计,但其大规模并行架构恰好契合深度学习中海量矩阵乘法的需求。也正因如此,CUDA构筑了英伟达最深的护城河——绝大多数主流AI框架的底层算子都是围绕CUDA优化的,即便竞争对手造出性能相当的芯片,也难以撼动这层软件生态的锁定效应。而对普通开发者来说,你没法直接查看、分支、修改或修复它。于是Python给了你顶层的完全自由,但它底下坐着一个锁死的黑匣子,你永远不被允许打开。这种自由,是被拴着的。
Rust从底层蚕食Python基础设施
当大家在网上争论「Python vs Rust」、仿佛必须站队时,Rust却悄悄从侧门进来,开始一个接一个地替换Python的底层基础设施——都是些无聊但必不可少的工具,没有大张旗鼓的发布会,它就是开始赢了。
为什么是Rust?因为它罕见地集齐了三个优点:运行速度跟C一样快、坚决防止内存污染、而最关键的杀手锏是通过PyO3工具几乎毫不费力地接入Python——一个Rust核心可以隐藏在看起来很普通的Python包后面,你用pip安装时甚至察觉不到。
这里的「坚决防止内存污染」并非空话。Rust通过独创的「所有权(ownership)」与「借用检查器(borrow checker)」机制,在编译期就消除了空指针、数据竞争和内存越界等一整类经典bug,而无需依赖垃圾回收器。这意味着它既拥有C/C++级别的运行性能与对硬件的精细控制,又避免了后者常见的内存安全隐患。正是这种「零成本抽象」的特性,使Rust连续多年在开发者调查中被评为「最受喜爱的语言」,也让它成为改写基础设施的理想工具。
最典型的例子是Astral公司:
- Ruff(Linter):一次性取代了Flake8、Black、isort等十几个工具,速度快了10到100倍。它能在一眨眼间对整个CPython代码库(几十万行)做静态检查,而旧工具需要将近一分钟。
- UV(安装器):把虚拟环境和Poetry的功能整合成一个Rust二进制文件,同样带来10到100倍提升,一年内就从新奇玩意儿变成了默认配置。
- Polars:用Rust编写的Pandas替代品,基于Arrow和惰性查询引擎,实际速度快10到20倍,还能稳定处理让Pandas内存崩溃的超大文件。

此外,PyDantic在第二版中用Rust重写了核心,orjson是Rust写的快速JSON解析器,Hugging Face的Tokenizers同样是Rust。退一步看这个模式几乎有点好笑:一个AI开发者每天接触的十几种工具——安装器、检查器、数据框架、解析器、验证器、序列化器——现在都有一颗Rust的心脏。表层仍是友好的Python,底层由Rust干重活。

甚至模型训练框架也开始出现纯Rust的身影,比如Hugging Face的Candle和Burn,这在过去简直是异端邪说。一个不太舒服的事实是:你每天都在运行Rust,只是从未注意到底层已经被替换。
Mojo从引擎室发起冲击
Rust虽然强大,却没能解决一个核心问题:用数据科学家真正喜欢的语言来编写GPU代码本身。Rust并不「贴心」,而这个鸿沟正是Mojo存在的理由。
Mojo绝非玩具项目,它出自Chris Lattner之手——此人构建了Swift、LLVM和Clang这套编译器基础设施,支撑着你运行过的大约一半软件。这份履历值得细说:Lattner在学术生涯中创造了LLVM——一套模块化的编译器中间层框架,如今几乎所有现代编译器(包括Swift、Rust、Julia的后端)都构建于其上。他随后在苹果主导开发了Swift语言,又先后在特斯拉、谷歌大脑(负责TensorFlow基础设施)任职。这意味着Mojo并非空想:它继承了MLIR(Multi-Level Intermediate Representation,LLVM的下一代演进),能够将高层Python式代码逐层下降到针对特定硬件的极致优化指令。他的愿景听起来近乎贪心:编写看起来和用起来都像Python的代码,同样的语法,编译后却能达到手工优化C的速度,并直接在GPU上运行。让易用的语言和高效的语言,最终融合成同一种语言。
关于速度,Modular公司公布的「Mojo比纯Python快3.5万倍」是经过筛选的微观基准测试,对这个数字要保持怀疑。但在诚实的真实内核测试中,它大约是纯Python的10到100倍——这已足以改变游戏规则。
更关键的是硬件可移植性。Mojo做到了CUDA拒绝去做的事:把数学运算代码写好,然后在任何GPU上运行,无论英伟达还是AMD,都无需重写。

据视频作者引用的基准数据:在AMD的MI300X上,Modular堆栈的吞吐量比业界黄金标准vLLM高出53%;在另一款AMD芯片上逐token匹配了英伟达最贵的H200之一的性能。最惊人的是可移植性——同一个容器镜像、完全相同的代码,部署在AMD和英伟达GPU上无需任何修改,不需要CUDA或ROCm移植,只需更换硬件。而且你可以直接从Python调用Mojo,只替换拖慢速度的热点函数,相当于给最痛点加上一个「加速开关」。
开源与40亿美元收购
Mojo也有诚实的短板:它还很年轻,工具链在某些地方比较粗糙,也没有积累起Python二十年的库生态。它是对未来方向的一个赌注,而非明天就能上线的成熟产品。
但Modular随后打出了关键一手——将超过45万行生产级GPU内核代码开源,完全公开、免费阅读和复刻。CUDA是你只能租赁的黑盒,而这是同级别的软件,却直接掀开引擎盖交给了你。
正因如此,结局才如此掷地有声:芯片巨头高通以约39亿美元收购了Modular,这个价格是它几个月前估值的2.5倍。当一家硬件公司自己砸下近40亿美元买一个编译器时,压注的方向已再明显不过。
Python不会消失,但一种信念正在瓦解
必须澄清:Python不会消失。未来你依然会用它写代码,它是接口、是粘合剂、是你打开空白文件时的首选。
即将消亡的,是一种信念——认为纯Python能独自承担繁重计算并保持快速,认为它的核心层必须是无法阅读的C和无法触及的CUDA黑盒。正是这种观念,正在被Rust和Mojo悄然瓦解。Python成了这台引擎平易近人的面孔,而你终于可以打开引擎盖一探究竟了。
如果你平时只调用API,其实不必在意这些变化,你的世界不会有任何不同。但如果你写的是热循环、工具链、GPU内核——那些悄无声息决定账单大小的底层部分——那么基础正在发生实质性变化。学一点Rust,再留一只眼睛关注Mojo。Python打造了AI时代,但它已经无法独自承担全部运转了。
核心要点
相关推荐

Understand Anything:代码变可交互知识图谱的AI Skill
Understand Anything是一个GitHub高星开源skill,能对任意代码库做静态分析,生成可交互知识图谱,支持Claude Code、Cursor、Copilot等主流agent,用自然语言提问并带路径引用,帮工程师快速读懂陌生代码。

Kimi K3发布:2.8万亿参数开源模型如何重塑AI性价比格局
月之暗面正式发布Kimi K3,2.8万亿参数、100万上下文、原生多模态开源模型。凭借KDA架构创新与超低成本,在编程、知识工作等基准测试中媲美GPT-5.6与Fable 5,重新定义AI竞赛性价比。

Herder:统一管理多个AI编码代理的开源终端神器
Herder是一款开源终端多路复用器,支持macOS和Windows,可统一管理Claude Code、Codex、OpenCode等多个AI编码代理。具备组织性、可监控性和任务持久性,退出终端也不中断,还支持手机远程重连。多代理用户必备工具。