大模型上下文实验之大海捞针和数星星

news2024/11/24 16:52:44

大模型上下文实验之大海捞针和数星星

  • 大海捞针和数星星
    • 大海捞针
      • 大海捞针测试简介
        • Greg Kamradt 的“大海捞针”实验
          • 实验步骤
          • 实验预期
      • ChatGPT-4 128K的实验结果
      • Claude-2.1 200K的实验结果
    • 数星星
      • 数星星简介
        • 多证据获取
        • 多证据推理
      • 实验结果
        • 多证据获取任务示例
        • 多证据推理任务示例
      • 数星星论文内容总结

大海捞针和数星星

大海捞针

github链接:
https://github.com/gkamradt/LLMTest_NeedleInAHaystack

大海捞针测试简介

大海捞针测试(灵感来自NeedleInAHaystack)是一种评估方法,通过在长文本中随机插入关键信息,形成大型语言模型(LLM)的Prompt。该测试旨在检测大型模型能否从长文本中提取出这些关键信息,从而评估模型处理长文本信息提取的能力。这种方法反映了LLM对长文本的理解基础能力。

测试方法是将一个与文本语料不相关的句子藏入文本语料中(例如,在整本《西游记》中插入一句只会在《红楼梦》里出现的话),然后通过自然语言提问的方式(Prompt)看大模型能否准确提取出这句话。

Greg Kamradt 的“大海捞针”实验
  • 大海:Paul Graham 的文章合集作为语料
  • :一句与语料无关的句子:“The best thing to do in San Francisco is eat a sandwich and sit in Dolores Park on a sunny day.”
  • 提问:“What is the most fun thing to do in San Francisco based on my context? Don’t give information outside the document.”
实验步骤
  1. 藏针:将藏起来的那句话分别放到文本语料的不同位置,从前到后共15处。
  2. 语料长度:选择从1K到128K(甚至200K)等量分布的15种不同长度的语料。
  3. 实验次数:进行225次(15×15)实验,以评估不同长度语料中提取关键信息的效果。
实验预期

期待模型输出的正确答案为:

The best thing to do in San Francisco is eat a sandwich and sit in Dolores Park on a sunny day.

通过这种测试方法,可以有效地评估大型语言模型在处理和理解长文本信息中的基础能力和提取关键信息的能力。

ChatGPT-4 128K的实验结果

请添加图片描述

Claude-2.1 200K的实验结果

在这里插入图片描述

数星星

github链接:
https://github.com/nick7nlp/Counting-Stars

数星星简介

数星星测试通过两个任务评估LLMs的长上下文能力:多证据获取和多证据推理。实验使用了多种长文本数据,中文版本使用《红楼梦》,英文版本使用Paul Graham的文章作为长文本。
在这里插入图片描述

多证据获取

在这里插入图片描述

多证据获取任务旨在测试大型语言模型(LLMs)在长上下文中从不同位置检索和区分证据的能力。具体来说,多证据获取任务的设计和实现如下:

  • 任务描述:给定一个长文本,其中随机插入多条描述小企鹅数星星的句子(如“The little penguin counted {number} ★”)。模型需要从长文本中检索所有这些句子并记录每个句子中的星星数量。
  • 挑战:模型需要在长上下文中定位这些分散的证据,处理更多的信息,并保持对重要证据的准确记忆。
  • 实验设置:实验使用不同长度的上下文(如4K到128K)和不同数量的证据句子(如32 64 128等)来测试模型的证据检索能力。
  • 评价标准:模型的表现通过其检索到的正确证据数量来评估。例如,如果模型正确识别并记录了所有插入的句子,则得分为1;如果漏掉某些句子或记录错误,则得分会相应降低。
多证据推理

多证据推理任务进一步考察LLMs在长上下文中不仅检索证据,还需要对检索到的证据进行推理和验证的能力。具体设计和实现如下:

  • 任务描述:与多证据获取任务类似,长文本中插入描述小企鹅数星星的句子,但这些句子中包含初始错误计数和修正后的正确计数(如“The little penguin counted {wrong number} ★ but found that a mistake had been made so the counting was done again and this time {number} ★ was counted correctly.”)。模型需要识别并记录最终正确的星星数量。
  • 挑战:模型不仅需要检索证据,还需要区分和验证正确的证据,排除错误信息。这要求模型具备更强的推理和判断能力。
  • 实验设置:实验同样使用不同长度的上下文和不同数量的证据句子来测试模型的推理能力。
  • 评价标准:模型的表现通过其对正确证据的识别和记录能力来评估。例如,如果模型能够正确识别并记录最终正确的星星数量,则得分为1;如果模型记录了错误的计数或无法区分正确与错误信息,则得分会相应降低。

实验结果

在这里插入图片描述

