mindspore.ops.primitive
operators that can be used for constructor function of Cell
For more information about dynamic shape support status, please refer to Dynamic Shape Support Status of primitive Interface .
For more information about the support for the bfloat16 data type, please refer to Support List .
For the details about the usage constraints of each operator in the operator parallel process, refer to Usage Constraints During Operator Parallel .
The module import method is as follows:
import mindspore.ops as ops
Compared with the previous version, the added, deleted and supported platforms change information of mindspore.ops.primitive operators in MindSpore, please refer to the link mindspore.ops.primitive API Interface Change .
Operator Primitives
Primitive is the base class of operator primitives in python. 

PrimitiveWithCheck is the base class of primitives in python, which defines functions to check the input arguments of operators, but uses the infer method registered in c++ source codes. 

PrimitiveWithInfer is the base class of primitives in python and defines functions for tracking inference in python. 
Neural Network Layer Operators
Neural Network
API Name 
Description 
Supported Platforms 
Warning 
Average pooling operation. 

None 

3D Average pooling operation. 

"kernel_size" is in the range [1, 255]. "strides" is in the range [1, 63]. 

Batch Normalization for input data and updated parameters. 

If the operation is used for inference, and outputs "reserve_space_1" and "reserve_space_2" are available, then "reserve_space_1" has the same value as "mean" and "reserve_space_2" has the same value as "variance". For Ascend 310, the result accuracy fails to reach 1‰ due to the square root instruction. 

2D convolution layer. 

None 

Calculates a 2D transposed convolution, which can be regarded as Conv2d for the gradient of the input, also called deconvolution, although it is not an actual deconvolution. 

None 

3D convolution layer. 

None 

Computes a 3D transposed convolution, which is also known as a deconvolution (although it is not an actual deconvolution). 

None 

Performs greedy decoding on the logits given in inputs. 

None 

Refer to 

None 

During training, randomly zeroes some of the elements of the input tensor with probability \(1  keep\_prob\) from a Bernoulli distribution. 

The Ascend backend does not support the reproducibility of random numbers, so the Seed0 and Seed1 parameter have no effect. 

During training, randomly zeroes some channels of the input tensor with probability \(1keep\_prob\) from a Bernoulli distribution(For a 4dimensional tensor with a shape of \((N, C, H, W)\), the channel feature map refers to a 2dimensional feature map with the shape of \((H, W)\)). 

None 

During training, randomly zeroes some channels of the input tensor with probability \(1keep\_prob\) from a Bernoulli distribution(For a 5dimensional tensor with a shape of NCDHW, the channel feature map refers to a 3dimensional feature map with a shape of DHW). 

None 

Applies a singlelayer gated recurrent unit (GRU) to an input sequence. 

None 

Applies a recurrent neural network to the input. 

None 

Flattens a tensor without changing its batch size on the 0th axis. 

None 

Applies a 3D fractional max pooling to an input signal composed of multiple input planes. 

This is an experimental API that is subject to change or deletion. 

This operation samples 2d input_x by using interpolation based on flow field grid, which is usually gennerated by 

This is an experimental API that is subject to change or deletion. 

Given an input and a grid, the output is calculated using the input values and pixel positions in the grid. 

This is an experimental API that is subject to change or deletion. 

Applies the Layer Normalization to the input tensor. 

None 

Local Response Normalization. 

LRN is deprecated on Ascend due to potential accuracy problem. It's recommended to use other normalization methods, e.g. 

Performs the Long ShortTerm Memory (LSTM) on the input. 

None 

Max pooling operation. 

None 

Applies a 3D max pooling over an input Tensor which can be regarded as a composition of 3D planes. 

None 

Performs a 3D max pooling on the input Tensor and returns both max values and indices. 

This is an experimental API that is subject to change or deletion. 

Calculates the partial inverse of MaxPool2D operation. 

This is an experimental API that is subject to change or deletion. 

Computes the inverse of 

This is an experimental API that is subject to change or deletion. 

Pads the input tensor according to the paddings and mode. 

None 

Pads the input tensor according to the paddings. 

None 

Returns a slice of input tensor based on the specified indices. 

None 

Extends the last dimension of the input tensor from 1 to pad_dim_size, by filling with 0. 

None 

Resize images to size using bicubic interpolation. 

This is an experimental API that is subject to change or deletion. 

Resizes the input tensor to a given size by using the nearest neighbor algorithm. 

None 
Loss Function
API Name 
Description 
Supported Platforms 
Warning 
Adds sigmoid activation function to input as logits, and uses the given logits to compute binary cross entropy between the logits and the target. 

None 

Computes the binary cross entropy between the logits and the labels. 

The value of \(x\) must range from 0 to 1. 

