設(shè)置
  • 日夜間
    隨系統(tǒng)
    淺色
    深色
  • 主題色

Mojo 編程語言開放下載:專為 AI 設(shè)計,號稱比 Python 快 68000 倍

2023/9/8 15:50:35 來源:IT之家 作者:汪淼 責(zé)編:汪淼

IT之家 9 月 8 日消息,Mojo 是 Modular AI 公司開發(fā)的一種編程語言,專門面向 AI  設(shè)計,號稱比 Python 快 68000 倍。

官方今日宣布,Mojo 現(xiàn)已開放本地下載運行,除了編譯器之外,Mojo SDK 還包括一整套開發(fā)者和 IDE 工具,可以用于構(gòu)建和迭代 Mojo 應(yīng)用。

Modular AI 表示,自 5 月 2 日推出 Mojo 編程語言以來,已有超過 12 萬開發(fā)者注冊使用 Mojo Playground,超過 1.9 萬開發(fā)者在 Discord 和 GitHub 上積極討論 Mojo。

Mojo 現(xiàn)在可供本地下載,不過目前只有 Linux 系統(tǒng)版本,官方承諾會在即將發(fā)布的版本中添加 macOS 和 Windows 系統(tǒng)支持。

據(jù)介紹,Mojo 是一種用于計算的高性能“Python++”編程語言,面向 AI 開發(fā)人員推出,隨著時間的推移,它將發(fā)展成為 Python 的超集。

目前,Mojo 已經(jīng)支持與任意 Python 代碼無縫集成,并具有可擴展的編程模型來針對性能關(guān)鍵型系統(tǒng),包括人工智能中普遍存在的加速器(例如 GPU)。

此外,IT之家在博客中注意到,Mojo 號稱將動態(tài)和靜態(tài)語言的優(yōu)點結(jié)合在一起,性能可達到目前 Python 的 68,000 倍,還提供與 Python 生態(tài)系統(tǒng)的完全互操作性,從而可以無縫使用 Python 庫。

以下為使用 Mojo 計算歐幾里得距離的代碼:

$ mojo
Welcome to Mojo! ??
Expressions are delimited by a blank line.
Type `:mojo help` for further assistance.
1> %%python
2. import numpy as np
3. n = 10000000
4. anp = np.random.rand(n)
5. bnp = np.random.rand(n)

6> from tensor import Tensor
7. let n: Int = 10000000
8. var a = Tensor[DType.float64](n)
9. var b = Tensor[DType.float64](n)
10. for i in range(n):
11.    a[i] = anp[i].to_float64()
12.    b[i] = bnp[i].to_float64()

13> from math import sqrt
14. def mojo_naive_dist(a: Tensor[DType.float64], b: Tensor[DType.float64]) -> Float64:
15.    var s: Float64 = 0.0
16.    n = a.num_elements()
17.    for i in range(n):
18.       dist = a[i] - b[i]
19.       s += dist*dist
20.    return sqrt(s)

23> fn mojo_fn_dist(a: Tensor[DType.float64], b: Tensor[DType.float64]) -> Float64:
24.    var s: Float64 = 0.0
25.    let n = a.num_elements()
26.    for i in range(n):
27.       let dist = a[i] - b[i]
28.       s += dist*dist
29.    return sqrt(s)
30.
31> let naive_dist = mojo_naive_dist(a, b)
32. let fn_dist = mojo_fn_dist(a, b)
33. print(fn_dist)
34. 
1290.821425092235
35. print(naive_dist)
36. 1290.8521425092235

此外,Mojo 允許開發(fā)者構(gòu)建靜態(tài)編譯的可執(zhí)行文件,可以在沒有任何依賴項的情況下進行部署,例如:

$ mojo build hello.??

$ ./hello
Hello Mojo ??!
9
6
3

$ ls -lGtranh hello*
-rw-r--r-- 1 0   817 Sep  3 23:59 hello.??
-rwxr-xr-x 1 0   22K Sep  3 23:59 hello

Mojo 還擁有 Visual Studio Marketplace 的官方擴展,支持語法高亮、語句診斷、格式化、補全建議等。

廣告聲明:文內(nèi)含有的對外跳轉(zhuǎn)鏈接(包括不限于超鏈接、二維碼、口令等形式),用于傳遞更多信息,節(jié)省甄選時間,結(jié)果僅供參考,IT之家所有文章均包含本聲明。

相關(guān)文章

關(guān)鍵詞:Mojo編程語言,AI 語言Python

軟媒旗下網(wǎng)站: IT之家 最會買 - 返利返現(xiàn)優(yōu)惠券 iPhone之家 Win7之家 Win10之家 Win11之家

軟媒旗下軟件: 軟媒手機APP應(yīng)用 魔方 最會買 要知