英文

Falcon-RW-1B

Falcon-RW-1B是由 TII 构建的1B参数因果解码器模型,使用 RefinedWeb 的350B令牌进行训练。它根据Apache 2.0许可证提供。

有关更多详细信息,请参阅? paper on arXiv

RefinedWeb是一个通过严格筛选和大规模去重建立的高质量网络数据集。仅在RefinedWeb上训练的Falcon-RW-1B模型与基于策展数据训练的可比模型相匹配或超过其性能。

⚠️ Falcon现在作为transformers库中的核心模型可用!要使用库内版本,请使用pip install git+https://github.com/huggingface/transformers.git安装最新版本的transformers,然后只需从from_pretrained()中删除trust_remote_code=True参数。

⚠️ 此模型旨在作为研究工件使用,研究仅使用网络数据进行训练的影响。如果您对最先进的模型感兴趣,我们建议使用Falcon- 7B / 40B ,它们都是在>1000亿个令牌上进行训练的。

from transformers import AutoTokenizer, AutoModelForCausalLM
import transformers
import torch

model = "tiiuae/falcon-rw-1b"

tokenizer = AutoTokenizer.from_pretrained(model)
pipeline = transformers.pipeline(
    "text-generation",
    model=model,
    tokenizer=tokenizer,
    torch_dtype=torch.bfloat16,
    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 LLMs需要PyTorch 2.0用于与transformers一起使用!

Falcon-RW-1B的模型卡片

模型细节

模型描述

  • https://www.tii.ae 开发;
  • 模型类型:因果解码器;
  • 语言:英语;
  • 许可证:Apache 2.0。

模型来源

用途

直接使用

了解大型语言模型的研究,特别是充分筛选和去重网络数据对大型语言模型(公平性、安全性、限制、能力等)属性的影响。

超出范围的使用

无法充分评估风险和减轻措施的生产使用;任何可能被认为是不负责任或有害的用例。

总的来说,对于与网络数据管道的研究无关的任何用途,我们建议使用Falcon- 7B / 40B

偏见、风险和限制

Falcon-RW-1B仅在英文数据上进行训练,无法适当地推广到其他语言。此外,由于它是在代表网络的大规模语料库上训练的,它将承载常见的在线刻板印象和偏见。

建议

我们建议Falcon-RW-1B的用户考虑针对特定的任务集对其进行微调,并在任何生产使用中采取保护措施和适当的预防措施。

如何开始使用该模型

from transformers import AutoTokenizer, AutoModelForCausalLM
import transformers
import torch

model = "tiiuae/falcon-rw-1b"

tokenizer = AutoTokenizer.from_pretrained(model)
pipeline = transformers.pipeline(
    "text-generation",
    model=model,
    tokenizer=tokenizer,
    torch_dtype=torch.bfloat16,
    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-RW-1B在 RefinedWeb 上训练了350B个令牌,这是一个高质量的经过筛选和去重的网络数据集。数据使用GPT-2分词器进行分词。

培训过程

Falcon-RW-1B使用32个A100 40GB GPU进行训练,仅使用数据并行性与ZeRO相结合。

培训超参数

超参数是从GPT-3论文( Brown et al., 2020 )中调整的。

Hyperparameter Value Comment
Precision bfloat16
Optimizer AdamW
Learning rate 2e-4 500M tokens warm-up, cosine decay to 2e-5
Weight decay 1e-1
Batch size 512 4B tokens ramp-up
速度、大小、时间

培训于2022年12月初进行,耗时约六天。

评估

详细的评估请参阅? paper on arXiv

技术规格

模型架构和目标

Falcon-RW-1B是一个因果解码器模型,用于训练因果语言建模任务(即预测下一个令牌)。

该架构改编自GPT-3论文( Brown et al., 2020 ),但使用了ALiBi( Ofir et al., 2021 )和FlashAttention( Dao et al., 2022 )。

Hyperparameter Value Comment
Layers 24
d_model 2048
head_dim 64 Reduced to optimise for FlashAttention
Vocabulary 50304
Sequence length 2048

计算基础设施

硬件

Falcon-RW-1B在AWS SageMaker上训练,使用32个A100 40GB GPU在P4d实例上进行训练。

软件

Falcon-RW-1B使用自定义的分布式训练代码库Gigatron进行训练。它使用了三维并行性方法,结合了ZeRO和高性能的Triton内核(FlashAttention等)。

引文

@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}
}

联系方式

falconllm@tii.ae