Jamba前生今世:1.5开源来袭

news2024/11/15 8:49:21

AI21服务于企业,为企业构建基础模型和AI系统以加速GenAI在生产中的使用。AI21 成立于2017年,已从NVIDIA、Intel、Google等公司共筹集了3.36亿美元。它是最早将生成式AI推向大众的公司之一,借助AI21平台,企业可以构建自己的生成式AI的应用程序和服务。

Jamba算是世界上第一款基于Mamba的生产级别的模型。近日AI21 Labs发布Jamba 1.5系列开放模型,包括Jamba 1.5 Mini和Jamba 1.5 Large,这些模型建立在新颖的SSM-Transformer架构之上,某种意义上也算是AI技术的突破。

Jamba 

Jamba 1.5创新的核心是其令人印象深刻的256K上下文窗口,这是目前最长上下文的开放模型。在单个实例中处理和理解如此大量信息的能力允许在各种任务中实现更细致、更全面和更准确的输出。Jamba 1.5 Mini可以在单个GPU上处理高达140K令牌的上下文长度。

AI21 Labs的原话是:“大多数其他模型声称具有较长的上下文窗口,但无法在其上下文窗口的上限处保持相同的性能质量,而Jamba 1.5系列在其 256K上下文窗口的整个跨度内保持其长上下文处理。”

能够有效处理很长的上下文模型对于几乎企业级生成式的应用程序都至关重要。除了彻底、精确地总结和分析冗长的文档外,长上下文模型还通过消除连续分块和重复检索的需要,大大提高了RAG和代理工作流程的质量,并降低了它们的成本。

上图为Jamba 1.5 Mini在2片A100 80GB GPU进行延迟评估, 而Jamba 1.5 Large则是在8块A100 80GB GPU上完成的,整体表现不错。下图为

上表是Jamba和其他模型整体参数规模和实际运行激活参数规模的对比。Jamba 1.5 Large算是巅峰之作,它虽然具备398B的总参数,然而运行时仅仅有94B的活跃参数。而Jamba 1.5 Mini具有52B的总参数和12B的活跃参数。<MoE!!> 

SSM-Transformer

Jamba 1.5基于混合SSM-Transformer构建,它结合了两种强大的AI 范式的优势:Mamba和Transformer。读者是否还记得Mamba系列?!Mamba为模型带来了卓越的效率和速度,而Transformer架构则在各种 NLP任务中保持高质量输出和稳健的性能。

在Jamba的这个版本中,AI21试验了Mamba-2,这是Mamba的更快和改进版本,它的性能分别优于Mamba和Transformers。在实验中如上图所示在混合架构中,Mamba-1+Attention组合比Mamba-2+Attention效果更好,因此本次在Jamba-1.5-Large中使用Mamba-1。

当然在这个过程中还发现混合架构的性能优于纯Mamba-2。通过推测可能是因为在 Mamba层之间交错有完整的Tranformer层时,Mamba-2相对于Mamba-1 的优势就不那么明显了,Mamba-2虽然可以具备更大状态存储能力,然而Mamba-1通过Transformer可以汇集来自整个上下文的信息。

上图为最早期的Jamba论文中Jamba Block的架构图。它为八层的架构,Mamba层和Transformer层的比例为7:1,每两层运用了MoE。

而Jamba-1.5-Large遵循相同的Jamba结构,但容量更大。它具有94B活动参数和398B总参数。它有9个区块,每个区块都有以下规格:

  • l=8,每块具有8层

  • a:m=1:7,这个比例是研究人员在对Jamba研究中发现的最佳的比例

  • e=2,每两层都使用MoE代替单个MLP

  • n=16,有16个专家,在每个Token上选择头部的两个,即K=2。

  • 隐藏维度为8192

  • Q为64头,KV为8头

ExpertsInt8

Jamba 1.5 Large 背后的关键创新之一是引入ExpertsInt8,这是一种专为专家混合 (MoE) 模型设计的新型量化技术。这种技术可以在A100 GPU 上使用,而FP8仅在H100上可以使用。当然这种技术最重要的特点如下:

  • 快速的量化过程,只需几分钟,而不是几小时或几天

  • 不依赖校准,增强了稳定性和易用性

  • 能够将 BF16 用于大型激活,在最重要的地方保持精度

  • 在 MoE 模型的 vLLM 量化技术中延迟最低,且不会牺牲质量

因为超过85%的模型权重在MoE层中,超过90%在 MoE或MLP层中,那么如何量化这些权重且同时仍然享受快速BF16内核的好处?研究人员将 MoE和MLP权重量化为INT8,将它们保存在INT8中,并在实际计算之前将它们返回BF16。

