大语言模型上下文窗口初探(上)

由于篇幅原因,本文分为上下两篇,上篇主要讲解上下文窗口的概念、在LLM中的重要性,下篇主要讲解长文本能否成为LLM的护城河、国外大厂对长文本的态度。

1、什么是上下文窗口?

上下文窗口(context window)是指语言模型在进行预测或生成文本时,所考虑的前一个词元(token)或文本片段的大小范围。

在语言模型中,上下文窗口对于理解和生成与特定上下文相关的文本至关重要。较大的上下文窗口可以提供更丰富的语义信息、消除歧义、处理上下文依赖性,并帮助模型生成连贯、准确的文本,还能更好地捕捉语言的上下文相关性,使得模型能够根据前文来做出更准确的预测或生成。

早在去年10月上旬,Moonshot AI(月之暗面)的Kimi Chat问世,首个支持20万汉字输入,近期也将上下文窗口扩展到了200万汉字。反观国内大厂,也纷纷加入了长文本大战。百度文心一言声称本月会进行版本升级,支持200万-500万长度上下文;360智脑正在内测500万字,一完成就要入驻360AI浏览器;阿里的通义千问则一出手就是1000万字,且不用等就可以免费使用。

2、上下文窗口长度为何重要?

上下文长度是LLM的关键限制之一,对于语言大模型,其中一个重要用例是人们想要“将大量自定义数据输入LLM”(与公司或特定问题相关的文档,各种异构文本等),并询问有关此特定数据的问题,而不是LLM在训练期间接入一些来自互联网的抽象数据。


为了克服这一局限性,人们做了以下尝试:

  • 尝试总结技巧和复杂的链式提示。
  • 维护向量数据库以保留自定义文档的嵌入,然后通过相似性指标在它们之间展开“搜索”。
  • 尽可能使用自定义数据微调LLM(并非所有商业LLM都允许自定义微调,对开源LLM进行自定义微调并不常见)。
  • 为特定数据开发定制小型LLM(同样,这并非常规任务)

较大的上下文长度能够让已经很强大的LLM(用整个互联网数据训练的模型)查询用户的上下文和数据,以更强的个性化在完全不同的层面与你交互。所有这些都无需更改模型权重并能够“在内存中”即时“训练”。
 

总体而言,大型上下文窗口可让模型更加准确、流畅,提升模型创造力。这就好比是计算机的RAM,操作系统保留了所有应用程序的实时上下文,由于上下文长度充足,LLM可以像“推理计算机”一样,保留大量用户上下文。

为了让C端用户能够理解“长文本”这个技术名词,月之暗面创始人杨植麟用了更形象的比喻“支持更长的上下文”意味着大模型拥有更大的“内存”。这个世界已经被计算机、手机教育过了,每个普通人都有一个“简单粗暴”的认知,“内存大”就意味着这个手机或电脑配置更高、性能更牛、价格也更贵。


如何理解这句话?如果你把大模型当成一个和你对话的人,可以想象他和我们一样有短期记忆和长期记忆。长期记忆就是那些在大模型里的通过训练得到的向量和参数,你可以理解为这是它自身的知识库。而上下文就是短期记忆,当你想和他交流的时候,这些不在长期记忆中的新内容,乃至你们对话的全部过程必须以上下文为窗口提供给大模型,超过其上下文承载能力的部分,大模型就会忘掉。


GPT3.5-Turbo初版上下文窗口长度仅有4k token,也就是大概2000字,你和它对答超过两千字的内容它就基本记不住了,更别提让他记住复杂的文件了。在这种上下文环境中,可以说很难让LLM完成真正复杂,多步的操作,也无法处理文档等长格式。


为了让大模型能够做更多事,拓展上下文就成了各路大模型争相竞争的一个重要目标。作为OpenAI被公认的最强大对手,Antropic的大模型Claude的杀手锏就是长文本,其初代模型就支持100k token的上下文,直接可以处理5万字,使得不那么长的阅读分析任务足以在上下文限制中完成。这也使它一直在整体性能劣于OpenAI的情况下,总是能保有一群核心粉丝。


同时,长文本也能促进大模型基础能力的提升,前四个能力是大模型功能优化和拓展方面的,通过长文本去实现过去难以支持的功能,或增强过去支持很差的功能:

  1. 更好地理解文档。通过扩展LLM的上下文窗口,模型可以更好地捕捉文档中的长距离依赖和全局信息,从而提高摘要、问答等任务的性能。这是我们作为一般用户最经常要用的功能。
  2. 增强指代消解。更长的上下文窗口可以帮助模型更好地确定代词所指代的实体,从而提高指代消解的准确性。也就是说模型不会忘掉或搞混你们前面提到的“那个男人”,“那份文档”。
  3. 改进机器翻译。扩展上下文有助于更好地保留原文的语义,尤其是在专业术语、歧义词等方面,提高翻译质量。
  4. 增强few-shot学习能力。通过在扩展上下文中提供更多示例,LLM可以更好地进行few-shot学习,提高在新任务上的泛化能力。如今随着模型命令跟随的能力逐步增强,很多时候直接通过Prompt指令就可以让模型学到新的能力,比如做个英语教师,当个医生之类的。但这些功能描述会非常复杂,还需要举出例子帮助模型学习,长文本支持越好,在Prompt指令中能添加的例子就越多,模型就会学的越好。

