
尤其是千亿参数的旗舰模型,之前想在家用电脑跑想都不敢想,只能部署在多卡服务器甚至专门的计算集群里。
这几天有个叫Colibrì的开源项目突然火了,一个周涨了13.3k星星。

项目简介
它把常驻参数保留在内存中、把大量专家参数存放在硬盘并按需加载,让原本需要服务器级硬件配置的GLM-5.2 744B模型,也能在25GB内存和本地NVMe固态硬盘的消费级电脑上运行。
DEMO


MoE模型虽然拥有非常庞大的总参数量,但在生成每一个Token时,并不会使用全部参数,而是由路由器挑选其中一小部分专家参与计算。
GLM-5.2 总参数量约为 744B,但每生成一个Token,实际激活的参数约为40B。其中随路由结果不断变化、需要频繁读取的专家参数约占11GB。
Colibrì把模型拆成了两个部分:
- 注意力层、共享专家和词嵌入等固定部分,在int4量化后约为9.9GB,常驻内存。
- 大量路由专家经过int4量化后约为370GB,保存在本地NVMe固态硬盘中,需要时再加载。
Colibrì让模型参数分布在三个层级中:
- GPU显存:最热、访问最频繁的专家
- 系统内存:常驻参数和热点专家缓存
- NVMe硬盘:其余绝大多数专家参数
当模型路由到某个专家时,引擎便从相应层级读取它,如果该专家已经在内存或显存中,计算会比较快,如果只能从硬盘读取,速度就会明显下降。
Colibrì真正突破的是模型必须完整装入高速内存这个传统部署前提。
写在最后
正如开发者所说:蜂鸟只有几克重,却能不断振翅、悬停,并在一天内造访无数花朵。
这个小小的C语言引擎,也在用有限的内存、普通的CPU努力托起一个7440亿参数的庞然大物。
它不会马上改变主流方案,但会把原本看似不可能的边界,再向前推一点。
项目链接
https://github.com/JustVugg/colibri
© 版权声明
文章版权归作者所有,未经允许请勿转载。
