兄弟们,最近搞了几个端侧模型部署项目,从TensorFlow Lite到ONNX Runtime,再到苹果的Core ML,把踩的坑和真香点都捋一遍,免得大家走弯路。
先说TFLite,部署门槛最低,量化工具烂熟,但遇到动态输入尺寸就麻了,有的层不支持离线量化,跑起来直接崩。建议小模型(<100M)无脑上,大模型不如看ONNX。
ONNX Runtime是当前最稳的,跨平台兼容性真不错,特别是有个“异构计算”选项,CPU+NPU自动切,性能提升30%+。但坑在于导出时算子兼容容易翻车,尤其Transformer系列,要手动调opset版本。
Core ML就是苹果生态的独门暗器,用Core ML Tools转换后,A15以上芯片推理速度能打。但注意:不支持自定义算子,模型结构太花哨就gg,适合固定架构的轻量模型。
给新手建议:先搞个MobileNet或TinyBERT试水,别一上来就跑Llama。工具链上,NCNN对小模型优化不错,MNN在大厂内部用得也多。
最后问一句:你们部署过最坑的端侧模型是啥?有没有遇到内存爆了或者精度对不上的神操作?来评论区分享,一起避雷!🚨 |