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

2023-08-1110:05:14人工智能与大数据Comments1,437 views字数 2539阅读模式

为什么不选 Python?

今天的 LLM 应用程序,包括推理应用程序和代理(Agent),大多用 Python 编写。但这即将发生变化。Python 对于新一波开发者来说简直太慢、太臃肿且不够轻便。实际上, Chris Lattner[1],  LLVM、Clang和 Swift 的发明者展示出 Python 可能比编译型语言慢35000倍——这是他发明 Mojo[2] 语言的原因,想要替代 Python 。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53601.html

埃隆·马斯克说 Rust 是AGI的语言,为什么?文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53601.html

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

这迫使开发者将越来越多的应用逻辑推送为原生编译代码 C 、C++ 和 Rust 。例如,非常热门的项目 llama.cpp[3]、whisper.cpp[4]和 llama2.c[5] 都是 C 和 C++ 写的,没有 Python 依赖。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53601.html

埃隆·马斯克说 Rust 是AGI的语言,为什么?文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53601.html

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

这反过来降低了 Python 开发者的体验。事实上,管理云上部署的 Python 安装已成为一个重大挑战。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53601.html

埃隆·马斯克说 Rust 是AGI的语言,为什么?文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53601.html

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

换句话说,Python 不仅非常慢,而且用来开发 LLM 应用程序的时候也非常难用。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53601.html

Rust!

Python 的挑战为高性能编译语言创造了机会。随着 Rust 在开发者社区对 C 和 C++  攻城略地,Elon Musk 指出 Rust 可能是 AGI 时代的语言。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53601.html

埃隆·马斯克说 Rust 是AGI的语言,为什么?文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53601.html

好好消化一下这个事实吧!(双关:让水槽进来) https://twitter.com/elonmusk/status/1649603943033450496[8]文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53601.html

Rust 连续7年被 StackOverflow 评为最受开发者欢迎的编程语言[9],其市场份额持续稳步增长。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53601.html

Rust + Wasm 两全其美

然而,将 Rust 直接编译成原生机器代码也有其他问题。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53601.html

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

Wasm 作为 Rust 应用的领先安全运行时环境出现,想要解决这些问题。有了云原生优化的 Wasm 运行时 WasmEdge[10],开发者现在可以在 LLM 应用程序栈的每一层使用高性能 Rust,作为 Python 的高性能替代方案。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53601.html

埃隆·马斯克说 Rust 是AGI的语言,为什么?使用 Rust + Wasm 取代 Python 以提高性能,减少占用空间并改善安全性文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53601.html

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

结论

Rust 和 Wasm 可以成为 Python 的高性能、开发者友好的替代选择。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53601.html

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

参考资料

“顶端仍有足够的空间:摩尔定律之后,什么将推动计算机性能?”[13] MIT的Leiserson和Thompson等人,《科学》,2020年,第368卷,第6495期。它示范了Python可能比优化的C程序慢62000多倍。作者预测,从 Python 向编译语言迁移软件将引发新的计算机革命。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53601.html

“用于 Serverless 函数即服务的轻量级设计”[14] Long, Tai, Hsieh和Yuan,《IEEE软件》,2021年,第38卷,第1期,第75-80页。它证明了 AOT 优化的 Wasm 应用程序在启动和运行时都可以大大超过 Linux 容器应用程序。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53601.html

WasmEdge WASI-NN 插件[15]允许 WasmEdge 中的 Rust 程序运行 Pytorch 和 Tensorflow 推理应用程序。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53601.html

mediapipe-rs[16] 库是一个 Rust 库,供开发者使用 Google 的 mediapipe 系列 AI 模型创建应用程序。它编译为 Wasm 并在 WasmEdge 中运行。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53601.html

“在小小的 WasmEdge中运行小小的 llama2.c 模型”[17] 作者 Yuan, Medium, 2023。它展示了如何在 WasmEdge 中运行 llama2 模型的一个完整推理应用程序。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53601.html

flow.network[18] 是一个基于 WasmEdge 构建的 serverless LLM agents[19] (代理)平台。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53601.html

关于 WasmEdge文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53601.html

WasmEdge 是轻量级、安全、高性能、可扩展、兼容OCI的软件容器与运行环境。目前是 CNCF 沙箱项目。WasmEdge 被应用在 SaaS、云原生,service mesh、边缘计算、边缘云、微服务、流数据处理等领域。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53601.html

 ✨ GitHub:https://github.com/WasmEdge/WasmEdge
 💻 官网:https://wasmedge.org/
 👨‍💻‍ Discord 群:https://discord.gg/U4B5sFTkFc
 埃隆·马斯克说 Rust 是AGI的语言,为什么? 文档:https://wasmedge.org/book/en
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53601.html
  • 本站内容整理自互联网,仅提供信息存储空间服务,以方便学习之用。如对文章、图片、字体等版权有疑问,请在下方留言,管理员看到后,将第一时间进行处理。
  • 转载请务必保留本文链接:https://www.cainiaoxueyuan.com/ai/53601.html

Comment

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定