变电站边缘 AI:站端人工复核台与误报闭环手册(可执行)
调研日期:约 2026-10-25(Asia/Shanghai)
落盘:/workspace/research/edge-ai-human-review-false-positive-loop.md
定位:值班复核 UI / 队列、驳回原因码、回写防抖与主动学习、SLA;与 MQTT 事件、证据仓、告警抑制衔接;不进保护网。
衔接:edge-ai-alert-debounce-suppression.md、edge-ai-active-learning-relabel-loop.md、edge-ai-event-schema-acceptance.md、edge-ai-evidence-store-snapshot-retention.md、edge-ai-mqtt-hardening-offline-buffer.md、edge-ai-observability-logging-metrics.md、edge-ai-d60-d90-acceptance-checklist.md、edge-ai-vlan-network-isolation.md、edge-ai-scada-104-pointlist-template.md。
声明:本文为管理信息大区 / AI VLAN 上的运维闭环基线,不替代继电保护二次安规、业主未公开站规或安监正式规程。不确定处标 unknown。
0. 一句话结论与红线
结论:站端复核台是「AI 告警 → 人工确认/驳回 → 可审计回写」的唯一合法出口——确认只升 quality / 通知态,永不驱动保护跳闸或 GOOSE;驳回必须带枚举原因码并旁路进难例池与防抖调参建议;复核只追加审计记录,禁止改写证据仓原始媒体与 meta.json 金字段。
| 红线 ID | 禁止项 | 说明 |
|---|---|---|
| H1 | 人工确认不作保护跳闸 | 复核「确认」仅允许:quality=confirmed、MQTT events/status 态变更、可选 104 只读告警点保持/复归建议;禁止硬接线跳闸、软压板、保护 GOOSE、控断路器 |
| H2 | 驳回必带原因码 | 「误报」按钮无枚举码 → 拒绝提交;原因码进审计 + 难例 trigger_reason=HUMAN_REJECT sidecar |
| H3 | 复核不得改写原始证据 | 禁止覆写 frame_peak.jpg / clip / meta.json 的 ts/msg_id/model.ver/media_refs 哈希;仅允许旁路写 review.json / 索引列 |
| H4 | 不进保护网 | 复核 HMI、队列服务、标注回流机均在 AI/MGMT VLAN;对齐 N1/N5、证据仓 R2、BOM「禁止跨保」 |
| H5 | 禁止无审自动永久抑制 | 驳回可建议调高 score_thr / 拉长 debounce_ms,不得自动写「永久 suppress」或全站静音(对齐防抖 R2) |
| H6 | SLA 超时不得静默吞单 | 超时升 SUSPECT_STALE 进难例桶并记 ops,禁止「超时当确认」 |
1. 队列、优先级与复核台最小字段
1.1 入队来源(只消费已升告警 / 待确认)
边缘推理 → L3 防抖升告警 → MQTT …/events/{task} + 证据仓落证
│
▼
复核队列(按优先级)
│ 值班确认 / 驳回(+原因码)
├─► quality / 通知出口(确认)
└─► 难例池 + 防抖调参建议(驳回)
| 优先级 | 条件(建议默认) | SLA 目标(站端试点) | 超时动作 |
|---|---|---|---|
| P0 | severity=critical(如 SMOKE_FIRE) |
≤ 5 min 首响 | 声光升级 + 短信/对讲(若有);禁止因队列满丢弃 |
| P1 | severity=high(闯入、严重 PPE) |
≤ 15 min | 升值班长视图;超时标 SLA_BREACH |
| P2 | severity=medium / 默认 suspect |
≤ 2 h(值班班次内) | 入 SUSPECT_STALE 候选 |
| P3 | 低优 / 表计争议 / 巡检类 | ≤ 24 h | 周配额内进复标桶 |
排序键:priority ASC → severity 权重 → ts_utc ASC(同级先进先出)→ 同 cam×code 合并展示(冷却内心跳不重复占槽)。
1.2 复核台最小 UI / API 字段
| 字段 | 必填 | 来源 | 说明 |
|---|---|---|---|
event_id / msg_id |
Y | Schema | 与证据目录键一致 |
ts_utc / 本地展示时 |
Y | Schema | 展示转 Asia/Shanghai |
site / bay / cam / task / event.code |
Y | Schema | 定位 |
severity / quality |
Y | Schema | 默认 suspect |
score / debounce_ms / model.ver |
Y | Schema | 调参与回溯 |
snapshot / media_refs |
Y | 证据仓只读链 | 短时效内网 URI;禁长链落日志 |
track_id / zone_id / ROI 版本 |
建议 | Schema / 围栏 | 闯入必备 |
reviewer_id / reviewed_at |
提交时 | 复核台 | 账号审计 |
decision |
提交时 | 枚举 | confirm / reject / defer |
reason_code |
reject 时强制 | §1.3 | H2 |
reason_note |
可选 | 自由文本 ≤200 字 | 不替代原因码 |
suggested_action |
系统填 | 闭环引擎 | 如 RAISE_SCORE_THR / ENQUEUE_HARD |
UI 硬约束:确认/驳回前必须能打开峰值帧(及可选 clip);证据加载失败 → 仅允许 defer,禁止盲确认。
1.3 驳回原因码表(冻结进配置基线)
| 原因码 | 含义 | 默认下游动作 |
|---|---|---|
FP_SCENE |
场景误报(蒸汽当烟、反光、树枝当异物等) | 难例负样本 + 建议提高该 cam×code score_thr 或加票窗 |
FP_ROI |
ROI/围栏标定漂移或越界框 | RULE_MODEL_MISMATCH 优先;触发围栏复审工单 |
FP_TRACK |
跟踪粘连 / ID 切换导致重复或错目标 | 建议加 min_hits;难例带前后帧 |
FP_QUALITY |
夜雾/模糊/脏镜致误检 | L5 画质门控建议;难例标 quality_bad |
FP_AUTH |
授权人员/作业票内合法出现 | 记 authorized;短时票窗降敏,禁永久 suppress |
FP_DUP |
冷却内重复告警(抑制失效) | 审计 suppress;建议检查 L4 cooldown_ms |
FN_MISS |
漏报补录(人眼见隐患无告警) | 难例正样本;禁止因此联跳闸 |
WRONG_CLASS |
有目标但类别错 | 复标改类;进主动学习 |
WRONG_ZONE |
目标真实但区域语义错 | 多边形/作业区版本复核 |
OTHER |
其他(须填 reason_note) |
仅入审计;周会归类升码表 |
2. 驳回闭环:防抖回写 × 主动学习 × Schema
2.1 决策写回契约(追加,不覆写)
每条复核写旁路对象(示例路径):
/var/edgeai/evidence/.../{event_id}/review.json # 可多版本 append
index.sqlite → reviews 表(event_id, decision, reason_code, reviewer_id, ts)
review.json 最小字段:schema_ver、event_id、decision、reason_code、reviewer_id、reviewed_at_utc、model.ver(复核时只读拷贝)、suggested_action[]、config_ver_before。
MQTT(建议):
| Topic | QoS | 用途 |
|---|---|---|
…/events/{task} |
1 | 原告警不变;可选补发 quality 更新事件(同 msg_id + review_seq) |
…/ops/review |
1 | 复核审计(含原因码);不当 SCADA 主告警 |
…/cmd/debounce_suggest |
1 | 建议参数补丁(须人工/双人门禁应用) |
2.2 驳回 → 防抖参数(只建议,门禁后生效)
对齐 edge-ai-alert-debounce-suppression.md 参数名:
reason_code |
建议补丁(单 cam×code,可配上限) | 禁止 |
|---|---|---|
FP_SCENE / FP_QUALITY |
score_thr += 0.05(封顶任务表上限);或 debounce_ms *= 1.2 |
一次加到「永不告警」;烟火禁止小时级冷却 |
FP_TRACK / FP_DUP |
min_hits += 1;核对 cooldown_ms |
关闭 L3/L4 |
FP_ROI / WRONG_ZONE |
不自动改阈值;开围栏工单 | 自动改多边形 |
FP_AUTH |
L5 票窗 rule_id=ticket:… |
永久 suppress |
FN_MISS |
降低阈值须双人+周回看;默认可只加难例 | 单人一键降阈 |
回写防抖:同一 (cam, event_code) 15 min 内多次同类驳回合并为 1 条建议;日累计调参次数封顶(建议 ≤3 次/cam×code/日),超限只进难例不改参。应用补丁须写入 debounce.json 版本号并记可观测性指标 review_debounce_patch_total。
2.3 驳回 → 主动学习难例
对齐 edge-ai-active-learning-relabel-loop.md:
| 动作 | 规则 |
|---|---|
| 入队 | trigger_reason=HUMAN_REJECT;附 reason_code、脱敏峰值帧、model.ver、ROI 版本 |
| 优先级 | HUMAN_REJECT > RULE_MODEL_MISMATCH > LOW_SCORE(既有表) |
| 冷却 | 同 (cam, task, 近似帧哈希) 5~15 min 最多 1 次,防刷屏 |
| 分桶 | datasets/{site}/{task}/{yyyyww}/HUMAN_REJECT/{reason_code}/ |
| 标签语义 | FP_* → 负样本或难负;FN_MISS / WRONG_CLASS → 正样本/改类 |
| 配额 | 计入全站 ≤2000 帧/周;超限按优先级保留 HUMAN_REJECT |
2.4 与 Schema / 证据 / 抑制的边界
| 组件 | 复核台做什么 | 不做什么 |
|---|---|---|
| Schema | 读 severity/quality/debounce_ms;确认后可发 quality=confirmed |
不改历史 msg_id 语义;不发明跳闸字段 |
| 证据仓 | 只读媒体;追加 review.json |
不改 MANIFEST.sha256 已纳入文件 |
| L3–L5 抑制 | 驳回可驱动建议补丁;票窗走 L5 | 不因误报关推理、挡留证、全局静音烟火/闯入 |
| 104 / 61850 | 可选只读点「待确认/已确认/已驳回」 | 不映射保护控点 |
2.5 review.json 与 ops/review 样例
{
"schema_ver": "1.0.0",
"event_id": "01JABCDEF1234567890XYZ",
"msg_id": "01JABCDEF1234567890XYZ",
"decision": "reject",
"reason_code": "FP_SCENE",
"reason_note": "主变附近蒸汽被判烟雾",
"reviewer_id": "duty.zhang",
"reviewed_at_utc": "2026-10-25T01:12:00.000Z",
"model": { "ver": "2026.10.12-int8" },
"config_ver_before": "debounce-2026.10.20",
"suggested_action": [
{ "type": "ENQUEUE_HARD", "trigger_reason": "HUMAN_REJECT" },
{ "type": "RAISE_SCORE_THR", "cam": "bay3-camA", "event_code": "SMOKE_FIRE", "delta": 0.05, "gate": "dual_approve" }
],
"evidence_refs_readonly": true,
"manifest_sha256_before": "…"
}
…/ops/review 报文与上表同构,另加 site/bay/cam/task/severity;不得把整帧 b64 塞进 ops(对齐证据仓 R4)。确认类决策可另发同 msg_id 的轻量 quality=confirmed 更新,带 review_seq 防乱序。
2.6 双人门禁(防抖补丁生效)
- 驳回引擎只写 建议补丁 到
debounce_suggest/队列(状态pending)。 - 值班员 A 提交、值班长/运维 B 在 HMI 勾选 diff(显示旧/新
score_thr、debounce_ms、min_hits、cooldown_ms)。 - 双方账号不同;同一人不可自批。
- 通过后原子写
config/debounce.json新版本 +AUDIT行;边缘 Agent 热加载或下一配置周期生效。 - 烟火/闯入的阈值下调(更灵敏)须额外勾选「已理解漏报风险」;默认一周回看误报/漏报比,恶化则自动提示回滚到上一
config_ver。
2.7 与告警抑制的协作时序
| 时刻 | 抑制层 | 复核台 |
|---|---|---|
| 防抖窗内 | L3 未升告警 | 不入队(避免噪声) |
| 首次升告警 | 写 events + 证据 | 入队;展示峰值帧 |
| 冷却内心跳 | L4 不重复 events | 同 event_id 卡片可刷新 score,不新开单 |
| 票窗降敏 | L5 记 rule_id |
若仍误入队,优先选 FP_AUTH |
| 人工驳回后 | 建议补丁 pending | 难例照常入池;抑制审计与复核审计分 Topic |
3. 两周落地计划 + 验收门禁(嵌入 D60/D90)
3.1 两周(10 个工作日)可执行排期
| 日 | 交付 |
|---|---|
| D1–2 | 队列服务 + SQLite/内存优先级队列;消费 MQTT events;与证据 event_id 关联 |
| D3–4 | 复核 HMI 最小字段(§1.2);确认/驳回/暂缓;原因码下拉(§1.3);H1–H3 断言用例 |
| D5 | review.json + …/ops/review;索引列;证据只读打开抽检 |
| D6–7 | 驳回→难例 HUMAN_REJECT 入队;与主动学习目录对接;周配额计数器 |
| D8 | 防抖建议引擎(合并窗+日封顶);双人门禁应用补丁到 debounce.json;禁自动永久 suppress |
| D9 | SLA 计时、超时 SUSPECT_STALE、指标:review_queue_depth、review_sla_breach_total、review_reject_by_reason |
| D10 | 演练:确认不触达保护 VLAN;坏证据链仅 defer;错签模型事件不可「确认」为金标准;出《复核台配置基线》 |
3.2 嵌入既有门禁(本手册增补勾选项)
D60 增补(现场飞轮就绪)
| id | 描述 | 级别 |
|---|---|---|
| D60-HR-01 | 复核台可对 PPE/烟火样例完成确认与驳回;驳回无原因码被拒 | 否决 |
| D60-HR-02 | 确认路径网络抓包/ACL:无 PROT 路由、无 GOOSE/跳闸主题 | 否决(对齐 D60-09) |
| D60-HR-03 | 证据 MANIFEST 复核前后哈希一致;仅新增 review.json |
否决 |
| D60-HR-04 | HUMAN_REJECT 难例可在周报表计数;未冒充公开金标准 |
否决(对齐 D60-13) |
D90 增补(试点移交)
| id | 描述 | 级别 |
|---|---|---|
| D90-HR-01 | ≥2 个完整闭环:驳回→难例→(可选)防抖建议经门禁生效→告警量可审计下降或持平且无漏报恶化声明 | 否决(对齐 D90-08) |
| D90-HR-02 | P0/P1 SLA 抽测达标或书面偏差+整改;超时未「假确认」 | 否决 |
| D90-HR-03 | 原因码分布周报进运维包;OTHER 占比可控(建议 <15% 否则升码) |
警告 |
| D90-HR-04 | 104/辅控若接「确认态」点:仅状态,无控点;ICD/点表有隔离说明 | 否决(若本季接主站) |
3.3 一页运维口令(贴墙)
- 确认 ≠ 跳闸;有疑打开证据,无证据只暂缓。
- 驳回必选原因码;蒸汽/焊花走票窗,不靠永久静音。
- 原始帧只读;意见写在
review.json。 - 调参要门禁;建议≠自动生效。
- 超时变难例,不变「已确认」。
4. 可观测性与配置基线(最小集)
| 指标 / 配置 | 用途 |
|---|---|
review_queue_depth{priority=} |
积压告警 |
review_sla_breach_total{priority=} |
SLA |
review_decision_total{decision,reason_code=} |
误报结构 |
review_debounce_patch_total{cam,code=} |
调参审计 |
review_evidence_hash_mismatch_total |
H3 守护(应为 0) |
review_dual_gate_reject_total |
门禁驳回次数 |
debounce.json + reason_codes.json 版本 |
验收冻结 |
日志:复核提交写本地结构化日志(JSON lines),字段含 event_id、decision、reason_code、reviewer_id;禁止记录相机密码、mTLS 私钥、长时效预签名 URL。
配置变更走与站配置同一备份白名单(见灾备手册 C0),禁止飞书口头改阈值无版本。班后导出「原因码 Top5 + SLA 违约清单」进运维周报即可,无需另建大数据平台。
5. 参考边界
- 公开 IVA「人工复核 / 告警中心」产品能力因厂商而异;本手册以站端可自建队列 + 原因码 + 旁路审计为准,不绑定某一闭源控制台。
- 人脸/人员帧脱敏策略以证据仓与主动学习手册为准;复核台默认展示脱敏副本。
- 与主站 SOE 对标时:
clock_quality非 sync 的确认不得进事故金标准(证据仓 R1)。