苹果这个 20B 端侧模型跟传统 MoE 模型还不太一样,传统 MoE 虽然每次只会激活部分专家,需要把全部专家权重加载到内存上,哪怕经过低精度量化,20B 这个规模的模型要跑起来,也得需要接近 10GB 内存大小,还没算长上下文带来的内存开销。
研究了一下苹果的模型介绍,发现苹果是用了 NAND→DRAM 权重流式的加载设计,也就是说大部分模型权重是长期存放在闪存上,仅将需要的专家权重加载到内存上给 GPU 调用,不用整个 20B 模型长期驻留在内存中,这也是为什么 12GB 内存的 iPhone 也能跑运行 20B 级别本地模型的原因。
相关文章地址:http://t.cn/AXXDwnJh
发布于 广东
