我折腾了一天,成功地把deepseek-r1塞进了我的手机里,不需要联网,本地就能运行。
这个过程需要用到一个神奇的项目:MLC-LLM。
MLC-LLM是一个针对大型语言模型的机器学习编译器和高性能部署引擎项目。其核心使命是让每个人都能在各自的平台上进行AI模型的本地开发、优化和部署,使LLM能够在云服务器和本地设备等多种环境中运行。
它的技术原理主要有2个方面:
MLC-LLM现在能够支持包括AMD、NVIDIA、Apple、Intel的GPU,以及Linux、Windows、macOS、Web浏览器、iOS、Android等操作系统和环境。也正因为如此,我才能利用这个项目,把deepseek-r1装到我的Android手机上。
要把deepseek-r1安装到Android手机上,需要在项目的android/MLCChat/mlc-package-config.json
配置中,增加一段deepseek-r1的模型配置:
{ "model": "HF://mlc-ai/DeepSeek-R1-Distill-Qwen-1.5B-q4f16_1-MLC", "estimated_vram_bytes": 3980990464, "model_id": "DeepSeek-R1-Distill-Qwen-1.5B-q4f16_1-MLC", "overrides": { "prefill_chunk_size": 128 } }, { "model": "HF://mlc-ai/DeepSeek-R1-Distill-Qwen-7B-q4f16_1-MLC", "estimated_vram_bytes": 4115131883, "model_id": "DeepSeek-R1-Distill-Qwen-7B-q4f16_1-MLC", "overrides": { "sliding_window_size": 768, "prefill_chunk_size": 256 } },
我的手机是红米K70(骁龙8Gen2,16G内存),这里只增加了deepseek-r1的1.5b和7b蒸馏模型的配置,模型滑动窗口大小和分块的尺寸也做了调整,再高了也带不动,会闪退!
加完配置后,按照项目详细的Android打包编译文档进行编译就可以了。
Android编译文档:https://llm.mlc.ai/docs/deploy/android.html
编译过程的操作并不难,过程中需要下载和预编译deepseek-r1的环境,要有一个能访问Hugging Face的网络环境,你懂的……
如果只是想体验一下的话,可以用我编译好的包:
当然了,安装后只是有了个运行deepseek-r1模型的环境,还需要联网从Hugging Face上下载对应的模型。所以,还是逃不开一个顺畅的网络环境……
来看下我的运行效果吧。
deepseek-r1:1.5b:
输出大概9token每秒,速度还在可接受的范围。但是呢,输出的内容就乱七八糟,火星文都出来了,不知道在讲什么,完全就是个垃圾啊!
deepseek-r1:7b:
7b的输出速度,肉眼就有点卡顿了。输出的效果会好一点,句子通畅一些。但也会混杂英文,输出的文案质量也很一般,没有什么实用的价值。
总结起来,目前在手机上跑AI大模型是可行的,但能跑的前提是手机硬件不能太差。在我的手机红米K70(骁龙8Gen2,16G内存)上,勉强能跑deepseek-r1的1.5b和7b模型。不过,模型的效果就太差了,跟玩具一样,没什么实用价值。无论是在硬件上面,还是在模型调优方面,距离在移动端本地流畅跑高质量大模型,或许还有一段很长的路要走。
本文作者:Jianan
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 © 2012-2025 Jianan 许可协议。转载请注明出处!