[MO] Remove IR frontend from available frontend list in MO (#10798)
* [MO] Remove IR frontend from available frontend list in MO Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com> * Fix issue - forget to pass FEM Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com> * Fix issue for TF with new FE and default legacy Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
This commit is contained in:
parent
3b24ed032a
commit
0c20e7a3ca
@ -29,7 +29,7 @@ from openvino.tools.mo.pipeline.common import prepare_emit_ir, get_ir_version
|
|||||||
from openvino.tools.mo.pipeline.unified import unified_pipeline
|
from openvino.tools.mo.pipeline.unified import unified_pipeline
|
||||||
from openvino.tools.mo.utils import import_extensions
|
from openvino.tools.mo.utils import import_extensions
|
||||||
from openvino.tools.mo.utils.cli_parser import check_available_transforms, \
|
from openvino.tools.mo.utils.cli_parser import check_available_transforms, \
|
||||||
get_advanced_cli_options, get_caffe_cli_options, \
|
get_advanced_cli_options, get_available_front_ends, get_caffe_cli_options, \
|
||||||
get_common_cli_options, get_freeze_placeholder_values, get_kaldi_cli_options, get_layout_values, \
|
get_common_cli_options, get_freeze_placeholder_values, get_kaldi_cli_options, get_layout_values, \
|
||||||
get_mean_scale_dictionary, get_meta_info, get_model_name, get_mxnet_cli_options, get_onnx_cli_options, \
|
get_mean_scale_dictionary, get_meta_info, get_model_name, get_mxnet_cli_options, get_onnx_cli_options, \
|
||||||
get_placeholder_shapes, get_tf_cli_options, get_tuple_values, parse_transform, parse_tuple_pairs
|
get_placeholder_shapes, get_tf_cli_options, get_tuple_values, parse_transform, parse_tuple_pairs
|
||||||
@ -120,7 +120,7 @@ def get_moc_frontends(argv: argparse.Namespace):
|
|||||||
if not fem or use_legacy_frontend:
|
if not fem or use_legacy_frontend:
|
||||||
return None, []
|
return None, []
|
||||||
|
|
||||||
available_moc_front_ends = fem.get_available_front_ends()
|
available_moc_front_ends = get_available_front_ends(fem)
|
||||||
|
|
||||||
if not argv.framework and argv.input_model:
|
if not argv.framework and argv.input_model:
|
||||||
moc_front_end = fem.load_by_model(argv.input_model)
|
moc_front_end = fem.load_by_model(argv.input_model)
|
||||||
@ -135,7 +135,11 @@ def get_moc_frontends(argv: argparse.Namespace):
|
|||||||
default_frontends = get_default_frontends()
|
default_frontends = get_default_frontends()
|
||||||
# Disable MOC frontend if default is set to legacy and no user override
|
# Disable MOC frontend if default is set to legacy and no user override
|
||||||
if default_frontends.get(moc_front_end.get_name()) == 'legacy' and not use_new_frontend:
|
if default_frontends.get(moc_front_end.get_name()) == 'legacy' and not use_new_frontend:
|
||||||
moc_front_end = None
|
return None, available_moc_front_ends
|
||||||
|
|
||||||
|
# This check as a workaround to skip IR frontend
|
||||||
|
if not moc_front_end.get_name() in available_moc_front_ends:
|
||||||
|
return None, available_moc_front_ends
|
||||||
|
|
||||||
return moc_front_end, available_moc_front_ends
|
return moc_front_end, available_moc_front_ends
|
||||||
|
|
||||||
|
@ -775,7 +775,7 @@ def get_all_cli_parser(frontEndManager=None):
|
|||||||
parser = argparse.ArgumentParser(usage='%(prog)s [options]')
|
parser = argparse.ArgumentParser(usage='%(prog)s [options]')
|
||||||
|
|
||||||
frameworks = list(set(['tf', 'caffe', 'mxnet', 'kaldi', 'onnx'] +
|
frameworks = list(set(['tf', 'caffe', 'mxnet', 'kaldi', 'onnx'] +
|
||||||
(frontEndManager.get_available_front_ends() if frontEndManager else [])))
|
(get_available_front_ends(frontEndManager) if frontEndManager else [])))
|
||||||
|
|
||||||
parser.add_argument('--framework',
|
parser.add_argument('--framework',
|
||||||
help='Name of the framework used to train the input model.',
|
help='Name of the framework used to train the input model.',
|
||||||
@ -1620,3 +1620,14 @@ def get_meta_info(argv: argparse.Namespace):
|
|||||||
if key in meta_data:
|
if key in meta_data:
|
||||||
meta_data[key] = ','.join([os.path.join('DIR', os.path.split(i)[1]) for i in meta_data[key].split(',')])
|
meta_data[key] = ','.join([os.path.join('DIR', os.path.split(i)[1]) for i in meta_data[key].split(',')])
|
||||||
return meta_data
|
return meta_data
|
||||||
|
|
||||||
|
|
||||||
|
def get_available_front_ends(fem=None):
|
||||||
|
# Use this function as workaround to avoid IR frontend usage by MO
|
||||||
|
if fem is None:
|
||||||
|
return []
|
||||||
|
available_moc_front_ends = fem.get_available_front_ends()
|
||||||
|
if 'ir' in available_moc_front_ends:
|
||||||
|
available_moc_front_ends.remove('ir')
|
||||||
|
|
||||||
|
return available_moc_front_ends
|
||||||
|
Loading…
Reference in New Issue
Block a user