阿里发布大模型发布图结构长文本处理智能体,超越GPT-4-128k

随着大语言模型的发展,处理长文本的能力成为了一个重要挑战。虽然有许多方法试图解决这个问题,但都存在不同程度的局限性。最近,阿里巴巴的研究团队提出了一个名为GraphReader的新方法,通过将长文本组织成图结构,并利用智能体来探索这个图,成功提升了模型处理长文本的能力。

GraphReader的核心思想是将长文本分解成关键元素和原子事实,构建成一个图,然后让智能体在这个图中探索和推理。这种方法不仅能有效处理超长文本,还在多跳问答等复杂任务上取得了优异表现。与目前主流的长文本处理方法相比,GraphReader展现出更强的扩展性和鲁棒性。

这个创新方法为大语言模型处理长文本开辟了新的思路,有望在各种需要长文本理解的应用场景中发挥重要作用。接下来,让我们一起深入了解GraphReader的原理和优势。

图片

论文标题:

GraphReader: Building Graph-based Agent to Enhance Long-Context Abilities of Large Language Models

论文链接:

https://arxiv.org/pdf/2406.14550

长文本处理的机遇与挑战

随着人工智能技术的快速发展,大语言模型在各种自然语言处理任务中展现出惊人的能力。然而,处理长文本仍然是一个棘手的问题。现有的方法往往受限于固定的上下文窗口大小,难以有效处理超长文本或需要多步推理的复杂任务。

目前,解决长文本处理问题的方法主要包括模型层面的优化、检索增强生成(RAG)和基于智能体的方法。但这些方法都存在各自的局限性,如需要大量计算资源、难以捕捉长距离依赖关系,或在处理极长文本时效果下降。

面对这些挑战,阿里巴巴的研究团队提出了GraphReader方法。GraphReader通过将长文本组织成图结构,并利用智能体在图中探索,成功提升了模型处理长文本的能力。在LV-Eval数据集上,GraphReader在各种长度的文本(从16k到256k tokens)上都显著优于其他方法,包括GPT-4-128k。特别是在处理256k tokens长度的文本时,GraphReader仍然保持了较高的性能,而其他方法的性能则大幅下降。

图片

GraphReader为长文本处理提供了创新思路,通过智能组织信息和探索策略,有效突破了传统方法的限制。它不仅能处理超长文本,还在复杂的多跳问答任务中表现出色,为大模型处理长文本提供了一种新的方法。

GraphReader:图结构与智能体的完美结合

GraphReader方法的核心在于将长文本转化为图结构,并通过智能体在图中进行探索。GraphReader整体的流程如下图所示,整体可以分为图构建与图探索:

图片

这个过程始于图的构建。首先将长文本分割成最大长度为  的块,保留段落结构。对每个块,GraphReader提取原子事实和关键元素。

  • 原子事实是最小的、不可分割的事实单元,以简洁的句子形式呈现。

  • 关键元素则包括重要的名词、动词和形容词。

图片

构建完图后,GraphReader初始化智能体来探索这个图。

图片

  1. 智能体首先根据问题制定一个理性计划,这个计划会分步骤解析问题,确定需要收集的关键信息。

  2. 然后,智能体从所有节点中选择最相关的N个节点作为起点。

下图展示了智能体的探索过程,它会探索原子事实、文本块和相邻节点,不断更新笔记本中的信息。这个过程通过一系列预定义的函数来实现,如 read_chunkstop_and_read_neighborsearch_more 等。

图片

在探索过程中,智能体采用粗到细的策略,先阅读原子事实,再根据需要阅读原始文本块。当智能体探索原子事实时,它可以选择 read_chunk 函数来读取相关的文本块,或者选择 stop_and_read_neighbor 函数来探索相邻节点。

最后,GraphReader根据笔记本中记录的信息进行推理,生成最终的答案。这个过程结合了多路径探索的结果,能够处理复杂的多跳问题。智能体会分析每条探索路径的笔记本内容,考虑其他笔记中的补充信息,并使用多数投票策略解决任何不一致,最终综合所有可用信息生成答案。

