Coder Social home page Coder Social logo

chatllm-research's Introduction

开源ChatLLM-research

1、调研情况

主要针对近期开源Chat类模型进行数据集收集、模型效果调研、论文实现初探。

几个模型排行榜:

SuperCLUE琅琊榜和UC伯克利LLM排行榜包含模型对战排名,即通过志愿者同时对两个匿名模型聊天,并投票产生(模型两两PK)

1.1 模型情况梳理

模型名称 基座模型 能力说明 优缺点 训练预期需要资源 微调数据集 论文中的评估结果 github 论文 训练中值得关注
Guanaco-65B LLaMA 65B能达到ChatGPT的99%表现(人工和GPT4评估) 24hours fintune 65B on a 48GB GPU 论文对比了8个数据集:
OASST1,HH-RLHF ,Alpaca,self-instruct, unnatural instructions,FLAN v2,Chip2, Longform
最后选择OASST1中top reply的9k条数据微调得到Guanaco
png除13B尺寸上的Vicuna表现更好外,Guanaco表现最优 相关代码 相关论文1 Train on target优于Train on source and target
Vicuna-13B LLaMA ChatGPT的92%(GPT4评估)最新模型已更新迭代到V1.3版本 FSDP on 8 A100 GPUs in one day ShareGPT 清洗出70K user-shared ChatGPT conversations(ShareGPT目前已关闭开源,仅有用户提前下载的部分数据,数据清洗代码 png评估数据集为80条 vicuna test,GPT4进行评估打分 相关代码
在线demo
官方博客 多轮对话只计算模型输出的loss
Alpaca LLaMA 约ChatGPT的70% chat类模型中比较早期的做法 在4 A100 80G GPUs in FSDP mode微调7B Self-instruct from davinci-003 API (52k samples) 相关代码 官方博客
LLaMA_GPT4-7B LLaMA 好于Alpaca-13B、逊于Vicuna-13B 进行中文微调:Alpaca的52k instructions 翻译成中文后用GPT-4生成answer 16*V100 使用GPT-4根据Alpaca的52k instructions 生成新的answer png中文表现png 同Alpaca代码 相关论文1
Koala LLaMA 两类数据:
1、ChatGPT Distillation Data:SharGPT中删除非英文的,保留30k条;Human ChatGPT Comparison Corpus(HC3)
2、Open Source Data:Open Instruction Generalist(OIG)、Alpaca、HH-RLHF、OpenAI WebGPT、OpenAI summarization
png 相关代码
数据处理代码
官方博客 论文用ChatGPT Distillation Data微调了Koala-Distill,用所有数据微调了Koala-All,结果显示在两个验证数据集上,Koala-Distill结果都好于Koala-All(虽然差距不明显)
SelFee LLaMA SelFee-13B约ChatGPT的103% 自我反馈提升回答效果 178k 数据包含自我反馈和修订数据:1、Alpaca 52k(根据instructions让ChatGPT生成feedback数据)
2、Math collection 26k
3、Code collection 30k
4、FLAN collection 16k
5、ShareGPT 55k(去除非英语)
png用80条 vicuna test评估 同Alpaca代码
在线demo
官方博客 多种训练数据、自我反馈链的模式
BELLE bloom、LLaMA 约ChatGPT的92%(排除code和math) LLaMA基座模型对中文进行二次预训练微调数据集几乎全部为中文 8卡A100 80G 200万中文+Alpaca的5万英文(均由ChatGPT产生)BELLE-13B基于LLaMA,训练数据达400万 pngLLaMA-EXT做了中文词表扩展并在3.5B中文token上二次预训练测试集下载地址:1k中文评估测试集,可用ChatGPT自动打分 相关代码 相关论文1
相关论文2
png对比不容模型尺寸、全量微调、LoRA、不同微调数据量的效果结论:全量FT>LoRA;微调数据越多越好;模型尺寸越大越好
ChatGLM-6B GLM130B 基座模型在中英(对半)语料上训练 1T tokens的中英双语训练 png参与用户与两个匿名模型同时聊天,并投票哪个更好,排名持续更新中 相关代码 GLM-130B相关论文
Linly-ChatFlow Linly OpenLLaMA-13B(从头开始预训练,100G中英语料,Apache 2.0开源) 另有基座模型Linly-Chinese-LLaMA-33B(最大的开源中文LLaMA模型,二次预训练30G,无中文词表扩充) 1.BELLE: 150万数据,175个指令seed 2.pCLUE: 120万训练数据,73个Prompt 3.CSL: 40万中文论文元数据,26个Prompt 5.GuanacoDataset: 多语言指令数据集 6.Chain-of-Thought: 中英文思维链数据 7.news_commentary: 中英文翻译数据 8.firefly: 23个中文NLP任务集合 相关代码
在线demo
Chinese-Alpaca-13B Chinese-LLaMA(LoRA权重地址 LLaMA在120G中文语料上的二次预训练、扩充中文词表(LoRA) 基于LoRA:基座模型训练120G通用中文语料Chinese-Alpaca在4.3M中文指令上微调 相关代码 相关论文
AquilaChat 智源Aquila:基于LLaMA框架从零开始训练 中文语料来自智源多年累积的中文数据集,将开源33B版本 基座模型训练5800亿tokens 相关代码
-- baichuan-7b:基于LLaMA框架从零开始训练 在MMLU、C-Eval上达到同尺寸模型最优效果 基座模型训练1.2万亿tokens 相关代码
Firefly流萤 bloom 国内LLM微调项目 裁切词表大小(适应中文) 相关代码
WizardLM LLaMA 能力接近chatgpt,模型更新迭代到V1.1版本 包含7B、13B、30B和即将推出65B 使用更为复杂的指令训练模型,复杂指令通过LLMs自动生成,生成过程中不断对instruction种子增加问题的广度和深度 相关代码 相关论文
OpenChat LLaMA 能力接近chatgpt,模型更新迭代到V2版本 v1版使用约6K条GPT-4生成数据,V2版使用约80K清洗后的ShareGPT数据微调 相关代码

1.2 邻域模型情况

模型名称 基座模型 邻域实现方法 相关论文 相关代码
Lawyer LLaMA LLaMA 1、通用语料预训练LLaMA,增强中文能力
2、中文法律语料continual training
3、指令微调:通用指令(Alpaca-GPT4,中英文);法律指令微调(ChatGPT生成法律考题、咨询等答案、检索法条后让ChatGPT生成答案)
相关论文 github地址
Bloomberg GPT

其他国产开源模型:

  • CPM-Bee-10B:百亿参数、中英双语基座模型
  • Chatyuan-large-v2
  • baichuan-7B、13B
  • InternLM

1.3 总结

a) 基座模型

LLaMA

包含65B、33B、13B、7B等尺寸

缺少中文token,解决措施:

  • a) 扩充词表、二次预训练,相关模型:Chinese-Alpaca-13B(LoRA)。其他BELLE对LLaMA做了词表扩充和二次预训练,但是并没有开源调整后的基座模型;

  • b) 从头训练,相关模型:Linly OpenLLaMA-13B(预训练30亿tokens)(已开源)、智源Aquila在中英语料上进行从头训练,目前开源基座模型7B,将开源33B、baichuan-7B(预训练1.2万亿tokens)在C-Eval和MMLU上都取得同尺寸最好的效果

