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

# nemo_curator.stages.synthetic.nemo_data_designer.data_designer

## Module Contents

### Classes

| Name                                                                                                     | Description          |
| -------------------------------------------------------------------------------------------------------- | -------------------- |
| [`DataDesignerStage`](#nemo_curator-stages-synthetic-nemo_data_designer-data_designer-DataDesignerStage) | Data Designer stage. |

### Data

[`__all__`](#nemo_curator-stages-synthetic-nemo_data_designer-data_designer-__all__)

### API

```python
class nemo_curator.stages.synthetic.nemo_data_designer.data_designer.DataDesignerStage(
    config_builder: data_designer.config.DataDesignerConfigBuilder | None = None,
    data_designer_config_file: str | None = None,
    model_providers: list | None = None,
    verbose: bool = False
)
```

Dataclass

**Bases:** [ProcessingStage\[DocumentBatch, DocumentBatch\]](/nemo-curator/nemo_curator/stages/base#nemo_curator-stages-base-ProcessingStage)

Data Designer stage.

This class provides a Data Designer stage.
To request GPUs, use: DataDesignerStage(...).with\_(resources=Resources(gpus=X)).

When `verbose` is False (default), NeMo Data Designer (NDD) log output is suppressed
(e.g. "Preview generation in progress", "Preview complete!") so the stage is less verbose.
Set `verbose=True` to see full NDD logging.

Optional `model_providers`: pass a list of :class:`data_designer.config.models.ModelProvider`
to use custom or test endpoints (e.g. a mock LLM server). If None, the default DataDesigner
providers are used.

**`config_builder`** `DataDesignerConfigBuilder | None = None`

---

**`data_designer`** `DataDesigner = field(init=False)`

---

**`data_designer_config_file`** `str | None = None`

---

**`model_providers`** `list | None = None`

---

**`verbose`** `bool = False`

---

```python
nemo_curator.stages.synthetic.nemo_data_designer.data_designer.DataDesignerStage.__post_init__() -> None
```

```python
nemo_curator.stages.synthetic.nemo_data_designer.data_designer.DataDesignerStage.inputs() -> tuple[list[str], list[str]]
```

```python
nemo_curator.stages.synthetic.nemo_data_designer.data_designer.DataDesignerStage.outputs() -> tuple[list[str], list[str]]
```

```python
nemo_curator.stages.synthetic.nemo_data_designer.data_designer.DataDesignerStage.process(
    batch: nemo_curator.tasks.DocumentBatch
) -> nemo_curator.tasks.DocumentBatch
```

```python
nemo_curator.stages.synthetic.nemo_data_designer.data_designer.__all__ = ['DataDesignerStage']
```