Hide keyboard shortcuts

Hot-keys on this page

r m x p   toggle line displays

j k   next/prev highlighted chunk

0   (zero) top of page

1   (one) first highlighted chunk

1# -*- coding: utf-8 -*- 

2""" 

3@file 

4@brief Implements command line ``python -m mlprodict <command> <args>``. 

5""" 

6import sys 

7import warnings 

8 

9 

10def main(args, fLOG=print): 

11 """ 

12 Implements ``python -m mlprodict <command> <args>``. 

13 

14 @param args command line arguments 

15 @param fLOG logging function 

16 """ 

17 try: 

18 from .cli.validate import validate_runtime 

19 from .cli.convert_validate import convert_validate 

20 from .cli.optimize import onnx_optim, onnx_stats 

21 from .cli.asv_bench import asv_bench 

22 from .cli.asv2csv import asv2csv 

23 from .cli.replay import benchmark_replay 

24 from .cli.einsum import einsum_test 

25 from .cli.onnx_code import onnx_code 

26 except ImportError: # pragma: no cover 

27 from mlprodict.cli.validate import validate_runtime 

28 from mlprodict.cli.convert_validate import convert_validate 

29 from mlprodict.cli.optimize import onnx_optim, onnx_stats 

30 from mlprodict.cli.asv_bench import asv_bench 

31 from mlprodict.cli.asv2csv import asv2csv 

32 from mlprodict.cli.replay import benchmark_replay 

33 from mlprodict.cli.einsum import einsum_test 

34 from mlprodict.cli.onnx_code import onnx_code 

35 

36 fcts = dict(validate_runtime=validate_runtime, 

37 convert_validate=convert_validate, 

38 onnx_optim=onnx_optim, 

39 onnx_stats=onnx_stats, 

40 asv_bench=asv_bench, 

41 asv2csv=asv2csv, 

42 benchmark_replay=benchmark_replay, 

43 einsum_test=einsum_test, 

44 onnx_code=onnx_code) 

45 try: 

46 from pyquickhelper.cli import cli_main_helper 

47 except ImportError: # pragma: no cover 

48 warnings.warn("The command line requires module pyquickhelper.") 

49 return None 

50 return cli_main_helper(fcts, args=args, fLOG=fLOG) 

51 

52 

53if __name__ == "__main__": 

54 main(sys.argv[1:]) # pragma: no cover