diff --git a/onnxruntime/core/providers/openvino/backends/basic_backend.h b/onnxruntime/core/providers/openvino/backends/basic_backend.h index 2cf3d3faa8b47..6801678e0532b 100644 --- a/onnxruntime/core/providers/openvino/backends/basic_backend.h +++ b/onnxruntime/core/providers/openvino/backends/basic_backend.h @@ -57,6 +57,7 @@ struct OnnxToOvNetworkBindings { "beam_idx", "past_key_values", "present", + "total_seq_len", }; OnnxToOvNetworkBindings(OVExeNetwork& exec_network, SubGraphContext& subgraph_context, SessionContext& session_context) { @@ -72,7 +73,7 @@ struct OnnxToOvNetworkBindings { // stateful representation has introduced these new tensors, creating a name mismatch (matched_names=false). // So, if there is a name mismatch, or the name matches our special io list, we simply continue processing // here to prevent runtime exceptions. - if (session_context.enable_causallm) { + //if (session_context.enable_causallm) { if (!matched_names || std::any_of(special_io_names_.begin(), special_io_names_.end(), [&onnx_name](const std::string& name) { return onnx_name.find(name) != std::string::npos; })) { @@ -80,7 +81,7 @@ struct OnnxToOvNetworkBindings { has_dynamic_io_ = true; continue; } - } + //} ORT_ENFORCE(matched_names, log_tag, "Input names mismatch between OpenVINO and ONNX. ", onnx_name, diff --git a/onnxruntime/core/providers/openvino/ov_versions/data_ops.cc b/onnxruntime/core/providers/openvino/ov_versions/data_ops.cc index f848b89ed10c8..d2ee8317e0249 100644 --- a/onnxruntime/core/providers/openvino/ov_versions/data_ops.cc +++ b/onnxruntime/core/providers/openvino/ov_versions/data_ops.cc @@ -96,6 +96,7 @@ std::vector supported_op_mode = { {"Atanh", V_2020_4, {"CPU"}}, {"Atanh", V_2022_1, {"GPU"}}, {"Attention", V_2023_0, {"CPU", "GPU"}}, + {"GroupQueryAttention", V_2023_0, {"CPU", "GPU"}}, {"AveragePool", V_2020_4, {"CPU", "GPU"}}, {"BatchNormalization", V_2020_4, {"CPU", "GPU"}}, {"BiasGelu", V_2023_0, {"CPU", "GPU"}},