five

ComplexBench

收藏
arXiv2024-07-04 更新2024-07-09 收录
下载链接:
https://github.com/thu-coai/ComplexBench
下载链接
链接失效反馈
官方服务:
资源简介:
ComplexBench是由清华大学和智谱AI等机构联合创建的一个用于评估大型语言模型(LLMs)遵循复杂指令能力的数据集。该数据集包含1150条高质量数据,涵盖4种约束类型、19个约束维度和4种组合类型,旨在全面评估LLMs在处理复杂指令时的表现。数据集的创建过程基于一个分层分类法,通过手动收集和验证确保数据的准确性和可靠性。ComplexBench主要应用于评估和改进LLMs在处理复杂指令和多约束组合方面的能力,特别是在实际应用场景中。

ComplexBench is a dataset jointly created by Tsinghua University, Zhipu AI and other institutions, which is dedicated to evaluating the ability of large language models (LLMs) to follow complex instructions. This dataset includes 1150 high-quality samples, covering 4 constraint types, 19 constraint dimensions and 4 combination types, aiming to comprehensively assess the performance of LLMs when processing complex instructions. The development of ComplexBench is based on a hierarchical classification method, and manual collection and verification processes are implemented to ensure the accuracy and reliability of the data. ComplexBench is mainly utilized to evaluate and improve the capability of LLMs in handling complex instructions and multi-constraint combinations, especially in real-world application scenarios.
提供机构:
清华大学, 智谱AI, 中国地质大学, 华中师范大学
创建时间:
2024-07-04
原始信息汇总

数据集概述

数据集结构

数据集 ComplexBench 存储在文件 data/data_release.json 中,采用列表格式组织,每个元素代表数据集中的一个实例。每个实例包含以下字段:

  • main_id (整数): 实例的唯一标识符。

  • group (字符串): 任务组标识符,仅适用于包含选择的指令。

  • idx_in_group (整数): 任务组中的指令编号,仅适用于包含选择的指令。

  • instruction (字符串): 实际指令。

  • task_types (字符串): 指令的任务类型。

  • constraint_dimensions (列表): 指令中的所有约束维度。

  • composition_types (列表): 指令中约束的所有组合类型。

  • category (列表): 基于组合类型的指令类别。

  • scoring_questions (列表): 指令的所有评分问题,用于验证每个约束维度和组合类型。每个评分问题包含:

    • point_id (整数): 评分问题的编号。
    • question (字符串): 实际评分问题。
    • rule (字符串): 评分验证规则,null 表示无法通过规则验证。
    • constraint_dimensions (字符串): 评分问题验证的所有约束维度。
    • composition_types (字符串): 评分问题验证的所有组合类型。
    • dep (列表): 此评分问题依赖的所有评分问题编号。
  • sub_instructions (字典): 基于主指令分解的原子指令。每个键为 sub_instruction_x,其中 x 是分解指令的编号。每个值包含:

    • instruction (字符串): 实际分解的原子指令。
    • scoring_questions (列表): 分解原子指令的所有评分问题。

数据集示例

以下是 ComplexBench 数据集的一个示例:

