---
title: CodeFuseEval
canonical_url: "https://www.modelscope.cn/datasets/codefuse-ai/CodeFuseEval"
md_url: "https://www.modelscope.cn/datasets/codefuse-ai/CodeFuseEval.md"
repository: codefuse-ai/CodeFuseEval
chinese_name: "代码大语言模型多任务评估基准CodeFuseEval"
last_updated: 2024-09-02
license: CC-BY-NC-SA-4.0
storage_size: "11 MB"
domain:
  - configs
  - tasks
tasks:
  - "{config_name=codeTrans_python_to_cpp, data_files=[{path=codeTrans_python_to_cpp.jsonl, split=test}]}"
  - chat
downloads: 2864
stars: 9
---

# CodeFuseEval

> CodeFuseEval - codefuse-ai 在 ModelScope 开源的数据集。codefuse-ai系列以及开源大模型（如：MFTCoder\CodeLlama\CodeGeex系列）代码能力评测基准，可用于评估模型在代码生成、跨语言代码翻译、代码优化等多类任务的代码能力，旨在构建贴近企业实际应用大模型代码能力的评测基准。

codefuse-ai/CodeFuseEval 是 ModelScope 魔搭社区上的{config_name=codeTrans_python_to_cpp, data_files=[{path=codeTrans_python_to_cpp.jsonl, split=test}]}、chat数据集，涉及 configs、tasks 领域，存储大小 11 MB，采用 CC-BY-NC-SA-4.0 许可。

- **Repository**: codefuse-ai/CodeFuseEval
- **License**: CC-BY-NC-SA-4.0
- **Tasks**: {config_name=codeTrans_python_to_cpp, data_files=[{path=codeTrans_python_to_cpp.jsonl, split=test}]}, chat
- **Domain**: configs, tasks
- **Storage size**: 11 MB
- **Downloads**: 2864
- **Stars**: 9
- **Last updated**: 2024-09-02

Source: https://www.modelscope.cn/datasets/codefuse-ai/CodeFuseEval

---

<!---
 以上YAML section提供属性/tags描述---
>

<!---
 以下为markdown格式的dataset描述---
>

## 数据集描述
CodeFuseEval为结合CodeFuse大模型多任务场景，开发的编程领域多任务的评测基准。

### 数据集简介
主要是基于目前开源数据集与自研的企业级评测数据集构建出的代码评测数据集，用于评估多种任务的代码相关任务。

### 数据集支持的任务
该数据集主要用于评估模型在代码补全，自然语言生成代码，测试用例生成、跨语言代码翻译，中文指令生成代码等多类任务的性能。持续开放中，敬请期待！

## 数据集的格式和结构

### 数据格式
样本使用JSON列表格式存储,根据用户所需的下游任务情况，数据字段会有不同，用户可以加载之后进行查看。如humaneval_[language].jsonl文件

*   ``task_id``: 题目的目标语言与ID。语言为["Python", "Java", "JavaScript", "CPP", "Go"]中之一。
*   ``prompt``: 函数声明与描述，用于代码生成。
*   ``declaration``: 仅有函数声明，用于代码翻译。
*   ``canonical_solution``: 手写的示例解答。
*   ``test``: 隐藏测例，用于评测。
*   ``example_test``: 公共测试样本，用于评估生成代码。
*   ``prompt_text``: prompt文本情况。
*   ``prompt_explain``: prompt信息说明。
*   ``func_title``: 生成函数头信息。
*   ``prompt_text_chinese``: 中文prompt信息。

如
```
{
    "task_id": "Python/0",
    "prompt": "from typing import List\n\n\ndef has_close_elements(numbers: List[float], threshold: float) -> bool:\n    \"\"\" Check if in given list of numbers, are any two numbers closer to each other than\n    given threshold.\n    >>> has_close_elements([1.0, 2.0, 3.0], 0.5)\n    False\n    >>> has_close_elements([1.0, 2.8, 3.0, 4.0, 5.0, 2.0], 0.3)\n    True\n    \"\"\"\n",
    "canonical_solution": "    for idx, elem in enumerate(numbers):\n        for idx2, elem2 in enumerate(numbers):\n            if idx != idx2:\n                distance = abs(elem - elem2)\n                if distance < threshold:\n                    return True\n\n    return False\n",
    "test": "\n\nMETADATA = {\n    'author': 'jt',\n    'dataset': 'test'\n}\n\n\ndef check(has_close_elements):\n    assert has_close_elements([1.0, 2.0, 3.9, 4.0, 5.0, 2.2], 0.3) == True\n    assert has_close_elements([1.0, 2.0, 3.9, 4.0, 5.0, 2.2], 0.05) == False\n    assert has_close_elements([1.0, 2.0, 5.9, 4.0, 5.0], 0.95) == True\n    assert has_close_elements([1.0, 2.0, 5.9, 4.0, 5.0], 0.8) == False\n    assert has_close_elements([1.0, 2.0, 3.0, 4.0, 5.0, 2.0], 0.1) == True\n    assert has_close_elements([1.1, 2.2, 3.1, 4.1, 5.1], 1.0) == True\n    assert has_close_elements([1.1, 2.2, 3.1, 4.1, 5.1], 0.5) == False\n\ncheck(has_close_elements)",
    "text": "    Check if in given list of numbers, are any two numbers closer to each other than\n    given threshold.\n    >>> has_close_elements([1.0, 2.0, 3.0], 0.5)\n    False\n    >>> has_close_elements([1.0, 2.8, 3.0, 4.0, 5.0, 2.0], 0.3)\n    True",
    "declaration": "from typing import List\n\n\ndef has_close_elements(numbers: List[float], threshold: float) -> bool:\n",
    "example_test": "def check(has_close_elements):\n    assert has_close_elements([1.0, 2.0, 3.0], 0.5) == False\n    assert has_close_elements([1.0, 2.8, 3.0, 4.0, 5.0, 2.0], 0.3) == True\ncheck(has_close_elements)\n",
    "prompt_text": "Check if in given list of numbers, are any two numbers closer to each other than given threshold.",
    "prompt_explain": "Check if in given list of numbers, are any two numbers closer to each other than\ngiven threshold.\n>>> has_close_elements([1.0, 2.0, 3.0], 0.5)\nFalse\n>>> has_close_elements([1.0, 2.8, 3.0, 4.0, 5.0, 2.0], 0.3)\nTrue",
    "func_title": "def has_close_elements(numbers: List[float], threshold: float) -> bool:",
    "prompt_text_chinese": "检查在给定的数字列表中，是否有任何两个数字比给定的阈值更接近。"
}
```
### 数据集加载方式
主要可以通过MSSDK的方式进行下载,用户可以根据需要读取不同的评测场景的数据集
```
from modelscope.msdatasets import MsDataset
ds =  MsDataset.load('codefuse-ai/CodeFuseEval', subset_name='humanEval_rust', split='test')
```
### 数据分片
由于数据集主要为评测数据集，因此主要分片为test，暂无其它分片情况。
可以使用不同的子数据集名称来读取不同的数据。
