five

THUDM/humaneval-x|代码生成数据集|多语言评估数据集

收藏
hugging_face2022-10-25 更新2024-03-04 收录
代码生成
多语言评估
下载链接:
https://hf-mirror.com/datasets/THUDM/humaneval-x
下载链接
链接失效反馈
资源简介:
HumanEval-X是一个用于评估代码生成模型多语言能力的基准数据集。它包含820个高质量的人工编写的数据样本,涵盖Python、C++、Java、JavaScript和Go五种编程语言,每个样本都包含测试用例。该数据集可用于代码生成和翻译等任务。
提供机构:
THUDM
原始信息汇总

HumanEval-X

数据集描述

HumanEval-X 是一个用于评估代码生成模型多语言能力的基准测试。它包含 820 个高质量的人工编写数据样本(每个样本包含测试用例),涵盖 Python、C++、Java、JavaScript 和 Go 五种编程语言,可用于代码生成和翻译等多种任务。

语言

数据集包含五种编程语言的编程问题:Python、C++、Java、JavaScript 和 Go。

数据集结构

加载数据集时,需要指定五种可用语言之一 [python, cpp, go, java, js]。默认加载 python

python from datasets import load_dataset load_dataset("THUDM/humaneval-x", "js")

DatasetDict({ test: Dataset({ features: [task_id, prompt, declaration, canonical_solution, test, example_test], num_rows: 164 }) })

