com.microsoft.Gelu / README.md
Xenova's picture
Xenova HF Staff
sync 2e7068faf55e
9ca4c42 verified
|
Raw
History Blame
2.26 kB
metadata
library_name: kernels
license: apache-2.0
tags:
  - kernel
  - webgpu
  - wgsl

com.microsoft.Gelu

com.microsoft · ONNX Runtime contrib operator · contrib since_version 1

Description

Applies the Gaussian Error Linear Unit (GELU) activation elementwise: Y = 0.5 * X * (1 + erf(X / sqrt(2))). The output has the same shape as the input. Float16 and float32 are supported; the schema's double and bfloat16 types are not.

See the ONNX Runtime Gelu contrib-operator spec for the reference semantics.

Inputs

Name Bind key Logical dtype Rank Shape Description Presence
X X T Values transformed elementwise by the exact GELU activation. required

Outputs

Name Bind key Logical dtype Rank Shape Description Presence
Y Y T same as X same as X Output tensor after applying GELU; same shape as the input. required

Type constraints

Variable Allowed dtypes
T float32, float16

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/com.microsoft.Gelu", { version: 1 });
const { Y } = await kernel({ X: { data: XData, shape: [] } });