Calculates the CTC (Connectionist Temporal Classification) loss and the gradient. 

None 

Calculates the CTC (Connectionist Temporal Classification) loss and the gradient. 

This is an experimental API that is subject to change or deletion. 

Computes the KullbackLeibler divergence between the logits and the labels. 

None 

Calculates half of the L2 norm, but do not square the result. 

None 

Creates a loss criterion that minimizes the hinge loss for multiclass classification tasks. 

None 

Creates a loss function that minimizes the hinge loss for multiclass classification tasks. 

This is an experimental API that is subject to change or deletion. 

Gets the negative log likelihood loss between logits and labels. 

None 

Computes the RNNTLoss and its gradient with respect to the softmax outputs. 

None 

Uses the given logits to compute sigmoid cross entropy between the logits and the label. 

None 

Calculate the smooth L1 loss, and the L1 loss function has robustness. 

None 

SoftMarginLoss operation. 

None 

Gets the softmax crossentropy value between logits and labels with onehot encoding. 

None 

Computes the softmax crossentropy value between logits and sparse encoding labels. 

None 

TripletMarginLoss operation. 

None 
Activation Function
API Name 
Description 
Supported Platforms 
Warning 
Refer to 

None 

Refer to 

None 

Refer to 

None 

Gaussian Error Linear Units activation function. 

None 

Computes GLU (Gated Linear Unit activation function) of input tensors. 

This is an experimental API that is subject to change or deletion. 

Refer to 

None 

Refer to 

None 

Refer to 

None 

Refer to 

None 

Computes MISH(A Self Regularized NonMonotonic Neural Activation Function) of input tensors elementwise. 

None 

Refer to 

None 

Refer to 

None 

Refer to 

None 

Activation function SeLU (Scaled exponential Linear Unit). 

None 

Refer to 

None 

Applies the Softmax operation to the input tensor on the specified axis. 

None 

Softplus activation function. 

None 

Refer to 

None 

Softsign activation function. 

None 

Refer to 

None 
Optimizer
API Name 
Description 
Supported Platforms 
Warning 
Updates gradients by the Adaptive Moment Estimation (Adam) algorithm. 

None 

Updates gradients by the Adaptive Moment Estimation algorithm with weight decay (AdamWeightDecay). 

None 

AdaptiveAvgPool2D operation. 

This is an experimental API that is subject to change or deletion. 

AdaptiveAvgPool3D operation. 

This is an experimental API that is subject to change or deletion. 

Updates relevant entries according to the adadelta scheme. 

None 

Updates relevant entries according to the adagrad scheme. 

None 

Update var according to the proximal adagrad scheme. 

None 

Updates relevant entries according to the adagradv2 scheme. 

None 

Updates relevant entries according to the adamax scheme. 

None 

Update var according to the Adam algorithm. 

None 

Updates relevant entries according to the AddSign algorithm. 

None 

Optimizer that implements the centered RMSProp algorithm. 

In dense implementation of this algorithm, mean_gradient, mean_square, and moment will update even if the grad is zero. But in this sparse implementation, mean_gradient, mean_square, and moment will not update in iterations during which the grad is zero. 

Updates relevant entries according to the FTRL scheme. 

None 

Updates var by subtracting alpha * delta from it. 

None 

Optimizer that implements the Momentum algorithm. 

None 

Updates relevant entries according to the AddSign algorithm. 

None 

Updates relevant entries according to the proximal adagrad algorithm. 

None 

Updates relevant entries according to the FOBOS(Forward Backward Splitting) algorithm. 

None 

Optimizer that implements the Root Mean Square prop(RMSProp) algorithm. 

Note that in dense implementation of this algorithm, "mean_square" and "moment" will update even if "grad" is 0, but in this sparse implementation, "mean_square" and "moment" will not update in iterations during which "grad" is 0. 

Conducts LARS (layerwise adaptive rate scaling) update on the sum of squares of gradient. 

None 

Updates relevant entries according to the adagrad scheme, one more epsilon attribute than SparseApplyAdagrad. 

None 

Updates relevant entries according to the proximal adagrad algorithm. 

None 

Computes the stochastic gradient descent. 

None 

Updates relevant entries according to the FTRLproximal scheme For more details, please refer to 

None 

The SparseApplyFtrlV2 interface is deprecated, please use the 
Deprecated 
None 
Distance Function
API Name 
Description 
Supported Platforms 
Warning 
Computes batched the pnorm distance between each pair of the two collections of row vectors. 

None 

Computes the Levenshtein Edit Distance. 

Unorded truth_indices or hypothesis_indices might lead to expected result, so it is suggested to make sure truth_indices and hypothesis_indices are both in ascending order before calling this API. 

