36 lines
904 B
Python
36 lines
904 B
Python
import sys
|
|
import json
|
|
import os
|
|
import argparse
|
|
|
|
sys.set_int_max_str_digits(0)
|
|
|
|
sys.path.append(os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))))
|
|
|
|
from post_processors.code.code import APPsEvaluator
|
|
from post_processors.code.clean import standard_cleaner_default
|
|
|
|
|
|
def main():
|
|
parser = argparse.ArgumentParser()
|
|
parser.add_argument("--input_file", type=str)
|
|
args = parser.parse_args()
|
|
|
|
outputs = []
|
|
with open(args.input_file, "r", encoding="utf-8")as f:
|
|
for line in f:
|
|
item = json.loads(line)
|
|
pred = standard_cleaner_default(item["completion"])
|
|
item["pred"] = pred
|
|
item["test_cases"] = item.pop("input_output")
|
|
outputs.append(item)
|
|
|
|
evaluator = APPsEvaluator()
|
|
predictions, metrics = evaluator(outputs, num_workers=24)
|
|
|
|
print(metrics)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
main()
|