首页
学习
活动
专区
圈层
工具
发布

从零手搓量化大模型:250M参数30B语料训练,部署包仅60MB

我从零训练了一个2.5亿参数的模型,用的是30B token的FineWeb语料模型量化到了2比特以下,整个部署包只有60MB,运行起来大概占80MB内存在普通笔记本CPU上就能跑,不需要显卡,速度约每秒400个token

长上下文是这样实现的:最近2048个token会像普通KV缓存一样保留在fp16精度里;更早的内容会被压缩成1比特写入磁盘,每个token约320字节所以100万token的历史在磁盘上大约占320MB模型从一开始就被训练成能从这块磁盘缓存里取数据,最多支持1亿token不过因为预算有限,它只被训练成从里面检索并作答,而不是对这些内容做推理

基础模型的语言建模质量,是在训练时没见过的英文网页文本(教育类页面,2048 token窗口)上测的:交叉熵3.15 nats/token,困惑度23.3,每字节0.99比特

词表也不是常规的嵌入表每个token是一个固定的512比特编码,13.1万个token总共才8.4MB,没有任何可训练参数我在WordSim-353(人类词语相似度评分)上测过:我的编码表Spearman相关系数是0.619,随机编码只有0.029

下面放一些输出例子,参数都标出来了,方便大家验证我不是在挑好的放,仓库里都能复现:

用两句话解释光合作用(贪心解码)

植物通过光合作用把阳光转成化学能,再用来制造氧气和其他物质这个过程就叫作光合作用

写一首关于海的小诗(温度0.25,top-k 30,重复惩罚1.15,种子2)

浪头翻涌着互相拍碎,像石头叠着石头风很猛却不温柔,推着它们去往终点,不费力气,也不放开挡在身前的人——那僵硬的笑,让海比从前更巍峨

设备Grus-189的序列号是多少?(答案在磁盘归档里约5060万token深处,归档模式,k=16)

SN-442976

这毕竟只是个2.5亿的模型,开放事实类问题免不了会出错,我没说它能打败什么大模型你也可以微调它,全套工具包里带了demo和微调前后对比数据,微调用的主权重也在仓库里

补充一句:真的很感谢这里的大家说实话发出来之前我有点怕,以为会被喷,结果每条评论都好奇又帮忙,真的让我一天都开心仓库现在GitHub上7个星,希望更多人来试试

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OL8J_mtGYe5NB_rVQFWojGXw0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。
领券