:nosearch: .. _op_ai_onnx_Identity-16: Identity - version 16 ===================== This page documents version **16** of operator **Identity**. See :doc:`Identity` for the latest version (since version 25). - **Domain**: ``ai.onnx`` - **Since version**: 16 Identity operator **Inputs** - **input** (*V*): Input tensor **Outputs** - **output** (*V*): Tensor to copy input into. **Type Constraints** - **V**: Constrain input and output types to all tensor, sequence, and optional types. Allowed types: optional(seq(tensor(bool))), optional(seq(tensor(complex128))), optional(seq(tensor(complex64))), optional(seq(tensor(double))), optional(seq(tensor(float))), optional(seq(tensor(float16))), optional(seq(tensor(int16))), optional(seq(tensor(int32))), optional(seq(tensor(int64))), optional(seq(tensor(int8))), optional(seq(tensor(string))), optional(seq(tensor(uint16))), optional(seq(tensor(uint32))), optional(seq(tensor(uint64))), optional(seq(tensor(uint8))), optional(tensor(bool)), optional(tensor(complex128)), optional(tensor(complex64)), optional(tensor(double)), optional(tensor(float)), optional(tensor(float16)), optional(tensor(int16)), optional(tensor(int32)), optional(tensor(int64)), optional(tensor(int8)), optional(tensor(string)), optional(tensor(uint16)), optional(tensor(uint32)), optional(tensor(uint64)), optional(tensor(uint8)), seq(tensor(bool)), seq(tensor(complex128)), seq(tensor(complex64)), seq(tensor(double)), seq(tensor(float)), seq(tensor(float16)), seq(tensor(int16)), seq(tensor(int32)), seq(tensor(int64)), seq(tensor(int8)), seq(tensor(string)), seq(tensor(uint16)), seq(tensor(uint32)), seq(tensor(uint64)), seq(tensor(uint8)), tensor(bfloat16), tensor(bool), tensor(complex128), tensor(complex64), tensor(double), tensor(float), tensor(float16), tensor(int16), tensor(int32), tensor(int64), tensor(int8), tensor(string), tensor(uint16), tensor(uint32), tensor(uint64), tensor(uint8). Examples -------- **test_cc_identity_opt** .. code-block:: text Node: Identity(opt) -> (opt_out) .. code-block:: text Inputs: opt: shape=(5,), dtype=float32 [1., 2., 3., 4., 5.] Outputs: opt_out: shape=(1, 5), dtype=float32 [[1., 2., 3., 4., 5.]] Differences with previous version (14) -------------------------------------- **SchemaDiff**: ``Identity`` (domain ``'ai.onnx'``) * old version: 14 * new version: 16 * breaking: no **Type constraints:** * changed 'V': added types: ['optional(seq(tensor(bool)))', 'optional(seq(tensor(complex128)))', 'optional(seq(tensor(complex64)))', 'optional(seq(tensor(double)))', 'optional(seq(tensor(float)))', 'optional(seq(tensor(float16)))', 'optional(seq(tensor(int16)))', 'optional(seq(tensor(int32)))', 'optional(seq(tensor(int64)))', 'optional(seq(tensor(int8)))', 'optional(seq(tensor(string)))', 'optional(seq(tensor(uint16)))', 'optional(seq(tensor(uint32)))', 'optional(seq(tensor(uint64)))', 'optional(seq(tensor(uint8)))', 'optional(tensor(bool))', 'optional(tensor(complex128))', 'optional(tensor(complex64))', 'optional(tensor(double))', 'optional(tensor(float))', 'optional(tensor(float16))', 'optional(tensor(int16))', 'optional(tensor(int32))', 'optional(tensor(int64))', 'optional(tensor(int8))', 'optional(tensor(string))', 'optional(tensor(uint16))', 'optional(tensor(uint32))', 'optional(tensor(uint64))', 'optional(tensor(uint8))']