nn/utils.h#
Neural-network schema helpers, including
onnx_light::getConvPoolStrides() and
onnx_light::AttentionPropagateElemTypeFromInputToOutput().
Declares shared neural-network operator helpers.
This header provides utility APIs used by NN operator schemas, including Conv/Pool stride extraction, Attention type propagation, and function-body construction helpers.
-
namespace onnx_light
Alias that makes onnx-light headers compatible with code that references
ONNX_LIGHT_NAMESPACE(the macro used in the standard onnx package).Set to
ONNX_LIGHT_NAMESPACEso both names resolve to the same namespace.Symbol-visibility attribute for the public onnx-light C++ API.
Defined as empty because onnx-light does not require explicit
__declspec(dllexport)or__attribute__((visibility("default")))annotations — visibility is controlled at the shared-library level. The macro is provided so that vendored ONNX headers that decorate their declarations withONNX_APIcompile without modification.Namespace alias so that ONNX C++ code (and consumers such as onnxruntime) that refers to the literal
onnxnamespace — rather than theONNX_NAMESPACEmacro — resolves to the onnx-light namespace. The standard onnx package lives innamespace onnx; onnx-light usesonnx_light(via ONNX_LIGHT_NAMESPACE), so this alias keeps onnx-light a true drop-in. It is only introduced when the onnx-light namespace differs fromonnx.Functions
-
std::vector<int64_t> getConvPoolStrides(InferenceContext &ctx, size_t n_input_dims)#
Reads and validates the ‘strides’ attribute for Conv/Pool shape inference. Returns the attribute value or a default value if the attribute is not present.
-
void AttentionPropagateElemTypeFromInputToOutput(InferenceContext &ctx)#
Implements shape and type propagation for Attention (23-).
-
bool AttentionAppendFunctionCausalMask(const FunctionBodyBuildContext &ctx, FunctionBuilder &builder, bool padding)#
Implements CausalMask for Attention.
-
std::vector<int64_t> getConvPoolStrides(InferenceContext &ctx, size_t n_input_dims)#