|
import argparse |
|
import subprocess |
|
import os |
|
|
|
|
|
report = '''\n⚠️⚠️⚠️\n |
|
Try installing latest version of the library by running the following command: |
|
pip install -u medvqa |
|
If it still cannot solve the problem, don't hesitate to add an issue at https://github.com/SushantGautam/MedVQA/issues with the log above! We will try to solve the problem ASAP. Can also interact with us on Discord: https://discord.gg/22V9huwc3R.\n |
|
⚠️⚠️⚠️''' |
|
|
|
|
|
def main(): |
|
parser = argparse.ArgumentParser( |
|
description='MedVQA CLI', allow_abbrev=False) |
|
parser.add_argument('--competition', type=str, required=True, |
|
help='Name of the competition (e.g., gi-2025)') |
|
parser.add_argument('--task', type=str, required=True, |
|
help='Task number (1 or 2)') |
|
args, unknown = parser.parse_known_args() |
|
|
|
|
|
base_dir = os.path.dirname(os.path.abspath(__file__)) |
|
|
|
|
|
competition_dir = os.path.join(base_dir, 'competitions', args.competition) |
|
if not os.path.isdir(competition_dir): |
|
raise FileNotFoundError( |
|
f"Competition '{args.competition}' does not exist! Need to update library?"+report) |
|
|
|
task_file = os.path.join(competition_dir, f'task_{args.task}.py') |
|
if not os.path.isfile(task_file): |
|
raise FileNotFoundError( |
|
f"Task '{args.task}' does not exist! Need to update library?"+report) |
|
subprocess.run( |
|
['python', task_file] + unknown) |
|
|
|
|
|
if __name__ == '__main__': |
|
main() |
|
|