图片

通过这种方法,GraphReader能够在有限的上下文窗口内灵活地处理长文本和复杂推理任务。它不仅能有效捕捉长距离依赖关系,还能在多跳问答等任务上展现出优异的性能。

GraphReader的长文本处理结果

GraphReader在多个实验中展现出了卓越的性能,证明了它在处理长文本和复杂推理任务方面的强大能力。

首先,在多跳问答任务上,GraphReader表现出色。在HotpotQA、2WikiMultihopQA和MuSiQue这三个数据集上,GraphReader均取得了最佳性能。特别值得注意的是,GraphReader仅使用4k的上下文窗口,就超越了包括GPT-4-128k在内的所有基线方法。例如,在HotpotQA数据集上,GraphReader的LR-1和LR-2评分分别达到84.3%和89.7%,而GPT-4-128k的评分为83.3%和88.3%。这一结果充分证明了GraphReader在处理复杂推理任务时的优势。

图片

在单跳长文本问答任务上,GraphReader同样表现优异。在NarrativeQA数据集上,GraphReader的LR-1和LR-2评分分别为65.0%和80.0%,显著高于其他方法。这证明了GraphReader不仅在多跳任务上有优势,在处理长文本的单跳问题上也表现出色。

GraphReader在超长文本处理上展现出较好的表现。在HotpotWikiQA-mixup数据集上,GraphReader在从16k到256k不同长度的文本上都保持了优异的性能。特别是在256k长度的文本上,GraphReader的LR-1和LR-2评分分别为30.0%和38.0%,而GPT-4-128k的评分仅为14.0%和16.0%。

图片

下图进一步展示了GraphReader在不同文本长度下的支持事实召回率。可以看到,随着文本长度的增加,所有方法的召回率都有所下降,但GraphReader的下降幅度最小。在256k长度的文本上,GraphReader仍然保持约60%的召回率,而其他方法的召回率大幅下降。

图片

为了深入理解GraphReader的工作机制,研究团队还进行了详细的功能调用分析和图结构统计。在不同类型的任务中,GraphReader会采用不同的功能调用模式。例如,在多跳问答任务中,读取相邻节点是最常用的操作,而在单跳问答任务中,读取文本块是最频繁的操作。这种灵活的调用策略使GraphReader能够适应不同类型的问题。

图片

下表展示了构建的图结构统计数据。可以看到,随着文本长度的增加,图中的节点数和原子事实数也相应增加。平均每个节点有约10个相邻节点,每个节点平均关联2个原子事实。这种结构使得GraphReader能够有效地组织和利用长文本中的信息。

图片

总的来说,这些实验结果充分证明了GraphReader在处理长文本和复杂推理任务方面的卓越能力。它不仅在各种长度的文本上都表现出色,而且在多跳和单跳问答任务中都展现出了显著的优势。GraphReader的这种"魔法"般的表现,为长文本处理领域带来了新的可能性。

GraphReader的潜力与未来方向

GraphReader为长文本处理开辟了一条创新之路。通过将长文本组织成图结构,并利用智能体进行探索,它成功突破了传统方法的限制。实验结果表明,GraphReader不仅能处理超长文本,还在复杂的多跳问答任务上表现出色,甚至超越了GPT-4-128k等强大模型。

尽管取得了显著成果,GraphReader仍有进一步改进的空间。未来的研究方向可以包括:优化图的构建和探索过程以提高效率;验证GraphReader在其他长文本处理任务中的效果;探索与其他先进自然语言处理技术的结合;以及开发开源版本以促进更广泛的应用和改进。

总的来说,GraphReader为解决长文本处理这一关键挑战提供了一个有前景的解决方案。随着进一步的研究和优化,它有望在各种需要长文本理解的应用场景中发挥重要作用,推动自然语言处理技术的进一步发展。

图片

图片

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

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

