Firefly(流萤): 中文对话式大语言模型

 ✒️ @halomaster 📅 06 Apr 2023, 13:50 GMT⋮ 【AI】 

Firefly(流萤) 是一个开源的中文对话式大语言模型,使用指令微调(Instruction Tuning)在中文数据集上进行调优。同时使用了词表裁剪、ZeRO、张量并行等技术,有效降低显存消耗和提高训练效率。 在训练中,我们使用了更小的模型参数量,以及更少的计算资源。 我们构造了许多与中华文化相关的数据,以提升模型这方面的表现,如对联、作诗、文言文翻译、散文、金庸小说等。 流萤(萤火虫的别称)是中华传统文化的一个符号,虽说腐草为萤,带有悲悯意味,但萤火虽小,也能凭借其淡淡荧光,照亮夜空。本项目的名称取自杜牧的《秋夕》:银烛秋光冷画屏,轻罗小扇扑流萤。 也希望本项目能够像流萤一般发出淡淡微光,为中文NLP开源社区尽绵薄之力,添砖加瓦。 主要工作如下: - 数据集:firefly-train-1.1M , 一份高质量的包含1.1M中文多任务指令微调数据集,包含23种常见的中文NLP任务的指令数据。对于每个任务,由人工书写若干指令模板,保证数据的高质量与丰富度。 - 模型裁剪:LLMPruner:大语言模型裁剪工具 ,使用词表裁剪技术对多语种大语言模型进行权重裁剪,保留预训练知识的前提下,有效减少模型参数量,提高训练效率,并分享裁剪后的多种参数规模的Bloom模型权重。 - 权重分享:在bloom-1b4-zh 和bloom-2b6-zh 的基础上,进行指令微调,获得两种参数规模的中文模型:firefly-1b4 和firefly-2b6(待训练结束后分享) - 训练代码:开源训练代码,支持张量并行、ZeRO、Gemini异构内存空间管理等大模型训练策略。可实现仅使用一张显卡,训练1B-2B参数量的模型(待整理后开源)。 https://github.com/yangjianxin1/Firefly


[1] @halomaster • 06 Apr 2023, 14:05 GMT 
LLMPruner:大语言模型裁剪工具 LLMPruner是一个大语言模型裁剪工具,通过对大语言模型的冗余词表进行裁剪,减少模型参数量,降低显存占用,提升训练速度,并且能够保留预训练中学习到的知识。 大语言模型(LLM, Large Language Model)犹如雨后春笋般,其虽然效果惊艳,但参数量巨大,让普通玩家望而却步。 如今的大语言模型大多为多语种大预言模型(Multilingual Large Language Model),如LLaMA、mT5、Bloom等,其词表规模巨大,占据非常大部分的模型参数,如Bloom具有25万词表。 在训练模型时,词表权重将会消耗非常大的显存,降低训练速度,产生OOM的现象。 然而在许多下游任务中,我们往往只需要使用到一两种语言,例如在中文场景中,一般只会用到中英文。 我们可以对大语言模型的词表进行裁剪,只留下所需的部分,这样不仅能够充分保留模型的预训练知识,并且能够使用更少的显卡进行下游任务的finetune,提升训练效率。 https://github.com/yangjianxin1/LLMPruner


1 of 1 pages  1 replies