python next(iter(data["test"])) {task_id: JavaScript/0, prompt: /* Check if in given list of numbers, are any two numbers closer to each other than given threshold.

hasCloseElements([1.0, 2.0, 3.0], 0.5) false hasCloseElements([1.0, 2.8, 3.0, 4.0, 5.0, 2.0], 0.3) true */ const hasCloseElements = (numbers, threshold) => { , declaration: const hasCloseElements = (numbers, threshold) => { , canonical_solution: for (let i = 0; i < numbers.length; i++) { for (let j = 0; j < numbers.length; j++) { if (i != j) { let distance = Math.abs(numbers[i] - numbers[j]); if (distance < threshold) { return true; } } } } return false; }

, test: const testHasCloseElements = () => { console.assert(hasCloseElements([1.0, 2.0, 3.9, 4.0, 5.0, 2.2], 0.3) === true) console.assert( hasCloseElements([1.0, 2.0, 3.9, 4.0, 5.0, 2.2], 0.05) === false ) console.assert(hasCloseElements([1.0, 2.0, 5.9, 4.0, 5.0], 0.95) === true) console.assert(hasCloseElements([1.0, 2.0, 5.9, 4.0, 5.0], 0.8) === false) console.assert(hasCloseElements([1.0, 2.0, 3.0, 4.0, 5.0, 2.0], 0.1) === true) console.assert(hasCloseElements([1.1, 2.2, 3.1, 4.1, 5.1], 1.0) === true) console.assert(hasCloseElements([1.1, 2.2, 3.1, 4.1, 5.1], 0.5) === false) }

testHasCloseElements() , example_test: const testHasCloseElements = () => { console.assert(hasCloseElements([1.0, 2.0, 3.0], 0.5) === false) console.assert( hasCloseElements([1.0, 2.8, 3.0, 4.0, 5.0, 2.0], 0.3) === true ) } testHasCloseElements() }

数据字段

  • task_id:指示目标语言和问题的ID。语言为 ["Python", "Java", "JavaScript", "CPP", "Go"] 之一。
  • prompt:函数声明和文档字符串,用于代码生成。
  • declaration:仅函数声明,用于代码翻译。
  • canonical_solution:人工编写的示例解决方案。
  • test:隐藏的测试样本,用于评估。
  • example_test:公开的测试样本(出现在提示中),用于评估。

数据分割

每个子集有一个分割:test。

AI搜集汇总
数据集介绍
main_image_url
构建方式
HumanEval-X数据集的构建过程体现了对多语言代码生成模型评估的深度需求。该数据集由820个高质量的人工编写样本组成,涵盖了Python、C++、Java、JavaScript和Go五种编程语言。每个样本均包含测试用例,确保了数据的多样性和实用性。数据集的构建依赖于众包和专家生成的方式,确保了样本的准确性和代表性。
特点
HumanEval-X数据集的特点在于其多语言覆盖和高质量的人工编写样本。数据集不仅支持五种主流编程语言,还提供了详细的函数声明、文档字符串、标准解决方案以及测试用例。这些特征使得该数据集能够广泛应用于代码生成、代码翻译等任务,并为模型的多语言能力评估提供了坚实的基础。
使用方法
使用HumanEval-X数据集时,用户需指定目标编程语言子集,如Python、C++等。通过加载数据集,用户可以访问每个样本的任务ID、提示、声明、标准解决方案以及测试用例。这些数据字段为模型的训练和评估提供了全面的支持。用户可以通过简单的代码调用,快速加载并迭代数据集中的样本,进行模型性能的测试与优化。
背景与挑战
背景概述
HumanEval-X数据集由清华大学计算机系(THUDM)开发,旨在评估多语言代码生成模型的能力。该数据集包含820个高质量的人工编写样本,涵盖Python、C++、Java、JavaScript和Go五种编程语言,每个样本均附带测试用例。HumanEval-X的创建标志着代码生成领域的一个重要里程碑,特别是在多语言环境下,为研究人员提供了一个标准化的基准工具,推动了代码生成和翻译任务的研究进展。
当前挑战
HumanEval-X数据集在解决多语言代码生成问题时面临多重挑战。首先,不同编程语言的语法和语义差异显著,如何确保生成的代码在多种语言中均能正确执行是一个核心难题。其次,数据集的构建依赖于高质量的人工编写样本,这对数据的一致性和覆盖范围提出了严格要求。此外,测试用例的设计需要兼顾全面性和复杂性,以确保模型在不同场景下的鲁棒性。这些挑战不仅体现在数据集的构建过程中,也直接影响其在实际应用中的效果。
常用场景
经典使用场景
HumanEval-X数据集主要用于评估多语言代码生成模型的能力。该数据集包含Python、C++、Java、JavaScript和Go五种编程语言的高质量代码样本,每个样本均配有测试用例。研究人员可以利用这些样本进行代码生成、代码翻译等任务的模型训练与评估,从而验证模型在不同编程语言环境下的表现。
衍生相关工作
HumanEval-X的发布催生了一系列相关研究工作。例如,基于该数据集的多语言代码生成模型CodeGeeX在开源社区中获得了广泛关注。此外,许多研究团队利用该数据集开发了新的评估指标和训练方法,进一步推动了多语言代码生成领域的技术进步。这些衍生工作不仅验证了数据集的实用性,也为后续研究提供了丰富的参考和借鉴。
数据集最近研究
最新研究方向
在代码生成与多语言编程模型评估领域,HumanEval-X数据集作为一项重要的基准测试工具,近年来受到了广泛关注。该数据集涵盖了Python、C++、Java、JavaScript和Go五种编程语言的高质量代码样本,为研究多语言代码生成模型的性能提供了丰富的数据支持。当前的研究热点主要集中在如何利用该数据集评估模型在不同编程语言间的泛化能力,以及探索跨语言代码翻译的可行性。随着多语言编程需求的增长,HumanEval-X在推动代码生成技术的进步、提升开发效率方面具有重要意义,同时也为学术界和工业界提供了新的研究方向。
以上内容由AI搜集并总结生成
用户留言
有没有相关的论文或文献参考?
这个数据集是基于什么背景创建的?
数据集的作者是谁?
能帮我联系到这个数据集的作者吗?
这个数据集如何下载?
5,000+
优质数据集
54 个
任务类型
进入经典数据集
二维码
社区交流群

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

二维码
科研交流群

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

数据驱动未来

携手共赢发展

商业合作