---
title: "ClikaRT::nn::SwiGLU"
sidebar_label: "SwiGLU"
description: "SwiGLU over a concatenated [*, 2d] gate-then-up input, emitting [*, d]: (clamp(up, -limit, limit) + beta) * G * sigmoid(alpha * G) with G = min(gate, limit); the defaults reduce to silu(gate) * up."
---

<!-- Generated by tools/doxygen2mdx from Doxygen XML. Do not edit. -->

<span class="api-kind api-kind--class">class</span>

**Header:** `ClikaRT/nn/generated/activation.h`  
**Inherits:** [`ClikaRT::nn::Module`](./Module.md)

[SwiGLU](./SwiGLU.md) over a concatenated \[\*, 2d\] gate-then-up input, emitting \[\*, d\]: (clamp(up, -limit, limit) + beta) \* G \* sigmoid(alpha \* G) with G = min(gate, limit); the defaults reduce to silu(gate) \* up. The module form of [`ClikaRT::ops::swiglu`](../ops/swiglu.md#swiglu), which documents the full contract (shapes, dtypes, errors); construct once, then call it like a function.

## Member functions

### SwiGLU() {#SwiGLU}

<div class="api-signature">

`explicit` **`SwiGLU`**([`SwiGLUOptions`](./SwiGLUOptions.md) `options` `=` `{}`)

</div>

Constructs the module from [`options`](./SwiGLU.md#options) (every default when omitted).

<div class="api-declared">

Declared in `ClikaRT/nn/generated/activation.h`, line 1431

</div>

### forward() {#forward}

<div class="api-signature">

[`Tensor`](../Tensor.md) **`forward`**([`Tensor`](../Tensor.md) `input`) `const`

</div>

[`forward_impl`](./SwiGLU.md#forward), unwrapped: raises [`ClikaRT::Error`](../Error.md) on failure.

<div class="api-declared">

Declared in `ClikaRT/nn/generated/activation.h`, line 1443

</div>

### operator()() {#operator-call}

<div class="api-signature">

[`Tensor`](../Tensor.md) **`operator()`**([`Tensor`](../Tensor.md) `input`) `const`

</div>

Same as [`forward`](./SwiGLU.md#forward).

<div class="api-declared">

Declared in `ClikaRT/nn/generated/activation.h`, line 1447

</div>

### options() {#options}

<div class="api-signature">

`const` [`SwiGLUOptions`](./SwiGLUOptions.md)`&` **`options`**() `const`

</div>

The settings this module was constructed with.

<div class="api-declared">

Declared in `ClikaRT/nn/generated/activation.h`, line 1451

</div>