Return the pnorm of a matrix or vector. 

None 

Computes the pnorm distance between each pair of row vectors in the input. 

None 
Sampling Operator
API Name 
Description 
Supported Platforms 
Warning 
Compute accidental hits of sampled classes which match target classes. 

None 

Generates random labels with a loguniform distribution for sampled_candidates. 

The Ascend backend does not support the reproducibility of random numbers, so the seed parameter has no effect. 

Uniform candidate sampler. 

The Ascend backend does not support the reproducibility of random numbers, so the seed parameter has no effect. The Ascend backend does not support dynamic shape scenarios currently. 
Image Processing
API Name 
Description 
Supported Platforms 
Warning 
Decodes bounding boxes locations. 

None 

Encodes bounding boxes locations. 

None 

Checks bounding box. 

None 

Extracts crops from the input image tensor and resizes them. 

None 

ops.ExtractVolumePatches is deprecated from version 2.3 and will be removed in a future version. 
Deprecated 
None 

Calculates intersection over union for boxes. 

None 

L2 Normalization Operator. 

None 

Nonmaximum Suppression. 

Only supports up to 2864 input boxes at one time. 

Resizes an image to a certain size using the bilinear interpolation. 

This is an experimental API that is subject to change or deletion. 

Computes the Region of Interest (RoI) Align operator. 

None 

Performs nearest neighbor upsampling operation. 

None 

Performs upsampling with trilinear interpolation across 3dims for 5dim input Tensor. 

None 
Text Processing
API Name 
Description 
Supported Platforms 
Warning 
Updates the probability of occurrence of words with its corresponding ngrams. 

None 
Mathematical Operators
API Name 
Description 
Supported Platforms 
Warning 
Counts the number of occurrences of each value in an integer array. 

This is an experimental API that is subject to change or deletion. 

Performs the Cholesky decomposition on a single or a batch of symmetric positivedefinite matrices. 

This is an experimental API that is subject to change or deletion. 

Returns a complex Tensor from the real part and the imag part. 

This is an experimental API that is subject to change or deletion. 

Returns a Tensor that contains the magnitudes of the input. 

This is an experimental API that is subject to change or deletion. 

Returns the cross product of vectors in dimension dim of input and other. 

This is an experimental API that is subject to change or deletion. 

Fourier transform, can be adjusted by parameters to achieve FFT/IFFT/RFFT/IRFFT. 

This is an experimental API that is subject to change or deletion. 

Refer to 

None 
Elementwise Operator
API Name 
Description 
Supported Platforms 
Warning 
Refer to 

None 

Computes accumulation of all input tensors elementwise. 

None 

Refer to 

None 

Refer to 

None 

Refer to 

None 

Adds the elementwise division of x1 by x2, multiplied by value to input_data. 

None 

Adds the elementwise product of x1 by x2, multiplied by value to input_data. 

None 

Computes addition of all input tensors elementwise. 

None 

Refer to 

None 

Refer to 

None 

Refer to 

None 

Refer to 

None 

Refer to 

None 

Refer to 

None 

Computes modified Bessel function of the first kind, order 0 elementwise. 

This is an experimental API that is subject to change or deletion. 

Computes exponential scaled modified Bessel function of the first kind, order 0 elementwise. 

None 

Computes modified Bessel function of the first kind, order 1 elementwise. 

This is an experimental API that is subject to change or deletion. 

Computes exponential scaled modified Bessel function of the first kind, order 1 elementwise. 

None 

Computes Bessel function of the first kind, order 0 elementwise. 

This is an experimental API that is subject to change or deletion. 

Computes Bessel function of the first kind, order 1 elementwise. 

This is an experimental API that is subject to change or deletion. 

Computes modified Bessel function of the second kind, order 0 elementwise. 

This is an experimental API that is subject to change or deletion. 

Computes exponential scaled modified Bessel function of the second kind, order 0 elementwise. 

This is an experimental API that is subject to change or deletion. 

Computes modified Bessel function of the second kind, order 1 elementwise. 

This is an experimental API that is subject to change or deletion. 

Computes exponential scaled modified Bessel function of the second kind, order 1 elementwise. 

This is an experimental API that is subject to change or deletion. 

Computes Bessel function of the second kind, order 0 elementwise. 

This is an experimental API that is subject to change or deletion. 

Computes Bessel function of the second kind, order 1 elementwise. 

This is an experimental API that is subject to change or deletion. 

Returns bitwise and of two tensors elementwise. 

None 

Returns bitwise or of two tensors elementwise. 

None 

Returns bitwise xor of two tensors elementwise. 

None 

Refer to 

None 

Refer to 

None 

Refer to 

None 

Refer to 

None 

