baybe.searchspace.utils.build_constrained_product¶
- baybe.searchspace.utils.build_constrained_product(parameters: Sequence[DiscreteParameter], constraints: Sequence[DiscreteConstraint], initial_df: DataFrame | None = None)[source]¶
Build a constrained Cartesian product, using Polars if configured.
Partitions constraints by Polars support and builds the product accordingly. Parameters covered by Polars-capable constraints are cross-joined and filtered in Polars first, then the remaining parameters and constraints are handled via incremental pandas filtering.
- Parameters:
parameters (
Sequence[DiscreteParameter]) – The discrete parameters to combine.constraints (
Sequence[DiscreteConstraint]) – The discrete constraints to apply during construction.initial_df (
Optional[DataFrame]) – An optional starting dataframe whose columns count as already available for constraint evaluation.
- Return type:
DataFrame- Returns:
A dataframe containing all valid parameter combinations.