Skip to main content
Represents a single column in a model schema with its metadata and constraints. A Column defines the structure and properties of a data column that will be used in a Fiddler model. It includes information about the column’s data type, value ranges, categorical values, binning configuration, and other metadata necessary for proper data validation and monitoring. This class is used within ModelSchema to define the complete structure of data that a model expects to receive.

Examples

Creating a numeric column:
column = Column(
    name="age",
    data_type=DataType.INTEGER,
    min=0,
    max=120
)
Creating a categorical column:
column = Column(
    name="category",
    data_type=DataType.CATEGORY,
    categories=["A", "B", "C"]
)
Creating a vector column:
column = Column(
    name="embedding",
    data_type=DataType.VECTOR,
    n_dimensions=128
)

name

Column name provided by the customer

data_type

Data type of the column

min

Min value of integer/float column

max

Max value of integer/float column

categories

List of unique values of a categorical column

bins

Bins of integer/float column

replace_with_nulls

Replace the list of given values to NULL if found in the events data

model_config

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

n_dimensions

Number of dimensions of a vector column