plexus.cli.shared.optimization_acceptance_policy module
- class plexus.cli.shared.optimization_acceptance_policy.AcceptancePolicyConfig(min_reference_delta: 'float' = 0.01, max_generalization_drop: 'float' = 0.02, require_reference_improvement: 'bool' = True, value_config: 'ValueFunctionConfig' = ValueFunctionConfig(min_recall=0.4, min_precision=0.4, protocol_mismatch_tolerance=0.0, rca_missing_penalty=0.3, recall_penalty_weight=0.5, precision_penalty_weight=0.5))
Bases:
object- __init__(min_reference_delta: float = 0.01, max_generalization_drop: float = 0.02, require_reference_improvement: bool = True, value_config: ValueFunctionConfig = ValueFunctionConfig(min_recall=0.4, min_precision=0.4, protocol_mismatch_tolerance=0.0, rca_missing_penalty=0.3, recall_penalty_weight=0.5, precision_penalty_weight=0.5)) → None
- max_generalization_drop: float = 0.02
- min_reference_delta: float = 0.01
- require_reference_improvement: bool = True
- value_config: ValueFunctionConfig = ValueFunctionConfig(min_recall=0.4, min_precision=0.4, protocol_mismatch_tolerance=0.0, rca_missing_penalty=0.3, recall_penalty_weight=0.5, precision_penalty_weight=0.5)
- plexus.cli.shared.optimization_acceptance_policy.assess_candidate(*, baseline_reference_eval: Dict[str, Any], candidate_reference_eval: Dict[str, Any], baseline_random_eval: Dict[str, Any], candidate_random_eval: Dict[str, Any], config: AcceptancePolicyConfig = AcceptancePolicyConfig(min_reference_delta=0.01, max_generalization_drop=0.02, require_reference_improvement=True, value_config=ValueFunctionConfig(min_recall=0.4, min_precision=0.4, protocol_mismatch_tolerance=0.0, rca_missing_penalty=0.3, recall_penalty_weight=0.5, precision_penalty_weight=0.5))) → Dict[str, Any]
Decide accept/reject/inconclusive for a candidate score version.