five

bigcode/MultiPL-E-completions

收藏
Hugging Face2024-02-28 更新2024-03-04 收录
下载链接:
https://hf-mirror.com/datasets/bigcode/MultiPL-E-completions
下载链接
链接失效反馈
官方服务:
资源简介:
MultiPL-E数据集包含生成的程序及其执行结果。数据集的特征包括实验名称、问题、语言、top_p值、最大标记数、提示、测试、停止标记、补全、程序、标准输出、标准错误、退出代码、状态和时间戳等。数据集还包含多个分割,每个分割都有不同的字节数和示例数。

MultiPL-E数据集包含生成的程序及其执行结果。数据集的特征包括实验名称、问题、语言、top_p值、最大标记数、提示、测试、停止标记、补全、程序、标准输出、标准错误、退出代码、状态和时间戳等。数据集还包含多个分割,每个分割都有不同的字节数和示例数。
提供机构:
bigcode
原始信息汇总

数据集概述

数据集名称

  • pretty_name: MultiPL-E generated programs and execution results

数据集特征

  • experiment: 数据类型为字符串
  • problem: 数据类型为字符串
  • language: 数据类型为字符串
  • top_p: 数据类型为浮点数
  • max_tokens: 数据类型为整数
  • prompt: 数据类型为字符串
  • tests: 数据类型为字符串
  • stop_tokens: 数据类型为序列字符串
  • completions: 数据类型为序列字符串
  • programs: 数据类型为序列字符串
  • stdouts: 数据类型为序列字符串
  • stderrs: 数据类型为序列字符串
  • exit_codes: 数据类型为序列整数
  • statuses: 数据类型为序列字符串
  • timestamps: 数据类型为序列整数

