ai.onnx.Trilu

ai.onnx · standard ONNX operator · ONNX opset ≥ 14

Description

Returns the upper or lower triangular part of a 2-D matrix or batch of 2-D matrices of shape [*, N, M], zeroing all other elements. The diagonal offset k shifts the boundary: positive values move it above the main diagonal, negative values below it.

See the ONNX Trilu spec for the reference semantics.

Inputs

Name Bind key Logical dtype WebGPU storage Rank Shape Description Presence
input input T runtime-selected; narrow integers and bool use 32-bit slots Input tensor of rank 2 or higher whose triangular part is extracted. required
k k I int32 0 [] Optional logical int64 scalar specifying the signed diagonal offset; WebGPU stores it as int32 and defaults to 0 (main diagonal). optional

Outputs

Name Bind key Logical dtype Rank Shape Description Presence
output output T same as input same as input Output tensor of the same type and shape as the input, with non-triangular elements set to zero. required

Attributes

Default values (overridable per request):

Attribute Default Description
upper 1 When 1 (true), retains the upper triangular part; when 0 (false), retains the lower triangular part. Default is 1.

Type constraints

Variable Allowed dtypes
T float32, float16, int32, int16, int8, uint32, uint8, bool
I int64

Files

Use with @huggingface/kernels

The loader derives every required output's shape and logical dtype from the manifest contract and this call. It then allocates the result tensors automatically.

The version: 1 option selects the published kernel contract; it is independent of any operator opset, contrib since_version, or model version.

Replace each *Data placeholder with a typed array containing the corresponding input data.

import { getKernel } from "@huggingface/kernels";

const kernel = await getKernel("webgpu-kernels/ai.onnx.Trilu", { version: 1 });
const { output } = await kernel({ input: { data: inputData, shape: [2, 2] } });
Downloads last month
-
kernel
webgpu
wgsl
apache-2.0
WebGPU

Requires WebGPU support. See the compatibility table.