Computes the grad of the lgamma function on input. 

This is an experimental API that is subject to change or deletion. 

Computes the quotient of dividing the first input tensor by the second input tensor elementwise. 

None 

Operates a safe division between x1 and x2 elementwise. 

None 

Sums the product of the elements of the input Tensor along dimensions specified notation based on the Einstein summation convention(Einsum). 

None 

Refer to 

None 

Refer to 

None 

Refer to 

None 

Refer to 

None 

Refer to 

None 

Refer to 

None 

Refer to 

None 

Refer to 

None 

Refer to 

None 

Returns a new tensor containing imaginary value of the input. 

None 

Computes Reciprocal of input tensor elementwise. 

None 

Flips all bits of input tensor elementwise. 

None 

Does a linear interpolation of two tensors start and end based on a float or tensor weight. 

None 

Refer to 

None 

Refer to 

None 

Computes the "logical AND" of two tensors elementwise. 

None 

Computes the "logical NOT" of a tensor elementwise. 

None 

Computes the "logical OR" of two tensors elementwise. 

None 

Computes the "logical XOR" of two tensors elementwise. 

This is an experimental API that is subject to change or deletion. 

Calculate the logit of a tensor elementwise. 

This is an experimental API that is subject to change or deletion. 

Computes the remainder of dividing the first input tensor by the second input tensor elementwise. 

The input data does not support 0. When the elements of input exceed 2048, the accuracy of operator cannot guarantee the requirement of double thousandths in the mini form. Due to different architectures, the calculation results of this operator on NPU and CPU may be inconsistent. If shape is expressed as \((D1, D2, ..., Dn)\), then \(D1*D2... *DN<=1000000,n<=8\). 

Refer to 

None 

Computes x * y elementwise. 

None 

Refer to 

None 

Refer to 

None 

Refer to 

None 

Converts polar coordinates to Cartesian coordinates. 

None 

Computes the \(a\). 

This is an experimental API that is subject to change or deletion. 

Refer to 

None 

Divides the first input tensor by the second input tensor in floatingpoint type elementwise. 

None 

Returns reciprocal of a tensor elementwise. 

None 

Returns an integer that is closest to input_x elementwise. 

None 

Returns half to even of a tensor elementwise. 

None 

Refer to 

None 

Refer to 

None 

Refer to 

None 

Refer to 

None 

Refer to 

None 

Refer to 

None 

Refer to 

None 

Subtracts the second input tensor from the first input tensor elementwise and returns square of it. 

None 

Returns the square sum of a tensor elementwise. 

None 

Subtracts the second input tensor from the first input tensor elementwise. 

None 

Computes tangent of input elementwise. 

None 

Refer to 

None 

Divides the first input tensor by the second input tensor elementwise and rounds the results of division towards zero. 

None 

Returns the remainder of division elementwise. 

The input data does not support 0. When the elements of input exceed 2048, the accuracy of operator cannot guarantee the requirement of double thousandths in the mini form. Due to different architectures, the calculation results of this operator on NPU and CPU may be inconsistent. If shape is expressed as (D1,D2... ,Dn), then D1*D2... *DN<=1000000,n<=8. 

Divides the first input tensor by the second input tensor elementwise. 

None 

Computes the first input tensor multiplied by the logarithm of second input tensor elementwise. 

None 

Compute the Hurwitz zeta function ζ(x,q) of input Tensor. 

This is an experimental API that is subject to change or deletion. 
Reduction Operator
API Name 
Description 
Supported Platforms 
Warning 
Returns the indices of the maximum value along a specified axis of a Tensor. 

None 

Calculates the maximum value along with the given axis for the input tensor, and returns the maximum values and indices. 

If there are multiple maximum values, the index of the first maximum value is used. The value range of axis is [dims, dims  1]. "dims" is the dimension length of input. 

Returns the indices of the minimum value along a specified axis of a Tensor. 

None 

Calculates the minimum value along with the given axis for the input tensor, and returns the minimum values and indices. 

If there are multiple minimum values, the index of the first minimum value is used. The value range of axis is [dims, dims  1]. "dims" is the dimension length of input. 

Computes the median and its corresponding indices of input tensor in the axis dimension. 

indices does not necessarily contain the first occurrence of each median value found in the input, unless it is unique. The specific implementation of this API is devicespecific. The results may be different on CPU and GPU. When attr global_median is 

Refer to 

None 

Reduces a dimension of a tensor by the "logical OR" of all elements in the dimension, by default. 

None 

Reduces a dimension of a tensor by the maximum value in this dimension, by default. 

None 

Reduces a dimension of a tensor by averaging all elements in the dimension, by default. 

None 

Reduces a dimension of a tensor by the minimum value in the dimension, by default. 

