NLPCoreTeam/humaneval_ru
收藏Hugging Face2023-10-23 更新2024-03-04 收录
下载链接:
https://hf-mirror.com/datasets/NLPCoreTeam/humaneval_ru
下载链接
链接失效反馈官方服务:
资源简介:
这是Code Generation HumanEval数据集的俄语翻译版本,主要用于生成函数体,基于函数签名和文档字符串。数据集包含164个样本,支持的任务是文本生成,语言为俄语和英语,标签为代码,数据集规模小于1K。
这是Code Generation HumanEval数据集的俄语翻译版本,主要用于生成函数体,基于函数签名和文档字符串。数据集包含164个样本,支持的任务是文本生成,语言为俄语和英语,标签为代码,数据集规模小于1K。
提供机构:
NLPCoreTeam原始信息汇总
HumanEval_ru Dataset 概述
数据集基本信息
- 许可证: MIT
- 任务类别: 文本生成
- 支持语言: 俄语 (ru), 英语 (en)
- 标签: 代码
- 数据集大小: 小于1000条记录 (n<1K)
数据集描述
HumanEval_ru 是 OpenAI 的 HumanEval 数据集的俄语翻译版本。该数据集用于生成函数体,基于函数签名和文档字符串。编程问题使用 Python 编写,包含俄语自然文本的注释和文档字符串。
数据集结构
数据集结构与原始 HumanEval 数据集相同,包含以下特征:
- task_id
- prompt
- canonical_solution
- test
- entry_point
- signature
- docstring
- context
- instruction
- instruction_noexamples
使用方法
加载数据集
python from datasets import load_dataset load_dataset(NLPCoreTeam/humaneval_ru)
模型评估
评估模型在 HumanEval_ru 上的代码生成能力,需遵循特定步骤,并使用如 Codellama-7b-Python 模型进行评估。评估结果包括 pass@1 和 pass@10 等指标。
基准测试
数据集提供了多个模型的评估结果,包括 starcoder 和 Codellama 系列模型在俄语和英语环境下的 pass@1 和 pass@10 指标。具体指标如下:
| 模型 | RU Pass@1 | RU Pass@10 | EN Pass@1 | EN Pass@10 |
|---|---|---|---|---|
| starcoderbase-1b | 0.1420 | 0.1801 | 0.1509 | 0.2045 |
| starcoderbase-3b | 0.1924 | 0.2606 | 0.2137 | 0.3289 |
| starcoderbase-7b | 0.2515 | 0.3359 | 0.2868 | 0.3852 |
| starcoderbase-15b | 0.2676 | 0.3872 | 0.3036 | 0.4611 |
| starcoder-15b-Python | 0.3103 | 0.4132 | 0.3353 | 0.4931 |
| CodeLlama-7b-hf | 0.2673 | 0.3688 | 0.2975 | 0.4351 |
| CodeLlama-7b-Python-hf | 0.3500 | 0.5122 | 0.3960 | 0.5761 |
| CodeLlama-13b-hf | 0.3380 | 0.4884 | 0.3557 | 0.5489 |
| CodeLlama-13b-Python-hf | 0.4380 | 0.5796 | 0.4301 | 0.6226 |
以上信息提供了 HumanEval_ru 数据集的详细概述,包括其用途、结构、使用方法及基准测试结果。
搜集汇总
数据集介绍

