Skip to main content

Documentation Index

Fetch the complete documentation index at: https://handbook.fiddler.ai/llms.txt

Use this file to discover all available pages before exploring further.

Defines the complete schema structure for a model’s input data. ModelSchema contains the specification of all columns that a model expects to receive, including their data types, constraints, and metadata. This schema is used by Fiddler for data validation, monitoring, and analysis purposes. The schema acts as a contract between your model and Fiddler, ensuring that incoming data conforms to expected formats and enabling proper drift detection, data quality monitoring, and other features.

Examples

Creating a model schema:
schema = ModelSchema(
    columns=[
        Column(name="age", data_type=DataType.INTEGER, min=0, max=120),
        Column(name="income", data_type=DataType.FLOAT, min=0),
        Column(name="category", data_type=DataType.CATEGORY,

        categories=["A", "B", "C"])
    ]
)
Creating a schema with custom histogram bins:
schema = ModelSchema(
    columns=[
        Column(
            name="credit_score",
            data_type=DataType.INTEGER,
            min=350,
            max=850,
            bins=[350, 450, 550, 650, 750, 850]
        ),
        Column(name="income", data_type=DataType.FLOAT, min=0),
        Column(name="region", data_type=DataType.CATEGORY,
               categories=["US", "EU", "APAC"])
    ]
)
Accessing columns by name:
age_column = schema["age"]
print(age_column.data_type)
Adding a new column:
new_column = Column(name="score", data_type=DataType.FLOAT)
schema["score"] = new_column
Removing a column:
del schema["age"]
Schema version List of columns

getitem(item)

Get column by name Return type: Column

setitem(key, value)

Set column by name Return type: None

delitem(key)

Delete column by name Return type: None