None 

Reduces a dimension of a tensor by multiplying all elements in the dimension, by default. 

None 

Reduces a dimension of a tensor by summing all elements in the dimension, by default. 

None 
Comparison Operator
API Name 
Description 
Supported Platforms 
Warning 
Returns 

None 

Refer to 

None 

Computes the number of the same elements of two tensors. 

None 

Refer to 

None 

Refer to 

None 

Determines whether the targets are in the top k predictions. 

None 

Refer to 

None 

Determines which elements are inf or inf for each position. 

None 

Determines which elements are NaN for each position. 

None 

Refer to 

None 

Refer to 

None 

Refer to 

None 

Refer to 

None 

Refer to 

None 

Finds values and indices of the k largest entries along the last dimension. 

If sorted is set to False, it will use the aicpu operator, the performance may be reduced. In addition, due to different memory layout and traversal methods on different platforms, the display order of calculation results may be inconsistent when sorted is False. 
Linear Algebraic Operator
API Name 
Description 
Supported Platforms 
Warning 
Computes matrix multiplication between two tensors by batch. 

None 

Returns the sum of the input Tensor and the bias Tensor. 

None 

Ger product of x1 and x2. 

None 

Multiplies matrix a and matrix b. 

None 

Returns the inverse of the input matrix. 

This is an experimental API that is subject to change or deletion. 

Computes the matrixmatrix multiplication of a product of Householder matrices with a general matrix. 

This is an experimental API that is subject to change or deletion. 

Calculates the explicit representation of the orthogonal matrix \(Q\) returned by 

This is an experimental API that is subject to change or deletion. 

Computes the singular value decompositions of one or more matrices. 

None 
Tensor Operation Operator
Tensor Construction
API Name 
Description 
Supported Platforms 
Warning 
Create a Tensor with the same data type and shape as input, and the element value is the minimum value that the corresponding data type can express. 

None 

Creates a tensor with ones on the diagonal and zeros in the rest. 

None 

The Fill interface is deprecated, please use the 
Deprecated 
None 

Returns a Tensor whose value is num evenly spaced in the interval start and stop (including start and stop), and the length of the output Tensor is num. 

None 

Computes a onehot tensor. 

None 

Creates a tensor filled with value ones. 

For argument size, Tensor type input will be deprecated in the future version. 

Returns a Tensor with a value of 1 and its shape and data type is the same as the input. 

None 

Zeros will be deprecated in the future. 

For argument size, Tensor type input will be deprecated in the future version. 

Returns a Tensor with a value of 0 and its shape and data type is the same as the input. 

None 
Random Generation Operator
API Name 
Description 
Supported Platforms 
Warning 
Randomly set the elements of output to 0 or 1 with the probability of P which follows the Bernoulli distribution. 

This is an experimental API that is subject to change or deletion. 

Produces random positive floatingpoint values x, distributed according to probability density function: 

The Ascend backend does not support the reproducibility of random numbers, so the seed and seed2 parameter have no effect. 

Returns a tensor sampled from the multinomial probability distribution located in the corresponding row of tensor input. 

The Ascend backend does not support the reproducibility of random numbers, so the seed and seed2 parameter have no effect. 

Returns a tensor where each row contains numsamples indices sampled from the multinomial distribution with replacement. 

This is an experimental API that is subject to change or deletion. 

Generates random samples from a given categorical distribution tensor. 

The Ascend backend does not support the reproducibility of random numbers, so the seed parameter has no effect. 

Generates a random sample as index tensor with a mask tensor from a given tensor. 

None 

Produces random positive floatingpoint values x, distributed according to probability density function: 

None 

Produces random nonnegative values i, distributed according to discrete probability function: 

None 

Generates n random samples from 0 to n1 without repeating. 

None 

Refer to 

None 

Generates random numbers according to the Laplace random number distribution (mean=0, lambda=1). 

The Ascend backend does not support the reproducibility of random numbers, so the seed and seed2 parameter have no effect. 

Generates random numbers according to the standard Normal (or Gaussian) random number distribution. 

The Ascend backend does not support the reproducibility of random numbers, so the seed and seed2 parameter have no effect. 

Produces random integer values i, uniformly distributed on the closed interval [minval, maxval), that is, distributed according to the discrete probability function: 

The Ascend backend does not support the reproducibility of random numbers, so the seed and seed2 parameter have no effect. 

Produces random floatingpoint values, uniformly distributed to the interval [0, 1). 

The Ascend backend does not support the reproducibility of random numbers, so the seed and seed2 parameter have no effect. 
Array Operation
API Name 
Description 
Supported Platforms 
Warning 
Creates a 2D or 3D flow field (sampling grid) based on a batch of affine matrices theta. 

