MaduRox's picture
Upload folder using huggingface_hub
e3584eb verified
Raw
History Blame Contribute Delete
1.16 kB
from benchmark.scoring import score_exact_match, score_token_f1, score_numeric, score_list
def test_exact_match():
assert score_exact_match("Project Aster Access Code is CODE-12", "CODE-12") == 1.0
assert score_exact_match("code-12", "CODE-12") == 1.0
assert score_exact_match("CODE-99", "CODE-12") == 0.0
def test_token_f1():
p, r, f1 = score_token_f1("the red car", "red car")
assert p == 2/3
assert r == 1.0
assert f1 == (2 * (2/3) * 1) / ((2/3) + 1)
def test_numeric_tolerance():
# Exact mode
assert score_numeric("105.2", 105.2, mode="exact") == 1.0
assert score_numeric("105", 105.2, mode="exact") == 0.0
# Absolute tolerance mode
assert score_numeric("105.0", 105.2, mode="absolute_tolerance", tolerance=0.3) == 1.0
assert score_numeric("104.5", 105.2, mode="absolute_tolerance", tolerance=0.3) == 0.0
# Relative tolerance mode
assert score_numeric("100", 102, mode="relative_tolerance", tolerance=0.03) == 1.0
def test_list_matching():
# List precision, recall, f1
p, r, f1 = score_list("apple, banana, cherry", ["apple", "cherry"])
assert p == 2/3
assert r == 1.0