Meta 公司的 Llama 3 是开放获取的 Llama 系列的最新版本,现已在 Hugging Face 平台发布。看到 Meta 持续致力于开放 AI 领域的发展令人振奋,我们也非常高兴地全力支持此次发布。
Llama 3 提供两个版本:8B 版本适合在消费级 GPU 上高效部署和开发;70B 版本则专为大规模 AI 应用设计。每个版本都包括基础和指令调优两种形式。此外,基于 Llama 3 8B 微调后的 Llama Guard 新版本也已作为 Llama Guard 2(安全微调版本)发布。
在 Hub 上,可以找到这五个开放获取的模型(包括两个基础模型、两个微调模型以及 Llama Guard)。
本次发布的主要特性和集成功能包括:
- Hub 上的模型,并提供了模型卡片和许可证信息
- 🤗 Transformers 的集成
- 针对 Meta Llama 3 70B 的 Hugging Chat 集成
- 推理功能集成到推理端点、Google Cloud 和 Amazon SageMaker
- 在单个 GPU 上对 Llama 3 8B 进行微调的示例,采用 🤗 TRL
Llama 3 的推出标志着 Meta 基于 Llama 2 架构推出了四个新的开放型大语言模型。这些模型分为两种规模:8B 和 70B 参数,每种规模都提供预训练基础版和指令调优版。所有版本均可在各种消费级硬件上运行,并具有 8000 Token 的上下文长度。
- Meta-Llama-3-8b: 8B 基础模型
- Meta-Llama-3-8b-instruct: 8B 基础模型的指令调优版
- Meta-Llama-3-70b: 70B 基础模型
- Meta-Llama-3-70b-instruct: 70B 基础模型的指令调优版
此外,还发布了基于 Llama 3 8B 微调后的最新 Llama Guard 版本——Llama Guard 2。Llama Guard 2 是为生产环境设计的,能够对大语言模型的输入(即提示)和响应进行分类,以便识别潜在的不安全内容。
与 Llama 2 相比,Llama 3 最大的变化是采用了新的 Tokenizer,将词汇表大小扩展至 128,256(前版本为 32,000 Token)。这一更大的词汇库能够更高效地编码文本(无论输入还是输出),并有可能提升模型的多语种处理能力。不过,这也导致嵌入层的输入和输出矩阵尺寸增大,这是小型模型参数增加(从 Llama 2 的 7B 增至 Llama 3 的 8B)的主要原因之一。此外,8B 版本的模型现在采用了分组查询注意力(GQA),这是一种效率更高的表达方式,有助于处理更长的上下文。
Llama 3 模型在两个拥有 24,000 GPU 的集群上进行了训练,使用的是超过 15 万亿 Token 的新公共在线数据。我们无法得知训练数据具体细节,但可以推测,更大规模且更细致的数据策划是性能提升的重要因素。Llama 3 Instruct 针对对话应用进行了优化,结合了超过 1000 万的人工标注数据,通过监督式微调(SFT)、拒绝采样、邻近策略优化(PPO)和直接策略优化(DPO)进行训练。
关于许可条款,Llama 3 提供了一个宽松的许可证,允许重新分发、微调和创作衍生作品。Llama 3 许可证中新增了明确归属的要求,这在 Llama 2 中并未设定。例如,衍生模型需要在其名称开头包含“Llama 3”,并且在衍生作品或服务中需注明“基于 Meta Llama 3 构建”。详细条款,请务必阅读官方许可证。