GLM

包含130B(申请下载链接)、10B等尺寸(10B和130B应该是两个项目,10B是在智源WUDAO数据集上进行的预训练,两模型并非同一个模型的不同尺寸)

目前,智谱的ChatGLM已更新到V2版本,并且开放api及多尺寸模型(收费)

在中文语料上预训练,缺少中间尺寸的开源模型

bloom和bloomz

多语言模型,词表太大,需要做裁切(Firefly项目有进行裁切),并且也没有7B和175B中间的模型尺寸

b) 微调数据和模型效果

数据质量

模型 Alpaca < LLaMA_GPT4 < Vicuna < SelFee <= WizardLM ChatGPT
微调数据集 self-instruct from davinci-003(52k) Alpaca的52K条指令由GPT4生成答案 ShareGPT(用户提问,ChatGPT生成答案,用户主动分享) 更多数据集,其中包含ShareGPT和Alpaca 52k,Alpaca同样保留指令,让ChatGPT重新生成基于自我反馈的答案 ChatGPTGPT生成更为复杂的指令,不断增加指令的广度和深度

Alt text

其中最大的差异就是微调数据集的质量,Vicuna-13B使用ShareGPT,用户分享的和ChatGPT聊天的数据,Alpaca使用52k ChatGPT self instruct得到的数据,而LLaMA_GPT4使用52k GPT-4 self instruct得到的数据。得出结论,微调数据集中有人参与的由于GPT-4,优于ChatGPT。

所以在后续Chat模型中,不少模型使用了有人工参与介入的数据集,主要有:HH-RLHF、OASST1、databricks-dolly-15k、ShareGPT、HC3、openai/summarize-from-feedback等。

然而,在Koala模型实验中,他们训练了两个模型:Koala-Distill和Koala-All,其中Koala-Distill只用了ChatGPT相关数据集,反而在两个验证数据集上优于Koala-All(提升不多)。推测可能得原因,ChatGPT生成的数据更符合验证集数据分布,另外有些开源NLP数据集虽然也可以转化成QA进行微调,可能和用户真正聊天的分布有差异。