This is an experimental API that is subject to change or deletion. 

Divides batch dimension with blocks and interleaves these blocks back into spatial dimensions. 

None 

Please use batch_to_space_nd instead. 
Deprecated 
None 

Refer to 

None 

Returns a tensor with the new specified data type. 

None 

Divide the channels in a tensor of shape \((*, C, H, W)\) into \(g\) group and rearrange them as \((*, \frac C g, g, H*W)\), while keeping the original tensor shapes. 

This is an experimental API that is subject to change or deletion. 

Rearranges a row vector to an image. 

This is an experimental API that is subject to change or deletion. 

Refer to 

None 

Refer to 

None 

Returns the cumulative minimum of elements and the index. 

This is an experimental API that is subject to change or deletion. 

Computes the cumulative product of the tensor x along axis. 

None 

Computes the cumulative sum of input tensor along axis. 

None 

Returns the dimension index in the destination data format given in the source data format. 

None 

Rearrange blocks of depth data into spatial dimensions. 

None 

Refer to 

None 

Returns the data type of the input tensor as mindspore.dtype. 

None 

Refer to 

None 

Fills the main diagonal of a Tensor inplace with a specified value and returns the result. 

This is an experimental API that is subject to change or deletion. 

Creates a tensor with shape described by shape and fills it with values in value . 

None 

Determines if the elements contain Not a Number(NaN), infinite or negative infinite. 

None 

Computes the maximum of input tensors elementwise. 

This is an experimental API that is subject to change or deletion. 

Refer to 

None 

Refer to 

None 

Refer to 

None 

Computes the hamming window function with input window length. 

This is an experimental API that is subject to change or deletion. 

Applies the Heaviside step function for input x elementwise. 

This is an experimental API that is subject to change or deletion. 

Returns a rank 1 histogram counting the number of entries in values that fall into every bin. 

None 

Computes hypotenuse of input tensors elementwise as legs of a right triangle. 

This is an experimental API that is subject to change or deletion. 

Refer to 

None 

Calculates lower regularized incomplete Gamma function. 

This is an experimental API that is subject to change or deletion. 

Compute the upper regularized incomplete Gamma function Q(a, x). 

None 

Extracts sliding local blocks from a batched input tensor. 

This is an experimental API that is subject to change or deletion. 

Adds tensor y to specified axis and indices of tensor x. 

None 

Fills the elements under the dim dimension of the input Tensor x with the input value by selecting the indices in the order given in index. 

This is an experimental API that is subject to change or deletion. 

According to the index number of indexes, replace the value corresponding to x1 with the value in x2. 

None 

Adds v into specified rows of x. 

None 

Adds Tensor updates to specified axis and indices of Tensor var elementwise. 

This is an experimental API that is subject to change or deletion. 

Subtracts v into specified rows of x. 

None 

Please use 
Deprecated 
None 

Updates specified values in x to v according to indices. 

This is an experimental API that is subject to change or deletion. 

Computes the inverse of an index permutation. 

None 

Returns a tensor of Boolean values indicating whether each element of input is "close" to the corresponding element of other. 

None 

Computes least common multiplier of input tensors elementwise. 

This is an experimental API that is subject to change or deletion. 

Shift the value of each position of the tensor to the left several bits. 

This is an experimental API that is subject to change or deletion. 

Generates a 1D Tensor with a length of steps. 

This is an experimental API that is subject to change or deletion. 

Converts LU_data and LU_pivots back into P, L and U matrices, where P is a permutation matrix, L is a lower triangular matrix, and U is an upper triangular matrix. 

This is an experimental API that is subject to change or deletion. 

Refer to 

None 

Updates the value in the input with value in updates according to the mask. 

This is an experimental API that is subject to change or deletion. 

Refer to 

None 

Extracts the central diagonal band of each matrix in a tensor, with all values outside the central band set to zero. 

This is an experimental API that is subject to change or deletion. 

Returns the diagonal part of a tensor. 

This is an experimental API that is subject to change or deletion. 

Constructs a diagonal matrix or a batch of diagonal matrices from a given input Tensor. 

This is an experimental API that is subject to change or deletion. 

Updates the diagonal part of a batched tensor. 

This is an experimental API that is subject to change or deletion. 

Solves systems of linear equations. 

None 

Generates coordinate matrices from given coordinate tensors. 

None 

Calculates the multivariate loggamma function elementwise for a given dimension p. 

This is an experimental API that is subject to change or deletion. 

Refer to 

None 

Return a Tensor of the positions of all nonzero values. 

None 

Concats input tensors along the first dimension. 

None 

Computes elementwise population count(a.k.a bitsum, bitcount). 

None 

Randomly shuffles a Tensor along its first dimension. 