构建方式
在代码智能领域,针对非英语编程语言的评估资源相对匮乏。为此,研究团队基于广受认可的英文HumanEval基准测试集,构建了面向俄语场景的HumanEval_ru数据集。该数据集通过Yandex.Translate API对原始数据集中的函数签名、文档字符串及注释等文本描述进行自动化翻译,随后经由人工编辑校对以确保语义准确性与自然度。最终保留了164个Python编程问题,每个问题包含函数签名、文档字符串、标准解法及测试用例,形成了与原始数据集结构一致的俄语版本。
特点
HumanEval_ru数据集的核心特色在于其双语代码生成评估能力,即通过俄语自然语言描述引导模型生成Python函数体。与原始英文版本相比,该数据集在保持编程任务逻辑一致性的前提下,引入了语言层面的跨域迁移挑战。此外,数据集提供了丰富的字段信息,包括任务标识、提示文本、标准解法、测试代码及入口点等,并额外设计了无示例的指令变体,便于研究者从多维度评估代码生成模型的鲁棒性与语言理解能力。
使用方法
使用HumanEval_ru数据集时,可通过HuggingFace Datasets库中的load_dataset函数直接加载,得到包含164个样本的训练集。为评估模型性能,推荐采用bigcode-evaluation-harness工具链执行标准化评测流程:首先克隆指定仓库,随后通过accelerate launch命令运行评测脚本,需设置模型名称、生成长度、采样温度及样本数量等参数。评测结果以pass@1和pass@10指标呈现,已有多款主流模型(如StarCoder系列、CodeLlama系列)在该基准上完成性能对标,为研究者提供了可靠的参照基线。
背景与挑战
背景概述
代码生成作为自然语言处理与程序语言理解的交叉领域,近年来随着大规模语言模型的崛起而备受瞩目。HumanEval数据集由OpenAI于2021年创建,旨在通过一系列手写的Python编程问题评估模型从函数签名和文档字符串生成函数体的能力,已成为衡量代码生成模型性能的标杆。然而,现有基准测试多集中于英文语境,限制了其在多语言场景下的适用性。为此,NLPCore团队于2023年推出了HumanEval_ru数据集,该数据集通过将原始HumanEval中的自然语言描述自动翻译为俄语并辅以人工校对,构建了首个面向俄语的代码生成评估基准。这一工作不仅填补了非英语代码生成评测的空白,还为研究模型在跨语言语义理解上的泛化能力提供了关键资源,对推动多语言编程助手的开发具有深远影响。
当前挑战
HumanEval_ru所解决的领域挑战在于评估代码生成模型在非英语环境下的表现,尤其是俄语编程任务中的函数实现能力。原始HumanEval仅覆盖英文,而实际应用中开发者常使用母语进行注释和文档编写,模型需克服语言差异导致的语义偏移。在构建过程中,翻译质量成为核心难点:尽管采用了Yandex.Translate API进行自动转换,但技术术语的准确性和语境一致性仍需大量人工校验,以确保任务描述不因翻译而失真。此外,保持原始测试用例的完整性及评估标准的统一性也是一大挑战,需确保俄语版本与英文版本在代码逻辑和功能验证上完全等价,避免引入语言偏差影响模型性能的公平比较。
常用场景
经典使用场景
在代码生成领域,HumanEval_ru作为经典基准数据集HumanEval的俄语翻译版本,承担着评估多语言代码生成模型跨语言泛化能力的关键角色。该数据集包含164个Python编程问题,每个问题由函数签名、俄语文档字符串和测试用例构成,要求模型根据自然语言描述生成函数体。研究者通常采用pass@k指标(如pass@1和pass@10)来衡量模型性能,通过生成多个候选代码并计算通过测试的比例来评估代码的语义正确性。这一标准化的评估流程使得HumanEval_ru成为检验大语言模型在非英语编程场景中代码理解与生成能力的基石。
实际应用
在实际应用中,HumanEval_ru为面向俄语用户的智能编程辅助工具开发提供了关键支持。基于该数据集训练的模型可被集成到集成开发环境中,实现根据俄语注释自动补全代码、生成函数体或修复语法错误的功能。同时,它赋能了教育科技领域,为俄语母语者提供个性化的编程练习反馈系统,降低语言门槛对学习效率的阻碍。企业级应用方面,该数据集有助于构建支持多语言代码审查的自动化流水线,提升跨国软件开发团队的协作效率。例如,Starcoder和CodeLlama等模型在HumanEval_ru上的表现,直接影响了它们在俄语编程市场中的部署策略与性能优化方向。
衍生相关工作
HumanEval_ru的发布催生了一系列衍生研究工作,推动了代码生成领域的多语言扩展。研究者基于该数据集开发了跨语言微调框架,如通过对比英语与俄语HumanEval上的模型行为,提出语种自适应训练策略。此外,该数据集被用于验证代码翻译模型(如TransCoder)的语义保持能力,以及评估大语言模型在低资源语言上的零样本泛化性能。在工具层面,NLP Core团队基于HumanEval_ru构建了专用的评估工具链(如bigcode-evaluation-harness的俄语分支),为后续多语言代码生成基准(如MultiPL-E)的设计提供了方法论参考。这些工作共同构筑了从单语评估到多语言化研究的演进脉络。
以上内容由遇见数据集搜集并总结生成



