当前位置: 首页 > news >正文

Llama系列上新多模态!3.2版本开源超闭源,还和Arm联手搞了手机优化版,Meta首款多模态Llama 3.2开源!1B羊驼宝宝,跑在手机上了

Llama系列上新多模态!3.2版本开源超闭源,还和Arm联手搞了手机优化版,Meta首款多模态Llama 3.2开源!1B羊驼宝宝,跑在手机上了!

在这里插入图片描述

在多模态领域,开源模型也超闭源了!

就在刚刚结束的Meta开发者大会上,Llama 3.2闪亮登场:

这回不仅具备了多模态能力,还和Arm等联手,推出了专门为高通和联发科硬件优化的“移动”版本。

具体来说,此次Meta一共发布了Llama 3.2的4个型号:

110亿和900亿参数的多模态版本

10亿参数和30亿参数的轻量级纯文本模型

官方数据显示,与同等规模的“中小型”大模型相比,Llama 3.2 11B和90B表现出了超越闭源模型的性能。

尤其是在图像理解任务方面,Llama 3.2 11B超过了Claude 3 Haiku,而90B版本更是能跟GPT-4o-mini掰掰手腕了。

而专为端侧打造的3B版本,在性能测试中表现也优于谷歌的Gemma 2 2.6B和微软的Phi 3.5-mini。

如此表现,着实吸引了不少网友的关注。

有人兴奋地认为,Llama 3.2的推出可能再次“改变游戏规则”:

端侧AI正在变得越来越重要。

首个视觉🦙
有关Llama 3.2具体能做什么,这次官方也释出了不少demo。

先看个汇总:Llama 3.2 11B和90B支持一系列多模态视觉任务,包括为图像添加字幕、根据自然语言指令完成数据可视化等等。

在这里插入图片描述

举个🌰,丢给Llama 3.2一张图片,它能把图片中的元素一一拆解,告诉你详细的图片信息:
在这里插入图片描述

同样,也可以反过来根据文字指令找出符合用户需求的图片。

在这里插入图片描述

Llama 3.2 11B和90B也是首批支持多模态任务的Llama系列模型,为此,Meta的研究人员打造了一个新的模型架构。

在Llama 3.1的基础之上,研究人员在不更新语言模型参数的情况下训练了一组适配器权重,将预训练的图像编码器集成到了预训练的语言模型中。

这样,Llama 3.2既能保持纯文本功能的完整性,也能get视觉能力。

训练过程中,Llama 3.2采用图像-文本对数据进行训练。训练分为多个阶段,包括在大规模有噪声数据上的预训练,和更进一步在中等规模高质量领域内和知识增强数据上的训练。

在后训练(post-training)中,研究人员通过监督微调(SFT)、拒绝采样(RS)和直接偏好优化(DPO)进行了几轮对齐。

专为端侧打造的“小”模型
至于1B和3B这两个轻量级模型,目的更加清晰:

随着苹果Apple Intelligence的推出,对于电子消费市场而言,手机等终端上的生成式AI已经成为标配。

而脱离云端独立运行在终端上的模型,无论是从功能还是从安全的角度,都是终端AIGC落地的关键。

在这里插入图片描述

Llama 3.2 1B和3B模型由Llama 3.1的8B和70B模型剪枝、蒸馏得到。

可以简单理解为,这俩“小”模型是Llama 3.1教出来的“学生”。

Llama 3.2 1B和3B仅支持文本任务,上下文长度为128K。来自Meta合作方Arm的客户业务线总经理Chris Bergey认为:

明年初甚至今年年底,开发人员就会在应用程序中落地这两个型号的Llama 3.2。

它们拥有更好的效率,能在1W功率下或在8毫秒以内提供答案。

不少网友也为此点赞:

Llama 3.2的轻量级模型能真正改变AI在手机和其他设备上的应用。

Meta首席技术官对Llama 3.2的发布,做了两大亮点总结:

首个既能识别图像,又能理解文本的多模态模型。最重要的是,能够媲美闭源模型

超轻量1B/3B模型,解锁更多终端设备可能性

