val

onnx_ir.val(name, dtype=None, shape=None, *, type=None, const_value=None, metadata_props=None)

创建一个具有给定名称和类型的 Value

这是一个方便的构造函数,用于创建 Value,它允许您以更宽松的方式指定 dtype 和 shape。而直接创建 Value 需要您首先创建 TypeProtocolShape 对象,此函数允许您将 dtype 指定为 DataType,并将 shape 指定为整数或符号维度的序列。

示例

>>> import onnx_ir as ir
>>> t = ir.val("x", ir.DataType.FLOAT, ["N", 42, 3])
>>> t.name
'x'
>>> t.type
Tensor(FLOAT)
>>> t.shape
Shape([SymbolicDim(N), 42, 3])

0.1.9 版本中新增。

参数:
  • name (str | None) – 值的名称。

  • dtype (ir.DataType | None) – 值的 TensorType 的数据类型。仅当 type 为 None 时使用。

  • shape (ir.Shape | Sequence[int | str | None] | None) – 值的形状。

  • type (ir.TypeProtocol | None) – 值的类型。dtype 和 type 只能指定其中一个。

  • const_value (ir.TensorProtocol | None) – 初始化值的常量张量。当您想创建初始化器时提供此参数。类型和形状可以从张量中获取。

  • metadata_props (dict[str, str] | None) – 将序列化到 ONNX proto 的元数据属性。

返回:

一个 Value 对象。

返回类型:

ir.Value