Support of unnamed saved_model_dir in MO Python API (#16542)

* Added support of unnamed saved_model_dir.

* Switch TF2 layer tests for unnamed saved_model_dir.

* Added test.

* Correction of comment.

* Removed unnecessary pytest mark.

* Code correction, added comment.
This commit is contained in:
Anastasiia Pnevskaia
2023-04-17 15:20:27 +02:00
committed by GitHub
parent 4a997de4a3
commit dc2fa65224
2 changed files with 40 additions and 3 deletions

View File

@@ -296,7 +296,7 @@ def create_tf_function(temp_dir):
return keras_net, model_ref, None
def create_tf_saved_model(temp_dir):
def create_tf_saved_model_dir(temp_dir):
import tensorflow as tf
input_names = ["Input1", "Input2"]
@@ -307,6 +307,8 @@ def create_tf_saved_model(temp_dir):
y = tf.nn.sigmoid(tf.nn.relu(x1 + x2))
keras_net = tf.keras.Model(inputs=[x1, x2], outputs=[y])
tf.saved_model.save(keras_net, temp_dir + "/model")
shape = PartialShape([-1, 1, 2, 3])
param1 = ov.opset8.parameter(shape, name="Input1:0", dtype=np.float32)
param2 = ov.opset8.parameter(shape, name="Input2:0", dtype=np.float32)
@@ -317,8 +319,14 @@ def create_tf_saved_model(temp_dir):
parameter_list = [param1, param2]
model_ref = Model([sigm], parameter_list, "test")
tf.saved_model.save(keras_net, temp_dir + "/model")
saved_model = tf.saved_model.load(temp_dir + "/model")
return temp_dir + "/model", model_ref
def create_tf_saved_model(temp_dir):
import tensorflow as tf
saved_model_dir, model_ref = create_tf_saved_model_dir(temp_dir)
saved_model = tf.saved_model.load(saved_model_dir)
return saved_model, model_ref, None
@@ -367,3 +375,14 @@ class TestMoConvertTF(CommonMOConvertTest):
if mo_params is not None:
test_params.update(mo_params)
self._test_by_ref_graph(temp_dir, test_params, graph_ref, compare_tensor_names=False)
@pytest.mark.nightly
@pytest.mark.precommit
def test_unnamed_saved_model_dir(self, ie_device, precision, ir_version, temp_dir):
saved_model_dir, graph_ref = create_tf_saved_model_dir(temp_dir)
test_params = {'input_model': saved_model_dir, 'use_new_frontend': True}
self._test_by_ref_graph(temp_dir, test_params, graph_ref, compare_tensor_names=False)
test_params = {'input_model': saved_model_dir, 'use_new_frontend': False}
self._test_by_ref_graph(temp_dir, test_params, graph_ref, compare_tensor_names=False)