Spaces:
Sleeping
Sleeping
| from __future__ import annotations | |
| import sys | |
| from pathlib import Path | |
| ROOT = Path(__file__).resolve().parents[2] | |
| sys.path.insert(0, str(ROOT / "backend")) | |
| from app.ml.runtime_stack import ( | |
| RUNTIME_STACK_VERSION, | |
| build_runtime_stack_prediction, | |
| decision_threshold_for_source, | |
| hb_archive_weight_for_source, | |
| risk_archive_weight_for_source, | |
| ) | |
| def test_decision_threshold_defaults_are_source_aware() -> None: | |
| assert decision_threshold_for_source("roi_original") == 0.495 | |
| assert decision_threshold_for_source("palpebral") == 0.65 | |
| assert decision_threshold_for_source("forniceal_palpebral") == 0.65 | |
| def test_runtime_stack_prediction_keeps_archive_signal_without_secondary_model() -> None: | |
| result = build_runtime_stack_prediction( | |
| { | |
| "anemia_risk": 0.58, | |
| "predicted_hemoglobin": 11.4, | |
| "uncertainty": 0.21, | |
| }, | |
| source_hint="roi_original", | |
| ) | |
| assert result["anemia_risk"] == 0.58 | |
| assert result["predicted_hemoglobin"] == 11.4 | |
| assert result["uncertainty"] == 0.21 | |
| assert result["decision_threshold"] == 0.495 | |
| def test_runtime_stack_blends_archive_and_efficientnet_for_roi() -> None: | |
| result = build_runtime_stack_prediction( | |
| { | |
| "anemia_risk": 0.7, | |
| "predicted_hemoglobin": 10.8, | |
| "uncertainty": 0.18, | |
| }, | |
| efficientnet_prediction={ | |
| "anemia_risk": 0.3, | |
| "predicted_hemoglobin": 12.0, | |
| "uncertainty": 0.24, | |
| }, | |
| source_hint="roi_original", | |
| ) | |
| assert round(result["anemia_risk"], 4) == 0.5138 | |
| assert round(result["predicted_hemoglobin"], 4) == 11.16 | |
| assert round(result["decision_threshold"], 4) == 0.495 | |
| assert round(result["uncertainty"], 4) == 0.2424 | |
| def test_runtime_stack_weights_are_source_aware() -> None: | |
| assert risk_archive_weight_for_source("roi_original") == 0.55 | |
| assert risk_archive_weight_for_source("palpebral") == 1.0 | |
| assert hb_archive_weight_for_source("roi_original") == 0.70 | |
| assert hb_archive_weight_for_source("palpebral") == 1.0 | |
| def test_runtime_stack_version_is_declared() -> None: | |
| assert RUNTIME_STACK_VERSION == "archive-evidence-fusion-v4" | |