mirror of
https://github.com/open-compass/opencompass.git
synced 2025-05-30 16:03:24 +08:00
31 lines
989 B
Python
31 lines
989 B
Python
import os
|
|
|
|
from datasets import load_dataset
|
|
|
|
from opencompass.datasets.base import BaseDataset
|
|
from opencompass.registry import LOAD_DATASET
|
|
from opencompass.utils import get_data_path
|
|
|
|
|
|
@LOAD_DATASET.register_module()
|
|
class ClimaQADataset(BaseDataset):
|
|
|
|
@staticmethod
|
|
def load(path: str, task: str, **kwargs):
|
|
|
|
path = get_data_path(path)
|
|
path = os.path.join(path, task)
|
|
climateqa = load_dataset(path)['train']
|
|
|
|
input_column = []
|
|
for i in range(len(climateqa)):
|
|
if 'Options' in climateqa[i].keys(
|
|
) and climateqa[i]['Options'] is not None:
|
|
input_column.append(climateqa[i]['Question'] + '\n' +
|
|
climateqa[i]['Options'])
|
|
else:
|
|
input_column.append(climateqa[i]['Question'])
|
|
climateqa = climateqa.add_column(name='input', column=input_column)
|
|
climateqa = climateqa.rename_column('Answer', 'target')
|
|
return climateqa
|