相关文章

Hi3861鸿蒙开发环境搭建

1.1 安装配置Visual Studio Code 打开Download Visual Studio Code - Mac, Linux, Windows选择下载安装Windows系统的Visual Studio Code。 下载后进行安装。Visual Studio Code安装完成后,通过内置的插件市场搜索并安装开发所需的插件如图所示: 1.2 安…

职场必看:如何用AI打造完美简历和面试准备

如何用AI打造完美简历和面试准备 1. 未来简历AI平台:开启个性化简历制作 想要在职场上留下深刻印象?首先,你需要一份出色的简历。未来简历AI平台让你通过简单的扫码和输入信息,快速开始简历制作。 2. 简历模板:选择适合你的岗位模板 面对众多简历模板,如何挑选?平…

符号同步、定时同步和载波同步

符号同步、定时同步和载波同步是通信系统中重要的同步技术,它们各自承担着不同的功能和作用。以下是对这三种同步技术的详细解释: 符号同步 定义: 符号同步,也称为定时恢复或时钟恢复,是指在数字通信系统中&#xff…

三相感应电机的建模仿真(3)基于ABC相坐标系Level2 S-Fun以及定子串不对称电抗起动过程仿真分析

1. 概述 2. 三相感应电动机状态方程式 3. 基于Level2 S-Function的仿真模型建立 4. 动态分析实例 5. 总结 6. 参考文献 1. 概述 三相感应电机自然坐标系下的数学模型是一组周期性变系数微分方程(其电感矩阵是转子位置角的函数,转子位置角随时间按正弦规律变化),将其用…

后端登录校验——Filter过滤器和Interceptor拦截器

一、Filter过滤器 前面我们学会了最先进的会话跟踪技术jwt令牌,那么我们要让用户使用某些功能时就要根据jwt令牌来验证用户身份,来决定他是否登陆了、让不让用户访问这个页面(或功能) 但是这样一来,没发一个请求&…

自动化测试之unittest框架详解

1、什么是Unittest框架? python自带一种单元测试框架 2、为什么使用UnitTest框架? >批量执行用例 >提供丰富的断言知识 >可以生成报告 3、核心要素 1).TestCase(测试用例) 2).TestSuite(测试套件) 3).Test…

Python采集京东标题,店铺,销量,价格,SKU,评论,图片

京东的许多数据是通过 JavaScript 动态加载的,包括销量、价格、评论和评论时间等信息。我们无法仅通过传统的静态网页爬取方法获取到这些数据。需要使用到如 Selenium 或 Pyppeteer 等能够模拟浏览器行为的工具。 另外,京东的评论系统是独立的一个系统&a…

DOM(文档对象模型)生命周期事件

前言 DOM 生命周期事件涉及到从创建、更新到销毁 DOM 元素的不同阶段。 ● 我们来看下当HTML文档加载完再执行JavaScript代码 document.addEventListener(DOMContentLoaded, function (e) {console.log(HTML parsed adn DOM tree built!, e); })● 除此之外,浏览…

【正点原子i.MX93开发板试用连载体验】项目计划和开箱体验

本文最早发表于电子发烧友:【   】【正点原子i.MX93开发板试用连载体验】基于深度学习的语音本地控制 - 正点原子学习小组 - 电子技术论坛 - 广受欢迎的专业电子论坛! (elecfans.com)https://bbs.elecfans.com/jishu_2438354_1_1.html 有一段时间没有参加电子发…

核密度估计KDE和概率密度函数PDF(深入浅出)

目录 1. 和密度估计(KDE)核密度估计的基本原理核密度估计的公式核密度估计的应用Python中的KDE实现示例代码 结果解释解释结果 总结 2. 概率密度函数(PDF)概率密度函数(PDF)是怎么工作的:用图画…

websocket推送消息,模拟推送

