自我们发布Llama 3.1
以来的两个月里,
我们对这些模型所产生的影响感到非常兴奋,其中包括
405B
— 第一个开放的前沿级 AI 模型。虽然这些模型非常强大,但我们认识到使用它们进行构建需要大量的计算资源和专业知识。我们也听说开发人员无法使用这些资源,但仍希望有机会使用 Llama 进行构建。正如 Meta 创始人兼首席执行官马克·扎克伯格今天在 Connect 上分享的那样,他们不必再等待了。今天,我们发布了 Llama 3.2,其中包括小型和中型视觉 LLM(11B 和 90B)以及适合特定边缘和移动设备的轻量级纯文本模型(1B 和 3B)。
从我们首次发布 Llama 到现在已经一年半了,我们在如此短的时间内取得了令人难以置信的进步。今年,
Llama 实现了 10 倍的增长
,成为负责任创新的标准。Llama 还在开放性、可修改性和成本效率方面继续保持领先地位,并且与封闭模型相比具有竞争力,甚至在某些领域处于领先地位。我们相信开放性推动创新,是正确的前进道路,这就是为什么我们继续与合作伙伴和开发者社区分享我们的研究成果并开展合作。
我们正在llama.com
和
Hugging Face
上提供 Llama 3.2 模型的下载
,同时也可以在我们广泛的合作伙伴平台生态系统上立即开发。合作伙伴是这项工作的重要组成部分,我们已经与 25 多家公司合作,包括 AMD、AWS、Databricks、Dell、Google Cloud、Groq、IBM、Intel、Microsoft Azure、NVIDIA、Oracle Cloud 和 Snowflake,以在第一天提供服务。对于 Llama 3.2 版本,我们还与设备合作伙伴 Arm、MediaTek 和 Qualcomm 合作,在发布时提供广泛的服务。从今天开始,我们还将向社区提供
Llama Stack
。有关最新版本的更多详细信息,包括有关欧洲
多式联运可用性的信息,可在
我们的可接受使用政策
中找到
。
认识 Llama 3.2
Llama 3.2 系列中最大的两个模型 11B 和 90B 支持图像推理用例,例如文档级理解(包括图表和图形)、图像字幕以及视觉基础任务(例如基于自然语言描述在图像中精确定位对象)。例如,一个人可以问一个问题,即他们的小企业去年哪个月的销售额最高,然后 Llama 3.2 可以根据可用的图表进行推理并快速提供答案。在另一个例子中,该模型可以使用地图进行推理并帮助回答问题,例如何时徒步旅行可能会变得更陡峭或地图上标记的特定路径的距离。11B 和 90B 模型还可以通过从图像中提取细节、理解场景,然后制作一两句话作为图像字幕来帮助讲述故事,从而弥合视觉和语言之间的差距。
轻量级 1B 和 3B 模型具有强大的多语言文本生成和工具调用功能。这些模型使开发人员能够构建个性化的设备代理应用程序,具有很强的隐私性,数据永远不会离开设备。例如,这样的应用程序可以帮助汇总最近收到的 10 条消息,提取操作项,并利用工具调用直接发送日历邀请以进行后续会议。
在本地运行这些模型具有两大优势。首先,由于处理是在本地完成的,因此提示和响应可以即时完成。其次,在本地运行模型可以保护隐私,因为不会将消息和日历信息等数据发送到云端,从而使整个应用程序更加私密。由于处理是在本地进行的,因此应用程序可以清楚地控制哪些查询保留在设备上,哪些查询可能需要由云端的更大模型来处理。
模型评估
我们的评估表明,Llama 3.2 视觉模型在图像识别和一系列视觉理解任务上与领先的基础模型 Claude 3 Haiku 和 GPT4o-mini 相媲美。3B 模型在遵循指令、总结、快速重写和工具使用等任务上的表现优于 Gemma 2 2.6B 和 Phi 3.5-mini 模型,而 1B 模型与 Gemma 相媲美。
我们对涵盖多种语言的 150 多个基准数据集进行了性能评估。对于视觉 LLM,我们根据图像理解和视觉推理的基准评估了性能。
视觉模型
作为首批支持视觉任务的 Llama 模型,11B 和 90B 模型需要支持图像推理的全新模型架构。
为了添加图像输入支持,我们训练了一组适配器权重,将预训练的图像编码器集成到预训练的语言模型中。适配器由一系列交叉注意层组成,这些层将图像编码器表示输入到语言模型中。我们在文本-图像对上训练了适配器,以使图像表示与语言表示对齐。在适配器训练期间,我们还更新了图像编码器的参数,但有意不更新语言模型参数。通过这样做,我们保持了所有纯文本功能不变,为开发人员提供了 Llama 3.1 模型的直接替代品。
我们的训练流程由多个阶段组成,从预训练的 Llama 3.1 文本模型开始。首先,我们添加图像适配器和编码器,然后在大规模噪声(图像、文本)对数据上进行预训练。接下来,我们在中等规模的高质量领域内和知识增强的(图像、文本)对数据上进行训练。
在后期训练中,我们使用与文本模型类似的方法,在监督微调、拒绝采样和直接偏好优化方面进行多轮对齐。我们利用 Llama 3.1 模型生成合成数据,在域内图像的基础上过滤和扩充问题和答案,并使用奖励模型对所有候选答案进行排名,以提供高质量的微调数据。我们还添加了安全缓解数据,以生成具有高安全水平的模型,同时保留模型的有用性
最终结果是一组可以同时接收图像和文本提示并深入理解和推理两者组合的模型。这是 Llama 模型向拥有更丰富代理能力迈出的又一步。
轻量级模型
正如我们在 Llama 3.1 中讨论的那样,可以利用强大的教师模型来创建性能更佳的小型模型。我们在 1B 和 3B 模型上使用了两种方法(修剪和提炼),使其成为首批能够高效适应设备的高性能轻量级 Llama 模型。
修剪使我们能够缩小 Llama 群中现有模型的大小,同时尽可能多地恢复知识和性能。对于 1B 和 3B 模型,我们采用了从 Llama 3.1 8B 中一次性使用结构化修剪的方法。这涉及系统地移除网络的某些部分并调整权重和梯度的大小,以创建一个更小、更高效的模型,同时保留原始网络的性能。
知识蒸馏使用较大的网络将知识传授给较小的网络,其理念是较小的模型使用教师可以获得比从头开始更好的性能。对于 Llama 3.2 中的 1B 和 3B,我们将 Llama 3.1 8B 和 70B 模型的对数合并到模型开发的预训练阶段,其中这些较大模型的输出(对数)被用作 token 级目标。修剪后使用知识蒸馏来恢复性能。
在后期训练中,我们使用与 Llama 3.1 类似的方法,通过在预训练模型的基础上进行几轮对齐来生成最终的聊天模型。每轮都涉及监督微调 (SFT)、拒绝采样 (RS) 和直接偏好优化 (DPO)。
在训练后,我们将上下文长度支持扩展到 128K 个 token,同时保持与预训练模型相同的质量。我们还参与了合成数据生成,经过仔细的数据处理和过滤以确保高质量。我们精心混合数据,以优化多项功能(如摘要、重写、指令遵循、语言推理和工具使用)的高质量。
为了让社区能够在这些模型上进行创新,我们与全球排名前两的移动片上系统 (SoC) 公司高通和联发科以及为
99
%
的移动设备提供基础计算平台的 Arm 密切合作。今天发布的权重基于 BFloat16 数值。我们的团队正在积极探索运行速度更快的量化变体,我们希望很快分享更多信息。
该演示基于未发布的量化模型。
该演示基于未发布的量化模型。
Llama Stack 发行版
7 月,我们发布了关于 Llama Stack API 的
评论请求
,这是一个用于规范工具链组件(微调、合成数据生成)的标准化接口,用于定制 Llama 模型和构建代理应用程序。参与度很高。
从那时起,我们一直在努力让 API 成为现实。我们为推理、工具使用和 RAG 构建了 API 的参考实现。此外,我们一直在与合作伙伴合作,使他们成为 API 的提供商。最后,我们引入了 Llama Stack Distribution,作为一种打包多个 API 提供商的方法,这些提供商可以很好地协同工作,为开发人员提供单一端点。我们现在与社区分享一种简化且一致的体验,使他们能够在多种环境中使用 Llama 模型,包括本地、云、单节点和设备上。