Falcon 180B 发布说明
TII 发布了 Falcon 180B,一个在 3.5 万亿个 token 上训练的 1800 亿参数开放访问语言模型。它为开放模型树立了新的最先进水平,与专有系统如 Google 的 PaLM-2 Large 的性能竞争。
模型架构与训练
Falcon 180B 是 Falcon 40B 的放大版本,融入了如多查询注意力等创新以增强可扩展性。该模型在最多 4,096 块 GPU 上同时使用 Amazon SageMaker 进行训练,总计约 700 万 GPU 小时。
关键训练规格包括:
- Dataset: 主要来自 RefinedWeb 的网页数据(约 85%),并辅以策划的对话、技术论文以及少量代码(约 3%)。
- Scale: 3.5 万亿个 token,这不到预训练数据集的一个周期。
- Compute: 比 Llama 2 大 2.5 倍,并且训练时使用了四倍的计算资源。
性能与基准测试
在发布时,Falcon 180B 在 Hugging Face Leaderboard 上的公开发布的预训练 LLM 中得分最高,为 67.85(后来更新为 67.85,根据更新的方法论,这使其与 Llama 2 70B 持平)。
技术性能亮点包括:
- 竞争地位: 在 MMLU 上,它的表现优于 Llama 2 70B 和 OpenAI 的 GPT-3.5。
- 专有平等性: 在多个基准测试中,它与 PaLM 2-Large 持平,包括 HellaSwag、LAMBADA、WebQuestions、Winogrande、PIQA、ARC、BoolQ、CB、COPA、RTE、WiC、WSC 和 ReCoRD。
- 量化稳定性: 在
torch.float16、8bit和4bit版本之间,评估指标保持相似,尽管 8-bit 推理被指出显著快于 4-bit。
部署硬件要求
运行 Falcon 180B 根据任务需要大量的计算资源。以下是特定配置的内存需求:
| 使用场景 | 方法 | 所需内存 | 示例硬件 |
|---|---|---|---|
| 训练 | 完整微调 | 5120GB | 8x 8x A100 80GB |
| 训练 | LoRA 与 ZeRO-3 | 1280GB | 2x 8x A100 80GB |
| 训练 | QLoRA | 160GB | 2x A100 80GB |
| 推理 | BF16/FP16 | 640GB | 8x A100 80GB |
| 推理 | GPTQ/int4 | 320GB | 8x A100 40GB |
实现与使用
Falcon 180B 通过 Transformers 4.33 版本集成到 Hugging Face 生态系统中。用户必须接受模型的许可证,该许可证在排除“托管使用”的限制条件下允许商业使用。
基础模型 vs. 聊天模型
- 基础模型: 一个用于进一步微调的预训练平台;它不遵循特定的提示格式,并且开箱即用时不设计用于生成对话响应。
- 聊天模型: 在大规模对话和指令数据集上进行微调。它使用特定的提示结构:
System: [optional system prompt]User: [user input]Falcon: [model response]
技术集成
集成通过 transformers 库中的 AutoModelForCausalLM 类实现。该模型支持 bfloat16 以获得高精度,并支持 bitsandbytes 进行 8-bit 和 4-bit 量化以降低硬件开销。