Mojo 程式語言於 2026 年 8 月 18 日(ModCon 2026)正式全面開源,編譯器與工具鏈以 Apache 2.0(含 LLVM exceptions)授權發布,原始碼上線 github.com/modular/modular。這是 Modular 自 2023 年 5 月以來開源承諾的最終兌現,也是繼 8 月 11 日 Mojo 1.0 穩定版後最重要的里程碑。
一句話結論
Mojo 正式開源了! 8 月 18 日 ModCon 2026 大會上,Modular 宣布 Mojo 編譯器(內部代號 KGEN)、工具鏈與建置系統全部以 Apache 2.0 授權公開,開發者現在可以自由閱讀、修改、fork 甚至審計整個 Mojo 技術棧,也能用它編譯商業閉源產品。
事件背景:一條走了三年的開源之路
Mojo 由 LLVM 之父 Chris Lattner 創立的 Modular 開發,2023 年 5 月首次亮相時就承諾「未來會開源」。這條路是逐步推進的:
| 時間 | 里程碑 |
|---|---|
| 2023 年 5 月 | Mojo 首次公開,承諾日後開源 |
| 2024 年 | 開源 Mojo 標準函式庫,開始接受社群貢獻 |
| 2025 年 | 開源數十萬行以 Mojo 撰寫的 kernel 程式碼 |
| 2026 年 6 月 24 日 | Qualcomm 宣布收購 Modular |
| 2026 年 7 月 29 日 | Qualcomm 完成收購,Modular 成為高通旗下公司 |
| 2026 年 8 月 11 日 | Mojo 1.0 發布(原始碼穩定性保證) |
| 2026 年 8 月 18 日 | Mojo 編譯器與工具鏈全面開源 🎉 |
這個時間點安排得很巧妙:先發布 1.0 鎖定語言穩定性,一週後立刻開源編譯器。正如第三方媒體 AI/TLDR 指出的,開源出來的程式碼是「可供長期建置的穩定版本」,而非還在變動中的移動靶(moving target)。
開源內容:編譯器、工具鏈、標準庫一次到位
開源範圍涵蓋整個語言工具鏈,全部集中在 github.com/modular/modular(目前 27.4K stars、3K forks):
| 元件 | 位置 | 說明 |
|---|---|---|
| Mojo 編譯器 | /KGEN | 內部代號 Kernel Generator,完全建構在 MLIR 之上 |
| 標準函式庫 | /mojo/stdlib | 自 2024 年起已開放貢獻 |
| 程式碼範例 | /mojo/examples | 官方範例 |
| MAX kernel 函式庫 | /max/kernels | 加速器算子庫 |
| MAX 推論伺服器 | /max/python/max/serve | 提供 OpenAI 相容端點 |
編譯器 KGEN 值得一提:它不像傳統編譯器走「AST → IR → 機器碼」的階段路線,而是用 MLIR dialects 在同一框架內表示不同抽象層級的程式碼,包含 Parser、Elaborator(單態化)、Compile-time Interpreter、KGENToLLVM lowering passes 等模組,測試則用 LLVM 的 lit + FileCheck 框架。
Apache 2.0 + LLVM exceptions:為什麼這個授權很重要
Mojo 採用的是 Apache 2.0 授權 + LLVM exceptions,Modular 稱這是「程式語言與編譯器的黃金標準」。對開發者來說,兩者的組合意義重大:
graph TD
A[Apache 2.0 授權] --> B[可自由使用/修改/分發]
A --> C[商用無限制<br/>不需公開衍生程式碼]
A --> D[專利授權條款<br/>保護使用者]
E[LLVM Exceptions] --> F[編譯產出的二進位檔<br/>不適用授權義務]
F --> G[可用 Mojo 開發<br/>閉源商業產品]白話翻譯:你可以用 Mojo 寫商業軟體、編譯成執行檔直接賣,不需要公開你的原始碼,也不用附授權聲明。這與 GPL 類的 copyleft 授權形成鮮明對比,也是語言/編譯器生態能吸引企業採用的關鍵。
如何從原始碼建置 Mojo 編譯器
官方使用 Bazel 管理建置,repo 內附 ./bazelw wrapper。只要三步:
git clone https://github.com/modular/modular.git
cd modular
# 從原始碼編譯編譯器並執行 hello.mojo
./bazelw run --config=build-mojo KGEN:mojo -- run hello.mojo
--config=build-mojo:強制用本地原始碼從頭編譯(含編譯器與標準函式庫)--config=prebuilt-mojo:不想改編譯器時用,直接下載最新 nightly 二進位版,省編譯時間- 跑標準函式庫完整測試:
./bazelw test --config=build-mojo mojo/stdlib/test/...
社群貢獻政策:標準庫早就開放,編譯器年底跟上
開源 ≠ 立刻接受所有貢獻。目前政策是:
| 項目 | 狀態 |
|---|---|
| Mojo 標準函式庫 | ✅ 自 2024 年起接受貢獻(近 200 位貢獻者、1,100+ 個 PR、20 萬行變更) |
| MAX kernel / 模型架構 / 範例 | ✅ 接受貢獻 |
| Mojo 編譯器與工具鏈 | ⏳ 暫不接受,預計 2026 年底前開放 |
Modular 的解釋很直白:在 AI 輔助編碼時代,對編譯器底層的變更管理必須更審慎(社群提的 PR 可能是 AI 生成的,審查成本與風險都更高)。所以先開放閱讀與建置,貢獻管道年底再開。
語言定位的關鍵轉變:不再是「Python 超集」
很多人對 Mojo 的印象還停留在「Python 超集」,但這個定位在 2025 年 8 月已正式調整。Modular 官方明說:Mojo 可能不會成為完整的 Python 超集,現在它是一款「語法靈感來自 Python、專為 GPU 與異質硬體最佳化的自有語言」。
原因是團隊評估過三條路線(沿用現有語言、在 Python 內做 EDSL 嵌入式 DSL、自建新語言),最終放棄 EDSL 因為「易用性差、工具鏈與除錯體驗糟糕、無法擴展宿主語言」。為了完整工具鏈(LSP、REPL、Jupyter、即將到來的 LLDB debugger)與極致效能,自建語言是唯一解。
這也解釋了 Mojo 的效能數據:Mandelbrot 計算比 Python 快 68,000 倍;矩陣乘法在完全動態形狀、無 inline assembly 的條件下,Intel 平台比 OneDNN 快 1.46 倍、AMD 平台比 SOTA 快 1.6 倍、ARM 平台比 RUY 快 1.2 倍。
Qualcomm 收購脈絡:開源日是「開放矽晶片」的關鍵一步
Mojo 開源發生在 Qualcomm 完成收購 Modular(7 月 29 日) 之後不到三週,ModCon 2026 主題正是「Open source, open cloud, open silicon」。Modular 官方強調加入高通反而強化了開放定位——平台會繼續支援與高通直接競爭的硬體。
ModCon 同步宣布的硬體擴展:
- Modular Platform 新增支援 AWS Trainium、Google TPU、Qualcomm Cloud AI 100 Ultra、Qualcomm Dragonfly 加速器(此前只有 NVIDIA/AMD GPU + CPU)
- Mojo 原生 Windows 支援即將到來(與微軟 Windows 團隊合作)
- MAX 授權移除裝置使用限制、改為 source-available + open alliance 計畫
換句話說:同一份 Mojo 程式碼,未來可以無痛搬到完全不同的晶片架構上執行——這正是「一次撰寫、到處執行」的硬體版願景。
業界反應與對開發者的意義
Linuxiac 評論:編譯器開源徹底改變 Mojo 生態,開發者終於能完全獨立審查、建置整個技術棧,不再依賴 Modular 官方封閉二進位檔。對寫 AI kernel 的團隊來說,他們終於可以閱讀、fork 並審計天天依賴的編譯器原始碼。
對台灣開發者的實際意義,我認為有三點:
- 供應鏈風險降低:企業採用 Mojo 不再綁定單一廠商的閉源工具,程式碼資產掌握在自己手上
- 學習成本下降:想看編譯器怎麼實作單態化、MLIR dialect 怎麼設計,直接讀原始碼就是最好的教材
- 效能敏感場景的新選項:推論服務、資料前處理、GPU kernel 這些 Python 卡關的場景,多了一個 Apache 2.0 的生產級選擇
總結
Mojo 開源是 2026 年程式語言圈的重大事件:1.0 穩定版 + Apache 2.0 全面開源 + 高通收購後的硬體野心,三件事在一個月內接連發生。如果你已經會 Python、又想碰高性能運算或 AI 基礎設施,現在正是評估 Mojo 的好時機——而且這次你可以直接讀它的原始碼。
延伸閱讀
- Mojo 1.0 正式發布:Python 超集 AI 語言完整教學,安裝、語法與性能實戰(2026)
- Meta Muse Glimmer 開源了!30B 本地 AI Agent 模型,Apache 2.0 授權、24GB 顯示卡就能跑(2026)
- Ollama:以類 Docker 簡潔風格在本機執行開源 LLM
