cover_image

MNN LLM:让你手机本地也能跑 DeepSeek R1 还能支持多模态

Meta技术团队 大淘宝技术
2025年04月21日 08:02
图片



在DeepSeek R1服务器不稳定令人困扰的背景下,MNN LLM应运而生。这是一款开源工具,支持本地部署、移动端运行以及多模态处理(如文生图、语音输入等)。通过模型量化与硬件优化,MNN LLM显著提升了推理速度与稳定性,同时解决了下载困难的问题。无论是Android、iOS还是桌面端用户,都可以轻松体验大模型的强大功能,真正实现“自己动手,丰衣足食”

图片
简介

你有没有因为 DeepSeek R1 的服务器不稳定而抓狂过?忙活半天就等到一句“服务器繁忙,请稍候重试”?如果你也深陷这个泥潭,不妨试试我们开源的 MNN LLMhttps://github.com/alibaba/MNN/blob/master/project/android/apps/MnnLlmApp/README_CN.md,github 链接,欢迎 Star),并且它有以下特点:

  • 本地部署:无需依赖远程服务器;

  • 一台手机就能跑:愉快运行DeepSeek R1 Qwen 蒸馏 7B 模型;

  • 多模态支持:文生图、语音输入全都可以。

关键是,再也不用担心服务器忙不过来了,真·自己动手丰衣足食!


先来看看效果吧:

  Android


点击文章底部链接下载安装包
图片
图片

  iOS

视频加载失败,请刷新页面再试

刷新

图片

  桌面端

图片

  MNN LLM 有啥不一样

此前开源社区已经存在 pocketpal、maid 等开源产品,那么 MNN 做了哪些优化? 


推理速度优化

针对移动端设备, MNN 通过模型量化、混合存储和硬件特定优化等创新措施,解决高内存消耗和计算成本等挑战。MNN CPU Decode 有20-50%优势,尤其是在 Prefill 阶段快于其他方案1倍以上;GPU 性能在小模型上快于其他方案30%以上,较大模型上与MLC-LLM持平。但相比MLC-LLM,MNN-LLM的GPU输出更稳定(不容易crash)。


超给力的多模态

  • 不只聊文字,还能图片输入、语音输入、文生图……

  • 大家都知道 Diffusion 模型在手机上跑起来可很吃力,MNN 把这方面也优化了,端上生成更快、更省内存,比 OnnxRuntime 方案速度快三倍!


下载超省心

国内用户通过 pocketpal等基于huggingface下载的客户端, 经常无法访问,即使偶尔可以连接上,可能下载半天发现下载失败了,就需要删掉重新下载:


图片


MNN LLM App 针对网络问题优化了:

  • Modelscope 下载的支持,速度飞起,不再苦等 Hugging Face 半天失败。

  • 自带断点续传功能,下载失败了也能断点续上,不用重头再来。


图片

Android & iOS 还有桌面版,怎么用起来


是不是已经迫不及待的想要自己尝试一下,那就让继续来看看如何使用吧:


  Android 


