UbiquitousLearning/mllm
Fast Multimodal LLM on Mobile Devices
解决的问题
mllm 是一个专为移动设备与边缘设备设计的快速且轻量级多模态 LLM 推理引擎。它解决了在资源受限的硬件(如智能手机与嵌入式系统)上本地运行大型视觉语言模型 (VLM) 与 LLM 的挑战,无需依赖云端服务器。
运作原理
该引擎作为高阶优化算法与底层硬件执行层之间的桥梁。它使用转换工具 (mllm-convertor) 来读取 PyTorch 与 SafeTensors 模型,将其量化并转换为专有的 mllm 格式以进行执行。
关键技术组件包括:
- 硬件后端:支持 Arm CPU、OpenCL GPU、QNN NPU 与 Ascend NPU。
- 优化技术:实现量化(例如 W4A16、W8A8)、剪枝与推测执行,以减少内存与运算需求。
- 架构:在 Android 上,它采用 Client-Server 架构,使用 In-App Go Server 将 UI 与繁重的推理任务解耦。
- 图执行:
traceAPI 允许提取计算图,将动态执行转换为优化的静态表示,以利于 NPU 集成。
适用对象
为 Android、Jetson Orin 与其他边缘设备开发设备端 AI 应用程序,且需要为多模态模型提供高性能本地推理的开发者与工程师。
特色亮点
- 广泛的硬件支持:可在 Arm CPU、OpenCL GPU 以及来自 Qualcomm (QNN) 与 Huawei (Ascend) 的 NPU 上执行。
- 边缘设备高性能:与 llama.cpp 相比,在 Jetson Orin 上针对特定模型展现了显著的预填充速度提升(最高达 3.12 倍)。
- 丰富的模型库:支持多种模型,包括 Qwen 系列 (Qwen3, Qwen2-VL)、MiniCPM、Llama 3 与 DeepSeek-OCR。
- 开发者友好:提供用于模型编写的 Pythonic API 以及用于集成的 C++ SDK。
相关
- 项目
- 项目
- 项目
- 项目
- 项目