kogi-jwu/jhumaneval
收藏数据集卡片 JHumanEval:日本语手工翻译的 HumanEval
数据集描述
数据集概述
这是一个 HumanEval 的日语翻译版本,HumanEval 是一个用于评估代码生成能力的数据集,描述在论文 "Evaluating Large Language Models Trained on Code" 中。
语言
编程问题以 Python 编写,包含英语和日语的自然文本,如注释和文档字符串。
数据集结构
加载数据集
python from datasets import load_dataset load_dataset("kogi-jwu/jhumaneval")
数据集示例
python DatasetDict({ test: Dataset({ features: [task_id, prompt_en, prompt, entry_point, canonical_solution, test], num_rows: 164 }) })
数据实例
json { "task_id": "test/0", "prompt_en": "def return1(): """ A simple function that returns the integer 1. """ ", "prompt": "def return1(): """ 整数1を返すシンプルな関数。 """ ", "canonical_solution": " return 1", "test": "def check(candidate): assert candidate() == 1", "entry_point": "return1" }
数据字段
task_id: 任务的唯一标识符。prompt_en: 函数头和英语文档字符串,作为模型输入。prompt: 函数头和日语文档字符串,与prompt_en并行。canonical_solution: 预期的函数实现。test: 验证生成代码正确性的函数。entry_point: 启动测试的函数名。
数据分割
数据集仅包含一个测试分割,包含 164 个样本。
如何使用
计算 pass@1 的示例:
python import os from datasets import load_dataset from evaluate import load
os.environ["HF_ALLOW_CODE_EVAL"] = "1"
ds = load_dataset("kogi-jwu/jhumaneval")[test] code_eval = load("code_eval")
candidates = [] test_cases = []
for d in ds: candidates.append([d[prompt]+d[canonical_solution]]) test_cases.append([d[test]+f"
check({d[entry_point]}) "])
pass_at_k, results = code_eval.compute(references=test_cases, predictions=candidates, k=[1]) print(pass_at_k)
附加信息
许可信息
MIT 许可证



