whylogs.core.constraints#

Subpackages#

Submodules#

Package Contents#

Classes#

Constraints

ConstraintsBuilder

DatasetComparisonConstraint

Implements dataset-level constraints that require a reference dataset to

DatasetConstraint

Implements dataset-level constraints that are not attached to a specific

MetricConstraint

MetricsSelector

PrefixCondition

Interpret expressions in the form used to serialize Predicate expressions.

Functions#

emit_usage(→ None)

whylogs.core.constraints.emit_usage(event: str) None#
Parameters

event (str) –

Return type

None

class whylogs.core.constraints.Constraints(dataset_profile_view: Optional[whylogs.core.view.dataset_profile_view.DatasetProfileView] = None, column_constraints: Optional[Dict[str, Dict[str, MetricConstraint]]] = None, reference_profile_view: Optional[whylogs.core.view.dataset_profile_view.DatasetProfileView] = None)#
Parameters
column_constraints: Dict[str, Dict[str, MetricConstraint]]#
dataset_constraints: List[DatasetConstraint]#
dataset_comparison_constraints: List[DatasetComparisonConstraint]#
dataset_profile_view: Optional[whylogs.core.view.dataset_profile_view.DatasetProfileView]#
validate(profile_view: Optional[whylogs.core.view.dataset_profile_view.DatasetProfileView] = None) bool#
Parameters

profile_view (Optional[whylogs.core.view.dataset_profile_view.DatasetProfileView]) –

Return type

bool

set_reference_profile_view(profile_view: whylogs.core.view.dataset_profile_view.DatasetProfileView) None#
Parameters

profile_view (whylogs.core.view.dataset_profile_view.DatasetProfileView) –

Return type

None

report(profile_view: Optional[whylogs.core.view.dataset_profile_view.DatasetProfileView] = None) List[Tuple[str, int, int]]#
Parameters

profile_view (Optional[whylogs.core.view.dataset_profile_view.DatasetProfileView]) –

Return type

List[Tuple[str, int, int]]

generate_constraints_report(profile_view: Optional[whylogs.core.view.dataset_profile_view.DatasetProfileView] = None, with_summary=False) List[ReportResult]#
Parameters

profile_view (Optional[whylogs.core.view.dataset_profile_view.DatasetProfileView]) –

Return type

List[ReportResult]

class whylogs.core.constraints.ConstraintsBuilder(dataset_profile_view: whylogs.core.view.dataset_profile_view.DatasetProfileView, constraints: Optional[Constraints] = None, reference_profile_view: Optional[whylogs.core.view.dataset_profile_view.DatasetProfileView] = None)#
Parameters
get_metric_selectors() List[MetricsSelector]#
Return type

List[MetricsSelector]

add_constraints(constraints: List[Union[MetricConstraint, DatasetConstraint]]) ConstraintsBuilder#
Parameters

constraints (List[Union[MetricConstraint, DatasetConstraint]]) –

Return type

ConstraintsBuilder

add_constraint(constraint: Union[MetricConstraint, DatasetConstraint], ignore_missing: bool = False) ConstraintsBuilder#
Parameters
Return type

ConstraintsBuilder

build() Constraints#
Return type

Constraints

class whylogs.core.constraints.DatasetComparisonConstraint#

Implements dataset-level constraints that require a reference dataset to be compared against. The condition Callable takes the DatasetProfileView of the dataset to be validated as well as the DatasetProfileView of the reference dataset and returns a boolean indicating whether the condition is satisfied as well as a dictionary with summary information about the validation.

condition: Callable[[whylogs.core.view.dataset_profile_view.DatasetProfileView, whylogs.core.view.dataset_profile_view.DatasetProfileView], Tuple[bool, Dict[str, whylogs.core.metrics.metrics.Metric]]]#
name: str#
validate_profile(dataset_profile: whylogs.core.view.dataset_profile_view.DatasetProfileView, reference_profile: whylogs.core.view.dataset_profile_view.DatasetProfileView) Tuple[bool, Optional[Dict[str, Any]]]#
Parameters
Return type

Tuple[bool, Optional[Dict[str, Any]]]

class whylogs.core.constraints.DatasetConstraint#

Implements dataset-level constraints that are not attached to a specific metric or column. The condition Callable takes the DatasetProfileView as input and returns a boolean indicating whether the condition is satisfied as well as a dictionary mapping ‘column_name/metric_namespace’ -> Metric for any metrics the condition used during its evaluation.

condition: Callable[[whylogs.core.view.dataset_profile_view.DatasetProfileView], Tuple[bool, Dict[str, whylogs.core.metrics.metrics.Metric]]]#
name: str#
require_column_existence: bool = True#
validate_profile(dataset_profile: whylogs.core.view.dataset_profile_view.DatasetProfileView) Tuple[bool, Optional[Dict[str, Any]]]#
Parameters

dataset_profile (whylogs.core.view.dataset_profile_view.DatasetProfileView) –

Return type

Tuple[bool, Optional[Dict[str, Any]]]

class whylogs.core.constraints.MetricConstraint#
condition: Callable[[whylogs.core.metrics.metrics.Metric], bool]#
name: str#
metric_selector: MetricsSelector#
require_column_existence: bool = True#
validate(dataset_profile: whylogs.core.view.dataset_profile_view.DatasetProfileView) bool#
Parameters

dataset_profile (whylogs.core.view.dataset_profile_view.DatasetProfileView) –

Return type

bool

validate_profile(dataset_profile: whylogs.core.view.dataset_profile_view.DatasetProfileView) Tuple[bool, Optional[Dict[str, Any]]]#
Parameters

dataset_profile (whylogs.core.view.dataset_profile_view.DatasetProfileView) –

Return type

Tuple[bool, Optional[Dict[str, Any]]]

class whylogs.core.constraints.MetricsSelector#
metric_name: str#
column_name: Optional[str]#
metrics_resolver: Optional[Callable[[whylogs.core.view.dataset_profile_view.DatasetProfileView], List[whylogs.core.metrics.metrics.Metric]]]#
column_profile(profile: Optional[whylogs.core.view.dataset_profile_view.DatasetProfileView]) Optional[whylogs.core.view.column_profile_view.ColumnProfileView]#
Parameters

profile (Optional[whylogs.core.view.dataset_profile_view.DatasetProfileView]) –

Return type

Optional[whylogs.core.view.column_profile_view.ColumnProfileView]

apply(profile: whylogs.core.view.dataset_profile_view.DatasetProfileView) List[whylogs.core.metrics.metrics.Metric]#
Parameters

profile (whylogs.core.view.dataset_profile_view.DatasetProfileView) –

Return type

List[whylogs.core.metrics.metrics.Metric]

class whylogs.core.constraints.PrefixCondition(expression: str, cfg: Optional[whylogs.core.configs.SummaryConfig] = None)#

Interpret expressions in the form used to serialize Predicate expressions. This is probably a reasonable serialization format for DatasetConstraint conditions, but might not be the best user interface for creating conditions in client code.

Parameters