IRs¶
PyTorch 2.0 为后端提供两组 IR 以供交互:Core Aten IR 和 Prims IR。
Core Aten IR¶
Core aten ops 是 aten 运算符的核心子集,可用于组合其他运算符。Core aten IR 功能齐全,此 opset 中没有 inplace 或 _out 变体。与 Prims IR 相比,core aten ops 重用了 “native_functions.yaml” 中现有的 aten ops,并且没有将 ops 进一步分解为显式类型提升和广播 ops。此 opset 旨在用作与后端交互的功能性 IR。
警告
此 opset 仍在积极开发中,将来会添加更多 ops。
运算符 |
模式 |
---|---|
|
_adaptive_avg_pool2d(Tensor self, SymInt[2] output_size) -> Tensor |
|
_adaptive_avg_pool2d_backward(Tensor grad_output, Tensor self) -> Tensor |
|
_adaptive_avg_pool3d(Tensor self, SymInt[3] output_size) -> Tensor |
|
_cdist_forward(Tensor x1, Tensor x2, float p, int? compute_mode) -> Tensor |
|
_embedding_bag(Tensor weight, Tensor indices, Tensor offsets, bool scale_grad_by_freq=False, int mode=0, bool sparse=False, Tensor? per_sample_weights=None, bool include_last_offset=False, int padding_idx=-1) -> (Tensor, Tensor, Tensor, Tensor) |
|
_local_scalar_dense(Tensor self) -> Scalar |
|
_log_softmax(Tensor self, int dim, bool half_to_float) -> Tensor |
|
_native_batch_norm_legit(Tensor input, Tensor? weight, Tensor? bias, Tensor(a!) running_mean, Tensor(b!) running_var, bool training, float momentum, float eps) -> (Tensor, Tensor, Tensor) |
|
_native_batch_norm_legit.no_stats(Tensor input, Tensor? weight, Tensor? bias, bool training, float momentum, float eps) -> (Tensor, Tensor, Tensor) |
|
_native_batch_norm_legit_no_training(Tensor input, Tensor? weight, Tensor? bias, Tensor running_mean, Tensor running_var, float momentum, float eps) -> (Tensor, Tensor, Tensor) |
|
_pdist_forward(Tensor self, float p=2) -> Tensor |
|
_softmax(Tensor self, int dim, bool half_to_float) -> Tensor |
|
_to_copy(Tensor self, *, ScalarType? dtype=None, Layout? layout=None, Device? device=None, bool? pin_memory=None, bool non_blocking=False, MemoryFormat? memory_format=None) -> Tensor |
|
abs(Tensor self) -> Tensor |
|
acos(Tensor self) -> Tensor |
|
acosh(Tensor self) -> Tensor |
|
adaptive_avg_pool1d(Tensor self, int[1] output_size) -> Tensor |
|
add.Scalar(Tensor self, Scalar other, Scalar alpha=1) -> Tensor |
|
add.Tensor(Tensor self, Tensor other, *, Scalar alpha=1) -> Tensor |
|
addmm(Tensor self, Tensor mat1, Tensor mat2, *, Scalar beta=1, Scalar alpha=1) -> Tensor |
|
alias(Tensor(a) self) -> Tensor(a) |
|
amax(Tensor self, int[1] dim=[], bool keepdim=False) -> Tensor |
|
amin(Tensor self, int[1] dim=[], bool keepdim=False) -> Tensor |
|
any(Tensor self) -> Tensor |
|
any.dim(Tensor self, int dim, bool keepdim=False) -> Tensor |
|
any.dims(Tensor self, int[]? dim=None, bool keepdim=False) -> Tensor |
|
arange.start_step(Scalar start, Scalar end, Scalar step=1, *, ScalarType? dtype=None, Layout? layout=None, Device? device=None, bool? pin_memory=None) -> Tensor |
|
argmax(Tensor self, int? dim=None, bool keepdim=False) -> Tensor |
|
argmin(Tensor self, int? dim=None, bool keepdim=False) -> Tensor |
|
as_strided(Tensor(a) self, SymInt[] size, SymInt[] stride, SymInt? storage_offset=None) -> Tensor(a) |
|
asin(Tensor self) -> Tensor |
|
asinh(Tensor self) -> Tensor |
|
atan(Tensor self) -> Tensor |
|
atan2(Tensor self, Tensor other) -> Tensor |
|
atan2.out(Tensor self, Tensor other, *, Tensor(a!) out) -> Tensor(a!) |
|
atanh(Tensor self) -> Tensor |
|
avg_pool1d(Tensor self, int[1] kernel_size, int[1] stride=[], int[1] padding=0, bool ceil_mode=False, bool count_include_pad=True) -> Tensor |
|
avg_pool2d(Tensor self, int[2] kernel_size, int[2] stride=[], int[2] padding=0, bool ceil_mode=False, bool count_include_pad=True, int? divisor_override=None) -> Tensor |
|
avg_pool2d_backward(Tensor grad_output, Tensor self, int[2] kernel_size, int[2] stride, int[2] padding, bool ceil_mode, bool count_include_pad, int? divisor_override) -> Tensor |
|
avg_pool3d(Tensor self, int[3] kernel_size, int[3] stride=[], int[3] padding=0, bool ceil_mode=False, bool count_include_pad=True, int? divisor_override=None) -> Tensor |
|
bitwise_and.Scalar(Tensor self, Scalar other) -> Tensor |
|
bitwise_and.Tensor(Tensor self, Tensor other) -> Tensor |
|
bitwise_not(Tensor self) -> Tensor |
|
bitwise_or.Scalar(Tensor self, Scalar other) -> Tensor |
|
bitwise_or.Tensor(Tensor self, Tensor other) -> Tensor |
|
bitwise_xor.Scalar(Tensor self, Scalar other) -> Tensor |
|
bitwise_xor.Tensor(Tensor self, Tensor other) -> Tensor |
|
bmm(Tensor self, Tensor mat2) -> Tensor |
|
cat(Tensor[] tensors, int dim=0) -> Tensor |
|
ceil(Tensor self) -> Tensor |
|
clamp(Tensor self, Scalar? min=None, Scalar? max=None) -> Tensor |
|
clamp.Tensor(Tensor self, Tensor? min=None, Tensor? max=None) -> Tensor |
|
clone(Tensor self, *, MemoryFormat? memory_format=None) -> Tensor |
|
col2im(张量 self, SymInt[2] 输出大小, int[2] 内核大小, int[2] 膨胀, int[2] 填充, int[2] 步长) -> 张量 |
|
constant_pad_nd(张量 self, SymInt[] 填充, 标量 value=0) -> 张量 |
|
convolution(张量 输入, 张量 权重, 张量? 偏置, SymInt[] 步长, SymInt[] 填充, SymInt[] 膨胀, bool 转置, SymInt[] 输出填充, SymInt 组) -> 张量 |
|
convolution_backward(张量 梯度输出, 张量 输入, 张量 权重, SymInt[]? 偏置尺寸, SymInt[] 步长, SymInt[] 填充, SymInt[] 膨胀, bool 转置, SymInt[] 输出填充, SymInt 组, bool[3] 输出掩码) -> (张量, 张量, 张量) |
|
copy(张量 self, 张量 源, bool 非阻塞=False) -> 张量 |
|
cos(张量 self) -> 张量 |
|
cosh(张量 self) -> 张量 |
|
cumsum(张量 self, int 维度, *, 标量类型? dtype=None) -> 张量 |
|
diagonal(张量(a) self, int 偏移量=0, int 维度1=0, int 维度2=1) -> 张量(a) |
|
div.Scalar(张量 self, 标量 其他) -> 张量 |
|
div.Scalar_mode(张量 self, 标量 其他, *, str? 四舍五入模式) -> 张量 |
|
div.Tensor(张量 self, 张量 其他) -> 张量 |
|
div.Tensor_mode(张量 self, 张量 其他, *, str? 四舍五入模式) -> 张量 |
|
embedding(张量 权重, 张量 索引, SymInt 填充索引=-1, bool 按频率缩放梯度=False, bool 稀疏=False) -> 张量 |
|
embedding_dense_backward(张量 梯度输出, 张量 索引, SymInt 权重数量, SymInt 填充索引, bool 按频率缩放梯度) -> 张量 |
|
empty.memory_format(SymInt[] 大小, *, 标量类型? dtype=None, 布局? 布局=None, 设备? 设备=None, bool? 固定内存=None, 内存格式? 内存格式=None) -> 张量 |
|
empty_strided(SymInt[] 大小, SymInt[] 步长, *, 标量类型? dtype=None, 布局? 布局=None, 设备? 设备=None, bool? 固定内存=None) -> 张量 |
|
eq.Scalar(张量 self, 标量 其他) -> 张量 |
|
eq.Tensor(张量 self, 张量 其他) -> 张量 |
|
erf(张量 self) -> 张量 |
|
exp(张量 self) -> 张量 |
|
expand(张量(a) self, SymInt[] 大小, *, bool 隐式=False) -> 张量(a) |
|
expm1(张量 self) -> 张量 |
|
fill.Scalar(张量 self, 标量 值) -> 张量 |
|
flip(张量 self, int[] 维度) -> 张量 |
|
floor(张量 self) -> 张量 |
|
fmod.Scalar(张量 self, 标量 其他) -> 张量 |
|
fmod.Tensor(张量 self, 张量 其他) -> 张量 |
|
full(SymInt[] 大小, 标量 填充值, *, 标量类型? dtype=None, 布局? 布局=None, 设备? 设备=None, bool? 固定内存=None) -> 张量 |
|
gather(张量 self, int 维度, 张量 索引, *, bool 稀疏梯度=False) -> 张量 |
|
ge.Scalar(张量 self, 标量 其他) -> 张量 |
|
ge.Tensor(张量 self, 张量 其他) -> 张量 |
|
gelu(张量 self, *, str 近似值='none') -> 张量 |
|
grid_sampler_2d(张量 输入, 张量 网格, int 插值模式, int 填充模式, bool 对齐角点) -> 张量 |
|
gt.Scalar(张量 self, 标量 其他) -> 张量 |
|
gt.Tensor(张量 self, 张量 其他) -> 张量 |
|
hardtanh(张量 self, 标量 最小值=-1, 标量 最大值=1) -> 张量 |
|
index.Tensor(张量 self, 张量?[] 索引) -> 张量 |
|
index_put(张量 self, 张量?[] 索引, 张量 值, bool 累加=False) -> 张量 |
|
index_select(张量 self, int 维度, 张量 索引) -> 张量 |
|
isinf(张量 self) -> 张量 |
|
isnan(张量 self) -> 张量 |
|
le.Scalar(张量 self, 标量 其他) -> 张量 |
|
le.Tensor(张量 self, 张量 其他) -> 张量 |
|
leaky_relu(张量 self, 标量 负斜率=0.01) -> 张量 |
|
log(张量 self) -> 张量 |
|
log10(张量 self) -> 张量 |
|
log1p(张量 self) -> 张量 |
|
log2(张量 self) -> 张量 |
|
logical_and(张量 self, 张量 其他) -> 张量 |
|
logical_not(张量 self) -> 张量 |
|
logical_or(张量 self, 张量 其他) -> 张量 |
|
logical_xor(张量 self, 张量 其他) -> 张量 |
|
lt.Scalar(张量 self, 标量 其他) -> 张量 |
|
lt.Tensor(张量 self, 张量 其他) -> 张量 |
|
max.dim(张量 self, int 维度, bool 保留维度=False) -> (张量 值, 张量 索引) |
|
max_pool2d_with_indices(张量 self, int[2] 内核大小, int[2] 步长=[], int[2] 填充=0, int[2] 膨胀=1, bool 上限模式=False) -> (张量, 张量) |
|
max_pool2d_with_indices_backward(张量 梯度输出, 张量 self, int[2] 内核大小, int[2] 步长, int[2] 填充, int[2] 膨胀, bool 上限模式, 张量 索引) -> 张量 |
|
max_pool3d_with_indices(张量 self, int[3] 内核大小, int[3] 步长=[], int[3] 填充=0, int[3] 膨胀=1, bool 上限模式=False) -> (张量, 张量) |
|
maximum(张量 self, 张量 其他) -> 张量 |
|
mean(张量 self, *, 标量类型? dtype=None) -> 张量 |
|
mean.dim(张量 self, int[1]? 维度, bool 保留维度=False, *, 标量类型? dtype=None) -> 张量 |
|
min.dim(张量 self, int 维度, bool 保留维度=False) -> (张量 值, 张量 索引) |
|
minimum(张量 self, 张量 其他) -> 张量 |
|
mm(张量 self, 张量 mat2) -> 张量 |
|
mul.Scalar(张量 self, 标量 其他) -> 张量 |
|
mul.Tensor(张量 self, 张量 其他) -> 张量 |
|
native_dropout(张量 输入, float p, bool? 训练) -> (张量, 张量) |
|
native_group_norm(张量 输入, 张量? 权重, 张量? 偏置, SymInt N, SymInt C, SymInt HxW, int 组, float eps) -> (张量, 张量, 张量) |
|
native_group_norm_backward(张量 梯度输出, 张量 输入, 张量 均值, 张量 rstd, 张量? 权重, SymInt N, SymInt C, SymInt HxW, int 组, bool[3] 输出掩码) -> (张量, 张量, 张量) |
|
native_layer_norm(张量 输入, SymInt[] 标准化形状, 张量? 权重, 张量? 偏置, float eps) -> (张量, 张量, 张量) |
|
native_layer_norm_backward(张量 梯度输出, 张量 输入, SymInt[] 标准化形状, 张量 均值, 张量 rstd, 张量? 权重, 张量? 偏置, bool[3] 输出掩码) -> (张量, 张量, 张量) |
|
ne.Scalar(张量 self, 标量 其他) -> 张量 |
|
ne.Tensor(张量 self, 张量 其他) -> 张量 |
|
neg(张量 self) -> 张量 |
|
nonzero(张量 self) -> 张量 |
|
permute(张量(a) self, int[] 维度) -> 张量(a) |
|
pow.Scalar(标量 self, 张量 指数) -> 张量 |
|
pow.Tensor_Scalar(张量 self, 标量 指数) -> 张量 |
|
pow.Tensor_Tensor(张量 self, 张量 指数) -> 张量 |
|
prod(张量 self, *, 标量类型? dtype=None) -> 张量 |
|
prod.dim_int(张量 self, int 维度, bool 保留维度=False, *, 标量类型? dtype=None) -> 张量 |
|
rand(SymInt[] 大小, *, 标量类型? dtype=None, 布局? 布局=None, 设备? 设备=None, bool? 固定内存=None) -> 张量 |
|
randn(SymInt[] 大小, *, 标量类型? dtype=None, 布局? 布局=None, 设备? 设备=None, bool? 固定内存=None) -> 张量 |
|
randperm(SymInt n, *, 标量类型? dtype=long, 布局? 布局=None, 设备? 设备=None, bool? 固定内存=None) -> 张量 |
|
reciprocal(张量 self) -> 张量 |
|
reflection_pad1d(张量 self, SymInt[2] 填充) -> 张量 |
|
reflection_pad2d(张量 self, SymInt[4] 填充) -> 张量 |
|
reflection_pad3d(张量 self, SymInt[6] 填充) -> 张量 |
|
relu(张量 self) -> 张量 |
|
remainder.Scalar(张量 self, 标量 其他) -> 张量 |
|
remainder.Tensor(张量 self, 张量 其他) -> 张量 |
|
repeat(张量 self, SymInt[] 重复次数) -> 张量 |
|
replication_pad2d(张量 self, SymInt[4] 填充) -> 张量 |
|
replication_pad3d(张量 self, SymInt[6] 填充) -> 张量 |
|
resize_(张量(a!) self, SymInt[] 大小, *, 内存格式? 内存格式=None) -> 张量(a!) |
|
round(张量 self) -> 张量 |
|
rsqrt(张量 self) -> 张量 |
|
scalar_tensor(标量 s, *, 标量类型? dtype=None, 布局? 布局=None, 设备? 设备=None, bool? 固定内存=None) -> 张量 |
|
scatter.src(张量 self, int 维度, 张量 索引, 张量 源) -> 张量 |
|
scatter.value(张量 self, int 维度, 张量 索引, 标量 值) -> 张量 |
|
scatter_add(张量 self, int 维度, 张量 索引, 张量 源) -> 张量 |
|
scatter_reduce.two(张量 self, int 维度, 张量 索引, 张量 源, str 减少, *, bool 包含自身=True) -> 张量 |
|
select.int(张量(a) self, int 维度, SymInt 索引) -> 张量(a) |
|
select_scatter(张量 self, 张量 源, int 维度, SymInt 索引) -> 张量 |
|
sigmoid(张量 self) -> 张量 |
|
sign(张量 self) -> 张量 |
|
sin(张量 self) -> 张量 |
|
sinh(张量 self) -> 张量 |
|
slice.Tensor(张量(a) self, int 维度=0, SymInt? 开始=None, SymInt? 结束=None, SymInt 步长=1) -> 张量(a) |
|
slice_scatter(张量 self, 张量 源, int 维度=0, SymInt? 开始=None, SymInt? 结束=None, SymInt 步长=1) -> 张量 |
|
sort(张量 self, int 维度=-1, bool 降序=False) -> (张量 值, 张量 索引) |
|
split_with_sizes(张量(a -> *) self, SymInt[] 拆分尺寸, int 维度=0) -> 张量(a)[] |
|
sqrt(张量 self) -> 张量 |
|
squeeze.dim(张量(a) self, int 维度) -> 张量(a) |
|
squeeze.dims(张量(a) self, int[] 维度) -> 张量(a) |
|
sub.Scalar(张量 self, 标量 其他, 标量 alpha=1) -> 张量 |
|
sub.Tensor(张量 self, 张量 其他, *, 标量 alpha=1) -> 张量 |
|
sum.dim_IntList(张量 self, int[1]? 维度, bool 保留维度=False, *, 标量类型? dtype=None) -> 张量 |
|
sym_numel(张量 self) -> SymInt |
|
sym_size.int(张量 self, int 维度) -> SymInt |
|
sym_storage_offset(张量 self) -> SymInt |
|
sym_stride.int(张量 self, int 维度) -> SymInt |
|
tan(张量 self) -> 张量 |
|
tanh(张量 self) -> 张量 |
|
topk(张量 self, SymInt k, int 维度=-1, bool 最大值=True, bool 排序=True) -> (张量 值, 张量 索引) |
|
trunc(张量 self) -> 张量 |
|
unsqueeze(张量(a) self, int 维度) -> 张量(a) |
|
upsample_bilinear2d.vec(张量 输入, SymInt[]? 输出大小, bool 对齐角点, float[]? 缩放因子) -> 张量 |
|
upsample_nearest2d.vec(张量 输入, SymInt[]? 输出大小, float[]? 缩放因子) -> 张量 |
|
var.correction(张量 self, int[1]? 维度=None, *, 标量? 校正=None, bool 保留维度=False) -> 张量 |
|
var.dim(张量 self, int[1]? 维度, bool 无偏=True, bool 保留维度=False) -> 张量 |
|
view(张量(a) self, SymInt[] 大小) -> 张量(a) |
|
where.self(张量 条件, 张量 self, 张量 其他) -> 张量 |
Prims IR¶
Prims IR 是一组可以用来组合其他运算符的原始运算符。Prims IR 比 core aten IR 更底层,它将运算进一步分解为显式的类型提升和广播运算:prims.convert_element_type 和 prims.broadcast_in_dim。此运算符集旨在与编译器后端进行交互。
警告
此 opset 仍在积极开发中,将来会添加更多 ops。
运算符 |
模式 |
---|---|
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self, Scalar value) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor(a) self) -> Tensor(a) |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor(a) self) -> Tensor(a) |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self, Tensor other) -> Tensor |
|
(Tensor self, Tensor other) -> Tensor |
|
(Tensor self, Tensor other) -> Tensor |
|
(Tensor self, Tensor other) -> Tensor |
|
(Tensor self, Tensor other) -> Tensor |
|
(Tensor self, Tensor other) -> Tensor |
|
(Tensor self, Tensor other) -> Tensor |
|
(Tensor self, Tensor other) -> Tensor |
|
(Tensor self, Tensor other) -> Tensor |
|
(Tensor self, Tensor other) -> Tensor |
|
(Tensor self) -> (Tensor mantissa, Tensor exponent) |
|
(Tensor self, Tensor other) -> Tensor |
|
(Tensor self, Tensor other) -> Tensor |
|
(Tensor self, Tensor other) -> Tensor |
|
(Tensor self, Tensor other) -> Tensor |
|
(Tensor self, Tensor other) -> Tensor |
|
(Tensor self, Tensor other) -> Tensor |
|
(Tensor self, Tensor other) -> Tensor |
|
(Tensor self, Tensor other) -> Tensor |
|
(Tensor self, Tensor other) -> Tensor |
|
(Tensor self, Tensor other) -> Tensor |
|
(Tensor self, Tensor other) -> Tensor |
|
(Tensor self, Tensor other) -> Tensor |
|
(Tensor self, Tensor other) -> Tensor |
|
(Tensor self, Tensor other) -> Tensor |
|
(Tensor self, Tensor other) -> Tensor |
|
(Tensor self) -> Tensor |
|
(Tensor self, Tensor other) -> Tensor |
|
(Tensor self, Tensor other) -> Tensor |
|
(Tensor self, Tensor other) -> Tensor |
|
(Tensor self, Tensor other) -> Tensor |
|
(Tensor(a!) a, SymInt[] size, SymInt[] stride, SymInt storage_offset) -> Tensor(a!) |
|
(Tensor(a) a, SymInt[] shape, int[] broadcast_dimensions) -> Tensor(a) |
|
(Tensor(a) a, int start, int end) -> Tensor(a) |
|
(Tensor(a) a) -> Tensor(a) |
|
(Tensor(a) a, SymInt[] start_indices, SymInt[] limit_indices, SymInt[]? strides=None) -> Tensor(a) |
|
(Tensor(a) a, SymInt start_index, SymInt limit_index, int stride=1, int axis=0) -> Tensor(a) |
|
(Tensor(a) a, int dim, SymInt outer_length) -> Tensor(a) |
|
(Tensor(a) a, int[] dimensions) -> Tensor(a) |
|
(Tensor(a) a, int[] permutation) -> Tensor(a) |
|
(Tensor(a) a) -> Tensor(a) |
|
(Tensor(a) a, ScalarType dtype) -> Tensor(a) |
|
(Tensor self, Tensor src, SymInt[] size, SymInt[] stride, SymInt storage_offset) -> Tensor |
|
(Tensor a, int start, int end) -> Tensor |
|
(Tensor[] tensors, int dim) -> Tensor |
|
(Tensor a, SymInt[] shape) -> Tensor |
|
(Tensor a, int[] dims) -> Tensor |
|
(Tensor pred, Tensor a, Tensor b) -> Tensor |
|
(Tensor self, *, MemoryFormat? memory_format=None) -> Tensor |
|
(Tensor a, ScalarType dtype) -> Tensor |
|
(Tensor a, Device device) -> Tensor |
|
(Tensor a) -> Scalar |
|
(ScalarType dtype) -> Scalar |
|
(ScalarType dtype) -> Scalar |
|
(Tensor a, SymInt[] stride) -> Tensor |
|
(Tensor(a!) a, Tensor b) -> Tensor(a!) |
|
(Tensor(a!) a, SymInt[] shape) -> Tensor(a!) |
|
(Tensor inp, int[]? dims, *, ScalarType? output_dtype=None) -> Tensor |
|
(Tensor inp, int[]? dims, *, ScalarType? output_dtype=None) -> Tensor |
|
(Tensor inp, int[]? dims, *, ScalarType? output_dtype=None) -> Tensor |
|
(Tensor inp, int[]? dims, *, ScalarType? output_dtype=None) -> Tensor |
|
(Tensor inp, int[]? dims, *, ScalarType? output_dtype=None) -> Tensor |
|
(Tensor inp, int[]? dims, float? correction=1, *, ScalarType? output_dtype=None) -> Tensor |
|
(SymInt[] shape, SymInt[] strides, *, ScalarType dtype, Device device, bool requires_grad) -> Tensor |
|
(SymInt[] shape, int[] physical_layout, *, ScalarType dtype, Device device, bool requires_grad) -> Tensor |
|
(Scalar s, *, ScalarType? dtype=None, Device? device=None) -> Tensor |
|
(SymInt length, *, SymInt start, SymInt step, ScalarType dtype, Device device, bool requires_grad) -> Tensor |
|
(Tensor A, *, bool full_matrices) -> (Tensor U, Tensor S, Tensor Vh) |
|
(SymInt[] shape, *, Scalar mean, Scalar std, ScalarType dtype, Device device, bool requires_grad, Generator? generator=None) -> Tensor |
|
(SymInt[] shape, *, Scalar low, Scalar high, ScalarType dtype, Device device, Generator? generator=None) -> Tensor |
|
(Tensor self, *, int[] dim, bool onesided) -> Tensor |
|
(Tensor self, *, int[] dim, bool forward) -> Tensor |
|
(Tensor self, *, int[] dim, SymInt last_dim_size) -> Tensor |
|
() -> Tensor |
|
(Tensor[] tokens) -> () |