11B和90B这两款模型,不仅支持图像推理场景,包括图表和图形在内的文档级理解、图像描述以及视觉定位任务,而且还能基于现有图表进行推理并快速给出回答。
比如,你可以问「去年哪个月销售业绩最好?」,Llama 3.2就会根据现有图表进行推理,并迅速给出答案。
轻量级的1B和3B模型则可以帮助不仅在多语言文本生成和工具调用能力方面表现出色,而且具有强大的隐私保护,数据永远不会离开设备。
之所以在本地运行模型备受大家的青睐,主要在于以下两个主要优势:
提示词和响应能够给人瞬间完成的感觉
应用程序可以清晰地控制哪些查询留在设备上,哪些可能需要由云端的更大模型处理

视觉模型

作为首批支持视觉任务的Llama模型,Meta为11B和90B型打造了一个全新的模型架构。
在图像输入方面,训练了一组适配器权重,将预训练的图像编码器集成到预训练的大语言模型中。
具体来说,该适配器:

由一系列交叉注意力层组成,负责将图像编码器的表示输入进大语言模型

通过在文本-图像对上的训练,实现图像表示与语言表征的对齐

在适配器训练期间,Meta会对图像编码器的参数进行更新,但不会更新大语言模型参数。
也就是说,模型的纯文本能力便不会受到任何影响,而开发者也可以将之前部署的Llama 3.1无缝替换成Llama 3.2。

在这里插入图片描述
具体的训练流程如下:
首先,为预训练的Llama 3.1文本模型添加图像适配器和编码器,并在大规模噪声图像-文本对数据上进行预训练。
然后,在中等规模的高质量领域内和知识增强的图像-文本对数据上,再次进行训练。
接着,在后训练阶段采用与文本模型类似的方法,通过监督微调、拒绝采样和直接偏好优化进行多轮对齐。并加入安全缓解数据,保障模型的输出既安全又实用。
这在期间,模型所使用的高质量微调数据,正是来自合成数据生成技术——使用Llama 3.1模型在领域内图像的基础上过滤和增强问题答案,并使用奖励模型对所有候选答案进行排序。
最终,我们就能得到一系列可以同时接受图像和文本提示词的模型,并能够深入理解和对其组合进行推理。
对此,Meta自豪地表示表示:「这是Llama模型向更丰富的AI智能体能力迈进的又一步」。
得到全新Llama 3.2加持的助手Meta AI,在视觉理解力上非常强。
比如,上传一张切开的生日蛋糕图片,并问它制作配方。
Meta AI便会给出手把手教程,从配料到加工方式,一应俱全。

轻量模型

通过利用剪枝(pruning)和蒸馏(distillation)这两种方法,Meta让全新的1B和3B模型,成为了首批能够高效地适应设备的、具有高能力的轻量级Llama模型。

剪枝能够减小Llama的规模,并尽可能地保留知识和性能

在此,Meta采用了从Llama 3.1 80亿参数模型进行单次结构化剪枝的方法。也就是,系统地移除网络的部分内容,并调整权重和梯度的幅度,从而创建一个更小、更高效的大语言模型,同时保留原始网络的性能。

完成剪枝之后,则需要使用知识蒸馏来恢复模型的性能。

知识蒸馏是让一个更大的网络给更小的网络传授知识

也就是,较小的模型可以借助教师模型的指导,获得比从头开始训练更好的性能。为此,Meta在预训练阶段融入了来自Llama 3.1 8B和70B模型的logits(模型输出的原始预测值),并将这些较大模型的输出则用作token级的目标。

后训练阶段,Meta采用了与Llama 3.1类似的方法——通过在预训练大语言模型基础上进行多轮对齐来生成最终的聊天模型。
其中,每一轮都包括监督微调(SFT,Supervised Fine-Tuning)、拒绝采样(RS,Rejection Sampling)和直接偏好优化(DPO,Direct Preference Optimization)。
在这期间,Meta不仅将模型的上下文长度扩展到了128K token,而且还利用经过仔细筛选的合成数据和高质量的混合数据,对诸如总结、重写、指令跟随、语言推理和工具使用等多项能力进行了优化。
为了便于开源社区更好地基于Llama进行创新,Meta还与高通(Qualcomm)、联发科(Mediatek)和Arm展开了密切合作。
值得一提的是,Meta这次发布的权重为BFloat16格式。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

Llama Stack发行版

