# nvidia.dali.plugin.pytorch.fn.torch_python_function¶

nvidia.dali.plugin.pytorch.fn.torch_python_function(*inputs, **kwargs)

Executes a function that is operating on Torch tensors.

This class is analogous to nvidia.dali.fn.python_function() but the tensor data is handled as PyTorch tensors.

This operator allows sequence inputs and supports volumetric data.

This operator will not be optimized out of the graph.

Supported backends
• ‘cpu’

• ‘gpu’

Parameters

input[0..255] (TensorList, optional) – This function accepts up to 256 optional positional inputs

Keyword Arguments
• function (object) – Function object.

• batch_processing (bool, optional, default = False) – Determines whether the function gets an entire batch as an input.

• bytes_per_sample_hint (int or list of int, optional, default = [0]) –

Output size hint, in bytes per sample.

If specified, the operator’s outputs residing in GPU or page-locked host memory will be preallocated to accommodate a batch of samples of this size.

• num_outputs (int, optional, default = 1) – Number of outputs.

• output_layouts (layout str or list of layout str, optional) –

Tensor data layouts for the outputs.

This argument can be a list that contains a distinct layout for each output. If the list has fewer than num_outputs elements, only the first outputs have the layout set and the rest of the outputs have no layout assigned.

• preserve (bool, optional, default = False) – Prevents the operator from being removed from the graph even if its outputs are not used.

• seed (int, optional, default = -1) –

Random seed.

If not provided, it will be populated based on the global seed of the pipeline.