一文速览Llama 3:从Llama 3的模型架构到如何把长度扩展到100万——基于NTK-aware插值

💡 原文中文,约5100字,阅读约需12分钟。
📝

内容提要

Meta发布了Llama 3系列的大型语言模型,包括8B和70B两个版本。Llama 3在推理、代码生成和指令跟踪方面具有改进的能力。Llama 3使用超过15T个预训练数据进行训练,比Llama 2大七倍。训练数据包括来自30多种语言的高质量非英语数据。Llama 3还引入了新的数据过滤流程以确保高质量的训练。模型使用并行化技术和先进的训练堆栈进行训练以提高效率。Llama 3还包括创新的指令微调方法。发布还附带了新的信任和安全工具,包括Llama Guard 2和Cybersec Eval 2。Llama 3将在主要平台上提供,以进行大规模部署。未来版本的Llama 3将包括多模态能力、多语言对话能力、更长的上下文窗口和更强大的整体性能。

🔎

延伸解读

模型架构的延续与微调

Llama 3延续了Llama 2的decoder-only Transformer架构,并保留了分组查询注意力(GQA)和8K上下文长度。这些设计选择在保持推理效率的同时,也意味着开发者若需处理更长文本,仍需依赖LongLoRA等扩展技术。文章提到,作者所在团队在微调Llama 2时曾因4K上下文而不得不采用此类技术,这反映了Llama 3在上下文长度上的改进有限,但为后续版本预留了空间。

训练数据规模与质量并重

Llama 3使用了超过15T token的预训练数据,是Llama 2的七倍,其中代码数据量是四倍。数据来源全部公开,并包含超过5%的高质量非英语数据,覆盖30多种语言。Meta还开发了数据过滤管道,利用启发式过滤器、NSFW过滤器、语义去重和文本分类器(以Llama 2为分类器)来确保数据质量。这种对数据规模和质量的重视,是模型性能提升的关键因素之一。

训练效率的显著提升

通过结合数据并行、模型并行和管道并行,Llama 3在16K GPU上训练时实现了每个GPU超过400 TFLOPS的计算利用率。Meta还开发了先进的训练堆栈,自动进行错误检测和处理,并改进了硬件可靠性和静默数据损坏检测,使总体有效训练时间超过95%。这些优化使Llama 3的训练效率比Llama 2提高了约三倍,为大规模模型训练提供了工程参考。

指令微调与安全工具

Llama 3的指令微调结合了监督微调、拒绝采样、近端策略优化和直接策略优化。文章指出,SFT中prompt的质量以及PPO和DPO中偏好排名的质量对模型对齐性能影响巨大。通过偏好排名训练,模型在推理和编码任务上的表现得到提升,能够更好地选择正确的推理轨迹。此外,Meta发布了Llama Guard 2、Cybersec Eval 2和Code Shield等信任与安全工具,并更新了负责任使用指南,强调了系统级责任方法。

❓

Q&A

Llama 3的主要改进是什么?

Llama 3在推理、代码生成和指令跟踪方面有显著改进,并使用超过15T的预训练数据,提升了模型性能。

Llama 3的训练数据有什么特点?

Llama 3使用超过15T的预训练数据,比Llama 2大七倍,包含来自30多种语言的高质量非英语数据。

Llama 3如何提高训练效率?

Llama 3采用并行化技术和先进的训练堆栈,训练效率比Llama 2提高了约三倍。

Llama 3的指令微调方法有哪些创新?

Llama 3结合了监督微调、拒绝采样、近端策略优化和直接策略优化,提升了模型在聊天用例中的表现。

Llama 3将如何进行大规模部署?

Llama 3将在所有主要平台上提供,包括云提供商和模型API提供商,以便进行大规模部署。

未来的Llama 3版本会有哪些新功能?

未来版本将包括多模态能力、多语言对话能力、更长的上下文窗口和更强大的整体性能。

🏷️

标签

➡️

继续阅读