在多证据获取和多证据推理任务中的实验结果如下:

  • 多证据获取:实验表明,当上下文长度小于32K时,大多数模型表现良好。但随着上下文长度的增加,所有模型的表现均有所下降。这表明随着信息量的增加,模型在长上下文中保持对重要信息的准确记忆变得更加困难。
  • 多证据推理:相比多证据获取任务,多证据推理任务更加复杂,要求模型在检索证据的同时进行验证和推理。实验结果显示,所有模型在此任务中的表现均不理想,尤其是在长上下文情况下。这进一步表明,当前LLMs在处理复杂长上下文任务时仍有较大的改进空间。
多证据获取任务示例
长文本示例:
...(长文本内容)...
The little penguin counted 3...(长文本内容)...
The little penguin counted 7...(长文本内容)...
The little penguin counted 5...(长文本内容)...

任务要求:
请帮助小企鹅收集星星数量,例如:“little_penguin”: [3, 7, 5]。只需以JSON格式输出结果,不需要解释。

多证据推理任务示例
长文本示例:
...(长文本内容)...
The little penguin counted 4, but found that a mistake had been made, so the counting was done again, and this time 3 ★ was counted correctly.
...(长文本内容)...
The little penguin counted 8, but found that a mistake had been made, so the counting was done again, and this time 7 ★ was counted correctly.
...(长文本内容)...
The little penguin counted 6, but found that a mistake had been made, so the counting was done again, and this time 5 ★ was counted correctly.
...(长文本内容)...

任务要求:
请帮助小企鹅收集正确的星星数量,例如:“little_penguin”: [3, 7, 5]。只需以JSON格式输出结果,不需要解释。

通过这两个任务,Counting-Stars基准测试有效地评估了LLMs在长上下文中的证据检索和推理能力,为未来模型的改进提供了有价值的见解。

数星星论文内容总结

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

论文标题: Counting-Stars (★): A Multi-evidence, Position-aware, and Scalable Benchmark for Evaluating Long-Context Large Language Models

主要作者: Mingyang Song, Mao Zheng, Xuan Luo

摘要

近年来,大型语言模型(LLMs)在处理长上下文能力方面有了显著进展,但由于缺乏有效的长上下文评估基准,相关性能评估仍然有限。为解决这一问题,本文提出了一个多证据、位置感知且可扩展的长上下文LLMs评估基准——Counting-Stars。通过Counting-Stars测试,实验评估了多种长上下文LLMs(如GPT-4 Turbo, Gemini 1.5 Pro, Claude3 Opus, GLM-4, Moonshot-v1),结果表明Gemini 1.5 Pro在所有任务中表现最好,而GPT-4 Turbo在各种任务中表现最为稳定。

引言

大型语言模型(LLMs)在自然语言处理任务中展现出卓越的性能,但其短上下文窗口限制了处理更复杂任务的能力。尽管有研究扩展了LLMs的上下文窗口至128K tokens,但缺乏强有力的评估基准使得对这些模型在长上下文中的有效性评估仍然不足。

Counting-Stars(★)

Counting-Stars基准测试通过两个任务评估LLMs的长上下文能力:多证据获取和多证据推理。具体包括:

  • 多证据获取:测试LLMs从长上下文中检索不同位置的证据的能力。
  • 多证据推理:测试LLMs在检索信息时,过滤噪声或错误信息,并推理正确答案的能力。

实验设计

实验在多种长上下文LLMs上进行,包括GPT-4 Turbo, Gemini 1.5 Pro, Claude 3 Opus, GLM-4, Moonshot-v1。评估指标主要包括证据获取和推理的准确性。实验显示,当上下文长度超过32K时,所有模型的性能均有所下降,但这种下降并非绝对,某些模型在特定长度下表现反而更好。

讨论

  • 长度稳定性难题:同一任务在不同上下文长度下的表现波动较大,尤其在长上下文情况下更为明显。
  • 中间丢失现象:尽管之前研究发现部分LLMs在长上下文中段的性能下降,但本实验结果未能强有力地证明这一现象。

相关工作

此前研究主要通过困惑度和合成任务评估LLMs的长上下文处理能力。然而,这些方法未能全面反映LLMs在实际应用中的有效性。Counting-Stars作为第一个多证据、位置感知和可扩展的长上下文评估基准,为更深入研究LLMs的长上下文处理能力提供了新的方向。

结论

本文提出的Counting-Stars基准测试不仅揭示了当前长上下文LLMs的不足之处,还为未来研究提供了有价值的见解和指导。

限制

尽管本研究为长上下文LLMs的性能评估提供了新的视角,但仍需更多样化和广泛的测试来全面评估这些模型的能力。

