File size: 1,113 Bytes
3de7bf6 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
"""Utils for OpenVINO parser."""
# Copyright (C) 2023 Intel Corporation
# SPDX-License-Identifier: Apache-2.0
import logging
from jsonargparse import ArgumentParser
from anomalib.utils.exceptions import try_import
logger = logging.getLogger(__name__)
if try_import("openvino"):
from openvino.tools.ovc.cli_parser import get_common_cli_parser
else:
get_common_cli_parser = None
def add_openvino_export_arguments(parser: ArgumentParser) -> None:
"""Add OpenVINO arguments to parser under --mo key."""
if get_common_cli_parser is not None:
group = parser.add_argument_group("OpenVINO Model Optimizer arguments (optional)")
ov_parser = get_common_cli_parser()
# remove redundant keys from mo keys
for arg in ov_parser._actions: # noqa: SLF001
if arg.dest in ("help", "input_model", "output_dir"):
continue
group.add_argument(f"--ov_args.{arg.dest}", type=arg.type, default=arg.default, help=arg.help)
else:
logger.info("OpenVINO is possibly not installed in the environment. Skipping adding it to parser.")
|