为什么埃隆·马斯克说 Rust 是 AGI 的语言?

以及为什么 WasmEdge 是 AGI 采用 Rust的关键路径!

为什么不选 Python?

今天的 LLM 应用程序,包括推理应用程序和代理(Agent),大多用 Python 编写。但这即将发生变化。Python 对于新一波开发者来说简直太慢、太臃肿且矛盾颇多不够轻便。实际上, Chris Lattner, LLVM、Clang和 Swift 的发明者展示出 Python 可能比编译型语言慢35000倍------这是他发明 Mojo 语言的原因,想要替代 Python 。

(根据 Chris Lattner 的说法,编译型语言可以比 Python 快35000倍。)

这迫使开发者将越来越多的应用逻辑转化为原生编译代码 C 、C++ 和 Rust 。例如,非常热门的项目 llama.cppwhisper.cppllama2.c 都是 C 和 C++ 写的,没有 Python 依赖。

(OpenAI 联合创始人兼总裁 Greg Brockman 也认为 Python 太慢了。https://twitter.com/gdb/status/1676726449934331904

这反过来降低了 Python 开发者的体验。事实上,管理云上部署的 Python 安装已成为一个重大挑战。

(Wikimedia 的机器学习负责人 Chris Albon 甚至说自己很难弄清"现代"Python。 https://twitter.com/santiviquez/status/1676677829751177219

换句话说,Python 不仅非常慢,而且用来开发 LLM 应用程序的时候也非常难用。

Rust!

Python 的挑战为高性能编译语言创造了机会。随着 Rust 在开发者社区对 C 和 C++ 攻城略地,Elon Musk 指出 Rust 可能是 AGI 时代的语言。

(好好消化一下这个事实吧!(双关:让水槽进来) https://twitter.com/elonmusk/status/1649603943033450496

Rust 连续7年被 StackOverflow 评为最受开发者欢迎的编程语言,其市场份额持续稳步增长。

Rust + Wasm 两全其美

然而,将 Rust 直接编译成原生机器代码也有其他问题。

  • 安全性。原生二进制文件可能会使整个系统崩溃。
  • 可移植性。原生二进制文件特定于底层操作系统和硬件。
  • 性能。 由于安全性和可移植性要求,通常需要在 Linux 容器中运行原生二进制文件。 此类容器为程序添加了巨大的启动和运行时开销,从而显著降低了速度。

Wasm 作为 Rust 应用的领先安全运行时环境出现,想要解决这些问题。 有了云原生优化的 Wasm 运行时 WasmEdge,开发者现在可以在 LLM 应用程序栈的每一层使用高性能 Rust,作为 Python 的高性能替代方案。

使用 Rust + Wasm 取代 Python 以提高性能,减少占用空间并改善安全性。

  • 代理层 :网络密集型任务,用于接收网络事件、连接数据库和调用其他 Web 服务。Rust 和 WasmEdge 提供异步和非阻塞 I/O,以实现高密度和高性能的代理应用。 示例:flows.network
  • 推理层 :CPU 密集型任务,用于将数据(如单词和句子)预处理为数字,并将数字后处理为句子或结构化的 JSON 数据。这些函数可以用 Rust 编写以实现最佳性能,并在 WasmEdge 中运行以实现安全性和可移植性。 示例:mediapipe-rs
  • 张量层:从 Wasm 将 GPU 密集型任务通过 WasmEdge 的 WASI-NN 插件传递给原生张量库(如llama.cpp、PyTorch 和 Tensorflow)。

结论

Rust 和 Wasm 可以成为 Python 的高性能、开发者友好的替代选择。

  • 二者与底层 GPU 张量库(也是用 C/C++/Rust 编写的)有更好地集成
  • 二者在实现应用程序特定的预处理和后处理数据功能方面更高效 ,这也是推理工作量的绝大部分。
  • 二者在实现LLM 代理 所需要的网络密集型和长时间运行的任务方面更高效
  • 与 Python 镜像相比,它们的容器镜像大小要小得多(几 MB vs 数百 MB)。
  • 由于软件供应链有限和攻击面暴露较小,二者比 Python 容器更安全
  • 与 Python 程序相比,二者更容易安装和管理依赖项。

参考资料?

"顶端仍有足够的空间:摩尔定律之后,什么将推动计算机性能?" MIT的Leiserson和Thompson等人,《科学》,2020年,第368卷,第6495期。 它示范了Python可能比优化的C程序慢62000多倍。 作者预测,从 Python 向编译语言迁移软件将引发新的计算机革命。

"用于 Serverless 函数即服务的轻量级设计" Long, Tai, Hsieh和Yuan,《IEEE软件》,2021年,第38卷,第1期,第75-80页。 它证明了 AOT 优化的 Wasm 应用程序在启动和运行时都可以大大超过 Linux 容器应用程序。

WasmEdge WASI-NN 插件允许 WasmEdge 中的 Rust 程序运行 Pytorch 和 Tensorflow 推理应用程序。

mediapipe-rs 库是一个 Rust 库,供开发者使用 Google 的 mediapipe 系列 AI 模型创建应用程序。它编译为 Wasm 并在 WasmEdge 中运行。

"在小小的 WasmEdge中运行小小的 llama2.c 模型" 作者 Yuan, Medium, 2023。它展示了如何在 WasmEdge 中运行 llama2 模型的一个完整推理应用程序。

flow.network 是一个基于 WasmEdge 构建的 serverless LLM agents (代理)平台。

相关推荐
lzl204011 小时前
VSCode中Codex CLI登录卡在‘Sign in with ChatGPT‘屏幕
ide·vscode·chatgpt·codex
Rust研习社11 小时前
Rust 高性能内存缓存 moka 完全指南
开发语言·后端·缓存·rust
qcx2312 小时前
Warp源码深度解析(七):Token预算策略——双轨计费、上下文溢出与摘要压缩
人工智能·设计模式·rust·wrap
DevilSeagull12 小时前
Rust 枚举(enum)深度解析:从定义到 Option 的安全之道
开发语言·后端·安全·rust·github
_只道当时是寻常21 小时前
【Codex】Ubuntu 安装 Codex CLI 并解决 Clash 代理与账号认证问题
linux·ubuntu·chatgpt
古城小栈1 天前
从 cargo-whero 库中,找到提升 rust 的契机
开发语言·后端·rust
云天AI实战派1 天前
AI 智能体问题排查指南:ChatGPT、API 调用到 Agent 上线失灵的全流程修复手册
大数据·人工智能·python·chatgpt·aigc
Agent产品评测局1 天前
生产排期与MES/ERP系统打通,实操方法详解 —— 2026企业级智能体自动化选型与实战指南
java·运维·人工智能·ai·chatgpt·自动化
techdashen1 天前
Cloudflare 为何抛弃 NGINX,用 Rust 自研了一个代理
运维·nginx·rust
hsjcjh1 天前
2026年ChatGPT 5.4镜像站核心技术架构深度拆解与国内免费体验教程
chatgpt·架构