> 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.bagel.parallelization

Model-owned distributed parallelization for BAGEL.

## Module Contents

### Classes

| Name                                                                                                       | Description                                                          |
| ---------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------- |
| [`BagelModelParallelizer`](#nemo_automodel-components-models-bagel-parallelization-BagelModelParallelizer) | Apply BAGEL whole-layer checkpointing before the generic FSDP2 flow. |

### Functions

| Name                                                                                                                         | Description |
| ---------------------------------------------------------------------------------------------------------------------------- | ----------- |
| [`_apply_full_layer_checkpointing`](#nemo_automodel-components-models-bagel-parallelization-_apply_full_layer_checkpointing) | -           |
| [`_module_by_path`](#nemo_automodel-components-models-bagel-parallelization-_module_by_path)                                 | -           |

### Data

[`PARALLELIZER`](#nemo_automodel-components-models-bagel-parallelization-PARALLELIZER)

[`_FULL_LAYER_CONTAINERS`](#nemo_automodel-components-models-bagel-parallelization-_FULL_LAYER_CONTAINERS)

[`__all__`](#nemo_automodel-components-models-bagel-parallelization-__all__)

[`logger`](#nemo_automodel-components-models-bagel-parallelization-logger)

### API

```python
class nemo_automodel.components.models.bagel.parallelization.BagelModelParallelizer()
```

**Bases:** `ModelParallelizer`

Apply BAGEL whole-layer checkpointing before the generic FSDP2 flow.

```python
nemo_automodel.components.models.bagel.parallelization.BagelModelParallelizer._apply(
    model: torch.nn.Module,
    args = (),
    kwargs = {}
) -> torch.nn.Module
```

```python
nemo_automodel.components.models.bagel.parallelization._apply_full_layer_checkpointing(
    model: torch.nn.Module
) -> None
```

```python
nemo_automodel.components.models.bagel.parallelization._module_by_path(
    module: torch.nn.Module,
    path: str
) -> torch.nn.Module | None
```

```python
nemo_automodel.components.models.bagel.parallelization.PARALLELIZER = BagelModelParallelizer()
```

```python
nemo_automodel.components.models.bagel.parallelization._FULL_LAYER_CONTAINERS = ('model.language_model.model.layers', 'model.vit_model.vision_model.encoder.laye...
```

```python
nemo_automodel.components.models.bagel.parallelization.__all__ = ['PARALLELIZER']
```

```python
nemo_automodel.components.models.bagel.parallelization.logger = logging.getLogger(__name__)
```