JitScalarType¶
- class torch.onnx.JitScalarType(value)¶
在 torch 中定義的純量類型。
使用
JitScalarType
從 torch 和 JIT 純量類型轉換為 ONNX 純量類型。範例
>>> JitScalarType.from_value(torch.ones(1, 2)).onnx_type() TensorProtoDataType.FLOAT
>>> JitScalarType.from_value(torch_c_value_with_type_float).onnx_type() TensorProtoDataType.FLOAT
>>> JitScalarType.from_dtype(torch.get_default_dtype).onnx_type() TensorProtoDataType.FLOAT
- classmethod from_dtype(dtype)[原始碼][原始碼]¶
將 torch dtype 轉換為 JitScalarType。
- 注意:當 dtype 來自 torch._C.Value.type() 呼叫時,請勿使用此 API。
在某些形狀資訊不存在的情況下,可能會引發「RuntimeError: INTERNAL ASSERT FAILED at “../aten/src/ATen/core/jit_type_base.h”」。 請改用更安全的 from_value API。
- 參數
dtype (torch.dtype | None) – 用於建立 JitScalarType 的 torch.dtype
- 回傳
JitScalarType
- 引發
OnnxExporterError – 如果 dtype 不是有效的 torch.dtype,或為 None。
- 回傳類型
- classmethod from_onnx_type(onnx_type)[原始碼][原始碼]¶
將 ONNX 資料類型轉換為 JitScalarType。
- 參數
onnx_type (int | _C_onnx.TensorProtoDataType | None) – 用於建立 JitScalarType 的 torch._C._onnx.TensorProtoDataType
- 回傳
JitScalarType
- 引發
OnnxExporterError – 如果 dtype 不是有效的 torch.dtype,或為 None。
- 回傳類型
- classmethod from_value(value, default=None)[原始碼][原始碼]¶
從值的純量類型建立 JitScalarType。
- 參數
value (None | torch._C.Value | torch.Tensor) – 從中獲取純量類型的物件。
default – 如果無法從 value 獲取有效的純量,則回傳的 JitScalarType
- 回傳
JitScalarType。
- 引發
OnnxExporterError – 如果 value 沒有有效的純量類型,且 default 為 None。
SymbolicValueError – 當 value.type() 的資訊為空,且 default 為 None 時
- 回傳類型
- scalar_name()[原始碼][原始碼]¶
將 JitScalarType 轉換為 JIT 純量類型名稱。
- 回傳類型
Literal[‘Byte’, ‘Char’, ‘Double’, ‘Float’, ‘Half’, ‘Int’, ‘Long’, ‘Short’, ‘Bool’, ‘ComplexHalf’, ‘ComplexFloat’, ‘ComplexDouble’, ‘QInt8’, ‘QUInt8’, ‘QInt32’, ‘BFloat16’, ‘Float8E5M2’, ‘Float8E4M3FN’, ‘Float8E5M2FNUZ’, ‘Float8E4M3FNUZ’, ‘Undefined’]
- torch_name()[原始碼][原始碼]¶
將 JitScalarType 轉換為 torch 類型名稱。
- 回傳類型
Literal[‘bool’, ‘uint8_t’, ‘int8_t’, ‘double’, ‘float’, ‘half’, ‘int’, ‘int64_t’, ‘int16_t’, ‘complex32’, ‘complex64’, ‘complex128’, ‘qint8’, ‘quint8’, ‘qint32’, ‘bfloat16’, ‘float8_e5m2’, ‘float8_e4m3fn’, ‘float8_e5m2fnuz’, ‘float8_e4m3fnuz’]