具体问题回答

  • 论文的目标是什么? 论文旨在提出一个新的长上下文LLMs评估基准Counting-Stars,通过多证据获取和推理任务评估LLMs在处理长上下文中的表现,以填补现有评估方法的不足。
  • 论文的新颖性是什么? Counting-Stars是第一个结合多证据获取、位置感知和可扩展特性的长上下文评估基准,能够更准确和全面地评估LLMs在长上下文处理中的能力。
  • 主要假设是什么? 假设当前长上下文LLMs在证据获取和推理能力方面存在改进空间,通过Counting-Stars测试可以揭示这些模型的具体表现和不足。
  • 相关研究有哪些? 相关研究包括对长上下文LLMs困惑度和合成任务的评估,以及一些长上下文基准如LongBench, LooGLE, ∞Bench等。
  • 实验设计如何? 实验评估了多种长上下文LLMs在Counting-Stars测试中的表现,具体评估了它们在不同上下文长度下的证据获取和推理能力。
  • 使用的数据集是什么? 实验使用了多种长文本数据,中文版本使用《红楼梦》,英文版本使用Paul Graham的文章作为长文本。
  • 代码是否开源? 是的,代码和数据在GitHub上公开发布。
  • 假设如何验证? 通过在多个长上下文LLMs上进行Counting-Stars测试,验证了这些模型在不同上下文长度下的证据获取和推理能力。
  • 论文的贡献是什么? 提出了一个新的长上下文评估基准Counting-Stars,揭示了当前LLMs在处理长上下文中的具体表现和不足,并为未来研究提供了指导。
  • 未来的工作是什么? 未来的工作包括扩展Counting-Stars测试,评估更多著名LLMs,以及优化和改进评估方法。

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

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

相关文章

Adobe Premiere 视频编辑软件下载安装,pr 全系列资源分享!

Adobe Premiere以其强大的功能、灵活的操作和卓越的性能,成为视频编辑领域的佼佼者。 在剪辑方面,Adobe Premiere提供了强大而灵活的工具集。用户可以在直观的时间线上对视频进行精细的裁剪、剪辑和合并操作。无论是快速剪辑短片,还是精心打造…

洗地机哪个品牌比较好?四款好用靠谱的优质洗地机推荐

随着现代生活节奏的加快,家庭清洁成了一项耗时且繁琐的任务。洗地机凭借其智能化和高效的清洁能力,越来越受到大家的青睐。然而,市场上各种品牌和型号琳琅满目,让人眼花缭乱。为了帮助大家在众多选择中找到心仪的产品,…

真人模特+虚拟模特:阿里通义万相带你体验全新的卖家秀!

哈喽,大家好,我是木头左,致力于程序服务生活! 一、引言 在数字化和虚拟化的时代,正在经历一场由人工智能驱动的革命。这场革命不仅改变了的生活,也正在改变的商业环境。阿里巴巴集团是这场革命的重要参与者…

铁路定向声波冲击波智能驱鸟器

对于铁路系统来说,鸟类活动会带来潜在的安全隐患。铁路沿线的接触网、电杆等设备,是鸟类筑巢的理想场所,但鸟类在筑巢过程中,常常使用的树枝、铁丝等杂物,一旦掉落在接触网设备上,就可能造成带电体与接地侧…

6月19日(周三)A股行情总结:A股震荡收跌,恒生科技指数大涨3%,10年期国债期货转涨续创新高

内容提要 车路云概念延续昨日涨势,华铭智能20CM 3连板。贵金属及PEEK材料概念全日走强;港股有色金属及能源股走强,紫金矿业涨超3%,中石油涨超3%。国债期货午后全线转涨,10年期主力合约涨0.05%报104.925元,…

2024年一年一度的618正式结束了,苹果与华为手机销量看看谁是大赢家?

一年一度的618正式结束了,各品牌基本上都发布了相应的战报。但是要告诉大家一点看战报要看定语,定语最少的才是真正的第一。现在给大家汇总下京东平台的数据,看看谁是最大赢家,谁又是国产荣光。注:所有数据截至6月18日…

好用的linux一键换源脚本

最近发现一个好用的linux一键换源脚本&#xff0c;记录一下 官方链接 大陆使用 bash <(curl -sSL https://linuxmirrors.cn/main.sh)# github地址 bash <(curl -sSL https://raw.githubusercontent.com/SuperManito/LinuxMirrors/main/ChangeMirrors.sh) # gitee地址 …

C语言练习01-循环

一、打印五行五列的三角形 如下图&#xff1a; #include<stdio.h>int main() {for (int i 1;i < 5; i){for (int j i; j < 5; j){printf("*");}printf("\n");}return 0; }#include<stdio.h>int main() {for (int i 1;i < 5; i){f…

鸿蒙开发通信与连接:【@ohos.bluetooth (蓝牙)】

蓝牙 说明&#xff1a; 本模块首批接口从API version 7开始支持。后续版本的新增接口&#xff0c;采用上角标单独标记接口的起始版本。 蓝牙模块提供了基础的传统蓝牙能力以及BLE的扫描、广播等功能。 导入模块 import bluetooth from ohos.bluetooth;bluetooth.enableBluet…

