ARTICLE · 1321047
手机本地部署大模型:安卓iPhone离线跑Qwen教程
手机本地部署大模型:安卓iPhone离线跑Qwen教程
飞机上、地铁隧道里一断网,手机里的AI助手就成了摆设。其实现在一部8GB内存的手机,已经能把一个40亿参数的模型装进本地,断网照样能聊。这篇把原理、选模型、装App、调参数一次讲清楚。 一、先算账:模型多大,手机装不装得下 参数量就是模型里权重的个数。4B 是40亿个,7B 是70亿个。原版模型每个权重用16位存,占2个字节,4B 模型光权重就要8GB,手机根本放不下。 量化就是把每个权重压成更少的位数。Q8 大约每个权重8位,Q4 大约4位。文件名里常见的 Q4_K_M、Q4_0、Q8_0,指的就是量化方式。Q4_K_M 是混合精度,实际平均每个权重约5位:拿 Qwen3-4B 算,40亿参数,Q4_K_M 文件 2.5GB。同一个 Gemma 3 4B,Q8_0 是 4.13GB,Q4_K_M 只有 2.49GB。Q8 和原版差别很小,Q4 会损失一点,但体积减半,手机上 Q4 是最划算的档位。 GGUF 是 llama.cpp 用的单文件格式,权重、分词器、对话模板都打包在一个文件里,下载一个文件就能跑。 估算公式:文件大小(GB)≈ 参数量(十亿)× 每个权重的位数 ÷ 8。7B 按 Q4_K_M 约5位算,就是 7×5÷8≈4.4GB。 光有权重还不够,运行时还要放 KV 缓存,也就是模型对上下文的“记忆”。按 Qwen3-4B 官方结构算:36层、8个KV头、每头128维、16位存储,每个 token 要 2×36×8×128×2 字节,约144KB。上下文开到2048,KV 缓存约0.3GB;开到4096,约0.6GB。所以一个 2.5GB 的 4B 模型,实际要占3GB出头。 手机内存也不能用满。PocketPal 的机型规则里写得很清楚:8GB 的 iPhone,单个 App 峰值占到3到3.5GB 就是上限,再多会被系统直接杀掉;安卓要留出25%到35%的内存给系统。这就是为什么8GB手机的甜点区是 3B 到 4B。 二、CPU、GPU、NPU:到底谁在算 模型干活分两步。第一步读你的问题,叫预填充(prefill),一次性算一大批,吃算力。第二步一个字一个字往外吐,叫解码(decode),每出一个字都要把整个模型的权重从内存里读一遍,瓶颈在内存带宽。 所以换 GPU 对出字速度的提升有限。有测试显示,安卓上 llama.cpp 开 Vulkan GPU 加速,生成速度只比纯 CPU 快20%到40%。NPU 的强项在预填充:PocketPal 官方给的数据是骁龙 8 Elite Gen 5 的 NPU 跑 LFM2.5-1.2B,读提示词达到每秒2725个 token,是 CPU 的6.5倍,这个功能目前标注为实验性,要骁龙 8 Gen 2 及以上。 iPhone 这边走苹果的 Metal GPU 加速。安卓上阿里的 MNN 走另一条路,把 CPU 优化到极致:MNN-LLM 论文在骁龙 8 Gen 3 的小米14上测,CPU 预填充最高比 llama.cpp 快8.6倍,解码最高快2.3倍。 三、为什么离线更能保护隐私 模型文件存在手机里,推理也在手机上算,你输入的内容不经过任何服务器。MNN Chat 官方说明是完全在设备本地运行、不上传数据。PocketPal 的隐私政策写明,用本地模型时对话、提示词、输出都不会离开设备,国区 App Store 页面标注“未收集数据”。 边界也要说清:下载模型要联网;PocketPal 的联网搜索、连接电脑服务器这类功能会把内容发出去,想要纯离线就别开。 四、安卓:用阿里的 MNN Chat MNN Chat 是阿里开源推理框架 MNN 的官方 App,当前版本 0.8.3。安装包在 MNN 官方 GitHub 项目的 Releases 说明里下载,下载地址走阿里 CDN,国内能直接下。官方提示目前只在一加13和小米14 Ultra 上测过,其他机型不保证稳定,低配机可能慢或闪退。 它用的是 MNN 自己的模型格式,不是 GGUF,模型要从 App 内的“模型市场”下。系统语言是中文时,首次安装默认走魔搭(ModelScope)下载源,国内速度正常。 具体步骤: 1. 打开 App,进模型市场,可以按“Think”(带思考)、“NPU”、“Vision”(看图)这些标签筛选。 2. 选模型。8GB 内存选 4B 级的 Qwen3 或 Qwen3.5;12GB 以上可以试 DeepSeek-R1-0528-Qwen3,这是 80亿参数的蒸馏版。 3. 下载完点进对话。Qwen3、Qwen3.5 有思考模式开关,日常问答建议关掉,出字快很多。 4. 设置里能调线程数、精度、采样器、系统提示词、最大生成 token 数。线程数建议和手机大核数量一致,一般是4。 App 里还有“性能评测”页,默认测 1024 个 token 预填充加 128 个 token 生成,勾上“测量能耗”还能看每轮耗了多少电,拔掉电源再测。 五、iPhone:用 PocketPal AI LLM Farm 这类老 App 已经在2025年8月从 App Store 和 TestFlight 下架,现在 iPhone 上比较好上手的是 PocketPal AI。国区 App Store 直接搜得到,开发者是 Gooya UG,免费,当前版本 v1.22.0,要求 iOS 15.1 以上,Metal 加速要 iOS 18 以上。它底层是 llama.cpp,吃 GGUF 文件。安卓也有,在 Google Play 或它的 GitHub 发布页下载。 PocketPal 内置的推荐模型有 LFM2.5 1.2B、Gemma 3 1B、Qwen3.5 4B 这几个。它的模型搜索连的是 Hugging Face,国内网络直连经常下不动,可以换个办法: 
1. 在魔搭社区搜“Qwen3-4B-GGUF”(Qwen 官方仓库,有 q4_K_M、q5_K_M、q8_0 等档),下载 Qwen3-4B-Q4_K_M.gguf,2.5GB,存到“文件”App。 2. 打开 PocketPal,进 Models 页,点“+”,选 Add Local Model,选中刚才的文件导入。 3. 在模型卡片上点 Load,回到聊天页就能用,开飞行模式试一句确认是离线跑的。 设置在 Model Initialization Settings 里,改完要重新加载模型才生效: 上下文长度默认2048,长对话可以改到4096,按前面算的,4B 模型多占约0.3GB;Layers on GPU 默认99,意思是全部层放到 GPU 上,不用动;CPU 线程默认用八成核心,不用动;聊天模板留空,用模型自带的,乱改容易出乱码;Auto Offload/Load 默认开,切到后台会自动释放内存。 安卓版还能在 CPU、GPU(OpenCL,实验性)、骁龙 Hexagon NPU 之间选。它的机型规则建议骁龙手机跑 3B 以上模型优先选 Q4_0 文件,NPU 预填充更快、加载占用更低。 Benchmark 页可以测预填充速度、生成速度和峰值内存,大模型要跑2到5分钟,中途不能停。 六、机型内存对照:该下多大的模型 下面按 PocketPal 内置的机型分档规则整理,文件大小是 Q4 量化: 4GB 内存(iPhone 12、13)|1B 左右|Gemma 3 1B 约0.81GB 6GB 内存(iPhone 14、15)|1.5B 到 3B|SmolLM3 3B 约1.92GB 8GB 内存(iPhone 15 Pro、16 系列、17)|3B 到 4B|Qwen3-4B 约2.5GB,Qwen3.5 4B 约2.74GB 12GB 及以上(iPhone 17 Pro、iPhone Air、骁龙旗舰)|4B 稳,可试 7B 到 8B|Gemma 4 E4B 约4.98GB,规则要求 iPhone 至少7.3GB、安卓至少7.9GB 内存 安卓同样按内存往上套,但芯片也要看。规则里把谷歌 Tensor 全系列(到 G5)都归为中端,8GB 的 Pixel 只推荐 3B 档。 七、速度能有多快 以下是 llama.cpp、Q4_K_M、上下文2048 下的生成速度(每秒 token 数),来自公开测试: 1B 模型:iPhone 16 Pro 40到50,iPhone 15 Pro 35到45,iPhone 15 28到35;骁龙 8 Elite 纯 CPU 35到45、开 GPU 45到55。 3B 模型:iPhone 16 Pro 22到28,iPhone 15 Pro 18到25,iPhone 13 10到14;骁龙 8 Gen 3 纯 CPU 15到22、开 GPU 20到28;骁龙 7 Gen 3 只有7到11。 7B 模型:测试里只有 8GB 的 Pro 机型跑得起来,iPhone 16 Pro 8到12,iPhone 15 Pro 6到10,内存占约5GB,已经超过前面说的安全线,随时可能闪退。 每秒20个 token 以上,看着就是流畅输出;低于10个,能明显感觉到一个词一个词往外蹦。 MNN 在安卓上普遍更快。一位用户在三星 S20 FE 上对比 Qwen2.5-3B 的4位版本:MNN Chat 每秒10.06个 token,PocketPal 只有5到6个。 八、踩坑提醒 闪退:基本都是模型太大。先关掉后台 App,把上下文改回2048,还不行就换小一档的模型。 发热降速:有测试显示,iPhone 连续生成5分钟以上,速度掉20%到30%;三星手机连续跑3到5分钟后掉20%到40%。长任务分段问,中间停几秒。 耗电:3B 模型生成时功耗约3到5瓦,连续生成大约每分钟掉1%的电。偶尔问几句影响不大。 中文能力:中文优先选 Qwen 系列。SmolLM3 官方支持的六种语言里没有中文,PocketPal 默认推荐的几个小模型也偏英文。 DeepSeek:手机上能跑的是 DeepSeek-R1 的蒸馏版,底子是 1.5B 到 8B 的 Qwen 模型,和网页版满血671B 不是一回事。它会先长篇输出思考过程,手机上等得久,简单问题直接用 Qwen 关掉思考更快。 别指望它查资料:小模型离线时没法联网,问时效性的事、冷门事实很容易一本正经地编,适合改写、翻译、总结、写草稿这类活。 出差前下好一个 4B 模型,飞机上断网,照样能让它帮你改稿、翻译几句。 来源:MNN 官方开源项目说明及 MNN-LLM 论文、MNN-AECS 论文、PocketPal AI 官方说明与 App Store 页面、Local AI Scout、Ertas AI 手机推理测试、Qwen 官方模型卡(魔搭社区)、PromptQuorum 后面会继续写这类能上手的硬核玩法,想看就关注「AI玩机小助手」。 文|小助手

















































































