Jamba LLM模型:破解大型上下文窗口挑战的AI新星

  每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领域的领跑者。点击订阅,与未来同行! 订阅:https://rengongzhineng.io/

近年来,人工智能行业正越来越多地转向具有更长上下文窗口的生成式AI模型。然而,拥有大上下文窗口的模型往往需要消耗大量计算资源。但是,AI21 Labs的产品负责人Or Dagan声称,情况并非必然如此——而且他的公司发布的一款新型生成模型就是最好的证明。

所谓的上下文窗口,是指模型在生成输出(更多文本)之前所考虑的输入数据(例如文本)。小上下文窗口的模型倾向于忘记即便是非常近期的对话内容,而大上下文窗口的模型则避免了这一缺陷——而且,作为额外的好处,它们更好地掌握了输入数据的流动。

AI21 Labs推出的Jamba,这款全新的文本生成及分析模型,能够执行许多像OpenAI的ChatGPT和Google的Gemini等模型所能完成的任务。Jamba经过了公共及专有数据的混合训练,能够用英语、法语、西班牙语和葡萄牙语编写文本。

Jamba能够在单个GPU上处理高达140,000个标记,而这样的GPU至少需要有80GB的内存(例如高端的Nvidia A100)。这相当于大约105,000个单词,或者210页——一个相当大的小说。

相比之下,Meta的Llama 2拥有32,000标记的上下文窗口——按照今天的标准来看,这属于较小范围——但只需要一个约12GB内存的GPU就能运行。(上下文窗口通常以标记计量,标记是原始文本和其他数据的片段。)

乍一看,Jamba并不引人注目。市面上有大量免费可下载的生成式AI模型,从Databricks最近发布的DBRX到上文提到的Llama 2。

但Jamba独特之处在于其内部结构。它结合了两种模型架构:变压器(transformers)和状态空间模型(SSMs)。

变压器是执行复杂推理任务的首选架构,为像GPT-4和Google的Gemini等模型提供动力。它们有几个独特的特点,但变压器的定义特征远远是它们的“注意力机制”。对于每一条输入数据(例如一个句子),变压器评估每个其他输入(其他句子)的相关性,并从中汲取信息以生成输出(一个新句子)。

另一方面,SSMs结合了旧型AI模型的几个特性,如循环神经网络和卷积神经网络,创建了一种能够处理长序列数据的更具计算效率的架构。

当然,SSMs也有其局限性。但是,一些早期版本,包括普林斯顿和卡内基梅隆研究人员开源的模型Mamba,能够处理比它们的变压器基础对等物更大的输入,同时在语言生成任务上超越它们。

事实上,Jamba就是使用Mamba作为核心模型的一部分——Dagan声称,与同等大小的基于变压器的模型相比,它在处理长上下文方面的吞吐量提高了三倍。

“虽然SSM模型有一些初步的学术示例,但这是第一个商业级别、生产规模的模型,”Dagan在接受TechCrunch采访时说道。“这种架构,除了对社区进一步研究具有创新性和趣味性外,还为效率和吞吐量的提高打开了大门。”

现在,虽然Jamba已经以Apache 2.0许可发布,这是一种相对使用限制较少的开源许可,但Dagan强调这是一次研究发布,不意味着用于商业用途。该模型没有防止生成有害文本的安全措施,也没有解决潜在偏见的措施;一个经过微调、表面上“更安全”的版本将在未来几周内提供。

但Dagan坚称,即使在这个早期阶段,Jamba展示了SSM架构的潜力。

“这个模型的附加价值,既因为其大小,也因为其创新的架构,是它可以轻松适配到单个GPU上,”他说。“我们相信,随着Mamba获得更多调整,性能将进一步提高。”

Introducing Jamba: AI21's Groundbreaking SSM-Transformer Model

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

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

相关文章

JBPM学习(三):管理流程定义,java集合面试题