None 

Refer to 

None 

Returns the rank of a tensor. 

None 

Renormalizes the subtensors along dimension dim, and each subtensor's pnorm should not exceed the 'maxnorm'. 

None 

Refer to 

None 

Reverses variable length slices. 

None 

Refer to 

None 

Shift the value of each position of Tensor input_x to the right by corresponding bits in Tensor input_y. 

This is an experimental API that is subject to change or deletion. 

Refer to 

None 

Applies sparse division to individual values or slices in a tensor. 

This is an experimental API that is subject to change or deletion. 

Applies sparse maximum to individual values or slices in a tensor. 

None 

Applies sparse minimum to individual values or slices in a tensor. 

None 

Applies sparse multiplication to individual values or slices in a tensor. 

This is an experimental API that is subject to change or deletion. 

Return the position indices such that after inserting the values into the sorted_sequence, the order of innermost dimension of the sorted_sequence remains unchanged. 

This is an experimental API that is subject to change or deletion. 

Refer to 

None 

Returns the shape of the input tensor. 

None 

Returns a Scalar of type int that represents the size of the input Tensor and the total number of elements in the Tensor. 

None 

Slices a tensor in the specified shape. 

None 

Sorts the elements of the input tensor along the given dimension in the specified order. 

Currently, the data types of float16, uint8, int8, int16, int32, int64 are well supported. If use float32, it may cause loss of accuracy. 

Divides spatial dimensions into blocks and combines the block size with the original batch. 

None 

Rearrange blocks of spatial data into depth. 

None 

Returns a slice of input tensor based on the specified indices and axis. 

None 

Splits the input tensor into output_num of tensors along the given axis and output numbers. 

None 

Return the Tensor after deleting the dimension of size 1 in the specified axis. 

None 

Stacks a list of tensors in specified axis. 

None 

Refer to 

None 

Creates a new tensor by adding the values from the positions in input_x indicated by indices, with values from updates. 

None 

Creates a new tensor by dividing the values from the positions in input_x indicated by indices, with values from updates. 

None 

By comparing the value at the position indicated by indices in x with the value in the updates, the value at the index will eventually be equal to the largest one to create a new tensor. 

None 

By comparing the value at the position indicated by indices in input_x with the value in the updates, the value at the index will eventually be equal to the smallest one to create a new tensor. 

None 

Creates a new tensor by multiplying the values from the positions in input_x indicated by indices, with values from updates. 

None 

Creates a new tensor by subtracting the values from the positions in input_x indicated by indices, with values from updates. 

None 

Creates a new tensor by updating the positions in input_x indicated by indices, with values from update. 

None 

Returns the shape of the input tensor. 

None 

Replicates an input tensor with given multiple times. 

None 

Refer to 

None 

Refer to 

None 

Returns the lower triangular portion of the 2D matrix or the set of matrices in a batch. 

This is an experimental API that is subject to change or deletion. 

Calculates the indices of the lower triangular elements in a row * col matrix and returns them as a 2byN Tensor. 

This is an experimental API that is subject to change or deletion. 

Refer to 

None 

Calculates the indices of the upper triangular elements in a row * col matrix and returns them as a 2byN Tensor. 

This is an experimental API that is subject to change or deletion. 

Returns the unique elements of input tensor and also return a tensor containing the index of each value of input tensor corresponding to the output unique tensor. 

None 

Returns the elements that are unique in each consecutive group of equivalent elements in the input tensor. 

This is an experimental API that is subject to change or deletion. 

'ops.UniqueWithPad' is deprecated from version 2.4 and will be removed in a future version. 
Deprecated 
None 

Computes the maximum along segments of a tensor. 

None 

Computes the minimum of a tensor along segments. 

None 

Computes the product of a tensor along segments. 

None 

Refer to 

None 

Unstacks tensor in specified axis, this is the opposite of ops.Stack. 

None 
Type Conversion
API Name 
Description 
Supported Platforms 
Warning 
'ops.ScalarCast' is deprecated from version 2.3 and will be removed in a future version, please use int(x) or float(x) instead. 
Deprecated 
None 

Converts a scalar to a Tensor, and converts the data type to the specified type. 

None 

Converts a tuple to a tensor. 

None 
Parameter Operation Operator
API Name 
Description 
Supported Platforms 
Warning 
Refer to 

None 

Refer to 

None 

Updates a Parameter by subtracting a value from it. 

None 

Updates the value of the input tensor through the addition operation. 

None 

Updates the value of the input tensor through the divide operation. 

None 

Updates the value of the input tensor through the maximum operation. 

None 

Updates the value of the input tensor through the minimum operation. 

None 

Updates the value of the input tensor through the multiply operation. 

