.helpers¶
- experimental_experiment.helpers.convert_endian(tensor: TensorProto) None[source]¶
Calls to convert endianness of raw data in tensor.
- Args:
tensor: TensorProto to be converted.
- experimental_experiment.helpers.dtype_to_tensor_dtype(dt: dtype) int[source]¶
Converts a torch dtype or numpy dtype into a onnx element type.
- Parameters:
to – dtype
- Returns:
onnx type
- experimental_experiment.helpers.flatten_object(x: Any, drop_keys: bool = False) List[Any][source]¶
Flattens the object. It accepts some common classes used in deep learning.
- Parameters:
x – any object
drop_keys – drop the keys if a dictionary is flattened. Keeps the order defined by the dictionary if False, sort them if True.
- Returns:
flattened object
- experimental_experiment.helpers.from_array_extended(tensor: ndarray, name: str | None = None) TensorProto[source]¶
Converts an array into a TensorProto.
- Parameters:
tensor – numpy array
name – name
- Returns:
TensorProto
- experimental_experiment.helpers.from_array_ml_dtypes(arr: ndarray, name: str | None = None) TensorProto[source]¶
Converts a numpy array to a tensor def assuming the dtype is defined in ml_dtypes.
- Args:
arr: a numpy array. name: (optional) the name of the tensor.
- Returns:
TensorProto: the converted tensor def.
- experimental_experiment.helpers.get_onnx_signature(model: ModelProto) Tuple[Tuple[str, Any], ...][source]¶
Produces a tuple of tuples correspinding to the signatures.
- Parameters:
model – model
- Returns:
signature
- experimental_experiment.helpers.get_sig_kwargs(f: Callable, kwargs: Dict[str, Any] | None = None) str[source]¶
Returns updated attributes.
- experimental_experiment.helpers.make_hash(obj: Any) str[source]¶
Returns a simple hash of
id(obj)in four letters.
- experimental_experiment.helpers.make_idg(g: GraphProto) str[source]¶
Creates a unique id for a graph hoping collision cannot happen. onnx may reuse sometimes the nodes,
id(node)may not be enough sometimes.
- experimental_experiment.helpers.make_idn(node: NodeProto) str[source]¶
Creates a unique id for a node hoping collision cannot happen. onnx may reuse sometimes the nodes,
id(node)may not be enough sometimes.
- experimental_experiment.helpers.np_dtype_to_tensor_dtype(dt: dtype) int[source]¶
Converts a numpy dtype into a onnx element type.
- Parameters:
to – dtype
- Returns:
onnx type
- experimental_experiment.helpers.onnx_dtype_name(itype: int) str[source]¶
Returns the ONNX name for a specific element type.
- experimental_experiment.helpers.onnx_dtype_to_torch_dtype(itype: int) torch.dtype[source]¶
Converts an onnx type into a torch dtype.
- Parameters:
to – onnx dtype
- Returns:
torch dtype
- experimental_experiment.helpers.pretty_onnx(onx: FunctionProto | GraphProto | ModelProto | ValueInfoProto | str, with_attributes: bool = False, highlight: Set[str] | None = None) str[source]¶
Displays an onnx prot in a better way.
- Parameters:
with_attributes – displays attributes as well, if only a node is printed
highlight – to highlight some names
- Returns:
text
- experimental_experiment.helpers.size_type(dtype: Any) int[source]¶
Returns the element size for an element type.
- experimental_experiment.helpers.string_diff(diff: Dict[str, Any]) str[source]¶
Renders discrepancies return by
onnx_diagnostic.helpers.max_diff()into one string.
- experimental_experiment.helpers.string_sig(f: Callable, kwargs: Dict[str, Any] | None = None) str[source]¶
Displays the signature of a function. Parameters are displayed if the given value is different from the default one.
- experimental_experiment.helpers.string_signature(sig: Any) str[source]¶
Displays the signature of a functions.
- experimental_experiment.helpers.string_type(obj: Any, with_shape: bool = False, with_min_max: bool = False, with_device: bool = False, ignore: bool = False, limit: int = 10) str[source]¶
Displays the types of an object as a string.
- Parameters:
obj – any
with_shape – displays shapes as well
with_min_max – displays information about the values
with_device – display the device
ignore – if True, just prints the type for unknown types
- Returns:
str
<<<
from experimental_experiment.helpers import string_type print(string_type((1, ["r", 6.6])))
>>>
(int,#2[str,float])
- experimental_experiment.helpers.tensor_dtype_to_np_dtype(tensor_dtype: int) dtype[source]¶
Converts a TensorProto’s data_type to corresponding numpy dtype. It can be used while making tensor.
- Parameters:
tensor_dtype – TensorProto’s data_type
- Returns:
numpy’s data_type
- experimental_experiment.helpers.torch_dtype_to_onnx_dtype(to: torch.dtype) int[source]¶
Converts a torch dtype into a onnx element type.
- Parameters:
to – torch dtype
- Returns:
onnx type