Spaces:
Sleeping
Sleeping
File size: 1,071 Bytes
5db30ac | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | from __future__ import annotations
from elbench.loaders.base import BaseLoader
from elbench.loaders.basic_education_yaml_loader import BasicEducationYamlLoader
from elbench.loaders.jsonl_loader import JsonlLoader
from elbench.loaders.general_capability_loader import (
AIMEJsonlLoader,
CEvalJsonlLoader,
IFEvalJsonlLoader,
MATH500JsonlLoader,
MMLUProJsonlLoader,
)
from elbench.loaders.xlsx_loader import XlsxLoader
class LoaderFactory:
_LOADERS: dict[str, type[BaseLoader]] = {
"basic_education_yaml": BasicEducationYamlLoader,
"jsonl": JsonlLoader,
"aime_jsonl": AIMEJsonlLoader,
"ceval_jsonl": CEvalJsonlLoader,
"ifeval_jsonl": IFEvalJsonlLoader,
"math_500_jsonl": MATH500JsonlLoader,
"mmlu_pro_jsonl": MMLUProJsonlLoader,
"xlsx": XlsxLoader,
}
@classmethod
def create(cls, loader_name: str) -> BaseLoader:
if loader_name not in cls._LOADERS:
raise ValueError(f"Unsupported loader: {loader_name}")
return cls._LOADERS[loader_name]()
|