Android用户可以直接在 github(链接在文章底部上下载,也可自行编译定制功能:

git clone https://github.com/alibaba/MNN.gitcd project/androidmkdir build_64../build_64.sh "-DMNN_LOW_MEMORY=true  -DMNN_BUILD_LLM=true -DMNN_SUPPORT_TRANSFORMER_FUSE=true -DMNN_ARM82=true -DMNN_USE_LOGCAT=true -DMNN_OPENCL=true -DLLM_SUPPORT_VISION=true -DMNN_BUILD_OPENCV=true -DMNN_IMGCODECS=true -DLLM_SUPPORT_AUDIO=true -DMNN_BUILD_AUDIO=true -DMNN_BUILD_DIFFUSION=ON -DMNN_SEP_BUILD=ON"find . -name "*.so" -exec cp {} ../apps/MnnLlmApp/app/src/main/jniLibs/arm64-v8a/  cd ../apps/MnnLlmApp/./gradlew installDebug


  iOS


iOS 用户当前需要自行编译,后续 TestFlight 包审核后会在Github文档中更新:


1. 下载仓库代码:

git clone https://github.com/alibaba/MNN.git

2. 编译 MNN.framework:

cd MNN/sh package_scripts/ios/buildiOS.sh "-DMNN_ARM82=true -DMNN_LOW_MEMORY=true -DMNN_SUPPORT_TRANSFORMER_FUSE=true -DMNN_BUILD_LLM=true -DMNN_METAL=ON-DMNN_BUILD_DIFFUSION=ON-DMNN_BUILD_OPENCV=ON-DMNN_IMGCODECS=ON-DMNN_OPENCL=OFF-DMNN_SEP_BUILD=OFF-DMNN_SUPPORT_TRANSFORMER_FUSE=ON"
拷贝 framework 到 iOS 项目中
3. 移动 framework
 mv MNN-iOS-CPU-GPU/Static/MNN.framework /apps/iOS/MNNLLMChat/MNN.framework
4. 确保 Link Binary With Libraried 中包含 MNN.framework 和其他三个 Framework。
图片
如果没有包含,可以手动添加:
图片
图片
5. 修改 iOS 签名并编译项目
cd /apps/iOS/MNNLLMChatopen MNNLLMiOS.xcodeproj
在 Xcode 项目属性中 Signing & Capabilities > Team 输入自己的账号和Bundle Identifier
图片

  桌面端(Windows、Mac、Linux)

mac 用户可以点击文章底部链接下载。下载完成后解压然后执行:
sudo xattr -rd com.apple.quarantine ./mlschmod +x ./mls 

就可以执行。


其他用户可以按照下列文档编译。桌面端提供了命令行以及rest api


  • 编译


make buildcd buildcmake ../ -DMNN_LOW_MEMORY=true -DMNN_CPU_WEIGHT_DEQUANT_GEMM=true -DMNN_BUILD_LLM=true -DMNN_SUPPORT_TRANSFORMER_FUSE=true -DBUILD_MLS=truemake -j16
x86架构额外加 MNN_AVX512 的宏:
make buildcd buildcmake ../ -DMNN_LOW_MEMORY=true -DMNN_CPU_WEIGHT_DEQUANT_GEMM=true -DMNN_BUILD_LLM=true -DMNN_SUPPORT_TRANSFORMER_FUSE=true -DBUILD_MLS=true -DMNN_AVX512=truemake -j16
Mac 推荐增加 MNN_METAL的宏
make buildcd buildcmake ../ -DMNN_LOW_MEMORY=true -DMNN_CPU_WEIGHT_DEQUANT_GEMM=true -DMNN_BUILD_LLM=true -DMNN_SUPPORT_TRANSFORMER_FUSE=true -DMNN_METAL=ONmake -j16

编译完成后,可以看到 mls 产物,通过 mls 命令可以执行下载、benchmark 测试、启动rest服务等功能。


  • 使用说明


图片


mls list:列出本地已经下载模型

图片


mls search 搜索 huggingface 上所有支持的模型

图片


mls download 下载 huggingface 上的模型

国内用户如果下载有问题可以指定镜像:https://hf-mirror.com,或者使用 modelscope下载后运行。指定cofig 文件运行。

图片

下载完成后,记得在 ~/.mnnmodels 文件夹下找到找到配置文件,设置 config.json 中的 backend 为合适的 backend, 例如 mac 上建议设置 backend 为 `metal`。


mls run 通过命令行执行聊天

modelscope 用户可以下载后指定 config 文件运行,例如./mls run -c /Users/songjinde/.cache/modelscope/hub/MNN/DeepSeek-R1-1.5B-Qwen-MNN/config.json

图片


mls serve 启动本地服务器,支持兼容 openai api 的客户端的 api

modelscope 用户可以下载后指定 config 文件运行,例如./mls serve -c /Users/songjinde/.cache/modelscope/hub/MNN/DeepSeek-R1-1.5B-Qwen-MNN/config.json

图片
图片


如果喜欢 三方客户端,例如 Chatbox 、LobeChat 等,也可以按照三方客户端配置教程配置。以Chatbox 为例,新建模型配置,填写服务器地址,并且设置 API PATH 为/chat/completions。

图片

就可以通过 Chatbox 聊天了:
图片


mls benchmark 支持简单的benchmark 数据(兼容 llama.cpp 指标)

图片


图片

模型支持列表


以下是我们目前支持的模型列表,注意:

  • Android:由于大模型对算力要求比较大,Android 设备建议8GB 内存, 7B 以上模型建议 8gen1 以后机型使用。

  • iOS:针对 iPhone 的模型建议是:8GB 内存可使用 8B 以下模型,6GB 内存建议选择 3B 以下模型,而4GB 内存则推荐使用 1B 或更小模型。


模型名

DeepSeek-R1-7B-Qwen-MNN

DeepSeek-R1-1.5B-Qwen-MNN

Qwen2.5-0.5B-Instruct-MNN

Qwen2.5-7B-Instruct-MNN

gemma-2-2b-it-MNN

Qwen2.5-3B-Instruct-MNN

Qwen2.5-1.5B-Instruct-MNN

deepseek-llm-7b-chat-MNN

Qwen-VL-Chat-MNN

Qwen-7B-Chat-MNN

Baichuan2-7B-Chat-MNN

internlm-chat-7b-MNN

glm-4-9b-chat-MNN (iOS目前不支持)

Yi-6B-Chat-MNN

chatglm3-6b-MNN

TinyLlama-1.1B-Chat-MNN

Llama-2-7b-chat-ms-MNN

TinyLlama-1.1B-Chat-v1.0-MNN

Qwen2-Audio-7B-Instruct-MNN

Qwen1-1_8B-Chat-MNN

Qwen2-VL-7B-Instruct-MNN

Qwen2-VL-2B-Instruct-MNN

Meta-Llama-3.1-8B-Instruct-MNN

Llama-3.2-3B-Instruct-MNN

MobileLLM-125M-MNN

Qwen2.5-Coder-7B-Instruct-MNN

SmolLM2-135M-Instruct-MNN

Meta-Llama-3-8B-Instruct-MNN 

Qwen2.5-Math-7B-Instruct-MNN

SmolLM2-360M-Instruct-MNN

phi-2-MNN

MobileLLM-1B-MNN

SmolLM2-1.7B-Instruct-MNN

Llama-3.2-1B-Instruct-MNN

Qwen2.5-Coder-1.5B-Instruct-MNN

Qwen2-0.5B-Instruct-MNN

reader-lm-1.5b-MNN

Qwen2.5-Math-1.5B-Instruct-MNN

reader-lm-0.5b-MNN

MobileLLM-600M-MNN

Qwen2-1.5B-Instruct-MNN

Qwen2-7B-Instruct-MNN

MobileLLM-350M-MNN

stable-diffusion-v1-5-mnn-opencl (iOS暂不支持)


图片

相关链接


  • Android载链接:https://github.com/alibaba/MNN/blob/master/project/android/apps/MnnLlmApp/README.md#releases

  • Github下载地址:
https://github.com/alibaba/MNN/blob/master/project/android/apps/MnnLlmApp/README.md#releases
  • Github文档https://github.com/alibaba/MNN
  • MAC桌面端下载链接:https://meta.alicdn.com/data/mnn/mls.zip

  • MNN在端侧大模型部署上的探索:https://mp.weixin.qq.com/s/rgN_sry7prwfXvJaz6ruLg

  • MNN github:https://github.com/alibaba/mnn

  • MNN Llm APP:https://github.com/alibaba/MNN/blob/master/project/android/apps/MnnLlmApp/README.md

  • MNN LLM 文档:https://mnn-

    docs.readthedocs.io/en/latest/transformers/llm.html



图片
团队介绍

我们是大淘宝技术Meta Team,负责面向消费场景的3D/XR基础技术建设和创新应用探索,通过技术和应用创新找到以手机及XR 新设备为载体的消费购物3D/XR新体验。团队在端智能、商品三维重建、3D引擎、XR引擎等方面有深厚的技术积累。团队在OSDI、MLSys、CVPR、ICCV、NeurIPS、TPAMI等顶级学术会议和期刊上发表多篇论文。



¤ 拓展阅读 ¤

3DXR技术 | 终端技术 | 音视频技术

服务端技术 | 技术质量 | 数据算法



继续滑动看下一个
大淘宝技术
向上滑动看下一个