1. 风控模型 serving 概述
1.1 什么是实时风控
实时风控是指在用户行为发生的 毫秒级时间窗口 内,完成数据采集、特征计算、模型推理与决策输出的风险控制体系。与离线批量风控不同,实时风控必须满足以下三个核心约束:
- 低延迟:端到端响应时间通常要求 < 100ms,部分场景(如支付)要求 < 50ms。
- 高并发:峰值 QPS 可达数万至数十万,需支持弹性扩缩。
- 强一致性:同一笔交易在模型 serving 层不能被重复打分或漏打分。
典型的实时风控场景包括:
| 场景 | 决策时效 | 模型类型 | 典型特征 |
|---|---|---|---|
| 支付交易拦截 | < 50ms | GBDT / 深度模型 | 设备指纹、行为序列、商户画像 |
| 注册/登录保护 | < 100ms | 逻辑回归 / 规则引擎 | IP 信誉、设备关联、频次统计 |
| 信贷申请反欺诈 | < 200ms | XGBoost / 图模型 | 多头借贷、关系网络、社交图谱 |
| 内容安全审核 | < 500ms | NLP / 多模态模型 | 文本语义、图片 OCR、音频指纹 |
关键认知: 实时风控不是单一模型的问题,而是一套从数据接入到决策下发的完整链路。模型 serving 是这条链路的“心脏”,直接决定风控效果的上限。
1.2 Model Serving 在风控链路中的位置
一条完整的实时风控链路通常包含以下 6 个阶段:
- 事件接入:通过 Kafka / HTTP / gRPC 接收用户行为事件。
- 特征工程:实时计算窗口聚合、设备指纹、关系图谱等特征。
- 模型 serving:加载训练好的模型,对特征进行推理,输出风险分数或标签。
- 决策引擎:结合模型分数、规则策略、人工审核结果,做出最终决策。
- 结果下发:将决策结果返回给业务系统(允许/拒绝/人工审核)。
- 监控与复盘:采集 serving 日志、模型分数分布、决策结果,用于离线分析和模型迭代。
下图展示了 model serving 在风控链路中的核心位置:
架构要点: Model Serving 层与特征工程、决策引擎之间通常通过 protobuf 序列化 或 共享内存 传递特征张量,避免重复序列化开销。在复盘时,需要从 serving 层捞取原始特征、模型分数、模型版本号,才能准确定位问题。
1.3 切片复盘的价值
“切片复盘”是指对 model serving 层在特定时间窗口、特定流量分片或特定模型版本上的 全量日志 进行回溯分析。它与传统的离线评估有本质区别:
| 对比维度 | 离线评估 | 切片复盘 |
|---|---|---|
| 数据来源 | 历史标注样本 | 线上实时日志 + 特征快照 |
| 分析粒度 | 整体指标(AUC / KS) | 单笔 / 分桶 / 分时段 / 分版本 |
| 时效性 | T+1 或更久 | 分钟级 ~ 小时级 |
| 核心目标 | 模型选型与调参 | 线上异常排查、版本对比、特征漂移发现 |
| 输出形式 | 报表 / 曲线 | 明细日志 + 聚合看板 + 告警 |
切片复盘在实战中主要解决以下三类问题:
- 模型版本退化:新上线模型在某个流量分片(如 iOS 端、高净值用户)上分数分布异常,通过切片对比快速定位并回滚。
- 特征数据质量:上游特征工程在某时段返回空值或异常值,导致模型输出 NaN 或极端分数,切片复盘可精确锁定时间窗口和特征维度。
- 性能瓶颈分析:serving 层在高峰期出现超时或 OOM,通过切片复盘按 QPS 分桶、模型复杂度分桶,找到性能拐点。
常见误区: 很多团队只做离线 AUC 评估,认为模型在离线集上表现好就万事大吉。实际上,线上 serving 层的特征缺失、模型版本不一致、缓存穿透等问题,往往比模型算法本身更容易导致风控失效。切片复盘是连接离线与线上的“最后一公里”质量保障手段。
下图展示了切片复盘的核心数据流:
核心结论: 切片复盘不是锦上添花的分析工具,而是实时风控 model serving 的 必备质量门禁。没有切片复盘能力,线上模型就像在黑箱中运行——你不知道它什么时候会失效,也不知道失效的原因。本课程后续章节将手把手带你搭建一套生产级的切片复盘系统。