Skip to content

Config

Configuration schemas for LLMRouter backends.

KNNConfig

Bases: BaseModel

Configuration for the KNN classifier.

Attributes:

Name Type Description
num_classes int

Number of output classes (models to route to).

MLPConfig

Bases: BaseModel

Configuration for the MLP classifier.

Attributes:

Name Type Description
num_classes int

Number of output classes (models to route to).

input_dim int

Dimensionality of the input embeddings.

idx_to_model dict[int, str]

Mapping from predicted class index to model name.

hidden_layer_sizes list[int]

Sizes of hidden layers.

activation str

Activation function name. Defaults to "relu".

hyperparameters dict[str, Any]

Additional hyperparameters. Defaults to {}.

build_hyperparameter(overrides=None)

Build final hyperparameter dict with safe merging.

Merges core config params, stored hyperparameters, and runtime overrides with protection against overriding reserved keys.

Parameters:

Name Type Description Default
overrides dict[str, Any]

Runtime hyperparameter overrides. Cannot override reserved keys (hidden_layer_sizes, activation). Defaults to None.

None

Returns:

Type Description
dict[str, Any]

dict[str, Any]: Final merged hyperparameter dictionary.

Raises:

Type Description
ValueError

If overrides attempt to modify reserved keys.

SVMConfig

Bases: BaseModel

Configuration for the SVM classifier.

Attributes:

Name Type Description
num_classes int

Number of output classes (models to route to).