diff --git a/onnxruntime/core/providers/webnn/builders/impl/activation_op_builder.cc b/onnxruntime/core/providers/webnn/builders/impl/activation_op_builder.cc index cb2ff135a7..c8aba274ad 100644 --- a/onnxruntime/core/providers/webnn/builders/impl/activation_op_builder.cc +++ b/onnxruntime/core/providers/webnn/builders/impl/activation_op_builder.cc @@ -17,10 +17,6 @@ class ActivationOpBuilder : public BaseOpBuilder { private: Status AddToModelBuilderImpl(ModelBuilder& model_builder, const Node& node, const logging::Logger& logger) const override ORT_MUST_USE_RESULT; - - // Operator support related. - private: - int GetMinSupportedOpSet(const Node& node) const override; }; // Add operator related. @@ -70,13 +66,6 @@ Status ActivationOpBuilder::AddToModelBuilderImpl(ModelBuilder& model_builder, return Status::OK(); } -// Operator support related. - -int ActivationOpBuilder::GetMinSupportedOpSet(const Node& /* node */) const { - // Any operators < opset 6 used the deprecated "consumed_inputs attribute" which is unsupported. - return 6; -} - void CreateActivationOpBuilder(const std::string& op_type, OpBuilderRegistrations& op_registrations) { if (op_registrations.op_builder_map.find(op_type) != op_registrations.op_builder_map.cend()) return; diff --git a/onnxruntime/core/providers/webnn/builders/impl/base_op_builder.h b/onnxruntime/core/providers/webnn/builders/impl/base_op_builder.h index 203e5b773c..601db0c1fc 100644 --- a/onnxruntime/core/providers/webnn/builders/impl/base_op_builder.h +++ b/onnxruntime/core/providers/webnn/builders/impl/base_op_builder.h @@ -39,7 +39,9 @@ class BaseOpBuilder : public IOpBuilder { virtual bool HasSupportedInputsImpl(const Node& node, const WebnnDeviceType device_type, const logging::Logger& logger) const; - virtual int GetMinSupportedOpSet(const Node& /* node */) const { return 1; } + // ONNX Runtime only *guarantees* support for models stamped + // with opset version 7 or above for opset domain 'ai.onnx'. + virtual int GetMinSupportedOpSet(const Node& /* node */) const { return 7; } virtual int GetMaxSupportedOpSet(const Node& /* node */) const { return 19; } private: diff --git a/onnxruntime/core/providers/webnn/builders/impl/binary_op_builder.cc b/onnxruntime/core/providers/webnn/builders/impl/binary_op_builder.cc index 8b45f0d16e..ac08f7a3f2 100644 --- a/onnxruntime/core/providers/webnn/builders/impl/binary_op_builder.cc +++ b/onnxruntime/core/providers/webnn/builders/impl/binary_op_builder.cc @@ -18,10 +18,6 @@ class BinaryOpBuilder : public BaseOpBuilder { private: Status AddToModelBuilderImpl(ModelBuilder& model_builder, const Node& node, const logging::Logger& logger) const override ORT_MUST_USE_RESULT; - - // Operator support related. - private: - int GetMinSupportedOpSet(const Node& node) const override; }; // Add operator related. @@ -52,13 +48,6 @@ Status BinaryOpBuilder::AddToModelBuilderImpl(ModelBuilder& model_builder, const return Status::OK(); } -// Operator support related. - -int BinaryOpBuilder::GetMinSupportedOpSet(const Node& /* node */) const { - // Add/Sub/Mul/Div/Pow opset 6- has broadcast attributes we do not support now. - return 7; -} - void CreateBinaryOpBuilder(const std::string& op_type, OpBuilderRegistrations& op_registrations) { if (op_registrations.op_builder_map.find(op_type) != op_registrations.op_builder_map.cend()) return; diff --git a/onnxruntime/core/providers/webnn/builders/impl/cast_op_builder.cc b/onnxruntime/core/providers/webnn/builders/impl/cast_op_builder.cc index 7c401dafd1..ed9cbbaaec 100644 --- a/onnxruntime/core/providers/webnn/builders/impl/cast_op_builder.cc +++ b/onnxruntime/core/providers/webnn/builders/impl/cast_op_builder.cc @@ -23,8 +23,6 @@ class CastOpBuilder : public BaseOpBuilder { private: bool IsOpSupportedImpl(const InitializedTensorSet& /* initializers */, const Node& node, const WebnnDeviceType device_type, const logging::Logger& logger) const override; - - int GetMinSupportedOpSet(const Node& node) const override; }; // Add operator related. @@ -76,11 +74,6 @@ Status CastOpBuilder::AddToModelBuilderImpl(ModelBuilder& model_builder, // Operator support related. -int CastOpBuilder::GetMinSupportedOpSet(const Node& /* node */) const { - // Since opset 6, Cast uses attribute "to" as int type. - return 6; -} - bool CastOpBuilder::IsOpSupportedImpl(const InitializedTensorSet& /* initializers */, const Node& node, const WebnnDeviceType device_type, diff --git a/onnxruntime/core/providers/webnn/builders/impl/reshape_op_builder.cc b/onnxruntime/core/providers/webnn/builders/impl/reshape_op_builder.cc index 5d1db43653..b5005269b9 100644 --- a/onnxruntime/core/providers/webnn/builders/impl/reshape_op_builder.cc +++ b/onnxruntime/core/providers/webnn/builders/impl/reshape_op_builder.cc @@ -30,9 +30,6 @@ class ReshapeOpBuilder : public BaseOpBuilder { private: bool IsOpSupportedImpl(const InitializedTensorSet& initializers, const Node& node, const WebnnDeviceType /* device_type */, const logging::Logger& logger) const override; - - // Reshape opset 4- uses attributes for new shape which we do not support for now. - int GetMinSupportedOpSet(const Node& /* node */) const override { return 5; } }; // Add operator related.