> This page is for version Nightly (default).
> For other versions, use one of these documentation indexes:
> - Nightly (default): https://docs.nvidia.com/nemo/automodel/nightly/llms.txt
> - Latest: https://docs.nvidia.com/nemo/automodel/latest/llms.txt
> - 0.7.0 · 26.10: https://docs.nvidia.com/nemo/automodel/v0.7/llms.txt
> - 0.5.0 · 26.06: https://docs.nvidia.com/nemo/automodel/v0.5/llms.txt
> - 0.4.0 · 26.04: https://docs.nvidia.com/nemo/automodel/v0.4/llms.txt

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.nvidia.com/nemo/automodel/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.nvidia.com/nemo/automodel/_mcp/server.

# nemo_automodel.components.models.kimi_linear.flops

Architecture FLOPs for Kimi Linear 48B A3B training.

## Module Contents

### Functions

| Name                                                                             | Description                                                         |
| -------------------------------------------------------------------------------- | ------------------------------------------------------------------- |
| [`model_flops`](#nemo_automodel-components-models-kimi_linear-flops-model_flops) | Estimate training work for independent, fully supervised sequences. |

### API

```python
nemo_automodel.components.models.kimi_linear.flops.model_flops(
    config: nemo_automodel.components.models.kimi_linear.config.KimiLinear48BConfig,
    gbs: int = 1,
    seq_len: int | None = None
) -> float
```

Estimate training work for independent, fully supervised sequences.

Counts linear projections, active SwiGLU experts, routers, the LM head,
causal MLA attention (using the conventional S**2 / 2 approximation),
KDA convolutions and the chunkwise delta-rule kernel. KDA's forward kernel
count per head is 6*S*d**2 + 3*S*C*d + S*C\*\*2, with C=64. Forward plus
backward is estimated as three times forward work (six times MACs).
Norms, activations, embedding lookup, optimizer work and activation
recomputation are excluded. Packed document boundaries are unavailable
through this interface: seq_len is treated as one document, so packed MLA
work is overestimated. This is an architecture estimate, not executed FLOPs.

**Parameters:**

**`config`** `KimiLinear48BConfig`

Complete model configuration before pipeline partitioning.

---

**`gbs`** `int` — default: 1

Number of independent sequences in the global batch.

---

**`seq_len`** `int | None` — default: None

Tokens per sequence; defaults to max_position_embeddings.

---

**Returns:** `float`

Estimated forward and backward FLOPs across the global batch.