另两项则是对模型基础功能的提升,因为现在的上下文增加模式除了RAG(检索增强生成)等引入外部存储的模式外,内生上下文提升都需要更改Transformer模型本身。因此在这个过程中模型的能力也会得到相应的提升,简单来说就是传统Transformer模型根本理解不了文本间隔比较远的内容间的联系,现在它能了,理解能力也就自然提升了。

  1. 提升大模型的语言理解和生成能力。更长的上下文有助于LLM更好地理解多轮对话、复杂文本中的语义,并生成更连贯、相关的响应。这对于对话系统、文本生成等应用很重要。
  2. 提高长文本推理和QA能力。扩展上下文使LLM能更好地处理涉及多文档、长文本的推理和QA任务。

在去年GPT4-Turbo还没有推出上下文长度128k版本的时候,OpenAI的开发者关系经理Logan Kilpatrick就曾经表示过,“上下文就是大语言模型的下一个关键突破”。从大语言模型的功能满足上看,也确实如此。


目前使用大语言模型的大多数人群,还是泛科技行业,有尝鲜能力的从业者、爱好者以及相关专业的学生,长文本处理能力毫无疑问是论文、深度研报、会议摘要这些有明确应用场景的刚需能力。

(上篇完)

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

MySQL操作DDL

目录 1.概述 2.数据库的增删改查 3.表的增删改查 3.1.创建和查看表结构 3.2.修改表 3.3.查看所有的表 3.4.删除表 4.用户 5.DDL在实际应用场景中的作用 5.1.数据库设计 5.2.数据库维护 ​​​​​​​5.3.数据库迁移或重置 ​​​​​​​5.4.优化性能 ​​​​​…

若依 ruoyi-vue 接口挂载获取Resources静态资源文件权限校验

解决小程序图片打包过大,放置后端,不引用ngnix、minio等组件,还能进行权限校验 package com.huida.web.controller.common.app;import com.huida.common.core.controller.BaseController; import com.huida.common.utils.file.FileUtils; imp…

C语言——#define的使用

#define定义常量 基本语法 #define name stuff //(#define)(变量名)(定义的数值) 这里记得,是不加分号的 定义常量(这里 就要涉及我们经常说的宏定义) 定义常量的使…

enqueue:oracle锁机制

实现锁的方式就是排队咯,那么排队就是有enqueue这么个结构来管理 管理锁的结构叫队列,即enqueue 所有和enqueue相关的函数都叫KSQ-- kernal service enqueue lock是从应用层面看到的锁,enqueue是oracle内部管理锁的一个结构。 可以用v$lock_…

复现ChatGLM-6B

ChatGLM-6B 是一个开源的、支持中英双语的对话语言模型,基于 General Language Model (GLM) 架构,具有 62 亿参数。结合模型量化技术,用户可以在消费级的显卡上进行本地部署(INT4 量化级别下最低只需 6GB 显存)。 项目代码https://github.com/THUDM/ChatGLM-6B 权重开放:…

【已解决】ZIP压缩文件如何设置密码?

ZIP是常用的压缩格式之一,对于重要的ZIP文件,我们还可设置密码保护,那ZIP压缩文件怎么设置密码呢?不清楚的小伙伴一起来看看吧! 给ZIP文件设置密码,我们需要用到支持ZIP格式的解压缩软件,比如7…

备战蓝桥杯---数论相关问题

目录 一、最大公约数和最小公倍数 二、素数判断 三、同余 四、唯一分解定理 五、约数个数定理 六、约数和定理 五、快速幂 六、费马小定理 七、逆元 一、最大公约数和最小公倍数 文章链接:最大公约数和最小公倍数 二、素数判断 文章链接:在J…

壁纸小程序Vu3(预览页面:弹窗)

1.展示跳转后的分类列表图片 classlist.vue <template><view class"classlist"><view class"content"><navigator class"item" v-for"item in 10"><image src"../../common/images/64.png" mode…

进口非洲鲜花为春节增姿添彩

