From a61655040fdcbe921c4500802a269dd07266a07d Mon Sep 17 00:00:00 2001 From: Anastasia Popova Date: Fri, 28 Jan 2022 13:23:22 +0300 Subject: [PATCH] Fixed loader for TF2. (#9962) --- tools/mo/openvino/tools/mo/front/tf/loader.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/tools/mo/openvino/tools/mo/front/tf/loader.py b/tools/mo/openvino/tools/mo/front/tf/loader.py index 39cd8f8bec1..cb61b47c898 100644 --- a/tools/mo/openvino/tools/mo/front/tf/loader.py +++ b/tools/mo/openvino/tools/mo/front/tf/loader.py @@ -220,10 +220,13 @@ def load_tf_graph_def(graph_file_name: str = "", is_binary: bool = True, checkpo # enable eager execution temporarily while TensorFlow 2 model is being loaded tf_v1.enable_eager_execution() - # Code to extract Keras model. - # tf.keras.models.load_model function throws TypeError,KeyError or IndexError - # for TF 1.x SavedModel format in case TF 1.x installed - imported = tf.keras.models.load_model(model_dir, compile=False) + try: + # Code to extract Keras model. + # tf.keras.models.load_model function throws TypeError,KeyError or IndexError + # for TF 1.x SavedModel format in case TF 1.x installed + imported = tf.keras.models.load_model(model_dir, compile=False) + except: + imported = tf.saved_model.load(model_dir, saved_model_tags) # pylint: disable=E1120 # to get a signature by key throws KeyError for TF 1.x SavedModel format in case TF 2.x installed concrete_func = imported.signatures[tf.saved_model.DEFAULT_SERVING_SIGNATURE_DEF_KEY]