最重要的是,逆量化步骤直接发生在vLLM的 fused_moe内核内部。通过这种方式,逆量化过程增加的开销可以忽略不计,甚至导致比BF16更高的延迟。这个修改的fused_moe内核目前已经贡献给vLLM。

上图为不同量化技术比较,显示1024个令牌上下文和128个令牌解码的端到端延迟。ExpertsInt8的性能与FP8相似,但应用起来快速而简单,并且依旧享受BF16激活,最重要的是能够适用于FP8不可用的A100 GPU。

至于在一些通用基准的评测上,Jamba-1.5也获得不俗的表现。与同级别的模型相比,性能相似然而拥有更好的吞吐量和低延迟的能力。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2070901.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

菲菲更名宝贝:批量处理,文件命名不再繁琐

你是否有这样的经历&#xff1f;曾几何时&#xff0c;在堆积如山的文件中迷失方向&#xff0c;为了一个个手动重命名文件而加班到深夜&#xff1f;是否渴望有一种魔法&#xff0c;能瞬间让你的文件整理得井井有条&#xff0c;让繁琐的命名工作变得轻松愉快&#xff1f;那么&…

大数据毕业设计开题报告100例

文章目录 &#x1f6a9; 1 前言1.1 选题注意事项1.1.1 难度怎么把控&#xff1f;1.1.2 题目名称怎么取&#xff1f; 1.2 开题选题推荐1.2.1 起因1.2.2 核心- 如何避坑(重中之重)1.2.3 怎么办呢&#xff1f; &#x1f6a9;2 选题概览&#x1f6a9; 3 项目概览题目1 : 深度学习社…

前端网站优化-Brotli 压缩

杨绛先生说:“岁不声不响&#xff0c;你且不慌不忙。在凡俗的烟火里&#xff0c;愿以素心&#xff0c;阅来日方长。生活总是一地鸡毛&#xff0c;繁杂琐碎的日常&#xff0c;无力掌控的局面&#xff0c;以及猝不及防的变化&#xff0c;让日子多了几分慌张”。 市井长巷&#xf…

ssrf漏洞复现

环境搭建 zhuifengshaonianhanlu/pikachu: 一个好玩的Web安全-漏洞测试平台 (github.com) 直接将其复制到linux环境下拉取docker就行 我这里已经拉去过了&#xff0c;如果拉去速度慢话&#xff0c;可以在/etc/docker下的daemon.json中配置镜像加速 vim /etc/docker/daemon.js…

大模型学习笔记 - LLM 对齐优化算法 DPO

LLM - DPO LLM - DPO DPO 概述DPO 目标函数推导DPO 目标函数梯度的推导 DPO 概述 大模型预训练是从大量语料中进行无监督学习&#xff0c;语料库内容混杂&#xff0c;训练的目标是语言模型损失&#xff0c;任务是next token prediction&#xff0c;生成的token 不可控&…

MyBatis-Plus分页插件使用详解

一、简述 在使用mybatis开发项目的时候我们通常使用pagehelper来进行分页操作&#xff0c; 但是我们在使用MyBatis-Plus 开发时&#xff0c;MyBatis-Plus内置已经有分页功能了&#xff0c;其实不需要在额外引入pagehelper依赖了&#xff0c;而且两者同时引入有时候还会导致分页…

主流商品API接口在电商跨境电商企业应用/项目中的重要作用

618狂欢已经开启&#xff0c;为了获取更大利益&#xff0c;电商商家应使用价格接口系统。价格接口对电商商家有多方面的好处&#xff0c;主要体现在以下几个方面&#xff1a; 1、价格接口系统可以帮助品牌和商家实现更加科学和精准的定价策略。通过实时获取多个主流电商平台&a…

公众号里面的试卷怎么打印

经过我们的观察发现&#xff0c;微信公众号中的试卷通常有两种形式&#xff1a;图片和文档。如果试卷是以图片的形式嵌入在文章中作为配图&#xff0c;您只需点击图片并长按&#xff0c;选择“保存图片”到手机中。之后&#xff0c;您可以选择任何方便的方式完成打印。 不过&am…

ELK企业级日志分析系统(分布式文件系统与企业级应用)

一、ELK 概述 1、ELK简介 ELK平台是一套完整的日志集中处理解决方案&#xff0c;将 ElasticSearch、Logstash 和 Kiabana 三个开源工具配合使用&#xff0c; 完成更强大的用户对日志的查询、排序、统计需求。 ElasticSearch 是基于Lucene&#xff08;一个全文检索引擎的架构…

