模型:
YeungNLP/bloom-6b4-zh
项目地址: LLMPruner:大语言模型裁剪工具
LLMPruner是一个大语言模型裁剪工具,通过对大语言模型的冗余词表进行裁剪,减少模型参数量,降低显存占用,提升训练速度,并且能够保留预训练中学习到的知识。
本项目对Bloom进行词表裁剪,保留中文token和常用的英文token,词表由250880将至46145,缩减为原来的18.39%。裁剪得到的Bloom模型如下表:
裁剪模型 | 原模型 | 参数量比例 |
---|---|---|
1232321 | 1233321 | 70.96% |
1234321 | 1235321 | 77.13% |
1236321 | 1237321 | 81.14% |
1238321 | 1239321 | 86.48% |
12310321 | 12311321 | 90.81% |
12312321 | 12313321 | 70.96% |
12314321 | 12315321 | 77.13% |
12316321 | 12317321 | 81.14% |
12318321 | 12319321 | 86.48% |
12320321 | 12321321 | 90.81% |
12322321 | 12323321 | 90.81% |
使用方法:
from transformers import BloomTokenizerFast, BloomForCausalLM tokenizer = BloomTokenizerFast.from_pretrained('YeungNLP/bloom-1b4-zh') model = BloomForCausalLM.from_pretrained('YeungNLP/bloom-1b4-zh') print(tokenizer.batch_decode(model.generate(tokenizer.encode('长风破浪会有时', return_tensors='pt'))))