summaryrefslogtreecommitdiffstats
path: root/snips_inference_agl/cli/__init__.py
diff options
context:
space:
mode:
Diffstat (limited to 'snips_inference_agl/cli/__init__.py')
-rw-r--r--snips_inference_agl/cli/__init__.py39
1 files changed, 39 insertions, 0 deletions
diff --git a/snips_inference_agl/cli/__init__.py b/snips_inference_agl/cli/__init__.py
new file mode 100644
index 0000000..ccfbf18
--- /dev/null
+++ b/snips_inference_agl/cli/__init__.py
@@ -0,0 +1,39 @@
+import argparse
+
+
+class Formatter(argparse.ArgumentDefaultsHelpFormatter):
+ def __init__(self, prog):
+ super(Formatter, self).__init__(prog, max_help_position=35, width=150)
+
+
+def get_arg_parser():
+ from snips_inference_agl.cli.inference import add_parse_parser
+ from snips_inference_agl.cli.versions import (
+ add_version_parser, add_model_version_parser)
+
+ arg_parser = argparse.ArgumentParser(
+ description="Snips NLU command line interface",
+ prog="python -m snips_nlu", formatter_class=Formatter)
+ arg_parser.add_argument("-v", "--version", action="store_true",
+ help="Print package version")
+ subparsers = arg_parser.add_subparsers(
+ title="available commands", metavar="command [options ...]")
+ add_parse_parser(subparsers, formatter_class=Formatter)
+ add_version_parser(subparsers, formatter_class=Formatter)
+ add_model_version_parser(subparsers, formatter_class=Formatter)
+ return arg_parser
+
+
+def main():
+ from snips_inference_agl.__about__ import __version__
+
+ arg_parser = get_arg_parser()
+ args = arg_parser.parse_args()
+
+ if hasattr(args, "func"):
+ args.func(args)
+ elif "version" in args:
+ print(__version__)
+ else:
+ arg_parser.print_help()
+ exit(1)