笔记整理—uboot启动过程(4)BL2干了什么及内存排布

uboot的第一阶段结束于start_armboot&#xff0c;第二阶段的uboot代码主要负责soc外部硬件&#xff08;inand、网卡、......&#xff09;、uboot本身构建&#xff08;uboot指令、环境变量、......&#xff09;最后进入命令行&#xff0c;等待命令然后倒数&#xff0c;等待bootc…

Pytest框架环境切换实战教程

测试人员每天都跟不同的环境打交道&#xff0c;比如线上环境&#xff0c;测试环境&#xff0c;预上线环境等等&#xff0c;那么作为自动化测试人员写的代码&#xff0c;我们也要具备能自由切换环境的能力&#xff0c;那么今天小编就给大家聊一下&#xff0c;如何能让我们python…

linux 安装kafaka单体服务

1.下载kafka的linux安装包 前往Apache Kafka官方网站下载页面&#xff08;Apache Kafkahttps://kafka.apache.org/downloads&#xff09;&#xff0c;选择最新稳定版的Kafka二进制分发文件&#xff0c;通常是以.tgz结尾的文件。 手动下载kafka_2.13-3.8.0.tgz到本地&#xff0…

Spring Boot 与 Spring Security 的集成及 OAuth2 实现

我的主页&#xff1a;2的n次方_ 在现代 Web 应用开发中&#xff0c;安全性是至关重要的。无论是保护用户的敏感数据&#xff0c;还是确保 API 只允许经过授权的请求访问&#xff0c;开发者都需要一个强大且灵活的安全框架来实现这些需求。Spring Security 作为 Spring 框架的…

MATLAB 生成指定范围、角度、厚度的含噪平面点云(77)

模拟生成点云并可视化显示,可以验证算法有效性,尤其是针对验证算法的某方面 MATLAB 生成指定范围、角度、厚度的含噪平面点云(77) 一、算法介绍二、使用步骤1.代码2.效果一、算法介绍 如题,模拟生成一组平面点云,含有噪声点,确定算法稳定性,可以指定生成平面的范围,厚…

混合A*算法

混合A*算法是一种改进版的A*算法&#xff0c;特别针对车辆动力学进行了优化。这种算法在经典A*的基础上引入了新的维度和概念&#xff0c;以生成更加实际可行的路径。 首先&#xff0c;混合A*算法不仅考虑x和y的位置&#xff0c;还引入了θ维度来表示车辆的朝向。这意味着搜索…

Unity视频播放插件-VideoPro(Windows)

Unity视频播放插件-VideoPro-windows &#x1f32e;介绍&#x1f364;使用方法&#x1f959;示例&#x1f333;rtsp&#x1f333;本地视频&#x1f333;网络视频 &#x1f32e;介绍 1.支持播放格式&#xff1a;rtsp、http、本地视频。 2.exe试用&#x1f308; 3.经测试i9 cpu 空…

【STM32开发笔记】搭建基于ST官方VSCode扩展的STM32开发环境

搭建基于ST官方VSCode扩展的STM32开发环境 一、安装软件1.1 安装VSCode1.2 安装STM32CubeMX1.3 安装STM32CubeCLT1.4 安装ST-MCU-FINDER-PC 二、安装插件2.1 安装 STM32 VS Code Extension 三、创建项目3.1 创建STM32CubeMX项目3.2 查阅原理图3.3 修改引脚功能3.4 生成CMake项目…

完成单位信息宣传工作考核投稿别输在投稿方法上

在信息化迅速发展的今天,弘扬社会正能量已经成为各个企事业单位的重要使命。作为单位的信息宣传员,我深知信息宣传工作的重要性和复杂性。每个月,我们都肩负着信息宣传考核的任务,需要在指定的媒体上投稿发表文章。然而,刚接触这一工作时,我却经历了一段艰辛而焦虑的历程。 我一…

ubuntu install Miniconda3(轻量级conda)

ubuntu install Miniconda3&#xff08;轻量级conda&#xff09; Miniconda3 是一个包含 conda 和 Python 的小型发行版&#xff0c;适合需要灵活定制python环境的用户。 一、下载Miniconda3 sudo apt-get update wget https://repo.anaconda.com/miniconda/Miniconda3-latest…

elasticsearch快照存储到linux本地路径或分布式存储系统mioio

一、使用linux本地目录做快照存储 1.编辑 elasticsearch.yml 文件&#xff0c;添加以下配置&#xff1a; path.repo: ["/path/to/your/backup/dir"]2.创建一个文件系统类型的快照仓库 PUT /_snapshot/my_local_repository {"type": "fs",&quo…