diff --git a/src/frontends/tensorflow_common/src/op/pack.cpp b/src/frontends/tensorflow_common/src/op/pack.cpp index c845a120c0fa1e..b6f75754b53ee6 100644 --- a/src/frontends/tensorflow_common/src/op/pack.cpp +++ b/src/frontends/tensorflow_common/src/op/pack.cpp @@ -7,6 +7,9 @@ #include "openvino/op/constant.hpp" #include "openvino/op/unsqueeze.hpp" #include "helper_ops/complex_type_mark.hpp" +#include "openvino/op/select.hpp" +#include "openvino/op/subtract.hpp" +#include "openvino/op/less.hpp" using namespace std; using namespace ov::op; @@ -26,7 +29,12 @@ OutputVector translate_pack_op(const NodeContext& node) { auto axis_const = make_shared(element::i64, Shape{}, axis); if (complex_type_mark) { - axis_const = make_shared(element::i64, Shape{}, axis + 1); + auto zero = create_same_type_const_scalar(axis_const, 0); + auto less_than_zero = make_shared(axis, zero); + auto const_one = make_shared(element::i32, Shape{}, 1); + + auto axis_update = make_shared(less_than_zero, const_one, zero); + auto new_axis = make_shared(axis_const, axis_update); } OutputVector concat_inputs;