File size: 1,261 Bytes
1094cbb |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
import argparse
import json
from huggingface_hub import snapshot_download
from loguru import logger
from competitions import utils
from competitions.compute_metrics import compute_metrics
from competitions.params import EvalParams
def parse_args():
parser = argparse.ArgumentParser()
parser.add_argument("--config", type=str, required=True)
return parser.parse_args()
def generate_submission_file(params):
logger.info("Downloading submission dataset")
snapshot_download(
repo_id=params.data_path,
local_dir=params.output_path,
token=params.token,
repo_type="dataset",
)
@utils.monitor
def run(params):
if isinstance(params, dict):
params = EvalParams(**params)
utils.update_submission_status(params, "processing")
if params.competition_type == "code":
generate_submission_file(params)
public_score, private_score = compute_metrics(params)
utils.update_submission_score(params, public_score, private_score)
utils.update_submission_status(params, "success")
utils.pause_space(params)
if __name__ == "__main__":
args = parse_args()
_params = json.load(open(args.config, encoding="utf-8"))
_params = EvalParams(**_params)
run(_params)
|