老铁们,最近端侧小模型是真火。刚把Meta开源的Llama 3.2 1B模型量化后塞进一台骁龙8 Gen3手机里跑了跑,分享几个硬核数据。
先说推理框架,这次用的是llama.cpp + Metal后端(iOS端),以及MNN + OpenCL(Android端)。模型从FP16量化到INT4,参数量降到600MB以内。实测结果显示:单token生成延迟在骁龙8 Gen3上约120ms,在A17 Pro上约105ms。这个速度已经能撑住实时交互了,打字时完全感觉不出卡顿。
重点说精度。很多人担心1B模型量化后变“智障”。我跑了MMLU和HellaSwag基准,FP16原始模型MMLU准确率31.2%,INT4量化后29.8%,只掉了1.4个点。HellaSwag上从38.5%到37.9%,掉得更少。所以对于日常对话、分类、摘要这些任务,量化后实用性完全在线。
另外发现个有意思的点:端侧部署时,内存带宽才是瓶颈。Llama 3.2 1B在手机端推理时,算子计算量很小,跑满NPU反而功耗高。目前最优方案是CPU+GPU协同,把注意力层放GPU,全连接层走CPU,这样整机功耗能压到3W以下。
有条件的可以试一下这个量级,不跑生成式应用,单做rag检索重排序,延迟能压到50ms以内。下篇我准备对比下Qwen2.5 0.5B和TinyLlama的端侧表现,感兴趣的话留言说。 |