Llama Stack API是一个标准化接口,用于规范工具链组件(如微调、合成数据生成等)以定制Llama大语言模型并构建AI智能体应用。
自从今年7月Meta提出了相关的意见征求之后,社区反响非常热烈。
如今,Meta正式推出Llama Stack发行版——可将多个能够良好协同工作的API提供者打包在一起,为开发者提供单一接入点。
这种简化且一致的使用体验,让开发者能够在多种环境中使用Llama大语言模型,包括本地环境、云端、单节点服务器和终端设备。

完整的发布内容包括:
Llama CLI:用于构建、配置和运行Llama Stack发行版

多种语言的客户端代码:包括Python、Node.js、Kotlin和Swift

Docker容器:用于Llama Stack发行版服务器和AI智能体API供应商

多种发行版:
单节点Llama Stack发行版:通过Meta内部实现和Ollama提供

云端Llama Stack发行版:通过AWS、Databricks、Fireworks和Together提供

设备端Llama Stack发行版:通过PyTorch ExecuTorch在iOS上实现

本地部署Llama Stack发行版:由Dell提供支持

系统安全

这次,Meta在模型安全方面主要进行了两个更新:
1.Llama Guard 3 11B Vision
它支持Llama 3.2的全新图像理解能力,并能过滤文本+图像输入提示词或对这些提示词的文本输出响应。
2. Llama Guard 3 1B
它基于Llama 3.2 1B,并在剪枝和量化处理之后,将模型大小从2,858MB缩减至438MB,使部署效率达到前所未有的高度。

在这里插入图片描述

参考链接:
[1]https://ai.meta.com/blog/llama-3-2-connect-2024-vision-edge-mobile-devices/
[2]https://www.cnet.com/tech/mobile/meta-and-arm-want-to-bring-more-ai-to-phones-and-beyond/#google_vignette
[3]https://news.ycombinator.com/item?id=41649763

相关文章:

Llama系列上新多模态!3.2版本开源超闭源,还和Arm联手搞了手机优化版,Meta首款多模态Llama 3.2开源!1B羊驼宝宝,跑在手机上了

Llama系列上新多模态!3.2版本开源超闭源,还和Arm联手搞了手机优化版,Meta首款多模态Llama 3.2开源!1B羊驼宝宝,跑在手机上了! 在多模态领域,开源模型也超闭源了! 就在刚刚结束的Met…...

系统缺失mfc140.dll的修复方法,有效修复错误mfc140.dll详细步骤

mfc140.dll丢失原因分析 1 系统文件损坏或病毒感染 系统文件损坏或被病毒感染是导致mfc140.dll丢失的常见原因之一。根据用户反馈和安全研究报告,大约有30%的mfc140.dll丢失案例与系统文件损坏或病毒感染有关。病毒、木马或其他恶意软件可能会破坏或删除系统中的m…...

移动app的UI和接口自动化测试怎么进行?

标题:从0到1:移动App的UI和接口自动化测试 导语:移动App的快速发展使得UI和接口自动化测试成为了确保应用质量的重要环节。本文将从零开始介绍移动App的UI和接口自动化测试的基本概念以及如何进行测试。 第一部分:了解移动App自动…...

Unity实现自定义图集(二)

以下内容是根据Unity 2020.1.0f1版本进行编写的   实现一个自定义图集,该怎么入手呢。首先简单思考一下unity是怎么实现图集的。 因为unity的ui部分是开源的,所以我们可以看到UGUI的源代码,另外,Unity的内置Shader也是开源的,可以直接在官网下载(在下载的网页选择Built…...

智能码二维码zhinengma.cn的动态数据更新是如何实现的?

智能码二维码的动态数据更新功能是通过其背后的技术原理实现的,主要依赖于服务器和二维码的链接结构。以下是具体介绍: 动态数据更新的实现原理 链接嵌入:动态二维码中嵌入了一个链接,该链接指向服务器上的数据源。数据请求与更…...

uniapp view怎么按长度排列一行最多四个元素,并且换行后,每一行之间都有间隔

推荐学习文档 golang应用级os框架,欢迎stargolang应用级os框架使用案例,欢迎star案例:基于golang开发的一款超有个性的旅游计划app经历golang实战大纲golang优秀开发常用开源库汇总想学习更多golang知识,这里有免费的golang学习笔…...

Android列表组件api

目录 1.ListView控件 1)android:divider 2)android:dividerHeight 3)android:entries 4)android:footerDividersEnabled 5)android:headerDividersEnabled 6)android:listSelector 7)android:sc…...

