from __future__ import annotations import argparse from . import __version__ from .cli import infer_main, train_fast_main, train_hyper_main, train_main def main() -> None: parser = argparse.ArgumentParser(prog="python -m chimera") parser.add_argument("--version", action="version", version=f"%(prog)s {__version__}") subparsers = parser.add_subparsers(dest="command") subparsers.add_parser("train") subparsers.add_parser("train-fast") subparsers.add_parser("train-hyper") subparsers.add_parser("infer") args, _ = parser.parse_known_args() if args.command == "train": train_main() return if args.command == "train-fast": train_fast_main() return if args.command == "train-hyper": train_hyper_main() return if args.command == "infer": infer_main() return parser.print_help()