上一篇文章:什么是webSocket?以及它的一些相关理论知识 背景: MQTT 的发布/订阅模式与 WebSocket 的双向通信特性相结合。 通过将 MQTT 与 WebSocket 结合使用,可以在 Web 应用中实现高效、实时的消息传输,特别适用于…

来一组爱胜品1133DN PRO打印机的照片

刚拆箱的机器正面照片 打开前盖正准备要安装原装耗材 下图是原装耗材,硒鼓型号是DR2833、碳粉盒型号是TN2833,鼓组件打印页数12000页,TN2833标准容量粉盒打印页数1600页/5%覆盖率,TN2833H大容量粉盒打印页数3000页/5%覆盖率、TN2833L超大容量…

h5 video 标签播放经过 java 使用 ws.schild( jave、ffmpeg ) 压缩后的 mp4 视频只有声音无画面的问题排查记录

1. 引入 ws.schild MAVEN 依赖&#xff1a; <dependency><groupId>ws.schild</groupId><artifactId>jave-all-deps</artifactId><version>3.5.0</version></dependency><dependency><groupId>ws.schild</grou…

SQL 与 NoSQL 数据库:一场关于灵活性与结构的对话

文章目录 引言SQL 数据库&#xff1a;传统之光定义特征优势缺点 NoSQL 数据库&#xff1a;新时代的弹性定义特征优势缺点 何时选择 NoSQL&#xff1f;场景1&#xff1a;海量数据与高并发场景2&#xff1a;灵活性需求场景3&#xff1a;实时数据分析场景4&#xff1a;分布式系统 …

2024年7月1日,公布的OpenSSH的漏洞【CVE-2024-6387】

目录 ■概要 ■概要&#xff08;日语&#xff09; ■相关知识 openssh 和 ssh 有区别吗 如何查看 openssh的版本 漏洞描述 glibc Linux是什么 如何查看系统是不是基于 Gibc RHEL Linux 是基于Glibc的Linux吗 还有哪些 Linux版本是基于 GNU C库&#xff08;glibc&…

算力狂飙|WAIC 2024上的服务器

7月7日&#xff0c;2024世界人工智能大会暨人工智能全球治理高级别会议&#xff08;WAIC 2024&#xff09;在上海落下帷幕。这场备受瞩目的AI盛宴与热辣夏日碰撞&#xff0c;吸引了全球科技、产业及学术界的广泛关注&#xff0c;线下参观人数突破30万人次&#xff0c;线上流量突…

gitlab-runner安装部署CI/CD

手动安装 卸载旧版&#xff1a; gitlab-runner --version gitlab-runner stop yum remove gitlab-runner下载gitlab对应版本的runner # https://docs.gitlab.com/runner/install/bleeding-edge.html#download-any-other-tagged-releasecurl -L --output /usr/bin/gitlab-run…

通用后台管理(二)——项目搭建

目录 前言 一、安装vue-cli依赖 1、使用yarn下载vue-cli 2、使用npm下载 3、检查一下是否下载成功 二、创建项目 1、创建项目&#xff0c;my-app是项目名称 2、 这里选择vue 2&#xff0c;蓝色表示选中的。 3、启动项目 三、下载项目依赖 四、配置项目 1、修改esli…

【从零开始实现stm32无刷电机FOC】【理论】【3/6 位置、速度、电流控制】

目录 PID控制滤波单独位置控制单独速度控制单独电流控制位置-速度-电流串级控制 上一节&#xff0c;通过对SVPWM的推导&#xff0c;我们获得了控制电机转子任意受力的能力。本节&#xff0c;我们选用上节得到的转子dq轴解耦的SVPWM形式&#xff0c;对转子受力进行合理控制&…

STM32实战篇:按键控制LED

按键控制LED 功能要求 有两个按键&#xff0c;分别控制两个LED灯。当按键按下后&#xff0c;灯的亮暗状态改变。实物如下图所示&#xff1a; 由图可知&#xff0c;按键一端直接接地&#xff0c;故另一端所对应IO引脚的输入模式应该为上拉输入模式。 实现代码 #include "…