发布时间&#xff1a;2023-01-16 文章来源&#xff1a;海关总署 图为&#xff1a;关员对进口鲜花实施查验作业 1月12日上午&#xff0c;3000枝产自肯尼亚的鲜花搭乘“内罗毕-长沙”CZ6044航班抵达长沙机场口岸。该批鲜花全部为玫瑰&#xff0c;包括花园玫瑰、奥斯…

Linux网卡IP地址配置错误的影响

在Linux系统中&#xff0c;网络配置是保持系统顺畅运行的关键一环。正确配置网卡的IP地址对于确保网络通信的准确性和效率至关重要。然而&#xff0c;如果在这个过程中发生错误&#xff0c;可能会带来一系列问题。让我们一起探讨一下&#xff0c;如果Linux网卡的IP地址配置错误…

RocketMQ的简单使用

这里需要创建2.x版本的springboot项目 导入依赖 <dependencies><dependency><groupId>org.apache.rocketmq</groupId><artifactId>rocketmq-spring-boot-starter</artifactId><version>2.2.3</version></dependency>&…

ChromeOS 中自启动 Fcitx5 和托盘 stalonetray

ChromeOS 更新的飞快&#xff0c;旧文章的方法也老是不好用&#xff0c;找遍了也没找到很好的可以开机自启动 Linux VM 和输入法、托盘的方法。 研究了一下&#xff08;不&#xff0c;是很久&#xff09;&#xff0c;终于找到个丑陋的实现。 方法基于 ChromeOS 123.0.6312.94…

带刻度透明PFA量筒耐强酸碱耐高温全氟烷氧基树脂量具

PFA量筒为上下等粗的直筒状&#xff0c;特氟龙量杯是上大下小的圆台形&#xff0c;底座均有宽台设计&#xff0c;保证稳定性&#xff0c;两者均可在实验室中作为定量量取液体的量具&#xff0c;上沿一侧有弧嘴设计&#xff0c;便于流畅地倾倒液体。 规格参考&#xff1a;5ml、…

蓝桥杯每日一题:公约数(gcd)

题目描述&#xff1a; 给定两个正整数 a 和 b。 你需要回答 q 个询问。 每个询问给定两个整数 l,r&#xff0c;你需要找到最大的整数 x&#xff0c;满足&#xff1a; x 是 a和 b 的公约数。l≤x≤r。 输入格式 第一行包含两个整数 a,b。 第二行包含一个整数 q。 接下来…

理解Go语言中的并发和并行

即使有多年的并发编程经验,有些开发人员也可能无法清楚地理解并发(concurrency)和并行(parallelism)之间的区别。下面我们以一个真实的例子来说明:一家咖啡店。 在这家咖啡店中,一名服务员负责接收订单并使用一台咖啡机进行准备。顾客下订单,然后等待他们的咖啡。 …

Gateway是什么?(SpringCloudAlibaba组件)

1、网关介绍 **网关(Gateway)又称网间连接器、协议转换器。网关在传输层上以实现网络互连&#xff0c;是最复杂的网络互连设备&#xff0c;仅用于两个高层协议不同的网络互连。**网关的结构也和路由器类似&#xff0c;不同的是互连层。网关既可以用于广域网互连&#xff0c;也可…

IP证书申请

目录 申请IP证书的基本条件&#xff1a; 申请和使用公网IP证书的过程&#xff1a; 为什么需要申请IP地址证书&#xff1f; 申请IP证书&#xff1a; IP证书又称公网IP地址证书&#xff0c;是一种特殊的SSL/TLS证书&#xff0c;其作用原理和普通的域名证书很像&#xff0c;域…

使用 Cloudflare 和全栈框架实现快速开发

去年 Cloudflare 发布了一系列新功能&#xff0c;使在 Cloudflare 上部署 Web 应用程序变得更加容易&#xff0c;我们看到 Astro、Next.js、Nuxt、Qwik、Remix、SolidStart、SvelteKit 和其他托管 Web 应用程序的大幅增长。 近日 Cloudflare 对这些 Web 框架的集成模块进行了重…

思诺流体邀您探索科技前沿2024年第13届生物发酵展

参展企业介绍 保定思诺流体科技有限公司是一家集研发、生产、销售于一体的高新技术企业。从事蠕动泵、蠕动泵软管、蠕动泵OEM产品、蠕动泵灌装系统等的研发、生产与销售。产品在科研实验室、化工、印刷、环保、水处理等领域得到了广泛应用。 “思诺”取自“Signal”的英…

Linux学习记录20——文件的隐藏权限

一.学习的内容 Linux系统中的文件除了具备一般权限和特殊权限之外&#xff0c;还有一种隐藏权限&#xff0c;即被隐藏起来的权限&#xff0c;默认情况下不能直接被用户发觉。既然叫隐藏权限&#xff0c;那么使用常规的ls命令肯定不能看到它的真面目。隐藏权限的专用设置命令是 …