谷歌没开源的PaLM,网友给开源了!千亿参数微缩版:8k上下文
编纂:桃子 好困
【新智元导读】万万没想到,谷歌PaLM竟被开源了,但是微缩版的。
谷歌未开源的PaLM,网友竟给开源了。
昨天,一位开发者在GitHub上开源了三种微缩版的PaLM模子:参数分散为1.5亿(PalM-150m),4.1亿(PalM-410m)和10亿(PalM-1b)。
项目地点:https://github.com/conceptofmind/PaLM
这三种模子在谷歌C4数据集举行了练习,上下文长度为8k。将来,另有20亿参数的模子正在练习中。
谷歌C4数据集
开源PaLM
使用4.1亿参数模子天生的示例:
My dog is very cute, but not very good at socializing with other dogs. The dog loves all new people and he likes to hang out with other dogs. I do need to take him to the park with other dogs. He does have some bad puppy breath, but it is only when he runs off in a direction he doesn’t want to go. currently my dog is being very naughty. He would like to say hi in the park, but would rather take great care of himself for a while. He also has bad breath. I am going to have to get him some oral braces. It’s been 3 months. The dog has some biting pains around his mouth. The dog is very timid and scared. The dog gets aggressive towards people. The dog is very playful and they are a little spoiled. I am not sure if it’s a dog thing or if he is spoiled. He loves his toys and just wants to play. He plays with his toys all the time and even goes on walks. He is a little picky, not very good with other dogs. The dog is just a little puppy that goes to the park. He is a super friendly dog. He has not had a bad mouth or bad breath
我的狗很心爱,但是不善于和其他狗交际。这只狗喜好一切新来的人,他喜好和其他的狗一同玩。我的确必要带他和其他狗一同去公园。他的确有点小狗的口臭,但仅有当他往不想去的朝向跑的时分。如今我的狗很淘气。他想在公园里打个招呼,但宁愿好好照顾本人一段时间。他另有口臭。我得给他买个口腔改正器,以前已往三个月了。这条狗嘴边有些咬痕疼痛。这只狗十分害怕和恐惧。这只狗对人有打击性。这条狗十分淘气,他们有点被宠坏了。我不确定是狗的成绩照旧他被宠坏了。他喜好他的玩具,只是想玩。他总是玩他的玩具,乃至去安步。他有点挑剔,不太会和其他狗相处。那只狗只是一只去公园的小狗。它是一只超等友好的狗。他没有口臭成绩了。
固然参数的确有点少,但这天生的后果照旧有些一言难尽……
这些模子兼允很多Lucidrain的盛行货仓,比如Toolformer-pytorch、PalM-rlhf-pytorch和PalM-pytorch。
最新开源的三种模子都是基线模子,并将在更大范围数据集上举行练习。
一切的模子将在FLAN上进一步伐整指令,以提供flan-PaLM模子。
开源的PaLM模子经过Flash Attention、 Xpos Rotary Embeddings举行练习,从而完成了更好的长度外推,并使用多查询单键值注意力机制举行更高效的解码。
在优化算法方面,接纳的则是解耦权重衰减Adam W,但也可以选择使用Mitchell Wortsman的Stable Adam W。
现在,模子以前上传到Torch hub,文件也存储在Huggingface hub中。
假如模子无法从Torch hub准确下载,请务必扫除 .cache/torch/hub/ 中的反省点和模子文件夹。假如成绩仍未处理,那么你可以从Huggingface的货仓下载文件。现在,Huggingface 的整合事情正在举行中。
一切的练习数据都以前用GPTNEOX标志器举行了预标志,并且序列长度被停止到8192。这将有助于节流预处理数据的多量本钱。
这些数据集以前以parquet格式存储在Huggingface上,你可以在这里找到各个数据块:C4 Chunk 1,C4 Chunk 2,C4 Chunk 3,C4 Chunk 4,以及C4 Chunk 5。
在分布式练习脚本中另有另一个选项,不使用提供的预标志C4数据集,而是加载和处理另一个数据集,如 openwebtext。
安装
在实验运转模子之前,必要优秀行一波安装。
git clone https://github.com/conceptofmind/PaLM.git
cd PaLM/
pip3 install -r requirements.txt
使用
你可以经过使用Torch hub加载预练习的模子举行分外的练习或微调:
model = torch.hub.load("conceptofmind/PaLM", "palm_410m_8k_v0").cuda()
别的,你还可以通底下的办法直接加载PyTorch模子反省点:
from palm_rlhf_pytorch import PaLMmodel = PaLM(
num_tokens=50304, dim=1024, depth=24, dim_head=128, heads=8, flash_attn=True, qk_rmsnorm = False,
).cuda()
model.load('/palm_410m_8k_v0.pt')
要使用模子天生文本,可以使用下令行:
prompt-用于天生文本的提示。
seq _ len-天生文本的序列长度,默许值为256。
temperature-采样温度,默以为0.8
filter_thres-用于采样的过滤器阈值。默许值为0.9。
model-用于天生的模子。有三种不同的参数(150m,410m,1b):palm_150m_8k_v0,palm_410m_8k_v0,palm_1b_8k_v0。
python3 inference.py "My dog is very cute" --seq_len 256 --temperature 0.8 --filter_thres 0.9 --model "palm_410m_8k_v0"
为了提高功能,推理使用torch.compile()、 Flash Attention和Hidet。
假如你想经过添加流处理或其他功效来扩展天生,作者提供了一个通用的推理脚本「inference.py」。
练习
这几个「开源PalM」模子是在64个A100(80GB)GPU上完成练习的。
为了便利模子的练习,作者还提供了一个分布式练习脚本train_distributed.py。
你可以自在改动模子层和超参数设置以满意硬件的要求,并且还可以加载模子的权重并改动练习脚原本微调模子。
最初,作者表现会在将分开场一个具体的微调脚本,并对LoRA举行探究。
数据
可以经过运转build_dataset.py脚本,以相似于练习时期使用的C4数据集的办法预处理不同的数据集。这将对数据举行预标志,将数据分红指定序列长度的块,并上传到Huggingface hub。
好比:
python3 build_dataset.py --seed 42 --seq_len 8192 --hf_account "your_hf_account" --tokenizer "EleutherAI/gpt-neox-20b" --dataset_name "EleutherAI/the_pile_deduplicated"
PaLM 2要来了
2022年4月,谷歌初次官宣了5400亿参数的PaLM。与其他LLM一样,PaLM能实行种种文本天生和编纂职责。
PaLM是谷歌初次大范围使用Pathways体系将练习扩展到6144块芯片,这是迄今为止用于练习的基于TPU的最大体系设置。
它的了解才能拔群,不仅连笑话都能看懂,还能给看不懂的你表明笑点在哪。
就在3月中,谷歌初次开放其PaLM大型言语模子API。
这意味着,人们可以用它来完成总结文本、编写代码等职责,乃至是将PaLM练习成一个像ChatGPT一样的对话谈天机器人。
行家将召开的谷歌年度I/O大会上,劈柴将公布公司在AI范畴的最新提高。
据称,最新、最优秀的大型言语模子PaLM 2即将推出。
PaLM 2包含100多种言语,并不休在内里代号「一致言语模子」(Unified Language Model)下运转。它还举行了广泛的编码和数学测试以及创意写作。
上个月,谷歌表现,其医学LLM「Med-PalM2」,可以回复医学测验的成绩,在「专家医生水平」,准确率为85% 。
别的,谷歌还将公布大模子加持下的谈天机器人Bard,以及搜刮的天生式体验。
最新AI公布可否让谷歌挺直腰板,还得拭目以待。
参考材料:
https://github.com/conceptofmind/PaLM

















