3. 策略编排基础:策略集、版本管理与执行顺序
授信决策引擎的核心工作单元是策略集(Strategy Set)。一个策略集将多个原子策略(如黑名单规则、多头借贷规则、收入模型评分)按业务逻辑组合成一个可独立部署、可版本化管理的决策单元。本章围绕策略集的概念、版本管理机制以及优先级与执行顺序展开,为后续的策略编排与调优打下基础。
3.1 策略集(Strategy Set)的概念
策略集是决策引擎中最高粒度的编排单元,它包含一组按特定顺序执行的策略节点,以及节点间的数据传递关系。每个策略集对应一个完整的决策场景,例如“新客信用审批”、“存量客户提额”、“反欺诈实时拦截”。
| 维度 | 说明 | 示例 |
|---|---|---|
| 定义 | 一组策略节点的有序集合,共享输入变量与中间结果 | “新客审批策略集 v2.1” |
| 输入 | 用户请求携带的字段(如身份证、手机号、设备指纹) | name, id_no, phone, device_id |
| 输出 | 决策结果(通过/拒绝/人工)、额度、利率、拒绝原因码 | decision=REJECT, reason_code=HIT_BLACKLIST |
| 生命周期 | 创建 → 配置 → 测试 → 发布 → 监控 → 下架 | 每个阶段对应引擎中的状态流转 |
3.2 策略版本管理
策略版本管理是保障决策稳定性和可追溯性的核心机制。每一次策略调整(新增规则、修改阈值、调整模型权重)都应生成一个新的版本号,并记录变更人、变更时间、变更原因。
3.2.1 版本号规范
推荐使用语义化版本号:主版本.次版本.修订号。
- 主版本(Major):策略集结构发生重大变更,如新增/删除策略节点、改变执行拓扑。
- 次版本(Minor):策略内部规则或参数调整,但不改变整体结构。
- 修订号(Patch):修复缺陷、优化性能、调整文案,不影响决策逻辑。
# 版本号示例
v2.1.0 → 主版本2,次版本1,修订号0(新增一条多头借贷规则)
v2.1.1 → 主版本2,次版本1,修订号1(修复规则中日期格式解析bug)
v3.0.0 → 主版本3(重构策略集,将反欺诈与信用评估拆分为两个独立策略集)
3.2.2 版本状态流转
每个版本在生命周期中经历以下状态:
- 草稿(Draft):编辑中,仅策略管理员可见。
- 测试(Testing):提交至沙箱环境,可进行离线回测或在线小流量验证。
- 已发布(Published):部署至生产环境,开始承接线上流量。
- 已归档(Archived):不再使用,保留历史记录供审计。
3.3 策略优先级与执行顺序
策略集内部的执行顺序直接影响决策效率与结果准确性。引擎必须按照明确的优先级规则依次执行每个策略节点,并支持短路(Short-circuit)机制——当某个策略直接拒绝或通过时,后续策略不再执行。
3.3.1 执行顺序定义方式
| 方式 | 描述 | 适用场景 |
|---|---|---|
| 数字优先级 | 每个策略节点配置一个整数优先级(如1~1000),数值越小越先执行 | 灵活编排,支持动态插入新策略 |
| 拓扑依赖 | 策略节点之间声明依赖关系,引擎自动计算执行顺序 | 复杂策略集,节点间有明确数据依赖 |
| 阶段分组 | 将策略分为“前置过滤→核心决策→后置补充”三个阶段,组内按优先级排序 | 大型策略集,便于运维人员理解整体流程 |
3.3.2 短路机制与执行路径
引擎在执行过程中,若某个策略节点返回最终决策(如“拒绝”且拒绝原因码为硬拒绝),则立即终止当前策略集的后续执行,直接返回结果。这种机制可大幅降低平均响应时间。
3.4 策略集编排架构图
下图展示了一个典型授信策略集的内部编排结构,包含优先级排序、阶段分组与短路路径:
3.5 优先级冲突与解决策略
在实际编排中,优先级配置可能产生冲突,导致执行顺序不符合预期。常见冲突场景及解决方案如下:
| 冲突场景 | 原因 | 解决方案 |
|---|---|---|
| 相同优先级 | 两个策略节点配置了相同的优先级数值 | 引擎按节点ID或创建时间升序执行;建议在配置时强制唯一优先级 |
| 循环依赖 | 策略A依赖策略B的输出,策略B又依赖策略A的输出 | 在拓扑依赖模式下,引擎应检测并拒绝循环依赖;设计时避免双向数据引用 |
| 优先级跨度不合理 | 前置过滤策略优先级为1~10,核心决策为11~20,但中间插入新策略时无合适位置 | 预留间隔(如1~100、101~200),或使用阶段分组+组内优先级 |
3.6 版本管理与执行顺序的联动
版本管理与执行顺序并非独立存在。当策略集从v2.0升级到v3.0时,可能同时调整了策略节点的优先级或阶段分组。因此,版本发布前必须进行回归测试,确保新版本的执行顺序与预期一致。
下图展示了版本升级过程中执行顺序的变更对比:
通过上述对比可以清晰看到:v3.0新增了设备指纹校验节点,并将收入模型评分的优先级从30提升至15(早于多头借贷规则执行)。这种变更可能显著影响最终决策结果,必须经过充分的离线回测与在线小流量验证后才能全量发布。