MultiCodeIF
收藏资源简介:
MultiCodeIF是一个全面的数据集,用于评估代码生成中LLM的指令跟随能力。该数据集包含2021个代码任务,来自14种编程语言,并支持多轮评估。数据集基于一个结构化的分类法,包括9个类别和27种约束类型,使对功能和非功能指令遵守的粒度评估成为可能。数据集是通过一个自动化的管道ConstraGen合成的,它使用真实世界的种子代码和提取的编程概念来定义一个基于层次分类法的结构化约束系统,并利用先进的LLM来合成约束一致的任务。
MultiCodeIF is a comprehensive dataset for evaluating the instruction-following capability of LLMs in code generation. This dataset contains 2021 coding tasks spanning 14 programming languages, and supports multi-round evaluations. Built upon a structured taxonomy that encompasses 9 categories and 27 constraint types, the dataset enables fine-grained evaluation of compliance with both functional and non-functional instructions. The dataset is synthesized via an automated pipeline named ConstraGen, which uses real-world seed code and extracted programming concepts to define a structured constraint system based on a hierarchical taxonomy, and leverages state-of-the-art LLMs to generate constraint-aligned tasks.
MultiCodeIF 数据集概述
数据集简介
MultiCodeIF 是一个用于评估代码生成中指令跟随能力的大规模自动构建基准测试集,专注于多类型、多层级和多轮次的代码指令跟随评估。
核心特性
- 层次化约束分类法:9个类别 × 27种约束类型,覆盖功能性和非功能性方面
- 任务规模:包含2,021个任务,覆盖14种编程语言
- 评估维度:支持多类型、多层级和多轮次评估场景
数据集结构
指令集
- 单层级指令:位于
dataset/instructions/single_level/,包含单一约束层级的原子任务 - 多层级指令:位于
dataset/instructions/multi_level/,包含需要分层推理的复合约束任务
评估结果
- 单层级任务结果:
results/single_level/ - 多层级任务结果:
results/multi_level/ - 自我修复任务结果:
results/self_repair/
编程语言支持
支持14种编程语言,具体语言类型未在README中明确列出
评估功能
- 多类型任务评估:包括算法实现、数据结构操作和边界情况处理等
- 多层级推理评估:评估模型处理具有依赖关系的分层指令能力
- 多轮交互评估:评估模型基于迭代反馈的自我修复能力
工具脚本
数据构建
- 单层级指令构建:
src/scripts/run_single_level_construct.sh - 多层级指令构建:
src/scripts/run_multi_level_construct.sh
评估脚本
- 单层级评估:
src/scripts/run_evaluation.sh - 多层级评估:
src/scripts/run_multi_level_eval.sh - 自我修复评估:
src/scripts/run_self_repair.sh
环境要求
- Python 3.9+
- 需要配置Python、Rust和Java的特定版本工具链

- 1A Hierarchical and Evolvable Benchmark for Fine-Grained Code Instruction Following with Multi-Turn Feedback中山大学, 新加坡南洋理工大学, 复旦大学 · 2025年