None 

Applies sparse addition to individual values or slices in a tensor. 

None 

Applies sparse subtraction to individual values or slices in a tensor. 

None 

Updates tensor values by using input indices and value. 

None 

Please use TensorScatterAdd instead. 
Deprecated 
None 

Updates the value of the input tensor through the subtraction operation. 

None 

Updates tensor values by using input indices and value. 

None 
Data Operation Operator
API Name 
Description 
Supported Platforms 
Warning 
Returns the next element in the dataset queue. 

None 
Communication Operator
Distributed training involves communication operations for data transfer. For more details, refer to Distributed Set Communication Primitives .
Note that the APIs in the following list need to preset communication environment variables. For Ascend/GPU/CPU devices, it is recommended to use the msrun startup method without any thirdparty or configuration file dependencies. Please see the msrun start up for more details.
API Name 
Description 
Supported Platforms 
Warning 
Gathers tensors from the specified communication group and returns the tensor which is all gathered. 

None 

Reduces tensors across all devices in such a way that all devices will get the same final result, returns the tensor which is all reduced. 

None 

AlltoAll is a collective operation. 

None 

Synchronizes all processes in the specified group. 

None 

Broadcasts the tensor to the whole group. 

None 

Gathers tensors from the specified communication group. 

None 

Scatter tensor evently across the processes in the specified communication group. 

None 

NeighborExchangeV2 is a collective communication operation. 

None 

Receive tensors from src_rank. 

None 

Operation options for reducing tensors. 

None 

Reduces and scatters tensors from the specified communication group and returns the tensor which is reduced and scattered. 

None 

Reduces tensors across the processes in the specified communication group, sends the result to the target dest_rank(local rank), and returns the tensor which is sent to the target process. 

None 

Send tensors to the specified dest_rank. 

None 
Debugging Operator
API Name 
Description 
Supported Platforms 
Warning 
This operator will calculate the histogram of a tensor and put it to a summary file with protocol buffer format. 

None 

This operator will put an image tensor to a summary file with protocol buffer format. 

None 

This operator will put a scalar to a summary file with protocol buffer format. 

None 

This operator will put a tensor to a summary file with protocol buffer format. 

None 

Save the Tensor as an npy file in numpy format. 

If a large amount of data is stored within a short period, it may lead to memory overflow on the device side. Consider slicing the data to reduce the data scale. Since data saving is processed asynchronously, when the amount of data is too large or the main process exits too quickly, data loss may occur. You need to actively control the destruction time of the main process, such as using sleep. 

Print the inputs to stdout. 

None 

Allocates a flag to store the overflow status. 

None 

Clears the flag which stores the overflow status. 

None 

mindspore.ops.NPUGetFloatStatus updates the flag which is the output tensor of 

None 
Sparse Operator
API Name 
Description 
Supported Platforms 
Warning 
Multiplies sparse matrix A by dense matrix B. 

None 

Converts a sparse representation into a dense tensor. 

None 
Frame Operators
API Name 
Description 
Supported Platforms 
Warning 
Depend is used for processing dependency operations. 

None 

Provide a useful op for loop from lower to upper. 

This is an experimental API that is subject to change or deletion. 

A higherorder function which is used to generate the gradient function for the input function. 

None 

This operation is used as a tag to hook gradient in intermediate variables. 

None 

HyperMap will apply the set operation to input sequences. 

None 

Attaches callback to the graph node that will be invoked on the node's gradient. 

None 

Map will apply the set operation on input sequences. 

None 

MultitypeFuncGraph is a class used to generate overloaded functions, considering different types as inputs. 

None 

Makes a partial function instance. 

None 

Scan a function over an array while the processing of the current element depends on the execution result of the previous element. 

This is an experimental API that is subject to change or deletion. 

Provide a useful op for reducing compilation times of while loop. 

This is an experimental API that is subject to change or deletion. 
Operator Information Registration
Class for AiCPU operator information registration. 

Class used for generating the registration information for the func parameter of 

Various combinations of dtype and format of Ascend ops. 

Class for TBE operator information registration. 

Gets the virtual implementation function by a primitive object or primitive name. 
Customizing Operator
API Name 
Description 
Supported Platforms 
Warning 
Custom primitive is used for user defined operators and is to enhance the expressive ability of builtin primitives. 

This is an experimental API that is subject to change. 

A decorator which is used to bind the registration information to the func parameter of 

None 

The decorator of the Hybrid DSL function for the Custom Op. 

None 
Spectral Operator
API Name 
Description 
Supported Platforms 
Warning 
Bartlett window function. 

This is an experimental API that is subject to change or deletion. 

Blackman window function. 

This is an experimental API that is subject to change or deletion. 