cli.py 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. # Copyright (c) Alibaba, Inc. and its affiliates.
  2. import argparse
  3. import logging
  4. from modelscope.cli.clearcache import ClearCacheCMD
  5. from modelscope.cli.create import CreateCMD
  6. from modelscope.cli.download import DownloadCMD
  7. from modelscope.cli.llamafile import LlamafileCMD
  8. from modelscope.cli.login import LoginCMD
  9. from modelscope.cli.modelcard import ModelCardCMD
  10. from modelscope.cli.pipeline import PipelineCMD
  11. from modelscope.cli.plugins import PluginsCMD
  12. from modelscope.cli.scancache import ScanCacheCMD
  13. from modelscope.cli.server import ServerCMD
  14. from modelscope.cli.upload import UploadCMD
  15. from modelscope.hub.constants import MODELSCOPE_ASCII
  16. from modelscope.utils.logger import get_logger
  17. from modelscope.version import __version__
  18. logger = get_logger(log_level=logging.WARNING)
  19. def run_cmd():
  20. print(MODELSCOPE_ASCII)
  21. parser = argparse.ArgumentParser(
  22. 'ModelScope Command Line tool', usage='modelscope <command> [<args>]')
  23. parser.add_argument(
  24. '-V',
  25. '--version',
  26. action='version',
  27. version=f'ModelScope CLI {__version__}')
  28. parser.add_argument(
  29. '--token', default=None, help='Specify ModelScope SDK token.')
  30. subparsers = parser.add_subparsers(help='modelscope commands helpers')
  31. CreateCMD.define_args(subparsers)
  32. DownloadCMD.define_args(subparsers)
  33. UploadCMD.define_args(subparsers)
  34. ClearCacheCMD.define_args(subparsers)
  35. PluginsCMD.define_args(subparsers)
  36. PipelineCMD.define_args(subparsers)
  37. ModelCardCMD.define_args(subparsers)
  38. ServerCMD.define_args(subparsers)
  39. LoginCMD.define_args(subparsers)
  40. LlamafileCMD.define_args(subparsers)
  41. ScanCacheCMD.define_args(subparsers)
  42. args = parser.parse_args()
  43. if not hasattr(args, 'func'):
  44. parser.print_help()
  45. exit(1)
  46. cmd = args.func(args)
  47. cmd.execute()
  48. if __name__ == '__main__':
  49. run_cmd()