Spaces:
Running
Running
from typing import Union, Dict | |
from evaluation.evaluate_utils.evaluate_dicts import evaluate_dicts | |
from evaluation.evaluate_utils.evaluate_numbers import evaluate_numbers | |
from evaluation.evaluate_utils.evaluate_strings import evaluate_strings | |
EvaluatorFactory = { | |
"string": evaluate_strings, | |
"number": evaluate_numbers, | |
"json": evaluate_dicts, | |
"string list": evaluate_strings, | |
} | |
EvaluatorFactoryFromType = { | |
str: evaluate_strings, | |
int: evaluate_numbers, | |
float: evaluate_numbers, | |
bool: evaluate_strings, | |
list: evaluate_strings | |
} | |
def get_evaluator(evaluator: str): | |
return EvaluatorFactory[evaluator] | |
def get_evaluator_from_gold_answer(gold_answer: Union[str, int, float]): | |
return EvaluatorFactoryFromType[gold_answer] |