形状

将输入张量的形状输出到输出张量中。

输入

input: 类型为 T1 的张量。

输出

output: 类型为 T2 的张量。

数据类型

T1: bool, int4, int8, int32, int64, float8, float16, float32, bfloat16

T2: int64

形状信息

input 是形状为 \([a_0,...,a_n]\) 的张量,\(n \geq 0\)

output 是一个形状张量,其值为 \([a_0,...,a_n]\);当 \(n = 0\) 时,output 是一个空张量。有关形状张量的更多信息,请参阅 执行张量 vs. 形状张量

示例

形状 (Shape)
in1 = network.add_input("input1", dtype=trt.float32, shape=(1, 5, 2, 2))
shape = network.add_shape(in1)
network.mark_output(shape.get_output(0))

inputs[in1.name] = np.zeros(shape=(1, 5, 2, 2))

outputs[shape.get_output(0).name] = shape.get_output(0).shape
expected[shape.get_output(0).name] = np.array([1, 5, 2, 2])

C++ API

有关 C++ IShapeLayer 算子的更多信息,请参阅 C++ IShapeLayer 文档

Python API

有关 Python IShapeLayer 算子的更多信息,请参阅 Python IShapeLayer 文档