Test public void findAll() { // 查询 List list processEngine.getRepositoryService()// .createProcessDefinitionQuery()// .orderAsc(ProcessDefinitionQuery.PROPERTY_KEY)//排序条件 //.count()查询出总数量 //.page(0, 100)分页,取出前100条记录 …

flask-(数据连接池的使用,定制命令,信号的使用,表关系的建立和查询)

文章目录 连接池实例flask定制命令flask 缓存的使用flask信号的使用sqlalchemy原生操作sqlalchemy操作表flask orm操作表一对多的增加和跨表查询 (一对一只需要关联字段加上 ,uniqueTrue)多对多关系的增加和查询多对多基本的增删改查 连接池 import pymy…

axios封装,请求取消和重试,请求头公共参数传递

axios本身功能已经很强大了,封装也无需过度,只要能满足自己项目的需求即可。 常规axios封装,只需要设置: 实现请求拦截实现响应拦截常见错误信息处理请求头设置 import axios from axios;// 创建axios实例 const service axios…

Qt主窗口 之:状态栏(QStatusBar)

成员函数 原文链接:https://blog.csdn.net/techenliu/article/details/133687883 1)void setText(const QString &text) 设置状态栏的文本。参数text是要显示的消息文本。 2)QString text() const 返回当前状态栏的文本。 3&#xff0…

【漏洞复现】WordPress Plugin LearnDash LMS 敏感信息暴漏

漏洞描述 WordPress和WordPress plugin都是WordPress基金会的产品。WordPress是一套使用PHP语言开发的博客平台。该平台支持在PHP和MySQL的服务器上架设个人博客网站。WordPress plugin是一个应用插件。 WordPress Plugin LearnDash LMS 4.10.2及之前版本存在安全漏洞&#x…

The Morning Star

题目描述 本题有多组数据。 给定 n 个点,第 i 个点的坐标为 xi​,yi​。 现需要将星星和指南针放在任意两个点上,使得星星在指南针的正北、正东、正西、正南、正东南、正东北、正西南或正西北方向,求一共几种放法。&#xff08…

遥感动态监测技术

很多人对动态监测和动态检测两个名词有疑惑。我们可以这样理解,动态监测是一个广义的名词,泛指数据预处理、变化信息发现与提取、变化信息挖掘与应用等,以对整个流程的叙述。动态检测是一个狭义的名词,主要指部分数据预处理、变化…

C++list的模拟实现

为了实现list&#xff0c;我们需要实现三个类 一、List的节点类 template<class T> struct ListNode {ListNode(const T& val T()):_pPre(nullptr),_pNext(nullptr),_val(val){}ListNode<T>* _pPre;ListNode<T>* _pNext;T _val; }; 二、List的迭代器…

JAVAEE之CSS

1.CSS 是什么&#xff1f; 层叠样式表 (Cascading Style Sheets). CSS 能够对网页中元素位置的排版进行像素级精确控制, 实现美化页面的效果. 能够做到页面的样式和结构分离. 1.1 CSS和HTML的区别 CSS&#xff0c;全称为层叠样式表(Cascading Style Sheets)&#xff0c;是…

RocketMQ(版本4.9.4)+RocketMQ_Dashbord环境搭建(生产者、消费者的前置环境搭建)

一、官方网站下载 RocketMQ源码包 https://rocketmq.apache.org/zh/docs/4.x/introduction/02quickstart 二、把rocketMQ上传到Linux环境下解压&#xff0c;编译&#xff0c;执行以下命令&#xff08;需要提前装jdk和maven并配置好环境变量&#xff09; unzip rocketmq-all-4…

学习java第二十九天

如何通过注解配置文件&#xff1f; Configuration 用于指定当前类是一个 spring 配置类&#xff0c;当创建容器时会从该类上加载注解&#xff0c;value 属性用于指定配置类的字节码。 ComponentScan 用于指定 Spring 在初始化容器时要扫描的包。basePackages 属性用于指定要扫…

AtCoder Beginner Contest 347 (ABCDEF题)视频讲解

A - Divisible Problem Statement You are given positive integers N N N and K K K, and a sequence of length N N N, A ( A 1 , A 2 , … , A N ) A(A_1,A_2,\ldots,A_N) A(A1​,A2​,…,AN​). Extract all elements of A A A that are multiples of K K K, divi…

计算机的组成原理

1.简单常识介绍 1.1认识一下计算机的真实相貌 1.2怎么通过电信号传二进制 工作原理 cpu的针脚也就跟我们的手指一样用来接收高低电频&#xff0c;来判断2进制数据 cpu和数据交互的原理 2.计算机系统 软件介绍 硬件的发展历史 电子管时代 晶体管时代 中小规模集成电路 大规模…

C#(winform) 调用MATLAB函数

测试环境 VisualStudio2022 / .NET Framework 4.7.2 Matlab2021b 参考&#xff1a;C# Matlab 相互调用 Matlab 1、编写Matlab函数 可以没有任何参数单纯定义matlab处理的函数&#xff0c;输出的数据都存在TXT中用以后期读取数据 function [result,m,n] TEST(list) % 计算…

Uibot6.0 (RPA财务机器人师资培训第6天 )发票验真机器人案例实战

类似于小北的这篇博客&#xff1a;Uibot (RPA设计软件&#xff09;Mage AI智能识别&#xff08;发票识别&#xff09;———课前材料五_uibot 添加mageai-CSDN博客https://blog.csdn.net/Zhiyilang/article/details/135591297?spm1001.2014.3001.5501训练网站&#xff1a;泓江…

Vue3之defineModel

随着vue3.4版本的发布&#xff0c;defineModel也正式转正了。它可以简化实现父子组件之间的双向绑定&#xff0c;也是目前官方推荐的双向绑定实现方式。 1.vue3.4的实现双向绑定 大家应该都知道v-model只是一个语法糖&#xff0c;实际就是给组件定义了modelValue属性和监听up…

Linux终端命令工具screen入门

screen是linux里可以进行后台保持Terminal交互的工具&#xff0c;日常工作需要多个会话窗口或者恢复窗口时screen很有帮助 screen的功能大体有三个&#xff1a; 会话恢复&#xff1a;**只要Screen本身没有终止&#xff0c;在其内部运行的会话都可以恢复。**这一点对于远程登录的…

电流镜恒流源简介

目录 工作原理 设计要点 应用场景 初步想法&#xff0c;为参加活动先占贴&#xff08;带家人出去玩没时间搞~~&#xff09;&#xff0c;后面优化 电流镜恒流源是一种利用电流镜原理设计的电路&#xff0c;它可以提供恒定的电流输出&#xff0c;不受负载变化或电源电压波动的…

使用Docker搭建SABnzbd

SABnzbd是一款开源的Usenet下载客户端&#xff0c;它能够高效地从Usenet服务器下载NZB文件或者通过NNTP协议下载文章。SABnzbd支持多个同时下载的任务&#xff0c;能够自动处理下载完成后的文件&#xff0c;如解压缩、分类存储等&#xff0c;并且具有Web界面&#xff0c;方便用…

Linux:ip协议

文章目录 ip协议基本认识ip协议的报头 ip协议基本认识 前面对于TCP的内容已经基本结束了&#xff0c;那么这也就意味着在传输层也已经结束了&#xff0c;那么下一步要进入的是的是网络层&#xff0c;网络层中也有很多种协议&#xff0c;这里主要进行解析的是ip协议 前面的TCP…