把行业知识——预警分级(P0/P1/P2)+阈值+处置SOP——外置为模板配置(PRD line 152/171 阈值外置,行业工程师配置台维护),规则引擎零改动。 - alert_rules.py:AlertSeverity(P0/P1/P2) + AlertCondition(6 运算) + AlertRule(AND 语义) + AlertRuleEngine(按 severity 降序 + primary_alert) + 零依赖 YAML 解析(flow map)。 - config/alert_rules.template.yaml:6 条规则,特征名对齐 #70 FeatureSpec.name,sop 引用 异常处置 SOP(供 #11 LLM 报警解释 + 驾驶舱红色告警 + 值班长确认,PRD 场景A)。 - tests/test_alert_rules.py:16 项单测(运算/规则/引擎排序/配置/端到端P0)全通过。 - _sanity_check_rules.py:冒烟(正常无告警 + 急升温P0)。 PRD line 333:关键告警不直接联动执行机构,高利害输出人工确认 → severity 分级支撑。
32 lines
1020 B
Python
32 lines
1020 B
Python
# -*- coding: utf-8 -*-
|
||
"""iAOP-Template-Ti 一期 · 炉层杂质预警规则引擎包(Issue #72)。
|
||
|
||
导出声明式预警规则引擎(AlertRuleEngine)、预警分级(AlertSeverity)、规则/告警
|
||
数据类与模板配置加载。换行业只改模板配置(alert_rules.template.yaml),引擎零改动
|
||
(PRD line 152/171:阈值外置,行业工程师在配置台维护)。
|
||
|
||
注:特征工程(#70)与无监督模型(#71)见各自分支,合入后与本规则引擎组合,
|
||
覆盖 PRD 5.3 ③ 场景 A 全链路(采集→特征→评分→规则分级→驾驶舱红色告警→LLM 解释)。
|
||
"""
|
||
from __future__ import annotations
|
||
|
||
from .alert_rules import (
|
||
Alert,
|
||
AlertCondition,
|
||
AlertRule,
|
||
AlertRuleEngine,
|
||
AlertRulesTemplateConfig,
|
||
AlertSeverity,
|
||
load_alert_rules_config,
|
||
)
|
||
|
||
__all__ = [
|
||
"Alert",
|
||
"AlertCondition",
|
||
"AlertRule",
|
||
"AlertRuleEngine",
|
||
"AlertRulesTemplateConfig",
|
||
"AlertSeverity",
|
||
"load_alert_rules_config",
|
||
]
|