
生成式大语言模型微调训练快速手册
基础模型训练 阶段决定了大模型的能力天花板,由训练语料、模型架构以及训练方法决定。微调阶段只是让模型以人类可以接受的输入及输出 方式将能力显式呈现出来。ChatGPT的流行让大语言模型走入了大家的视线,怎么打造自己的大语言模型成为了一个急需解决的问题。基础模型训练与微调相当于一个人的基础教育阶段(小学到大学本科)以及职业强化阶段(研究生阶段)1.完全白嫖 (从开放途径获取别人训练微调好的模型)2.
ChatGPT的流行让大语言模型走入了大家的视线,怎么打造自己的大语言模型成为了一个急需解决的问题。
目录
大语言模型的获取方法有以下三种:
1. 完全白嫖 (从开放途径获取别人训练微调好的模型)
2. 基于现有基础模型进行指令微调 (包括对齐等) (LLaMA, Bloom, OPT)
3. 完全从头开始,从基础大模型到指令微调
基础模型训练与微调相当于一个人的基础教育阶段(小学到大学本科)以及职业强化阶段(研究生阶段)
基础模型训练 阶段决定了大模型的能力天花板,由训练语料、模型架构以及训练方法决定。微调阶段只是让模型以人类可以接受的输入及输出 方式将能力显式呈现出来。
作为业务使用时,根据业务发展进程,会经历从1-3的发展阶段。最终方式将是自训练基础大语言模型再根据业务需要进行微调。
目前可以Play 的大语言基础模型列表:
1.完全白嫖型 chatGLM等
2. 微调型
BELLE: LianjiaTech/BELLE: BELLE: Be Everyone's Large Language model Engine(开源中文对话大模型) (github.com)
Alpaca-lora:
tloen/alpaca-lora: Instruct-tune LLaMA on consumer hardware (github.com)
3. 从头打造:
概念级项目,没有实质内容
**** 重点推荐微软deepspeed chat 项目,完整三阶段训练方式:
DeepSpeed/README.md at master · microsoft/DeepSpeed (github.com)
相关项目
模型与训练 | 详情 |
---|---|
ChatGLM-6B | ChatGLM-6B 是清华唐杰老师实验室释放出来的中文大语言(小)模型 |
ptuning-v2 | ptuning-v2是清华唐杰老师实验室发布对GLM的一种微调方法,实现了他们本身发布的p-tuning-v2的论文的方法 |
GLM-Tuning | 这是Chengxi Guo等同学实现的GLM微调,最新的版本中同时支持了LoRA和p-tuning |
Alpaca | Alpaca是斯坦福在LLaMA上微调对话指令的项目,是万恶之源 |
Alpaca-LoRA | 这个项目开启了LLaMA模型上的LoRA微调,万恶之源2 |
Alpaca-ChToken | 复旦的Yiming Cui和Ziqing Yang修复了Alpaca的中文token问题,在原来的LLaMA英文token边上并了一个中文的token,我们想把这个项目整合到整体训练里,还没做完 |
BELLE-7B | BELLE是贝壳(链家)放出来的中文大模型,我们之后会尝试在这上面做微调。在一个合适的定量benchmark建立以后,我们会对比各个单卡大模型之间的性能。 |
RWKV-LM | RWKV也是一套语言模型的训练架构 |
Baize-7B | 白泽是做连续对话的,他收集语料的方法很有意思,之后我们要看一下,但是白泽是在LLaMA上训练的,所以会遇到中文的问题,用到中文要换基模型。 |
Vicuna | 同时有7B和13B,支持中文的模型,这个应该挺厉害的,而且13B用Int4能够压缩到colab使用(但是不知道int4训练会不会出事儿),之后也要试一下 |
更多推荐