数据集分割

  • humaneval.py.bigcode_15b_800m.0.2.reworded: 大小为50941974字节,包含161个示例
  • humaneval.py.bigcode_15b_200m.0.2.reworded: 大小为57850786字节,包含161个示例
  • humaneval.py.bigcode_15b_400m.0.2.reworded: 大小为52404545字节,包含161个示例
  • humaneval.py.bigcode_15b_600m.0.2.reworded: 大小为55071293字节,包含161个示例
  • humaneval.rkt.bigcode_15b_800m.0.2.reworded: 大小为77194321字节,包含161个示例
  • humaneval.py.chatgpt.0.2.reworded: 大小为5473126字节,包含161个示例
  • humaneval.r.bigcode_15b_800m.0.2.reworded: 大小为73160389字节,包含161个示例
  • humaneval.r.bigcode_15b_1000m.0.2.reworded: 大小为63088872字节,包含161个示例
  • humaneval.r.bigcode_15b_200m.0.2.reworded: 大小为77532102字节,包含161个示例
  • humaneval.r.bigcode_15b_400m.0.2.reworded: 大小为80103073字节,包含161个示例
  • humaneval.r.bigcode_15b_600m.0.2.reworded: 大小为76123407字节,包含161个示例
  • humaneval.py.bigcode_15b_1000m.0.2.reworded: 大小为47282373字节,包含161个示例
  • humaneval.py.bigcode_15b_1000m.0.1.reworded: 大小为11724023字节,包含161个示例
  • humaneval.py.bigcode_15b_1000m.0.4.reworded: 大小为12167610字节,包含161个示例
  • humaneval.py.bigcode_15b_1000m.0.6.reworded: 大小为12344190字节,包含161个示例
  • humaneval.py.bigcode_15b_1000m.0.8.reworded: 大小为12825651字节,包含161个示例
  • humaneval.py.codegeex.0.2.reworded: 大小为49547494字节,包含161个示例
  • humaneval.py.codegen.0.2.reworded: 大小为55391634字节,包含161个示例
  • humaneval.py.Salesforce_codegen_16B_mono.0.2.reworded: 大小为54757013字节,包含161个示例
  • humaneval.py.cushman001.0.2.reworded: 大小为5081696字节,包含161个示例
  • humaneval.js.pystarcoder2.0.2.reworded: 大小为6784781字节,包含161个示例
  • humaneval.py.santacoder.0.2.reworded: 大小为57098223字节,包含161个示例
  • humaneval.py.santacoder_fim_prompt.0.2.reworded: 大小为5473782字节,包含161个示例
  • humaneval.lua.bigcode_15b_1000m.0.2.reworded: 大小为53170918字节,包含161个示例
  • mbpp.py.bigcode_15b_1000m.0.2.reworded: 大小为76438518字节,包含397个示例
  • mbpp.py.pystarcoder2.0.2.reworded: 大小为78424728字节,包含397个示例
  • mbpp.lua.davinci.0.2.reworded: 大小为82574073字节,包含401个示例
  • humaneval.js.davinci.0.2.transform: 大小为61113074字节,包含161个示例
  • humaneval.py.davinci.0.2.transform: 大小为46653237字节,包含161个示例
  • humaneval.ts.davinci.0.2.transform: 大小为60332695字节,包含159个示例
  • humaneval.ts.davinci.0.2.reworded: 大小为60256365字节,包含159个示例
  • humaneval.cpp.davinci.0.2.reworded: 大小为67044215字节,包含159个示例
  • humaneval.cs.davinci.0.2.reworded: 大小为103369582字节,包含156个示例
  • humaneval.d.davinci.0.2.reworded: 大小为66641398字节,包含156个示例
  • humaneval.go.davinci.0.2.reworded: 大小为71050586字节,包含154个示例
  • humaneval.java.davinci.0.2.reworded: 大小为71969268字节,包含156个示例
  • humaneval.jl.davinci.0.2.reworded: 大小为76515733字节,包含159个示例
  • humaneval.js.davinci.0.2.reworded: 大小为61674621字节,包含161个示例
  • humaneval.lua.davinci.0.2.reworded: 大小为54016568字节,包含161个示例
  • humaneval.php.davinci.0.2.reworded: 大小为61403511字节,包含161个示例
  • humaneval.pl.davinci.0.2.reworded: 大小为60281076字节,包含161个示例
  • humaneval.py.davinci.0.2.reworded: 大小为48223052字节,包含161个示例
  • humaneval.rb.davinci.0.2.reworded: 大小为65236003字节,包含161个示例
  • humaneval.r.davinci.0.2.reworded: 大小为48031115字节,包含161个示例
  • humaneval.rkt.davinci.0.2.reworded: 大小为66273931字节,包含161个示例
  • humaneval.rs.davinci.0.2.reworded: 大小为56522566字节,包含156个示例
  • humaneval.scala.davinci.0.2.reworded: 大小为84153007字节,包含158个示例
  • humaneval.sh.davinci.0.2.reworded: 大小为58089427字节,包含158个示例
  • humaneval.swift.davinci.0.2.reworded: 大小为61663115字节,包含158个示例
  • humaneval.java.bigcode_15b_1000m.0.2.reworded: 大小为75580922字节,包含158个示例
  • humaneval.java.bigcode_15b_200m.0.2.reworded: 大小为84307515字节,包含158个示例
  • humaneval.java.bigcode_15b_400m.0.2.reworded: 大小为85145220字节,包含158个示例
  • humaneval.java.bigcode_15b_600m.0.2.reworded: 大小为80223655字节,包含158个示例
  • humaneval.java.bigcode_15b_800m.0.2.reworded: 大小为78345454字节,包含158个示例
  • humaneval.java.codegeex.0.2.reworded: 大小为74859734字节,包含158个示例
  • humaneval.java.codegen.0.2.reworded: 大小为76705002字节,包含158个示例
  • humaneval.java.cushman001.0.2.reworded: 大小为7860926字节,包含158个示例
  • humaneval.java.replit_code.0.2.reworded: 大小为20396812字节,包含158个示例
  • humaneval.java.pystarcoder2.0.2.reworded: 大小为73528078字节,包含158个示例
  • humaneval.java.davinci.0.2.keep: 大小为71389774字节,包含161个示例
  • humaneval.java.davinci.0.2.remove: 大小为64493441字节,包含157个示例
  • humaneval.java.davinci.0.2.transform: 大小为72660740字节,包含156个示例
  • humaneval.java.davinci.0.8.keep: 大小为72358729字节,包含161个示例
  • humaneval.java.davinci.0.8.reworded: 大小为75043862字节,包含156个示例
  • humaneval.java.incoder.0.2.keep: 大小为110176353字节,包含161个示例
  • humaneval.java.incoder.0.2.remove: 大小为88903768字节,包含157个示例
  • humaneval.java.incoder.0.2.reworded: 大小为109021885字节,包含156个示例
  • humaneval.java.incoder.0.2.transform: 大小为107183302字节,包含156个示例
  • humaneval.java.incoder.0.8.keep: 大小为75299144字节,包含139个示例
  • humaneval.java.incoder.0.8.reworded: 大小为100533855字节,包含158个示例
  • mbpp.java.codegen.0.2.reworded: 大小为144592215字节,包含373个示例
  • mbpp.java.codegen.0.8.reworded: 大小为47521423字节,包含120个示例
  • mbpp.java.davinci.0.2.keep: 大小为135567713字节,包含373个示例
  • mbpp.java.davinci.0.2.reworded: 大小为136848151字节,包含373个示例
  • mbpp.java.incoder.0.2.reworded: 大小为225046095字节,包含373个示例
  • mbpp.java.incoder.0.8.reworded: 大小为167923488字节,包含373个示例
  • humaneval.cpp.davinci.0.2.keep: 大小为63794632字节,包含161个示例
  • humaneval.cpp.davinci.0.2.remove: 大小为58355394字节,包含158个示例
  • humaneval.cpp.davinci.0.2.transform: 大小为66852210字节,包含159个示例
  • humaneval.cpp.davinci.0.8.keep: 大小为61668425字节,包含161个示例
  • humaneval.cpp.bigcode_15b_1000m.0.2.reworded: 大小为67353068字节,包含161个示例
  • humaneval.cpp.bigcode_15b_200m.0.2.reworded: 大小为73914809字节,包含161个示例
  • humaneval.cpp.bigcode_15b_400m.0.2.reworded: 大小为68514672字节,包含161个示例
  • humaneval.cpp.bigcode_15b_600m.0.2.reworded: 大小为70059227字节,包含161个示例
  • humaneval.cpp.bigcode_15b_800m.0.2.reworded: 大小为69289473字节,包含161个示例
  • humaneval.cpp.codegeex.0.2.reworded: 大小为70250543字节,包含161个示例
  • humaneval.cpp.codegen.0.2.reworded: 大小为65355449字节,包含161个示例
  • humaneval.cpp.cushman001.0.2.reworded: 大小为6878097字节,包含161个示例
  • humaneval.cpp.replit_code.0.2.reworded: 大小为18647873字节,包含161个示例
  • **humaneval.cs.bigcode_15b_1000m
