OpenCompass/opencompass/datasets/PMMEval/mifeval_utils/startend_checker.py
wanyu2018umac 90efcf2216
[Feature] Add P-MMEval (#1714)
* Update with PMMEval

* Update

* Update __init__.py

* Fix Bugs

* Delete .pre-commit-config.yaml

* Pull merge

---------

Co-authored-by: liushz <qq1791167085@163.com>
2024-11-27 21:26:18 +08:00

39 lines
1.1 KiB
Python
Executable File

def end_checker_checker(input_string: str, end_phrase: str, **kwargs):
if input_string.strip().endswith(end_phrase):
return True
else:
return False
def quotation_checker(input_string: str, lang_code: str, **kwargs):
input_string = input_string.strip()
if input_string.startswith('"') and input_string.endswith('"'):
return True
elif lang_code in [
'ar', 'es', 'fr', 'pt', 'ru'
] and input_string.startswith('«') and input_string.endswith('»'):
return True
elif lang_code in [
'ar', 'es', 'fr', 'ko', 'pt', 'th', 'vi', 'zh'
] and input_string.startswith('') and input_string.endswith(''):
return True
elif lang_code == 'ja' and input_string.startswith(
'') and input_string.endswith(''):
return True
else:
return False
startend_checker = {
'end_checker': {
'function': end_checker_checker,
'required_lang_code': False,
'num_of_params': 2
},
'quotation': {
'function': quotation_checker,
'required_lang_code': True,
'num_of_params': 2
}
}