经过简短的调研,目前开源chat模型在sft微调阶段使用的数据集有不少重合的数据,可能仅靠sft数据,目前这些模型已经到达天花板了?但是在另外一些方面,不少模型也做了尝试,比如QLoRA可以用40G显卡微调65B模型,这样可以通过模型尺寸来突破上限。还比如SelFee在微调数据中引入self-feedback等机制。

CoT、self-feedback、Reason-Act、autoGPT的加入

SelFee使用Alpaca 52k instructions让ChatGPT生成带自我反馈的语料进行微调,并在推理阶段同样引入反馈链条,取得了不错的效果。反馈链

2、数据集收集

2.1 微调数据

数据集 数据集用途 原始来源 其他补充说明
OASST1 微调Guanaco 下载地址 10万条对话树、35种语言、人工生成、人工标注(1万多志愿者)
HH-RLHF Guanaco、RedPajama 下载地址 Anthropic的RLHF数据,可以微调,也可以训练reward model
databricks-dolly-15k Dolly2、RedPajama 下载地址 Databricks员工众包生成的提示/回答
ShareGPT 微调Vicuna、SelFee 数据关闭开源(用户提前下载后分享1)(用户分享下载2 少量中文,个人用户分享和ChatGPT的对话
Alpaca 微调Alpaca等多模型 下载地址 英文,52k self instruct数据
Alpaca-3.5-zh 中文Alpaca 项目地址 ChatGPT翻译的52k Alpaca
Alpaca_gpt4_data 微调LLaMA_GPT4 下载地址 根据Alpaca的52K instructions用GPT4生成answer(中英两版),另外下载地址中还包含GPT4对3个模型生成答案的排序打分数据,可以训练reward model
AQuA 微调Selfee 下载地址 数学数据集
Flan collection Flan-PaLM、Selfee 下载地址 包含5个数据集
Linly instructions 微调Linly-ChatFlow 下载地址 1.BELLE: 150万数据,175个指令seed 2.pCLUE: 120万训练数据,73个Prompt 3.CSL: 40万中文论文元数据,26个Prompt 5.GuanacoDataset: 多语言指令数据集 6.Chain-of-Thought: 中英文思维链数据 7.news_commentary: 中英文翻译数据 8.firefly: 23个中文NLP任务集合
BELLE 10M 微调BELLE、Linly 下载地址 持续开放的由ChatGPT产生的数据集
Firefly_train_1.1M 微调Firefly 下载地址 收集23个常见中文数据集,对于每个任务,由人工书写若干种指令模板,保证数据的高质量和丰富度,数据量为115万
awesome-open-instruct-data-for-chinese 中文指令数据集合集 下载地址 包含多个中文指令数据集
BAAI-OL-CC 微调Aquila 下载地址 智源通过众包,人工标注的10k条中文对话数据
summarize-from-feedback 微调koala 下载地址 Openai的90k英文数据
HC3 微调koala 下载地址 中英文,同一个问题,对比human vs chatgpt的答案
openai/WebGPT 微调WebGPT、Koala 下载地址 openai开源,微调WebGPT
OIG 微调Koala 下载地址 LAION发布的~43M instructuons数据集
COIG 微调Aquila 下载地址 中文,智源开源,中文的OIG
SelFee 178k 微调SelFee,使用自反馈 下载地址 纯英文数据,用ChatGPT生成自我反馈和答案,包含数学等其他数据集
OpenChat ShareGPT4 微调OpenChat 下载地址 英文,经过清洗的ShareGPT
airoboros-gpt4-1.2 微调airoboros 下载地址 GPT4经过self-instruct生成的数据
chinese_chatgpt_corpus 下载地址 中文,包含百科、知道、对联等问答数据(数据量5G)
Zhihu 知乎问答数据 下载地址 你懂的

2.2 预训练数据

数据集 数据集用途 原始来源 其他补充说明
OpenLLaMA预训练语料 中英预训练语料100GB 下载地址 20G中文语料、10G平行语料、70G英文语料
RedPajama-Data 复刻LLaMA预训练语料(1.4T tokens) 下载地址 png

2.3 信息抽取数据集

数据集 数据集简介 原始来源
BAAI-FewRel 英文信息抽取数据 下载地址
IE INSTRUCTIONS 英文信息抽取数据,训练instructUIE 下载地址
DuIE 中文 下载地址
金融信息负面及主体判定 中文 下载地址

chatllm-research's People

Contributors

luyuntao92 avatar

Stargazers

Shen Hao avatar  avatar  avatar  avatar Chunfeng1994 avatar  avatar ZhangJiaWen avatar W. avatar LaniakeaYanzu avatar 谢衍 avatar YuZhao avatar  avatar Junhua LU avatar Musou avatar Bing Bo avatar  avatar Alex Deng avatar xids avatar zichengzhao avatar  avatar Enze avatar Samuel avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.