ToB项目身份认证AD集成(完):利用ldap.js实现与windows AD对接实现用户搜索、认证、密码修改等功能 - 以及针对中文转义问题的补丁方法介绍

在前面的两篇文章中,我详细的介绍了使用ldap与window AD服务集成,实现ToB项目中的身份认证集成方案,包括技术方案介绍、环境配置: ToB项目身份认证AD集成(一):基于目录的用户管理、LDAP和Active…...

SpringBoot+SeetaFace6搭建人脸识别平台

前言 最近多个项目需要接入人脸识别功能,之前的方案是使用百度云api集成,但是后续部分项目是内网部署及使用,考虑到接入复杂程度及收费等多种因素,决定参考开源方案自己搭建,保证服务的稳定性与可靠性 项目地址&…...

MySQL-06.DDL-表结构操作-创建

一.DDL(表操作) create database db01;use db01;create table tb_user(id int comment ID,唯一标识,username varchar(20) comment 用户名,name varchar(10) comment 姓名,age int comment 年龄,gender char(1) comment 性别 ) comment 用户表; 此时并没有限制ID为…...

在Visual Studio中使用CMakeLists.txt集成EasyX库的详细指南

EasyX库是一款专为Windows平台设计的轻量级C图形库,适合初学者和教育领域使用。结合Visual Studio和CMake工具链,用户可以轻松创建C项目,并集成EasyX库,实现丰富的图形编程效果。本文将详细介绍如何在Visual Studio中通过CMakeLis…...

CRC码计算原理

CRC8这里先以CRC8来说明CRC的计算过程1、CRC8在线计算器通过CRC在线计算器可以看见CRC8的特征多项式:x8+x2+x+1,初始值为0000’0000。CRC计算的核心是:反转+异或+移位(此处的CRC8没有涉及反转,见后面CRC16)。2、CRC8计算过程(1)、取值从高到低依次取需校验数据的位,这里…...

对高危漏洞“Docker Engine API is accessible without authentication”的修复

一.背景 之前文章maven项目容器化运行之1-基于1Panel软件将docker镜像构建能力分享给局域网_1panel 构建镜像-CSDN博客将1Panel软件的Doocker端口给到了局域网,安全组兄弟扫描认为是高危漏洞,可能导致攻击者获取对Docker主机的完全控制权。 二.修复的建…...

两种方式创建Vue项目

文章目录 引言利用Vue命令创建Vue项目准备工作安装Vue CLI创建Vue项目方法一:使用vue init命令方法二:使用vue create命令启动Vue项目 利用Vite工具创建Vue项目概述利用Vite创建项目启动项目 结语 引言 大家好,今天我将向大家展示如何使用不…...

深入理解 C/C++ 指针

深入理解 C 指针:指针、解引用与指针变量的详细解析 前言 在 C 编程语言中,指针 是一个非常强大且重要的概念。对于初学者来说,指针往往会让人感到困惑不解。本文将通过形象的比喻,帮助大家深入理解指针、解引用与指针变量的概念…...

有什么方法可以保护ppt文件不被随意修改呢?

在工作或学习中,我们常常需要制作powerpoint演示文稿,担心自己不小心改动了或者不想他人随意更改,我们可以如何保护PPT呢?下面小编就来分享两个常用的方法。 方法一:为PPT设置打开密码 为PPT设置打开密码是最直接有效…...

[C#]项目中如何用 GraphQL 代替传统 WebAPI服务

在现代应用程序开发中,传统的 WebAPI 通常使用 RESTful 设计风格,然而近年来 GraphQL 作为一种新的 API 查询语言逐渐获得广泛应用。GraphQL 允许客户端精确地查询所需的数据,减少了过度请求和不足请求的问题。本文将详细讨论在项目中用 Grap…...

对后端返回的日期属性进行格式化(扩展 Spring MVC 的消息转换器)

格式化之前 格式化之后: 解决方式 方式一 在属性中加上注解,对日期进行格式化 JsonFormat(pattern "yyyy-MM-dd HH:mm:ss")private LocalDateTime createTime;//JsonFormat(pattern &quo…...

踩坑记录-用python解析php Laravel8生成的jwt token一直提示 Invalid audience

import jwtdef token_required(token):with open(storage/oauth-public.key, r) as f:public_key f.read()try:# 尝试使用当前算法解码 token,同时指定受众decoded jwt.decode(token, public_key, algorithms[RS256], options{"verify_aud": False})# p…...

使用IOT-Tree Server制作一个边缘计算设备(Arm Linux)

最近实现了一个小项目,现场有多个不同厂家的设备,用户需要对此进行简单的整合,并实现一些联动控制。 我使用了IOT-Tree Server这个软件轻松实现了,不外乎有如下过程: 1)使用Modbus协议对接现有设备&#…...

