谷歌重磅:告别RAG,长上下文的大语言模型无需检索增强

news2024/10/7 4:36:30

当今人工智能领域正在经历一场静默的革命。随着大语言模型(LLM)的快速发展,它们不仅能够处理更长的上下文,还展现出惊人的推理和检索能力。

难道我们要告别基于LLM的检索增强生成(RAG)了吗?

结果还真是这样,最近谷歌发布专门用于评估长上下文语言模型的LOFT测试基准,该测试基准评估长上下文LLM在各种实际任务中的表现,包括信息检索、问答和数据库查询等。LOFT的测试结果显示,一些最先进的长上下文模型在某些任务上已经达到了与专门训练系统相近的性能水平。

这意味着什么?它可能预示着AI应用的一个新时代的到来。在不久的将来,我们或许只需要一个强大的语言模型,就能完成过去需要多个专门系统才能完成的复杂任务。不过,这项研究同样指出大语言模型存在一些缺陷亟待解决。

论文标题:
Can Long-Context Language Models Subsume Retrieval, RAG, SQL, and More?

论文链接:
https://arxiv.org/pdf/2406.13121

AI界的新挑战与机遇

近年来,大型语言模型(LLM)的快速发展为人工智能领域带来了新的机遇和挑战。这些模型展现出惊人的语言理解和生成能力,但如何充分利用它们处理长上下文信息的潜力成为了一个关键问题。

传统上,复杂的AI任务需要多个专门系统协作完成。这类系统通常需要独立的模块来进行信息检索、问答和数据库查询等任务。下图左侧展示了传统的任务处理方式,包含多个模态检索工具和RAG过程。

相比之下,上图右侧展示长上下文语言模型(LCLM)的潜力。LCLM可以直接接收包含文本、图像、音频等多模态信息的整个语料库作为输入。通过"语料库中的上下文"(CiC)提示方法,模型能够在统一的框架内执行各种任务,包括检索、推理和答案生成。这种方法大大简化了流程,并且避免了多个独立系统可能带来的错误累积问题。

然而,评估这些模型的性能并不容易。现有的方法往往局限于特定任务,难以全面测试长上下文模型的能力。为此,研究者提出了LOFT(Long-Context Frontiers)基准测试。

LOFT包含6种任务类型,涵盖35个数据集,横跨文本、视觉和音频多个模态。它能够动态调整上下文长度,从32k到1M个标记,使研究者能系统地评估模型在不同长度上下文中的表现。

LOFT的出现为评估和理解长上下文模型提供了一个标准化平台,为探索这些模型的潜力和局限性提供了重要工具。

LOFT:一个全面的长上下文语言模型评估基准

LOFT(Long-Context Frontiers)基准测试的设计旨在全面评估长上下文语言模型的能力。LOFT包含六大类任务,涵盖35个数据集,横跨文本、视觉和音频多个模态:

  • 文本检索:从大量文档中找出相关内容。

  • 视觉检索:根据文本描述找出相关图像或视频。

  • 音频检索:匹配文本与相应音频。

  • 检索增强生成(RAG):基于检索信息生成答案。

  • SQL类任务:理解自然语言查询并从数据库中提取信息。

  • 多示例上下文学习:从大量示例中学习并完成任务。

LOFT的一个关键特性是其可扩展性。它支持从32k到128k,再到1M个标记的上下文长度,使研究者能够系统地评估模型性能随上下文长度增加的变化。

为了充分发挥长上下文模型的潜力,研究团队提出了"上下文中的语料库"(Corpus-in-Context,CiC)提示方法。CiC提示包含四个主要部分:

  • 指令:为模型提供任务特定的指导。

  • 语料库格式化:将整个语料库直接放入上下文,每个候选项分配唯一ID。

  • 少样本示例:提供几个带有推理链的任务示例。

  • 查询格式化:按照示例格式呈现待评估的查询。

这种方法允许模型直接在给定的大规模语料库中进行检索和推理,简化了任务流程,并充分利用了长上下文模型的能力。

通过这种设计,LOFT不仅提供了一个标准化的评估平台,还为探索长上下文模型在实际应用中的潜力和局限性提供了宝贵的工具。

实验结果:惊喜与挑战并存

LOFT基准测试的结果既展示了长上下文模型的潜力,又揭示了一些挑战。研究团队评估了三个最先进的长上下文模型:Google的Gemini 1.5 Pro、OpenAI的GPT-4o和Anthropic的Claude 3 Opus。这些模型在各种任务上的表现如下表所示:

文本检索任务

在文本检索任务中,Gemini 1.5 Pro的表现尤为出色。在128k上下文长度的测试中,Gemini 1.5 Pro在多个数据集上达到了与专门训练的检索系统Gecko相当的性能。例如,在NQ数据集上,Gemini 1.5 Pro和Gecko都达到了0.99的Recall@1分数,而Gemini 1.5 Pro并没有经过专门的检索训练。

然而,随着上下文长度增加到1M标记,模型性能出现了一定程度的下降。这表明在处理超长上下文时,模型仍面临着挑战。

