33 lines
1.1 KiB
Python

"""BigCodeBench (official source: bigcode/bigcodebench)."""
from ..sample import Sample
from ..registry import register_dataset
from ..spec import DatasetSpec
@register_dataset(
DatasetSpec(
name='bigcodebench',
source='bigcode/bigcodebench', # official: https://huggingface.co/datasets/bigcode/bigcodebench
split='v0.1.4', # BigCodeBench versions are published as splits
task_type='coding',
tags=['code'],
description='BigCodeBench: practical library-level function synthesis (official).',
)
)
def bigcodebench():
def to_sample(record: dict) -> Sample:
return Sample(
input=record['instruct_prompt'], # 'complete_prompt' is the alternative prompt style
target=record['canonical_solution'],
metadata={
'task_id': record['task_id'],
'test': record['test'],
'entry_point': record['entry_point'],
'code_prompt': record.get('code_prompt'),
'libs': record.get('libs'),
},
)
return to_sample