2. 实时推理链路总览:端到端链路架构图、数据流、核心组件
KYC 实时推理链路是身份验证与风险决策的“高速公路”。从用户提交证件或人脸视频开始,到最终输出“通过/拒绝/人工审核”结果,整个链路必须在 毫秒级 完成。本章从全局视角拆解这条链路的架构、数据流转与核心组件。
2.1 端到端链路架构图
下图展示了 KYC 实时推理链路的完整拓扑,包含采集层、预处理层、推理层、决策层与存储层五个核心层级。
2.2 数据流详解
数据在链路中经历 采集 → 预处理 → 推理 → 决策 → 存储 五个阶段,每个阶段都有明确的输入与输出。下表总结了各阶段的数据形态与关键动作:
| 阶段 | 输入数据 | 关键处理动作 | 输出数据 |
|---|---|---|---|
| 采集 | 用户原始视频流、证件照片、设备信息 | SDK 采集、摄像头调用、传感器读取 | 原始图像帧 + 设备指纹 + 元数据 |
| 预处理 | 原始图像帧、证件图片 | 图像质量评分、人脸检测与对齐、证件区域裁剪、格式归一化 | 标准化图像张量 + 质量标签 |
| 推理 | 标准化图像张量 | 模型前向计算(CNN/Transformer)、特征提取、相似度计算 | 特征向量 + 置信度分数 + 活体分数 |
| 决策 | 特征向量、分数、规则参数 | 规则引擎匹配、评分卡聚合、阈值判断 | 决策结果(通过/拒绝/人工) |
| 存储 | 决策结果、中间特征、日志 | 向量入库、日志归档、案件关联 | 持久化记录 + 可追溯审计 |
关键指标: 实时推理链路端到端延迟通常要求 P99 < 3s,其中推理层占 60%~70% 的耗时,预处理与决策层各占 15%~20%。
2.3 核心组件详解
每个层级由若干核心组件构成,组件之间通过 gRPC 或 消息队列 进行异步/同步通信。下面按层级逐一说明。
2.3.1 采集组件
- 证件 OCR 采集器: 支持身份证、护照、驾照等 20+ 种证件类型,自动触发拍照与边缘检测。
- 活体检测摄像头模块: 支持动作指令(眨眼、张嘴、摇头)与静默活体两种模式。
- 设备指纹 SDK: 采集设备 ID、IP、GPS、传感器列表,用于反欺诈环境检测。
- 第三方数据源适配器: 对接公安库、黑名单库、征信机构等外部接口。
2.3.2 预处理组件
- 图像质量校验器: 检测模糊度、光照、遮挡、分辨率,不合格直接拒绝并提示重拍。
- 人脸对齐模块: 基于关键点检测(106/468 点)进行仿射变换,统一人脸姿态。
- 证件裁剪与矫正器: 自动透视变换,去除背景干扰,输出标准证件 ROI。
- 脱敏处理器: 对身份证号、姓名等敏感字段进行实时脱敏,满足合规要求。
2.3.3 推理组件
- 人脸比对模型: 基于 ArcFace / CosFace,输出 512 维特征向量,计算余弦相似度。
- 证件 OCR 模型: 端到端文字识别(CRNN + Attention),支持中英文混排。
- 活体检测模型: 基于时序深度网络(TSN / 3D CNN),区分真人与照片/视频攻击。
- 反欺诈模型: 融合设备指纹与行为特征,输出欺诈概率分数。
2.3.4 决策组件
- 规则引擎: 可配置的 if-then 规则(如“活体分数 < 0.8 → 拒绝”),支持热更新。
- 评分卡: 加权聚合多模型分数,输出综合风险评分(0~100)。
- 人工审核队列: 当自动决策置信度不足时,自动推入人工审核工单。
- 最终决策器: 综合规则与评分,输出“通过 / 拒绝 / 人工审核”三元结果。
2.3.5 存储组件
- 特征向量库: 基于 Milvus / Faiss,支持亿级向量检索,用于 1:N 人脸查重。
- 审核日志库: 使用 Elasticsearch 存储全链路日志,支持快速检索与审计。
- 案件归档系统: 将每次 KYC 请求的完整数据打包归档,满足监管留存要求。
- 模型版本管理: 存储模型文件、配置与评估指标,支持一键回滚。
2.4 核心组件交互时序
下图以一次典型的 KYC 请求为例,展示核心组件之间的交互顺序与数据流向。
设计要点: 推理引擎与决策引擎之间采用 异步回调 模式,避免推理阻塞导致决策超时。存储层使用 写优先 策略,确保审计日志不丢失。
2.5 链路关键性能指标
| 指标名称 | 目标值 | 说明 |
|---|---|---|
| 端到端延迟(P50) | < 1.5s | 从用户点击“开始认证”到收到结果 |
| 端到端延迟(P99) | < 3.0s | 极端情况下的最大容忍延迟 |
| 推理吞吐量 | > 100 QPS | 单节点每秒处理的推理请求数 |
| 预处理成功率 | > 95% | 图像质量合格、对齐成功的比例 |
| 决策准确率 | > 99.5% | 自动决策与人工复核一致的比例 |
| 存储写入延迟 | < 200ms | 从决策完成到数据持久化完成 |
常见陷阱: 采集层与预处理层之间若使用同步 HTTP 调用,容易因网络抖动导致整体延迟飙升。建议在采集层与预处理层之间引入 本地缓存队列 或 WebSocket 长连接,降低握手开销。
2.6 链路容错与降级策略
实时推理链路必须考虑组件故障场景。以下是推荐的容错策略:
- 推理引擎熔断: 当推理错误率 > 10% 时,自动切换到备用模型或降级为规则决策。
- 第三方数据源超时: 设置 500ms 超时,超时后跳过该数据源,使用已有分数决策。
- 存储写入失败: 先写入本地磁盘队列,异步重试,确保不丢失审计日志。
- 预处理失败: 返回用户“图像不合格,请重拍”,不阻塞后续请求。