(JAVA)B树和B+树的实现原理阐述

1. B 树 2-3树中,一个节点最多能有两个key,它的实现红黑树中适用对链接染色的方式去表达这两个key。下面将学习另一种树形结构B树,这种数据结构中,一个节点允许多余两个key的存在。 B树是一种树状数据结构,它能够存储…...

JC系列CAN通信说明

目录 一、CAN协议二、指令格式三、通信接线3.1、一对一通信3.2、组网通信 四、寄存器定义五、指令说明4、读取电源电压5、读取母线电流6、读取实时速度8、读取实时位置10、读取驱动器温度11、读取电机温度12、读取错误信息32、设定电流33、设定速度35、设定绝对位置37、设定相对…...

Ubuntu22——安装并配置局域网文件共享系统Samba

我们将共享目录设置为 /home/takway/share。以下是基于这个新目录的详细步骤: 在Ubuntu上安装并配置Samba 更新系统包列表 打开终端,执行以下命令来确保你的包列表是最新的: sudo apt update安装Samba 安装Samba及其相关工具: sud…...

HTML CSS 基础

HTML & CSS 基础 HTML一、HTML简介1、网页1.1 什么是网页1.2 什么是HTML1.3 网页的形成1.4总结 2、web标准2.1 为什么需要web标准2.2 Web 标准的构成 二、HTML 标签1、HTML 语法规范1.1基本语法概述1.2 标签关系 2、 HTML 基本结构标签2.1 第一个 HTML 网页2.2 基本结构标签…...

Nginx 使用 GeoIP 模块阻止特定国家 IP 地址的最佳实践

一、概述 为什么要阻止特定国家的 IP 地址? 在全球化的互联网上,网站和服务器可能会面对来自不同国家和地区的用户流量。虽然大多数情况下,我们希望网站能为全球用户提供服务,但在某些特定场景下,阻止来自特定国家的…...

vue3 + vite + cesium项目

GitHub - tingyuxuan2302/cesium-vue3-vite: 项目基于 vue3 vite cesium,已实现常见三维动画场,欢迎有兴趣的同学加入共建,官网服务器相对拉胯,请耐心等候...https://github.com/tingyuxuan2302/cesium-vue3-vite/tree/github...

DR模式 LVS负载均衡群集

DR模式 LVS负载均衡群集 部署共享存储关闭防火墙和核心防护下载,开启nfs服务创建共享文件夹和测试用的静态网页文件编辑nfs配置文件发布共享查看共享 配置 tomcat 服务器关闭防火墙和核心防护安装tomcat配置 tomcat 多实例 配置 nginx 服务器关闭防火墙和核心防护配…...

mysql复制表结构和数据

1.实例 #复制一张和test 一摸一样的表结构 CREATE TABLE test_one like test#往复制的表结构中复制数据 INSERT INTO test_one SELECT * FROM test#两者一起使用相当于 cv大法2.总结 完全实现了表结构和数据的复制,但是两条sql 得分两步执行 2.1 复制表结构 #复制…...

MFC扩展库BCGControlBar Pro v35.1新版亮点:改进网格控件性能

BCGControlBar库拥有500多个经过全面设计、测试和充分记录的MFC扩展类。 我们的组件可以轻松地集成到您的应用程序中,并为您节省数百个开发和调试时间。 BCGControlBar专业版 v35.1已全新发布了,这个版本改进网格控件的性能、增强工具栏编辑器功能等。 …...

Python列表操作详解

1 列表的基本概念 在Python中,列表是一种非常常用的数据结构,它可以存储任意类型的元素,并且支持多种操作。下面将详细介绍Python列表的各种操作。 2列表的操作方法 2.1创建列表 Python可以直接使用方括号[]来创建一个空列表。 示例&am…...