mirror of
https://github.com/open-compass/opencompass.git
synced 2025-05-30 16:03:24 +08:00

* add Needlebench-1000K configs * add prompt postion args * add model configs * Update parallel.py * fix lint
2.5 KiB
2.5 KiB
Needlebench:大海捞针测试评估基准
English | 简体中文
概览
Needlebench是一个全面的基准测试,旨在严格评估大型语言模型(LLMs)的信息检索和推理能力。借鉴了NeedleInAHaystack实验的灵感,Needlebench扩展了范围,包括多种任务,每个任务都旨在测试LLMs处理长文本中关键信息的不同方面的能力。
目录结构
configs/datasets/needlebench/
├── atc
├── needlebench_4k
├── needlebench_8k
├── needlebench_32k
├── needlebench_128k
├── needlebench_200k
├── needlebench_1000k
├── needlebench.py
├── readme.md
└── readme_zh-CN.md
在每个长度配置目录下(如 needlebench_4k
),包含了专门针对该长度设置的测试任务脚本:
needlebench_4k/
├── needlebench_multi_reasoning.py
├── needlebench_multi_retrieval.py
├── needlebench.py
└── needlebench_single.py
任务描述与长度配置
Needlebench提供了不同长度配置的任务,如4k、8k等,以适应不同规模的语言模型评估需求。每种长度配置针对以下任务提供了专门的测试脚本:
单针信息检索 (needlebench_single.py
)
单针信息检索任务评估LLMs从特定长度的无关信息文本中回忆单个重要信息的能力。这个任务反映了原始的NeedleInAHaystack测试的目标,评估模型长文本中识别和回忆特定信息的精确性。
多针信息检索 (needlebench_multi_retrieval.py
)
多针信息检索任务挑战LLMs识别和提取广泛文本中的多个关键信息点的能力。它模拟了现实世界中的场景,其中需要从文档或报告中检索多个数据点、事实或数字,评估模型在浏览和从密集文本中提取相关信息的效率。
多针信息推理 (needlebench_multi_reasoning.py
)
在检索任务的基础上,多针信息推理任务强调LLMs使用检索到的信息进行复杂推理的能力。模型不仅需要回忆多个信息点,还需要进行逻辑推理,综合回答反映对不同信息点之间复杂关系理解的答案。
祖源追溯挑战 (ATC)
祖源追溯挑战是Needlebench中最复杂的任务,要求模型回忆和分析长文本中的每个细节,以解决需要理解复杂关系的问题,如家谱查询或详细案例分析。这个任务突出了模型处理和推理详细信息的需要,反映了现实世界中对复杂实际任务的要求。