README_TW.md
MNN 是一個輕量級的深度神經網路引擎,支援深度學習的推理 (Inference) 與訓練。適用於伺服器、個人電腦、手機及各類嵌入式裝置。目前,MNN 已在阿里巴巴的手機淘寶、手機天貓、優酷等超過 30 個 App 中使用,涵蓋直播、短影音、搜尋推薦、商品圖像搜尋、互動行銷、權益發放、安全風控等場景。
MNN-LLM 是基於 MNN 引擎開發的大型語言模型執行方案,旨在解決大語言模型在本機裝置(手機 / 個人電腦 / 嵌入式裝置)上的高效部署問題。支援常見的 Qwen、Baichuan、Zhipu、LLAMA 等大語言模型。使用教學:MNN-LLM 使用教學
MNN-Diffusion 是基於 MNN 引擎開發的 Stable Diffusion 文字生成圖像模型執行方案,解決了 Stable Diffusion 模型在本機裝置上的高效部署問題。使用教學:MNN-Diffusion 使用教學
在阿里巴巴中,MNN 被用作 Walle 系統中計算容器的基礎模組。Walle 是首個端到端、通用型、規模化產業應用的端雲協同機器學習系統,發表於作業系統頂級會議 OSDI 2022。Walle 的論文解釋了 MNN 的關鍵設計理念,並提供了 MNN 相對於其他深度學習框架(TensorFlow, TensorFlow Lite, PyTorch, PyTorch Mobile, TVM)的 Benchmark 測試結果。相關測試腳本與說明文件放置於「/benchmark」目錄下。若 MNN 或 Walle 的設計對您的研究或生產有所助益,歡迎引用我們的 OSDI 論文:
@inproceedings {proc:osdi22:walle,
author = {Chengfei Lv and Chaoyue Niu and Renjie Gu and Xiaotang Jiang and Zhaode Wang and Bin Liu and Ziqi Wu and Qiulin Yao and Congyu Huang and Panos Huang and Tao Huang and Hui Shu and Jinde Song and Bin Zou and Peng Lan and Guohuan Xu and Fei Wu and Shaojie Tang and Fan Wu and Guihai Chen},
title = {Walle: An {End-to-End}, {General-Purpose}, and {Large-Scale} Production System for {Device-Cloud} Collaborative Machine Learning},
booktitle = {16th USENIX Symposium on Operating Systems Design and Implementation (OSDI 22)},
year = {2022},
isbn = {978-1-939133-28-1},
address = {Carlsbad, CA},
pages = {249--265},
url = {https://www.usenix.org/conference/osdi22/presentation/lv},
publisher = {USENIX Association},
month = jul,
}
MNN 文件:
也可閱讀 docs/README,編譯本機文件
MNN 官網上還可下載 MNN 團隊全新力作「MNN 工作檯」,涵蓋開箱即用的模型、視覺化訓練等工具,更可一鍵部署至多端裝置。
MNN 適配的硬體架構與精度詳見下表:
| Architecture / Precision | Normal | FP16 | BF16 | Int8 / Int4 | |
|---|---|---|---|---|---|
| CPU | Native | B | C | B | B |
| x86/x64-SSE4.1 | A | C | C | A | |
| x86/x64-AVX2 | S | C | C | A | |
| x86/x64-AVX512 | S | C | C | S | |
| ARMv7a | S | S (ARMv8.2) | S | S | |
| ARMv8 | S | S (ARMv8.2) | S (ARMv8.6) | S | |
| GPU | OpenCL | A | S | C | S |
| Vulkan | A | A | C | A | |
| Metal | A | S | C | S | |
| CUDA | A | S | C | A | |
| NPU | CoreML | A | C | C | C |
| HIAI | A | C | C | C | |
| NNAPI | B | B | C | B | |
| QNN | C | B | C | C |
基於 MNN (張量計算引擎),提供了一系列工具,以支援模型推理、訓練與通用計算:
釘釘 (DingTalk) 群組:
MNN 初步版本的論文也曾在 MLSys 2020 上發表。該論文主要關注 MNN 作為行動端機器學習推理引擎的手動運算元最佳化。若 MNN 曾對您的研究有所助益,歡迎引用 MNN 的 MLSys 論文:
@inproceedings{alibaba2020mnn,
author = {Jiang, Xiaotang and Wang, Huan and Chen, Yiliu and Wu, Ziqi and Wang, Lichuan and Zou, Bin and Yang, Yafeng and Cui, Zongyang and Cai, Yu and Yu, Tianhang and Lv, Chengfei and Wu, Zhihua},
title = {MNN: A Universal and Efficient Inference Engine},
booktitle = {MLSys},
year = {2020}
}
Apache 2.0
MNN 參與人員:淘寶技術部、搜尋工程團隊、達摩院團隊、優酷等集團員工。
MNN 參考、借鏡了下列專案: