2. Serving架构总览:模型上线全流程与核心组件

信用评分模型从训练完成到真正服务于业务决策,需要经过一条完整的工程化链路。本章从宏观视角梳理模型上线的全流程,并拆解Serving系统的三大核心组件,帮助你在后续章节中建立清晰的架构认知。

2.1 模型上线全流程:训练 → 打包 → 部署 → 监控

一个信用评分模型从离线训练到在线服务,通常经历四个阶段。每个阶段都有明确的输入输出和质检标准。

关键认知: 模型上线不是一次性的“发布动作”,而是一个持续迭代的工程闭环。打包和部署环节的自动化程度,直接影响模型迭代速度和线上稳定性。
模型上线全流程(训练→打包→部署→监控) ① 模型训练 特征工程 + 算法调优 ② 模型打包 序列化 + 版本化 ③ 模型部署 容器化 + 灰度上线 ④ 模型监控 性能 + 数据漂移 反馈闭环:监控触发模型迭代 💡 每个阶段都有明确的产出物:训练产出模型文件(.pkl/.onnx),打包产出镜像/包,部署产出API端点,监控产出告警事件。

下表总结了每个阶段的核心任务、产出物和常见工具:

阶段 核心任务 关键产出物 常用工具/框架
① 模型训练 特征工程、算法选择、超参调优、交叉验证 模型文件(.pkl / .joblib / .onnx) XGBoost、LightGBM、Scikit-learn
② 模型打包 模型序列化、依赖锁定、版本标记、镜像构建 Docker镜像 / 模型包(.tar.gz) Docker、MLflow、BentoML
③ 模型部署 容器编排、灰度发布、A/B测试、流量切换 API端点(REST/gRPC) Kubernetes、Kserve、Seldon Core
④ 模型监控 性能指标采集、数据漂移检测、告警通知 监控看板、告警规则 Prometheus、Grafana、Evidently AI
实战建议: 在信用评分场景中,模型打包阶段最容易忽略的是特征逻辑的固化。训练时的特征工程代码必须与Serving时的特征计算代码保持完全一致,否则会导致线上评分偏差。建议将特征工程代码也打包进模型镜像中。

2.2 Serving系统核心组件

一个生产级的信用评分Serving系统,通常由三个核心组件构成:API网关、模型引擎和特征存储。它们各司其职,共同支撑高并发、低延迟的评分服务。

Serving系统核心组件架构 外部评分请求 API网关 路由 · 限流 · 鉴权 · 协议转换 模型引擎 模型加载 · 推理计算 · 版本管理 特征存储 实时特征 · 离线特征 · 特征一致性 特征查询 💡 三个组件通过标准接口解耦:API网关调用模型引擎的推理接口,模型引擎从特征存储获取实时特征值。

2.2.1 API网关:系统的入口守卫

API网关是评分服务对外的统一入口,负责处理所有外部请求的接入和预处理。在信用评分场景中,API网关承担以下职责:

  • 请求路由:根据请求路径或Header将流量分发到不同版本的模型服务(如v1.0、v2.0)。
  • 限流与熔断:防止突发流量冲垮后端服务,保护模型引擎的稳定性。
  • 鉴权与审计:验证调用方身份,记录每次评分请求的调用日志,满足合规要求。
  • 协议转换:将外部HTTP/REST请求转换为内部gRPC调用,提升通信效率。
常见陷阱: 信用评分场景中,API网关的超时设置需要特别谨慎。评分请求通常要求在200ms内返回,网关的超时时间应设置为后端推理时间的1.5倍左右,避免因网络抖动导致大量超时重试。

2.2.2 模型引擎:推理的核心

模型引擎是Serving系统的计算核心,负责加载训练好的模型并执行推理。在信用评分场景中,模型引擎需要满足以下要求:

  • 多模型管理:支持同时加载多个版本的评分卡模型,用于A/B测试或灰度发布。
  • 高性能推理:利用批处理(batching)和模型优化(如ONNX Runtime)提升吞吐量。
  • 特征预处理:在推理前执行与训练时一致的特征变换逻辑(如WOE编码、分箱映射)。
  • 健康检查:提供就绪探针(readiness probe)和存活探针(liveness probe),便于Kubernetes管理。

2.2.3 特征存储:实时特征的基石

特征存储是Serving系统中的数据中间层,用于统一管理离线训练特征和在线推理特征。信用评分模型依赖大量实时特征(如近30天逾期次数、近7天查询次数),这些特征需要从多个数据源实时计算并缓存。

特性 离线特征存储 在线特征存储
数据源 Hive / 数据仓库 Kafka / 实时流
存储介质 Parquet / ORC文件 Redis / Cassandra
访问模式 批量扫描 点查(Key-Value)
一致性要求 最终一致性 强一致性(同一用户)
典型工具 Feast、Hopsworks Feast Online Store、Redis
实战建议: 特征存储是Serving系统中最容易出问题的组件。常见问题包括:离线特征与在线特征计算逻辑不一致、特征延迟导致评分偏差、特征缺失时的默认值处理。建议在特征存储层加入特征血缘追踪和一致性校验。

2.3 组件间的协作流程

一次完整的信用评分请求,三个核心组件按以下顺序协作:

  1. 请求到达API网关:网关校验Token、解析请求参数,提取用户ID和请求的模型版本。
  2. 网关转发至模型引擎:网关将标准化后的请求(含用户ID)发送给模型引擎的推理接口。
  3. 模型引擎查询特征存储:模型引擎根据用户ID从特征存储中拉取该用户的实时特征向量。
  4. 模型引擎执行推理:将特征向量输入加载好的模型,计算信用评分和风险等级。
  5. 返回评分结果:模型引擎将评分结果返回给API网关,网关封装后响应给调用方。
性能目标: 在信用评分场景中,端到端延迟通常要求 < 200ms(P99)。其中特征存储查询占40-60ms,模型推理占20-50ms,网关处理占10-20ms,剩余为网络开销。每个组件都需要针对延迟目标进行优化。