OpenCompass/opencompass/openicl/icl_evaluator/icl_misc_evaluator.py

28 lines
701 B
Python
Raw Normal View History

2023-12-11 17:42:53 +08:00
from opencompass.registry import ICL_EVALUATORS
from .icl_base_evaluator import BaseEvaluator
@ICL_EVALUATORS.register_module()
class AveragePPLEvaluator(BaseEvaluator):
def score(self, ppl):
average_ppl = sum(ppl) / len(ppl)
return {'average_ppl': average_ppl}
@ICL_EVALUATORS.register_module()
class AverageMinKEvaluator(BaseEvaluator):
def score(self, mink):
average_mink = sum(mink) / len(mink)
return {'average_mink': average_mink}
@ICL_EVALUATORS.register_module()
class AverageInferencePPLEvaluator(BaseEvaluator):
def score(self, ppl, token_len):
average_ppl = sum(ppl) / sum(token_len)
return {'average_ppl': average_ppl}