如何让70B参数的大型语言模型在资源有限的边缘设备上高效运行?
你有没有想过,像我们平时使用的智能手机、家里的智能音箱这样的小设备,也能运行那些参数量高达数十亿的大型语言模型(LLM)呢?这听起来像是天方夜谭,毕竟这些模型动辄需要巨大的算力和存储资源,但实际上,随着技术的发展,这个梦想正在变成现实。那么,问题来了,怎么在资源有限的边缘设备上高效运行这些庞大的模型呢?有篇论文就是说的这个事,今天,我们就来聊聊这个话题。
论文地址:
https://arxiv.org/pdf/2410.00531
1. 大模型上“瘦身”:剪枝和量化
说到让大模型在小设备上跑得快,第一个想到的办法就是给模型“减肥”。这就像我们平时用手机,装了太多没用的APP,手机运行速度变慢了,删掉那些不常用的,手机立马又变得流畅了。
这里的“减肥”技术,通常有两种方法:剪枝和量化。简单来说,剪枝就是把模型中不常用的参数删掉,只保留那些真正有用的部分。就像整理行李一样,把不需要的东西扔掉,行李箱立刻轻了很多。量化则是把模型中的数据从高精度的浮点数转化为低精度的整型数,这样可以大幅减少内存占用。