experimental_experiment.xbuilder._onnx_helper¶
- experimental_experiment.xbuilder._onnx_helper.choose_consistent_domain_opset(domain: str, opsets: Dict[str, int] | None = None) int [source]¶
Chooses a compatible opset for a particular domain given this existing one. Only works for ai.onnx.ml, otherwise return 1.
- Parameters:
domain – new domain
opsets – existing opsets
- Returns:
version
- experimental_experiment.xbuilder._onnx_helper.compatible_opsets(domain: str, op_type: str, current: int, new_version: int) bool [source]¶
Tells if two opset version for a particular operator type means the same version of it.
- Parameters:
domain – domain, only ai.onnx and ai.onnx.ml are checked.
op_type – operator type
current – current domain version
new_version – new version
- Returns:
result
- experimental_experiment.xbuilder._onnx_helper.element_wise_binary_op_types() Set[str] [source]¶
Returns the list of element-wise operators.
<<<
import pprint from experimental_experiment.xbuilder._onnx_helper import ( element_wise_binary_op_types, ) pprint.pprint(element_wise_binary_op_types())
>>>
{'Div', 'Xor', 'And', 'Mod', 'Mul', 'Add', 'Sub', 'Or'}
- experimental_experiment.xbuilder._onnx_helper.element_wise_op_cmp_types() Set[str] [source]¶
Returns the list of element-wise operators doing comparisons.
<<<
import pprint from experimental_experiment.xbuilder._onnx_helper import element_wise_op_cmp_types pprint.pprint(element_wise_op_cmp_types())
>>>
{'Greater', 'LessOrEqual', 'GreaterOrEqual', 'Less', 'Equal'}
- experimental_experiment.xbuilder._onnx_helper.enumerate_subgraphs(node: NodeProto, recursive: bool = True) Iterator[Tuple[Tuple[NodeProto, str, GraphProto], ...]] [source]¶
Returns the subgraphs inside a graph.
- experimental_experiment.xbuilder._onnx_helper.same_function_proto(f1: FunctionProto, f2: FunctionProto, verbose: int = 0) str | bool [source]¶
Compares two functions and tells if they are equal.
- Parameters:
f1 – first function
f2 – second function
verbose – to know why the comparison failed, the function returns a string in that case or True
- Returns:
comparison
They may have different names.
- experimental_experiment.xbuilder._onnx_helper.unary_like_op_types() Set[str] [source]¶
Returns the list of unary like operators. They do not change the shape. They may change the type.
<<<
import pprint from experimental_experiment.xbuilder._onnx_helper import unary_like_op_types pprint.pprint(unary_like_op_types())
>>>
{'Abs', 'Acos', 'Acosh', 'Asin', 'Asinh', 'Atan', 'Atanh', 'BitShift', 'Cast', 'CastLike', 'Ceil', 'Celu', 'Clip', 'Cos', 'Cosh', 'DequantizeLinear', 'DynamicQuantizeLinear', 'Elu', 'Erf', 'Exp', 'IsInf', 'Log', 'LogSoftmax', 'Neg', 'Not', 'PRelu', 'QuantizeLinear', 'Reciprocal', 'Relu', 'Round', 'Selu', 'Sigmoid', 'Sign', 'Sin', 'Sinh', 'Softmax', 'SoftmaxCrossEntropyLoss', 'Softplus', 'Softsign', 'Sqrt', 'Tan', 'Tanh', 'ThresholdRelu'}