搜集汇总
数据集介绍
main_image_url
构建方式
在代码智能的研究领域中,对大型语言模型生成代码能力的评估至关重要。该数据集基于Multi-PL-E基准测试框架构建,通过选取多种主流编程语言(如Python、Java、C++等)的编程问题,利用不同的大规模代码生成模型(包括CodeGen、CodeGeeX、StarCoder以及OpenAI的系列模型等)进行代码补全。每个问题均被赋予多个采样参数(如top_p和max_tokens),并记录模型生成的原始补全结果。随后,这些补全被转化为可执行程序,并在受控环境中运行,系统性地采集其标准输出、标准错误、退出码及执行状态等运行信息,从而形成结构化的多语言、多模型执行记录。
使用方法
研究人员可通过Hugging Face Datasets库便捷地加载该数据集,利用其丰富的split划分(如基于HumanEval、MBPP等基准的不同语言与模型变体)进行针对性分析。典型应用包括评估新模型的代码生成能力、比较不同采样策略对输出质量的影响,以及研究模型在多语言环境下的泛化性能。数据集中的'completions'、'programs'及'statuses'字段可用于计算通过率等核心指标,而'stdouts'与'stderrs'字段则支持对运行时行为的深入剖析,为代码生成模型的迭代优化提供实证基础。
背景与挑战
背景概述
随着大规模语言模型在代码生成领域的迅猛发展,如何系统性地评估模型在多语言环境下的代码合成能力成为关键课题。MultiPL-E-completions数据集由BigCode项目团队于2022年创建,旨在扩展HumanEval等基准测试的覆盖范围,将评估语言从单一的Python拓展至包括Java、C++、JavaScript、Rust在内的十余种编程语言。该数据集的核心研究问题在于量化不同代码生成模型在跨语言任务上的性能差异,并揭示模型在语法特性、标准库调用及执行语义等方面的泛化能力。通过收录来自StarCoder、CodeGen、CodeGeeX、InCoder及GPT系列等多种模型的采样结果与执行状态,MultiPL-E-completions已成为衡量代码大模型多语言生成质量的重要标尺,对推动代码智能研究从单语言向多语言生态演进产生了深远影响。
当前挑战
该数据集所解决的领域问题在于弥补现有代码生成评估体系对多语言支持的不足,传统基准如HumanEval仅覆盖Python,难以反映模型在跨语言场景下的真实表现。构建过程中面临的首要挑战是确保不同语言间测试用例的语义等价性,即同一编程问题在各语言中的输入输出规范需严格一致,避免因语言特性差异引入评估偏差。其次,大规模采样数据的存储与标注复杂度极高,数据集包含数十个分片,每个分片均需记录模型配置参数(如top_p、max_tokens)、完整代码补全序列、标准输出/错误流及退出码等元信息,对数据质量控制提出了严苛要求。此外,不同模型在相同语言上的生成行为差异巨大,如何标准化采样参数(如温度系数)以保障比较的公平性,亦是构建过程中不可忽视的技术难点。
常用场景
经典使用场景
在代码生成与程序合成领域,MultiPL-E-completions数据集被广泛用于评估和比较不同代码语言模型在多语言环境下的生成能力。该数据集基于HumanEval和MBPP等经典基准,扩展了从Python到Java、C++、JavaScript、Go、Rust等数十种编程语言的代码补全与执行结果,提供了统一的实验框架。研究者通过该数据集可以系统性地分析模型在跨语言代码生成中的表现,包括功能性正确性、语法多样性以及执行稳定性,从而推动多语言代码生成模型的标准化评测。
解决学术问题
该数据集有效解决了代码语言模型在多语言泛化能力评估中缺乏统一基准的问题。传统评测多聚焦于单一语言,难以全面反映模型在真实多语言开发场景中的表现。MultiPL-E-completions通过标准化多语言任务集和执行结果,使得研究者能够量化模型在不同编程语言间的迁移学习效果、语言间性能差异以及采样策略对生成质量的影响,为代码智能领域提供了可复现的评估基础,显著推动了跨语言代码生成的理论研究。
实际应用
在实际应用中,该数据集为自动化代码补全、智能编程助手以及低代码开发平台等工具的性能优化提供了关键支撑。开发者可以利用数据集中的多语言补全和运行结果,训练或微调模型以适应不同编程语言的开发环境,提升代码建议的准确性和鲁棒性。例如,在集成开发环境(IDE)中,基于该数据集的模型能够更精准地预测用户意图,减少语法错误,从而提高软件开发的效率与质量。
数据集最近研究
最新研究方向
在代码生成与大型语言模型评估领域,MultiPL-E-completions数据集正成为衡量多语言代码合成能力的关键基准。前沿研究方向聚焦于跨语言泛化性能的深度剖析,通过覆盖Python、Java、C++等数十种编程语言的程序补全与执行结果,系统评估不同规模模型(从200M至15B参数)在多样化编程范式下的表现。当前热点事件包括对大语言模型(如StarCoder、CodeGen系列)在HumanEval与MBPP任务上的鲁棒性测试,尤其关注采样温度与提示词改写对生成质量的影响。该数据集的深远意义在于推动代码智能的标准化评测,揭示模型在语法正确性与逻辑一致性上的演进轨迹,为构建更可靠的自动化编程工具提供实证基础。
以上内容由遇见数据集搜集并总结生成
二维码
社区交流群
二维码
科研交流群
商业服务