alibaba/MNN
MNN: A blazing-fast, lightweight inference engine battle-tested by Alibaba, powering high-performance on-device LLMs and Edge AI.
解決的問題
深度學習模型通常太大,且在手機、嵌入式設備或 IoT 硬體上執行時的計算成本過高。MNN 提供了一種高效、輕量級的解決方案,無需沉重的依賴即可在各種平台上本地部署這些模型。
工作原理
MNN 為 ARM 和 x64 CPU 使用優化的組合語言代碼,並支援透過 Metal、OpenCL、Vulkan 和 CUDA 進行 GPU 硬體加速。它包含一個轉換器,可將 TensorFlow、ONNX 和 PyTorch 等格式的模型轉換為 MNN 格式,並提供量化(FP16/Int8)以顯著減小模型大小並提高速度。
適用對象
- 移動與 IoT 開發人員: 需要在 Android、iOS 或嵌入式設備上本地執行 AI 模型(如 LLM 或圖像編輯器)的人員。
- ML 工程師: 希望使用簡單的 Python API 或 C++ 將複雜模型部署到邊緣設備的人員。
- 應用程式開發人員: 希望在現有應用程式中實現輕量級電腦視覺或語言模型功能的人員。
亮點
- 極其輕量: 核心 Android 函式庫僅約 800KB;iOS 靜態函式庫約 12MB。
- 廣泛的模型支援: 相容 TensorFlow、Caffe、ONNX 和 Torchscripts。
- 高性能: 針對包括 ARM、x86 和 NVIDIA GPU 在內的各種架構進行了優化。
- 多功能執行階段: 包括針對大型語言模型 (MNN-LLM) 和 Stable Diffusion (MNN-Diffusion) 的專用解決方案。