lm_eval/tasks/med_concepts_qa/_generate_configs.py (27 lines of code) (raw):

from typing import List import yaml def generate_yaml_content(vocab_name: str, level: str): content = { "dataset_name": f"{vocab_name}_{level}", "tag": f"med_concepts_qa_{vocab_name}_tasks", "include": "_default_template_yaml", "task": f"med_concepts_qa_{vocab_name}_{level}", "task_alias": f"{vocab_name}_{level}", } return content def generate_yaml_files( vocab_names: List[str], levels: List[str], file_name_prefix: str ): for vocab_name in vocab_names: for level in levels: yaml_content = generate_yaml_content(vocab_name, level) filename = f"{file_name_prefix}_{vocab_name}_{level}.yaml" with open(filename, "w") as yaml_file: yaml.dump(yaml_content, yaml_file, default_flow_style=False) print(f"Done to generated {filename}") if __name__ == "__main__": generate_yaml_files( vocab_names=["icd9cm", "icd10cm", "icd9proc", "icd10proc", "atc"], levels=["easy", "medium", "hard"], file_name_prefix="med_concepts_qa", )