| 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() | |