6.S081的Lab学习——Lab7: Multithreading

文章目录 前言一、Uthread: switching between threads (moderate)提示&#xff1a;解析 二、Using threads (moderate)解析&#xff1a; 三、Barrier (moderate)解析&#xff1a; 总结 前言 一个本硕双非的小菜鸡&#xff0c;备战24年秋招。打算尝试6.S081&#xff0c;将它的…

讨论字符串(未完)

讨论字符串 C语言中的字符串C中的字符串string类的构造函数string类对象的容量操作string类对象元素访问及遍历迭代器 string类对象的修改操作 string类的模拟实现成员变量构造函数析构函数扩容/预留空间push_back遍历operator[]迭代器 append任意位置插入数据和删除数据查找元…

PID控制算法学习笔记分享

目录 一、参数设定 二、PID计算公式 三、位置式PID代码实现 四、增量式PID代码实现 五、两种控制算法的优缺点 六、PID算法的改进 一、参数设定 比例系数&#xff08;kp&#xff09;&#xff1a;P项的作用是根据当前误差的大小来产生一个控制量。它直接与误差成正比&#…

Tensorflow入门实战 T05-运动鞋识别

目录 一、完整代码 二、训练过程 &#xff08;1&#xff09;打印2行10列的数据。 &#xff08;2&#xff09;查看数据集中的一张图片 &#xff08;3&#xff09;训练过程&#xff08;训练50个epoch&#xff09; &#xff08;4&#xff09;训练结果的精确度 三、遇到的问…

0618,0619 ,指针,指针与数组,字符串

目录 第八章&#xff08;指针&#xff09;&#xff0c;第九章&#xff08;指针和数组&#xff09;&#xff0c;第十章&#xff08;字符串&#xff09;思维导图 作业1 逆序打印 解答&#xff1a; 答案&#xff1a; 作业2 判断回文 解答&#xff1a; 答案&#xff1a; …

PCB设计隐藏的陷进

1、BGA芯片的开窗和过油设计。 加工工艺中&#xff0c;范式过孔都需要盖油设计&#xff0c;实心焊盘需要开窗设计&#xff0c;坚决不能盖油。 2、通孔设计的互联连通性 比如H3芯片的wifi设计&#xff0c;实际上是没有联通的&#xff0c;虽然四层板的中间层有焊盘&#xff0c;但…

【C++ | 移动构造函数】C++11的 移动构造函数 详解及例子代码

&#x1f601;博客主页&#x1f601;&#xff1a;&#x1f680;https://blog.csdn.net/wkd_007&#x1f680; &#x1f911;博客内容&#x1f911;&#xff1a;&#x1f36d;嵌入式开发、Linux、C语言、C、数据结构、音视频&#x1f36d; ⏰发布时间⏰&#xff1a;2024-06-12 2…

Mamaba3--RNN、状态方程、勒让德多项式

Mamaba3–RNN、状态方程、勒让德多项式 一、简单回顾 在Mamba1和Mamba2中分别介绍了RNN和状态方程。 下面从两个图和两个公式出发&#xff0c;对RNN和状态方程做简单的回顾&#xff1a; R N N : s t W s t − 1 U x t &#xff1b; O t V s t RNN: s_t Ws_{t-1}Ux_t&…

前字节员工自爆:我原腾讯一哥们,跳槽去小公司做小领导,就签了竞业,又从小公司离职去了对手公司,结果被发现了,小公司要他赔80万

“世界那么大&#xff0c;我想去看看”&#xff0c;这句曾经火遍网络的辞职宣言&#xff0c;说出了多少职场人心中的渴望。然而&#xff0c;当我们真的迈出跳槽那一步时&#xff0c;才发现&#xff0c;现实远比想象中残酷得多。 最近&#xff0c;一起前字节跳动员工爆料的事件…

22种常用设计模式示例代码

文章目录 创建型模式结构型模式行为模式 仓库地址https://github.com/Xiamu-ssr/DesignPatternsPractice 参考教程 refactoringguru设计模式-目录 创建型模式 软件包复杂度流行度工厂方法factorymethod❄️⭐️⭐️⭐️抽象工厂abstractfactory❄️❄️⭐️⭐️⭐️生成器bui…

自学网络安全 or Web安全,一般人我还是劝你算了吧

由于我之前写了不少网络安全技术相关的文章&#xff0c;不少读者朋友知道我是从事网络安全相关的工作&#xff0c;于是经常有人私信问我&#xff1a; 我刚入门网络安全&#xff0c;该怎么学&#xff1f; 要学哪些东西&#xff1f; 有哪些方向&#xff1f; 怎么选&#xff1f;…