NeedleBench精度测试

概述

NeedleBench 是由上海人工智能实验室和清华大学的研究团队开发的一个用于评估大语言模型(LLMs)在处理超长文本(长达百万级上下文窗口)时的检索和推理能力的框架。它专门设计用于压力测试模型在中英双语环境下的长文本处理能力。

下载 NeedleBench 测试集:https://huggingface.co/datasets/opencompass/NeedleBench

下载tiktoken所需要的缓存文件:https://openaipublic.blob.core.windows.net/encodings/cl100k_base.tiktoken

目前MindSpeed-LLM仓库仅支持Single-Needle-Retrieval(S-RT)测试。

参数配置

  • --max-new-tokens 设置为64
  • --seq-length, --max-position-embeddings, --max-tokens-to-oom 可设置为4096, 8192, 32768, 131072, 262144, 524288, 1048576,用于测试对应长度的NeedleBench精度
  • 开启yarn。yarn的配置参照yarn的说明文档

NeedleBench精度测试如下:

模型 任务 MindSpeed-LLM 社区(OpenCompass)
Qwen2-7B-Instruct NeedleBench-128K-Single-Needle-Retrieval 70.19% 70.25%
Qwen2-7B-Instruct + YARN NeedleBench-128K-Single-Needle-Retrieval 87.03% 88.63%