视觉和音频检索任务

在视觉检索任务中,Gemini 1.5 Pro同样表现出优异的性能表现。其在多个数据集上超越了专门的视觉-文本检索模型CLIP。例如,在OVEN数据集上,Gemini 1.5 Pro达到了0.93的分数,而CLIP只有0.79。

在音频检索任务上,Gemini 1.5 Pro在所有五种语言的FLEURS数据集上都达到了完美或接近完美的表现,超过了专门的音频检索模型。

检索增强生成(RAG)任务

在RAG任务中,长上下文模型展现出了强大的推理能力。在需要多跳推理的数据集(如HotpotQA和MusiQue)上,Gemini 1.5 Pro的表现超过了传统的RAG pipeline。例如,在HotpotQA上,Gemini 1.5 Pro得分为0.75,而专业的RAG系统得分为0.70。

SQL类任务

然而,在SQL类任务中,长上下文模型的表现相对较弱。

在Spider和SparC数据集上,专门的SQL系统的性能显著优于长上下文模型。这表明在处理需要复杂结构化推理的任务时,这些模型还有很大的改进空间。

提示策略的影响

研究还发现,提示策略对模型性能有显著影响。在文本检索任务中,金标准文档在语料库中的位置会影响模型的性能。

将少样本示例的金标准文档放在语料库末尾可以提高模型在该区域的注意力,从而提升整体性能。

多示例上下文学习

在多示例上下文学习任务中,长上下文模型展现出了良好的表现。在某些任务中(如LIB-dialog),模型的性能随着示例数量的增加而稳步提升。

然而,在一些推理密集型任务中(如BBH-tracking7),增加示例数量并未带来显著改善,这表明模型在复杂推理任务上仍有局限性。

总体而言,LOFT的实验结果既展示了长上下文模型的巨大潜力,特别是在检索和多模态任务中,又揭示了它们在处理超长上下文和复杂结构化推理任务时面临的挑战。

总结与展望

长上下文语言模型通过LOFT基准测试,展现出无需检索增强(RAG)的强大能力。这些模型在多项任务中表现卓越,特别是信息检索,预示AI应用可能告别RAG,迎来简化统一的新时代。尽管在处理超长上下文和复杂推理时仍面临挑战,但这一突破标志着向更强大的长上下文模型迈进了重要一步。

未来研究可能会聚焦于改进超长上下文处理技术、增强结构化推理能力、优化提示策略,以及探索与专门系统的结合。LOFT为这些研究方向提供了重要的评估工具。随着技术的不断进步,有望出现更加强大和灵活的AI系统,为各个领域带来革新性的变化。

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

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

相关文章

k8s公网集群安装(1.23.0)

网上搜到的公网搭建k8s都不太一致, 要么说的太复杂, 要么镜像无法下载, 所以写了一个简洁版,小白也能一次搭建成功 使用的都是centos7,k8s版本为1.23.0 使用二台机器搭建的, 三台也是一样的思路1.所有节点分别设置对应主机名 hostnamectl set-hostname master hostnamectl set…

一文搞懂 java 线程池:ThreadPoolExecutor 和 FixedThreadPool 原理

你好,我是 shengjk1,多年大厂经验,努力构建 通俗易懂的、好玩的编程语言教程。 欢迎关注!你会有如下收益: 了解大厂经验拥有和大厂相匹配的技术等 希望看什么,评论或者私信告诉我! 文章目录 一…

数据结构-排序算法篇

前言 在我们的生活中有很多东西都是有大小的,那么该如何去排序?假设有10个数字要你去排序,眼睛一扫就看出来了,那100、1000、10000要怎么去排?下面就为大家介绍各种排序的算法。 内容 1.冒泡排序 2.选择排序 3.插入…

某Dota/IM对战平台玩家助手、查看战绩下、胜率等

功能说明 WAR3游戏启动后,可以自动获取游戏双方的玩家列表,然后查询显示玩家的战绩及个人信息。附带查看玩家的战绩详情、最近游戏,查看对手及友方的战绩详情,据此推算出是否开黑、是否小号等信息 使用方法及运行效果 启动 查…

武汉星起航:贴心服务引领,跨境电商成功启航

在当今全球互联互通日益加强的背景下,跨境电商已经跃升为驱动国际贸易繁荣的重要引擎。作为全球电商领域的翘楚,亚马逊坚守公平、公正、透明的商业准则,为全球卖家搭建了一个值得信赖的交易平台。在这个平台上,众多卖家通过提升产…

如何指定Microsoft Print To PDF的输出路径

在上一篇文章中,介绍了三种将文件转换为PDF的方式。默认情况下,在Microsoft Print To PDF的首选项里,是看不到输出路径的设置的。 需要一点小小的手段。 运行输入 control 打开控制面板,选择硬件和声音下的查看设备和打印机 找到…

Django 多对多关系

多对多关系作用 Django 中,多对多关系模型的作用主要是为了表示两个模型之间的多对多关系。具体来说,多对多关系允许一个模型的实例与另一个模型的多个实例相关联,反之亦然。这在很多实际应用场景中非常有用,比如: 博…