json { "main_id": 899, "group": "complex_instruction_eval_1285", "idx_in_group": 1, "instruction": "依次判断以下两个案例中的国家是否有特别提款权。如果有,请写出一篇为该国申请提款的文章,字数不少于300字,且分点明确。如果没有则解释原因,字数不超过100字。

案例1:

国家A是一个发展中国家,是国际货币基金组织(IMF)的成员国,正在经历一场自然灾害,导致该国经济陷入危机,失去了国际支付能力。

案例2:

国家B是一个富裕国家,面临着国内通货膨胀问题,B是IMF的成员国,拥有充足的外汇储备。", "task_types": "Professional Writing", "constraint_dimensions": [ "Length", "Helpfulness", "Bullets Format", "Factuality" ], "composition_types": [ "And", "Selection" ], "category": "Selection_2", "scoring_questions": [ { "point_id": 0, "question": "模型是否正确判断国家A有特别提款权?", "rule": null, "constraint_dimensions": [ "Factuality" ], "composition_types": [ "Selection" ], "dep": [] }, { "point_id": 1, "question": "模型是否正确判断国家B没有特别提款权?", "rule": null, "constraint_dimensions": [ "Factuality" ], "composition_types": [ "Selection" ], "dep": [] }, { "point_id": 2, "question": "模型是否根据国家A有特别提款权生成申请提款的文章?", "rule": null, "constraint_dimensions": [ "Helpfulness" ], "composition_types": [], "dep": [ 0 ] }, { "point_id": 3, "question": "模型生成的申请提款文章是否逻辑合理,符合事实?", "rule": null, "constraint_dimensions": [ "Factuality" ], "composition_types": [], "dep": [ 0 ] }, { "point_id": 4, "question": "模型生成的申请提款文章是否在300字以上?", "rule": "model_length:[300,10000]", "constraint_dimensions": [ "Length" ], "composition_types": [], "dep": [ 0 ] }, { "point_id": 5, "question": "模型生成的申请提款文章是否分点明确?", "rule": null, "constraint_dimensions": [ "Bullets Format" ], "composition_types": [], "dep": [ 0 ] }, { "point_id": 6, "question": "模型是否生成国家B没有特别提款权的解释?", "rule": null, "constraint_dimensions": [ "Helpfulness" ], "composition_types": [], "dep": [ 1 ] }, { "point_id": 7, "question": "模型生成的解释是否逻辑合理,符合事实?", "rule": null, "constraint_dimensions": [ "Factuality" ], "composition_types": [], "dep": [ 1 ] }, { "point_id": 8, "question": "模型生成的解释是否不超过100字?", "rule": "model_length:[1,100]", "constraint_dimensions": [ "Length" ], "composition_types": [], "dep": [ 1 ] } ], "sub_instructions": { "sub_instruction_0": { "instruction": "判断以下两个案例中的国家是否有特别提款权。

案例1:

国家A是一个发展中国家,是国际货币基金组织(IMF)的成员国,正在经历一场自然灾害,导致该国经济陷入危机,失去了国际支付能力。

案例2:

国家B是一个富裕国家,面临着国内通货膨胀问题,B是IMF的成员国,拥有充足的外汇储备。", "scoring_questions": [ "模型是否正确判断国家A有特别提款权?", "模型是否正确判断国家B没有特别提款权?" ] }, "sub_instruction_1": { "instruction": "请根据上面的判断,完成下面的指令。

  • 如果有,请写出一篇为该国申请提款的文章,字数不少于300字,且分点明确。
  • 如果没有则解释原因,字数不超过100字。", "scoring_questions": [ "模型是否根据国家A有特别提款权生成申请提款的文章?", "模型生成的申请提款文章是否逻辑合理,符合事实?", "模型生成的申请提款文章是否在300字以上?", "模型生成的申请提款文章是否分点明确?", "模型是否生成国家B没有特别提款权的解释?", "模型生成的解释是否逻辑合理,符合事实?", "模型生成的解释是否不超过100字?" ] } } }
搜集汇总
数据集介绍
main_image_url
构建方式
ComplexBench 数据集的构建基于一个分层的分类法,包括 4 种约束类型、19 种约束维度和 4 种组合类型。数据集的收集过程分为四个步骤:参考指令收集、任务分配、数据标注和验证、以及选择分支扩展。数据集的构建过程中,参考了现实世界应用场景和开源指令遵循基准中的指令,并通过严格的隐私脱敏和分类过滤确保数据的质量。为了确保数据集的全面性,每个标注任务都有不同的要求,以确保每个约束和组合类型都被充分覆盖。
特点
ComplexBench 数据集的特点在于其全面性和复杂性。数据集包含了 1150 条指令和 5306 个评分问题,涵盖了所有类型的约束和组合。数据集的构建基于一个分层的分类法,包括 4 种约束类型、19 种约束维度和 4 种组合类型。这种分类法为评估大型语言模型在处理复杂指令方面的能力提供了一个广泛的视角。
使用方法
ComplexBench 数据集的使用方法包括构建和评估两个阶段。构建阶段包括参考指令收集、任务分配、数据标注和验证、以及选择分支扩展。评估阶段则包括提出一个层次分类法,定义约束和组合类型,以及提出一个结构感知的自动评估方法,该方法通过配备规则来增强基于 LLM 的评估器,以验证每个约束和组合类型,并通过依赖结构聚合最终分数。
背景与挑战
背景概述
在自然语言处理领域,指令遵循是大型语言模型(LLMs)的基本能力之一。随着LLMs能力的不断提升,它们被越来越多地应用于处理现实世界场景中的复杂人类指令。因此,如何评估LLMs的复杂指令遵循能力已成为一个关键的研究问题。现有的基准主要关注人类指令中不同类型约束的建模,而忽略了不同约束的组成,这是复杂指令中不可或缺的组成部分。为了解决这个问题,我们提出了ComplexBench,这是一个用于全面评估LLMs遵循由多个约束组成的复杂指令的能力的基准。我们提出了一个分层的复杂指令分类法,包括4种约束类型、19种约束维度和4种组成类型,并据此手动收集了一个高质量的语料库。为了使评估可靠,我们通过规则增强LLM-based评估器,以有效地验证生成的文本是否满足每个约束和组成。此外,我们根据不同组成类型确定的依赖结构来获得最终的评估分数。ComplexBench揭示了现有LLMs在处理具有多个约束组成的复杂指令时的显著不足。
当前挑战
ComplexBench相关的挑战包括:1) 所解决的领域问题:如何准确测量LLMs遵循复杂指令的能力,特别是在处理具有多个约束组成的复杂指令时;2) 构建过程中所遇到的挑战:如何构建一个能够全面覆盖不同约束和组成类型的复杂指令语料库,以及如何设计一个能够准确评估LLMs遵循复杂指令能力的评估方法。
常用场景
经典使用场景
ComplexBench 数据集主要用于评估大型语言模型(LLMs)在遵循复杂指令方面的能力。该数据集提供了多种类型的复杂指令,包括格式、语义、实用性和词汇约束,以及组合类型,如 And、Chain 和 Selection。这使得研究人员能够全面评估 LLMs 在处理现实世界场景中的复杂指令时的性能。
解决学术问题
ComplexBench 数据集解决了现有复杂指令遵循基准在建模指令中不同约束的组合方面的不足。通过引入多种组合类型,ComplexBench 能够更准确地评估 LLMs 在处理具有多个约束组合的复杂指令时的能力。此外,该数据集还通过引入规则增强的 LLM 评估方法,提高了评估的准确性,并揭示了现有 LLMs 在处理复杂指令时的不足。
衍生相关工作
ComplexBench 数据集衍生了一系列相关工作,包括对 LLMs 在遵循复杂指令方面的性能进行评估和改进的研究。此外,该数据集还促进了新的 LLM 评估方法的发展,如规则增强的 LLM 评估方法,这些方法可以提高评估的准确性并更好地反映 LLMs 在现实世界场景中的性能。
以上内容由遇见数据集搜集并总结生成
5,000+
优质数据集
54 个
任务类型
进入经典数据集
二维码
社区交流群

面向社区/商业的数据集话题

二维码
科研交流群

面向高校/科研机构的开源数据集话题

数据驱动未来

携手共赢发展

商业合作