Column generators execute column generation in the Data Designer engine. A generator receives the upstream data needed for its task, returns row or batch data with generated values added, and reports the generation strategy the scheduler should use.
Related pages: column_configs, Build Your Own, Using Models in Plugins, and Custom Columns.
User-facing column configs inherit from SingleColumnConfig and define a unique column_type discriminator. During compilation, the engine may group related configs into multi-column configs for generators that create sampler or seed columns together.
Column generator base classes return GenerationStrategy values to tell the engine whether they run per row or over a full batch.
Generators that operate on a full batch can inherit from ColumnGeneratorFullColumn. Row-oriented non-model generators can inherit from ColumnGeneratorCellByCell. Generators that create initial rows use FromScratchColumnGenerator. Model-backed plugin generators should use ColumnGeneratorWithModelRegistry or ColumnGeneratorWithModel; see Using Models in Plugins for authoring guidance.
::: data_designer.engine.column_generators.generators.base.ColumnGenerator options: show_root_toc_entry: false
ColumnGeneratorFullColumn {#data_designer.engine.column_generators.generators.base.ColumnGeneratorFullColumn}
::: data_designer.engine.column_generators.generators.base.ColumnGeneratorFullColumn options: show_root_toc_entry: false
ColumnGeneratorCellByCell {#data_designer.engine.column_generators.generators.base.ColumnGeneratorCellByCell}
::: data_designer.engine.column_generators.generators.base.ColumnGeneratorCellByCell options: show_root_toc_entry: false
FromScratchColumnGenerator {#data_designer.engine.column_generators.generators.base.FromScratchColumnGenerator}
::: data_designer.engine.column_generators.generators.base.FromScratchColumnGenerator options: show_root_toc_entry: false
ColumnGeneratorWithModelRegistry {#data_designer.engine.column_generators.generators.base.ColumnGeneratorWithModelRegistry}
::: data_designer.engine.column_generators.generators.base.ColumnGeneratorWithModelRegistry options: show_root_toc_entry: false
ColumnGeneratorWithModel {#data_designer.engine.column_generators.generators.base.ColumnGeneratorWithModel}
::: data_designer.engine.column_generators.generators.base.ColumnGeneratorWithModel options: show_root_toc_entry: false