Ceyear®VSA 信号分析软件

CeyearVSA 信号分析软件 CeyearVSA 矢量信号分析软件 CeyearVSA 矢量信号分析软件将信号分析体验和测试应用于桌面,帮助排查问题并优化设计。 CeyearVSA 矢量信号分析软件结合仪表支持在线解调分析,也可支持信号导入离线分析;软件具有多种…

搜狐新闻HarmonyOS版本 push 推送开发

背景 搜狐新闻作为HarmonyOS的合作伙伴,于2023年12月成功上架鸿蒙单框架应用市场,成为首批鸿蒙应用矩阵的一员。 新闻类推送作为应用的重要组成部分,在二期规划中,我们将推送功能列为核心功能模块。本文将推送集成过程中的步骤和…

oracle体系结构详解(实例+数据文件)

提示:主要总结oracle数据库:物理结构,逻辑结构,内存结构以及oracle进程 文章目录 Oracle服务器由(实例和数据库文件组成)1、实例2、数据文件1.oracle物理体系结构2.oracle数据库逻辑结构3oracle数据库内存结…

Log4j日志框架讲解(全面,详细)

Log4j概述 Log4j是Apache下的一款开源的日志框架,通过在项目中使用 Log4J,我们可以控制日志信息输出到控制台、文件、甚至是数据库中。我们可以控制每一条日志的输出格式,通过定义日志的输出级别,可以 更灵活的控制日志的输出过程…

【前端vue3】TypeScrip-类型推论和类型别名

类型推论 TypeScript里,在有些没有明确指出类型的地方,类型推论会帮助提供类型。 例如: 变量xiaoc被推断类型为string 如重新给xiaoc赋值数字会报错 let xiaoc "xiaoc"xiaoc 1111111111111如没有给变量指定类型和赋值&#xf…

阿里Nacos下载、安装(保姆篇)

文章目录 Nacos下载版本选择Nacos安装Windows常见问题解决 更多相关内容可查看 Nacos下载 Nacos官方下载地址:https://github.com/alibaba/nacos/releases 码云拉取(如果国外较慢或者拉取超时可以试一下国内地址) //国外 git clone https:…

RabbitMQ进阶篇

文章目录 发送者的可靠性生产者重试机制实现生产者确认 MQ的可靠性数据持久化交换机持久化队列持久化消息持久化 Lazy Queue(可配置~)控制台配置Lazy模式代码配置Lazy模式更新已有队列为lazy模式 消费者的可靠性消费者确认机制失败重试机制失败处理策略 业务幂等性唯一消息ID业…

编译libvlccpp

首先下载vlc sdk https://get.videolan.org/vlc/3.0.9.2/win64/vlc-3.0.9.2-win64.7z Cmake 生成libvlccpp vs2022工程文件 编译libvlccpp 编译出错需修改代码 错误信息: \VLC\sdk\include\vlc/libvlc_media.h(368): error C2065: “libvlc_media_read_cb”: 未…

Linux高并发服务器开发(九)Tcp状态转移和IO多路复用

文章目录 0 包裹函数1 多进程服务器流程代码 2 多线程服务器3 TCP状态转移半关闭心跳包 4 端口复用5 IO多路复用技术高并发服务器 6 select代码总结 7 POLLAPI代码poll相对select的优缺点 8 epoll(重点)API监听管道代码EPOLL 高并发服务器 9 Epoll的两种…

【MySQL备份】Percona XtraBackup加密备份实战篇

目录 1.前言 2.准备工作 2.1.环境信息 2.2.配置/etc/my.cnf文件 2.3.授予root用户BACKUP_ADMIN权限 2.4.生成加密密钥 2.5.配置加密密钥文件 3.加密备份 4.优化加密过程 5.解密加密备份 6.准备加密备份 7.恢复加密备份 7.1.使用rsync进行恢复 7.2.使用xtrabackup命令恢…

go Channel原理 (四)

Channel 设计原理 不要通过共享内存的方式进行通信,而是应该通过通信的方式共享内存。 在主流编程语言中,多个线程传递数据的方式一般都是共享内存。 Go 可以使用共享内存加互斥锁进行通信,同时也提供了一种不同的并发模型,即通…

终极指南:RNNS、Transformers 和 Diffusion 模型

一、说明 作为广泛使用这些工具和模型的人,我的目标是解开 RNN、Transformer 和 Diffusion 模型的复杂性和细微差别,为您提供详细的比较,为您的特定需求提供正确的选择。 无论您是在构建语言翻译系统、生成高保真图像,还是处理时间…

【ACM出版,马来西亚-吉隆坡举行】第四届互联网技术与教育信息化国际会议 (ITEI 2024)

作为全球科技创新大趋势的引领者,中国不断营造更加开放的科技创新环境,不断提升学术合作的深度和广度,构建惠及各方的创新共同体。这是对全球化的新贡献,是构建人类命运共同体的新贡献。 第四届互联网技术与教育信息化国际学术会议…