模型:
tiiuae/falcon-40b
Falcon-40B是由 TII 建立的具有40B参数的因果解码器模型,使用 RefinedWeb 增强的1,000B标记的令牌进行训练,同时结合了策划语料库。它按照Apache 2.0许可证发布。
即将发表的论文 ?。
我们明白,人工智能无处不在!它是否正在接管一切?
在我们辩论未来的机器人刺客是否会终结人类之前,让我们先了解一下这位登上榜首的新人——Falcon 40B。
Falcon-40B是阿联酋和中东地区首个本土开源大型语言模型(LLM),拥有400亿个参数,在万亿个标记上进行了训练。这是技术创新研究所(TII)的独创之作,Falcon 40B引起了全球广泛的兴趣和好奇,但真正增加吸引力的是其透明的开源特性。
TII现在呼吁全球用户提交他们对Falcon 40B部署的最创意的想法,让他们分享知识,改进软件,并有可能将他们的想法变成现实!瞧瞧,ChatGPT!有兴趣了解吗?动手试试吧,亲自体验一下!
立即提交你的提案! https://falconllm.tii.ae/call-for-proposal.php
? 若要开始使用Falcon(推理、微调、量化等),我们建议先阅读 this great blogpost fron HF !
?正在寻找一个更小、价格更便宜的模型吗? Falcon-7B 是Falcon-40B的小兄弟!
from transformers import AutoTokenizer, AutoModelForCausalLM import transformers import torch model = "tiiuae/falcon-40b" tokenizer = AutoTokenizer.from_pretrained(model) pipeline = transformers.pipeline( "text-generation", model=model, tokenizer=tokenizer, torch_dtype=torch.bfloat16, trust_remote_code=True, device_map="auto", ) sequences = pipeline( "Girafatron is obsessed with giraffes, the most glorious animal on the face of this Earth. Giraftron believes all other animals are irrelevant when compared to the glorious majesty of the giraffe.\nDaniel: Hello, Girafatron!\nGirafatron:", max_length=200, do_sample=True, top_k=10, num_return_sequences=1, eos_token_id=tokenizer.eos_token_id, ) for seq in sequences: print(f"Result: {seq['generated_text']}")
? Falcon LLM在transformers中需要PyTorch 2.0支持!
要快速推理Falcon,查看 Text Generation Inference !详细信息请阅读 blogpost 。
你将需要至少85-100GB的内存来快速运行Falcon-40B的推理。
大型语言模型研究;作为进一步专门化和针对特定用例(例如摘要、文本生成、聊天机器人等)进行微调的基础。
没有充分评估风险和缓解措施的生产使用;任何可能被视为不负责任或有害的用例。
Falcon-40B主要训练于英语、德语、西班牙语、法语,也在意大利语、葡萄牙语、波兰语、荷兰语、罗马尼亚语、捷克语、瑞典语等方面具有有限的能力。它将无法适当地推广到其他语言。此外,由于其训练数据是代表网络的大规模语料库,它将带有在在线平台常见的刻板印象和偏见。
我们建议Falcon-40B的用户考虑针对感兴趣的特定任务对其进行微调,并为任何生产使用采取防护措施和适当的预防措施。
from transformers import AutoTokenizer, AutoModelForCausalLM import transformers import torch model = "tiiuae/falcon-40b" tokenizer = AutoTokenizer.from_pretrained(model) pipeline = transformers.pipeline( "text-generation", model=model, tokenizer=tokenizer, torch_dtype=torch.bfloat16, trust_remote_code=True, device_map="auto", ) sequences = pipeline( "Girafatron is obsessed with giraffes, the most glorious animal on the face of this Earth. Giraftron believes all other animals are irrelevant when compared to the glorious majesty of the giraffe.\nDaniel: Hello, Girafatron!\nGirafatron:", max_length=200, do_sample=True, top_k=10, num_return_sequences=1, eos_token_id=tokenizer.eos_token_id, ) for seq in sequences: print(f"Result: {seq['generated_text']}")
Falcon-40B使用了 RefinedWeb 的1,000B标记进行训练,这是一个经过高质量筛选和去重的网络数据集,我们还使用了策划语料库。从我们的策划语料库中选取了一些重要组成部分,受到了The Pile( Gao et al., 2020 )的启发。
Data source | Fraction | Tokens | Sources |
---|---|---|---|
12322321 | 75% | 750B | massive web crawl |
RefinedWeb-Europe | 7% | 70B | European massive web crawl |
Books | 6% | 60B | |
Conversations | 5% | 50B | Reddit, StackOverflow, HackerNews |
Code | 5% | 50B | |
Technical | 2% | 20B | arXiv, PubMed, USPTO, etc. |
RefinedWeb-Europe包括以下语言:
Language | Fraction of multilingual data | Tokens |
---|---|---|
German | 26% | 18B |
Spanish | 24% | 17B |
French | 23% | 16B |
Italian | 7% | 5B |
Portuguese | 4% | 3B |
Polish | 4% | 3B |
Dutch | 4% | 3B |
Romanian | 3% | 2B |
Czech | 3% | 2B |
Swedish | 2% | 1B |
该数据使用了Falcon- 7B / 40B tokenizer进行了标记。
Falcon-40B是在384个A100 40GB GPU上进行训练的,使用了3D并行策略(TP=8,PP=4,DP=12)与ZeRO相结合。
训练超参数Hyperparameter | Value | Comment |
---|---|---|
Precision | bfloat16 | |
Optimizer | AdamW | |
Learning rate | 1.85e-4 | 4B tokens warm-up, cosine decay to 1.85e-5 |
Weight decay | 1e-1 | |
Z-loss | 1e-4 | |
Batch size | 1152 | 100B tokens ramp-up |
训练始于2022年12月,历时两个月。
即将发表的论文。
查看 OpenLLM Leaderboard 获取初步结果。
Falcon-40B是一个因果解码器模型,使用因果语言建模任务(即预测下一个标记)进行训练。
该架构在GPT-3论文( Brown et al., 2020 )的基础上进行了广泛的改进,具有以下不同之处:
对于多查询,我们使用了一个内部变种,在每个张量并行度中使用独立的键和值。
Hyperparameter | Value | Comment |
---|---|---|
Layers | 60 | |
d_model | 8192 | |
head_dim | 64 | Reduced to optimise for FlashAttention |
Vocabulary | 65024 | |
Sequence length | 2048 |
Falcon-40B在AWS SageMaker上使用384个A100 40GB GPU进行训练,采用P4d实例。
软件Falcon-40B使用了自定义的分布式训练代码库Gigatron进行训练。它采用了3D并行方法,结合了ZeRO和高性能的Triton内核(FlashAttention等)。
即将发表的论文 ?。在此期间,您可以使用以下信息进行引用:
@article{falcon40b, title={{Falcon-40B}: an open large language model with state-of-the-art performance}, author={Almazrouei, Ebtesam and Alobeidli, Hamza and Alshamsi, Abdulaziz and Cappelli, Alessandro and Cojocaru, Ruxandra and Debbah, Merouane and Goffinet, Etienne and Heslow, Daniel and Launay, Julien and Malartic, Quentin and Noune, Badreddine and Pannier, Baptiste and Penedo, Guilherme}, year={2023} }
要了解有关预训练数据集的更多信息,请参阅? RefinedWeb paper 。
@article{refinedweb, title={The {R}efined{W}eb dataset for {F}alcon {LLM}: outperforming curated corpora with web data, and web data only}, author={Guilherme Penedo and Quentin Malartic and Daniel Hesslow and Ruxandra Cojocaru and Alessandro Cappelli and Hamza Alobeidli and Baptiste Pannier and Ebtesam Almazrouei and Julien Launay}, journal={arXiv preprint arXiv:2306.01116}, eprint={2306.01116}, eprinttype = {arXiv}, url={https://arxiv.org/abs/2306.01116}, year={2023} }
Falcon-40B按照Apache 2.0许可证发布。
falconllm@tii.ae