23 lines
862 B
Python
23 lines
862 B
Python
from enum import Enum
|
|
from typing import Type
|
|
|
|
from evals.eval_framework.benchmark_adapters.hotpot_qa_adapter import HotpotQAAdapter
|
|
from evals.eval_framework.benchmark_adapters.musique_adapter import MusiqueQAAdapter
|
|
from evals.eval_framework.benchmark_adapters.dummy_adapter import DummyAdapter
|
|
from evals.eval_framework.benchmark_adapters.twowikimultihop_adapter import TwoWikiMultihopAdapter
|
|
|
|
|
|
class BenchmarkAdapter(Enum):
|
|
DUMMY = ("Dummy", DummyAdapter)
|
|
HOTPOTQA = ("HotPotQA", HotpotQAAdapter)
|
|
MUSIQUE = ('Musique', MusiqueQAAdapter)
|
|
TWOWIKIMULTIHOP = ("TwoWikiMultiHop", TwoWikiMultihopAdapter)
|
|
|
|
def __new__(cls, adapter_name: str, adapter_class: Type):
|
|
obj = object.__new__(cls)
|
|
obj._value_ = adapter_name
|
|
obj.adapter_class = adapter_class
|
|
return obj
|
|
|
|
def __str__(self):
|
|
return self.value
|