销售助手-推荐系统架构


明白,我先帮你把整个推荐系统 Step-0 → Step-2 的流程画成逻辑流程图(文本化示意图),突出 双来源(系统事件 + 人工规则),Step-1 / Step-2 的协同关系。

明白了,你是希望我把之前的 文本化形象图(五类触发源头) 的“表格”形式画得整齐对齐,不是普通表格,而是保留箭头和流程感的文本图。下面是重新排版后的版本,保证五类来源整齐对齐:


推荐系统五类触发源头文本图(完整版,整齐版)

                          ┌──────────────────────────────┐
                          │       推荐系统入口            │
                          │       (Trigger Event)        │
                          └──────────────────────────────┘
                                      │
        ┌─────────────────┬─────────────────┬─────────────────┬─────────────────┬─────────────────┐
        │                 │                 │                 │                 │                 │
┌──────────────┐   ┌──────────────┐   ┌──────────────┐   ┌──────────────┐   ┌──────────────┐
│ 事件驱动     │   │ 人工规则下发 │   │ 模型预测驱动 │   │ 定时/调度驱动 │   │ 外部数据驱动 │
│ Event-Driven │   │ Rule-Driven  │   │ Model-Driven │   │ Scheduled     │   │ External     │
├──────────────┤   ├──────────────┤   ├──────────────┤   ├──────────────┤   ├──────────────┤
│ - 浏览       │   │ - 节日促销   │   │ - 潜力商品预测 │   │ - 周期性推荐 │   │ - 库存低触发 │
│ - 加购物车   │   │ - 新品上线   │   │ - 流失唤回    │   │ - 节日预热   │   │ - 物流延迟   │
│ - 未下单     │   │ - 库存优先   │   │ - 个性化组合  │   │ - 补货提醒   │   │ - 市场趋势   │
│ - 成交/复购  │   │ - VIP 用户   │   │ - 转化率预测  │   │              │   │ - 汇率/价格变化 │
│ - 投诉/拒收 │   │ - 捆绑促销   │   │               │   │              │   │              │
└──────────────┘   └──────────────┘   └──────────────┘   └──────────────┘   └──────────────┘
        │                 │                 │                 │                 │
        └─────────────────┴─────────────────┴─────────────────┴─────────────────┴─────────────────┘
                                      ▼
               ┌───────────────────────┐
               │ Step-1: Gate           │
               │ Eligibility判断        │
               │ - 冷却期 / 频控       │
               │ - 黑名单 / 白名单约束 │
               └───────────────────────┘
                                      │
                                      ▼
               ┌───────────────────────┐
               │ Step-2: Recommendation │
               │ Strategy               │
               │ - 候选商品召回        │
               │ - 模型评分排序        │
               │ - 人工规则加权/过滤   │
               └───────────────────────┘
                                      │
                                      ▼
               ┌───────────────────────┐
               │ Step-3: CTA Selection  │
               │ - 买 / 查看 / 折扣 /提醒 │
               └───────────────────────┘
                                      │
                                      ▼
               ┌───────────────────────┐
               │ Step-4: Action Executor│
               │ - WhatsApp/FB发送消息 │
               │ - 状态记录 / 埋点 / AB │
               └───────────────────────┘

⚡ 说明

  1. 五类触发源全部展示,每个来源占据整齐的列,垂直对齐
  2. 统一汇入 Step-1 → Step-2 → Step-3 / Step-4 流程
  3. 箭头和边界对齐,可直接复制到 PRD 或文档展示

1 Step-0 来源

五大源头加工(事件驱动 + 人工规则 + 潜力预测 + 营销活动 + 运营/策略)
→ 输出 用户信息 + 商品信息 + 触发上下文


触发上下文(Trigger Context)定义

触发上下文是指 推荐触发时的环境信息,它不属于用户属性,也不属于商品本身,而是用来辅助 Step-1 Gate 判断是否触发Step-2 策略选择 的额外信息。


1️⃣ 典型组成

维度 描述 示例
触发事件类型 导致推荐系统被调用的事件 用户访问网站、加购未下单、发消息咨询、浏览特定品类
触发时间 / 时间窗口 当前时间或相对时间,用于活动或频控判断 早上 10 点、双 11 活动期间、用户最近访问时间
触发渠道 / 平台 用户所在渠道或入口 WhatsApp、Facebook、独立站网页、APP Push
触发策略标识 推荐调用的上下文策略标签 节日促销、复购提醒、潜力商品唤回、AB Test 流量分组
触发来源权重 用于策略加权,标记是事件驱动、人工规则还是预测触发 Event: 浏览 → 权重 1,Rule: 活动 → 权重 0.8

2️⃣ 作用

  1. Step-1 Gate 判断

    • 决定用户是否 Eligible,例如:

      • 当前时间是否在冷却期
      • 渠道是否允许发送消息
      • 活动策略是否针对该用户
  2. Step-2 推荐策略选择

    • 决定召回哪些商品或排序策略,例如:

      • 节日促销活动 → 优先召回折扣商品
      • 潜力商品预测 → Top-N 排序加权
      • AB Test → 使用不同策略模型
  3. 日志/埋点

    • 记录触发上下文信息,用于效果分析、策略优化和数据训练

2. Step-1(Gate)

  • 决定是否值得推荐(用户维度的门控层)
  • 结合用户状态、频控、人工规则

step1的过滤和step2过滤区别

你的疑问很有代表性,这也是很多人在设计推荐系统时容易产生的误解。核心问题是 **Step-1 的 Eligibility Gate 为什么要提前,而不是等 Step-2 计算出 Top-N 后再过滤**。我帮你详细分析一下原因:

---

## 1️⃣ Step-1 早期过滤的作用

**Step-1 的职责**:判断“用户是否值得推荐”,包括:

* 冷却期 / 频控
* 黑名单 / 白名单
* 用户状态(活跃/流失/加购未下单)

**作用**:

1. **节约计算资源**

   * Step-2 可能涉及模型预测、候选商品召回、加权排序等复杂计算
   * 如果用户在 Step-1 就被判定不 Eligible → 不执行 Step-2,节约计算和调用成本

2. **保护用户体验**

   * 如果用户在冷却期或黑名单中,即便 Step-2 计算出 Top-N,也不应发送推荐
   * 避免无效或反感推荐

3. **明确流程分层**

   * Step-1 = 用户维度门控
   * Step-2 = 商品维度策略
   * 分层清晰,规则更易管理和维护

---

## 2️⃣ 为什么不等 Step-2 再用 Step-1 过滤

| 方式                   | 优点                                | 缺点                                             |
| -------------------- | --------------------------------- | ---------------------------------------------- |
| Step-1 先过滤           | 节约 Step-2 计算资源;避免对黑名单用户做多余处理;流程清晰 | 如果 Gate 规则太严格,可能错过潜在转化用户(可通过软规则优化)             |
| Step-2 先计算 Top-N 再过滤 | Top-N 排序更精准,因为只过滤真正不合适的候选商品       | 对所有用户都执行模型召回 + 加权排序 → 无谓计算;黑名单用户仍然浪费资源;逻辑层次不清晰 |

> 本质区别:**Step-1 是“是否触发推荐动作”,Step-2 是“推荐什么”**。
> 如果把 Step-1 推迟到 Step-2 后再过滤,虽然 Top-N 可能更精确,但 **效率和用户体验代价太高**。

---

## 3️⃣ 举例说明

**场景**:

* 用户 A:黑名单用户
* 用户 B:普通用户

### 方案 1:Step-1 先过滤

| 用户 | Step-1 结果 | Step-2 执行 | 消息发送 |
| -- | --------- | --------- | ---- |
| A  | BLOCK     | 不执行       | 无    |
| B  | PASS      | Top-3 计算  | 推送   |

### 方案 2:Step-2 先计算 Top-N 再过滤

| 用户 | Step-2 Top-N | Step-1 过滤 | 消息发送 |
| -- | ------------ | --------- | ---- |
| A  | Top-3 商品     | BLOCK     | 无    |
| B  | Top-3 商品     | PASS      | 推送   |

**对比**:

* 用户 A 的 Top-N 计算完全浪费资源
* 用户 B 的处理相同
* Step-1 先行判断可以 **节省大量计算**

---

## 4️⃣ 核心结论

1. Step-1 Gate 是 **用户维度的门控层**,决定是否触发推荐
2. Step-2 是 **商品维度的策略层**,决定推荐什么 Top-N 商品
3. 先 Step-1 后 Step-2 的顺序是 **效率 + 用户体验 + 逻辑清晰**的最佳实践
4. Step-1 的规则可以相对严格,而 Step-2 的 Top-N 仍可以利用模型和软规则优化排序

3. Step-2(Recommendation Strategy)

  • 决定推荐什么商品 / 策略
  • 仍受人工规则约束(策略边界、优先级)
  1. 整合多来源商品
  • 事件驱动、规则下发、模型预测、定时调度、外部数据
  • Step-2 会把这些不同来源的商品统一到候选集合中

好的,我们把 Step-2 的规则应用和排序逻辑展开成更详细的流程和示意,明确硬约束、软加权、统一排序、策略决策,以及如何生成 Step-3 可用的 Top-N 商品列表。


Step1 过滤(或拒绝)策略

明白了,你希望 Step-1 只保留用户维度的过滤规则,去掉那些属于商品维度的约束(如已下单商品、价格敏感限制)。我帮你重新整理如下:


Step-1 会拒绝的用户类别(只针对用户)

1️⃣ 黑名单用户

  • 原因:历史上有不良行为或明确拒收推荐

  • 示例

    • 最近投诉过物流/商品质量
    • 连续点击“不感兴趣”或关闭推荐消息 ≥ 3 次
    • 用户主动退订营销消息

2️⃣ 冷却期/频率限制用户

  • 原因:用户在短时间内已经收到过推荐,为避免刷屏

  • 示例

    • 同类商品 24 小时内已推送一次 → 冷却期内不再推
    • 当日已收到 ≥ N 条推荐消息 → 暂不触发

3️⃣ 不符合行为状态的用户

  • 原因:用户当前状态不适合触发推荐动作

  • 示例

    • 流失时间过短 → 新用户刚访问无需唤回
    • 正在进行退款/退货流程 → 避免推荐触发反感
    • 已完成最近的推荐活动 → 近期无需再次触达

4️⃣ 不符合用户画像/标签的用户

  • 原因:用户属性或兴趣不符合推荐触发条件

  • 示例

    • 活动目标群体外的用户 → 非目标用户不触发
    • 国家/地区限制 → 当地法规或渠道限制不推
    • 用户分群/AB Test 不在实验组 → 暂不触发

5️⃣ 活动/运营策略排除的用户

  • 原因:运营策略控制推荐触发

  • 示例

    • 节日活动仅针对部分用户群 → 非目标用户被 BLOCK
    • 流量分配策略 → 非测试组用户不触发新策略

⚡ 小结

  • Step-1 只关注用户维度,判断 是否值得触发推荐动作
  • 不涉及具体商品的过滤(如已下单、价格敏感、高价商品等)
  • 输出结果:PASS / BLOCK / DEFER,决定是否进入 Step-2 商品策略处理

⚡ 总结

Step-1 Gate 拒绝的用户 = “此时此刻不值得推荐的用户”,逻辑重点:

  1. 黑名单 & 拒收 → 明确不触达
  2. 冷却期/频率限制 → 控制触达频率
  3. 行为/状态不符 → 避免无效或反感推荐
  4. 画像/偏好不符 → 用户体验优化
  5. 运营/活动策略排除 → 精准流量控制

Step-2: Recommendation Strategy 详细逻辑

1️⃣ 候选商品集合形成

Step-2 会接收来自多个来源的候选商品:

来源 说明
人工规则 节日促销、库存优先、VIP 优先、捆绑促销等
模型预测 潜力商品预测、流失唤回、个性化推荐
事件触发 用户加购、浏览未下单、复购等行为触发
定时调度 周期推荐、节日预热、补货提醒
外部数据 库存低、物流延迟、市场趋势、汇率变化

候选集合 = 多来源商品的并集,保证不同来源商品可以统一处理。


2️⃣ 应用硬约束(Hard Constraints / Filtering)

硬约束是必须遵守的规则,违反直接从候选集合剔除:

硬约束类型 示例 处理
用户画像限制 价格敏感用户 → 高价商品 删除高价 SKU
黑名单 / 拒收用户 连续关闭推荐消息 剔除所有推荐商品
渠道 / 地域限制 某国家禁止推特定商品 删除违规 SKU
库存 / 活动约束 库存为 0 或活动已结束 剔除商品

目的:保证推荐候选符合用户属性和业务规则,不触发负面体验或违规。


3️⃣ 应用软约束(Soft Constraints / Scoring Adjustments)

软约束是加权或评分调整规则,影响排序但不会剔除商品:

软约束类型 示例 分值调整
库存紧张 SKU 库存 < 10 +0.2 分
活动折扣 当前商品有促销 +0.15 分
用户兴趣 用户浏览过同类商品 +0.1 分
潜力商品 模型预测兴趣高 +0.05~0.2 分

公式示意

final_score = model_score + Σ(rule_bias)
  • model_score:模型预测的商品吸引力分
  • rule_bias:软约束加权
  • 最终分值用于排序

4️⃣ 统一排序(Ranking)

排序逻辑:按最终得分 + 优先级进行 Top-N 排序

  1. 对每个候选商品计算 final_score
  2. 考虑业务优先级(Business Priority):新品、毛利率高、库存紧张可进一步调优排序
  3. final_score 降序排列
  4. Top-N 生成最终推荐集

示例:

SKU model_score rule_bias final_score 排序说明
A1 0.80 +0.2 1.00 库存紧张加权,Top-1
B1 0.70 +0.15 0.85 活动折扣加权,Top-2
A2 0.75 0 0.75 普通商品,Top-3
C1 0.85 - - 被硬约束剔除

5️⃣ 输出 Step-3 CTA 使用列表

Step-2 输出的是 已加权排序且符合约束的候选商品 Top-N,供 Step-3 使用:

CTA 类型 典型策略
立即购买 Top-1 高分商品、库存紧张
查看折扣 活动折扣商品、潜力商品
提醒 / 浏览更多 Top-N 其他候选商品、低分但仍可推荐

Step-3 可以根据用户偏好、沟通渠道、消息类型选择不同 CTA,保证推荐落地可执行。


6️⃣ 总结逻辑链

候选商品集合
       │
       ▼
硬约束过滤(剔除不合规商品)
       │
       ▼
软约束加权(调整分数)
       │
       ▼
统一排序 + 优先级
       │
       ▼
Top-N 推荐列表 → Step-3 CTA 使用

核心思想:Step-2 是 策略决策层,处理已有候选商品集合,保证最终推荐既符合规则,又优化用户转化。


  1. Step-3 / Step-4

    • 选 CTA → 执行推荐动作 → 记录埋点

人工推荐来源

当然可以,我把你提到的人工规则来源拆开,给每个模块举几个跨境电商场景下的具体例子,便于你理解和落地。


1️⃣ 白名单(Whitelist)

作用:确保特定用户总是可以被推荐,即使其他条件可能阻止推荐。

例子

类型 描述 场景示例
VIP 用户 高价值客户,不受冷却期限制 LTV > 1000 美元的老客户,总是能收到新品推荐
活跃用户 最近 7 天登录 ≥ 3 次 高频访问用户可直接推折扣新品
测试用户 运营 AB Test 的样本 指定小部分用户总是收到推荐消息以测试策略效果

2️⃣ 黑名单(Blacklist)

作用:禁止向特定用户推荐,避免骚扰或风险。

例子

类型 描述 场景示例
投诉用户 最近有投诉/差评 用户最近投诉过包裹延迟,不再推折扣信息
高频拒收用户 多次点击“不感兴趣” 用户连续 3 次关闭推荐消息 → 禁止推荐一周
渠道限制用户 特定国家或渠道禁止 FB 用户所在地区不允许推特定促销产品

3️⃣ 商业优先级(Business Priority)

作用:决定在有多个候选推荐商品或机会时的优先顺序。

例子

类型 描述 场景示例
库存紧张产品 高优先级推送 某SKU库存低于 10 件 → 优先向潜在客户推荐
高毛利产品 提高 ROI 毛利率 > 50% 的产品 → 优先推荐给意向客户
新品 运营策略 新品上市前 7 天 → 高优先级推送给特定客户群

4️⃣ 活动规则(Promotion / Campaign Rules)

作用:结合营销活动或折扣策略控制推荐。

例子

类型 描述 场景示例
满减活动 满额可享折扣 订单金额 ≥ $200 → 推荐加购凑满减商品
限时折扣 时间窗口内推送 双 12 限时折扣期间 → 推荐折扣商品给浏览过该品类的用户
捆绑促销 配套推荐 购买 A 产品 → 推荐 B 产品做捆绑套装折扣

⚡ 小结

  • 白名单 / 黑名单 → “谁可以 / 谁不能收到推荐”
  • 商业优先级 → “在候选推荐中谁先推”
  • 活动规则 → “按营销策略 / 活动调整推荐行为”

这些人工规则 可以同时影响 Step-1(Gate)和 Step-2(推荐策略)

  • Step-1:黑名单 → BLOCK;白名单 → PASS
  • Step-2:商业优先级 & 活动规则 → 调整推荐商品顺序或过滤候选集

人工规则和 推荐系统step2融合案例

好的,我给你做一个完整例子,展示 Step-2 默认推荐策略 + 人工规则融合 的逻辑和效果。这个例子会用具体 SKU、用户画像和规则来说明。


场景设定

  • 用户:老客,价格敏感,活跃在 WhatsApp

  • 用户行为:比价 A vs B,Step-1 已 PASS

  • 推荐系统默认规则(Step-2):

    1. 推荐同类产品(A 类)
    2. 优先推荐模型预测分高的 Top-3 商品
    3. 默认排序只考虑模型得分 model_score
  • 人工规则:

    1. 商业优先级:SKU-A 库存 < 10 → +0.2 分
    2. 活动规则:当前折扣活动 B SKU → +0.15 分
    3. 用户画像约束:价格敏感 → 禁止推荐高价 SKU-C

Step-2 默认处理(无人工规则)

SKU model_score 备注
A1 0.80 同类高评分
A2 0.75 同类中等评分
B1 0.70 不同类,模型预测一般
C1 0.85 高价 SKU

默认排序 Top-3:C1 (0.85), A1 (0.80), A2 (0.75)

问题:价格敏感用户可能会看到高价 SKU-C1,不理想


Step-2 + 人工规则融合处理

1️⃣ 过滤候选集(硬约束/用户画像)

  • 价格敏感 → 禁止推荐高价 SKU-C1 → 剔除

2️⃣ 软约束加权(评分调整)

SKU model_score rule_bias final_score 说明
A1 0.80 +0.2 1.00 库存紧张加权
A2 0.75 0 0.75 无额外规则加权
B1 0.70 +0.15 0.85 活动折扣加权
C1 0.85 - - 被规则剔除

3️⃣ 排序 Top-N

  • 排序后:A1 (1.00), B1 (0.85), A2 (0.75)

4️⃣ CTA 决策

  • A1 → “立即购买 / 查看库存”
  • B1 → “查看折扣 / 推荐组合”
  • A2 → “提醒 / 浏览更多选项”

⚡ 总结

完全理解你的疑问,你抓住了核心点:Step-2 的“召回”逻辑”和“人工规则加权”之间的关系。我帮你理清这个逻辑。


一、Step-2 默认流程

  1. 候选集召回(Candidate Recall)

    • Step-2 默认规则会根据模型、同类强化、用户偏好等召回一批商品

    • 在你的例子里:

      • 用户对比 A vs B
      • Step-2 默认召回 A 类同类商品 + B 类商品 + 其他 Top-N 模型推荐
  2. 人工规则的作用

    • 硬约束:会在召回后直接过滤掉不合适的商品(比如价格敏感 → 禁止推荐高价 SKU-C)

    • 软约束 / 权重调整:会对候选商品打分或加权,影响排序

      • 比如库存紧张 SKU-A → +0.2 分
      • 活动折扣 SKU-B → +0.15 分
    • 注意:软约束不会“召回新商品”,只调整已经召回候选的优先级


二、总结

  • Step-2 召回 = 默认规则负责

  • 人工规则

    • 硬约束 → 过滤掉不合适候选
    • 软约束 → 调整候选权重 / 排序
  • 人工规则不会主动增加新候选,它作用于 已有召回商品集合

换句话说,人工规则是 Step-2 的“策略调整层”,不改变召回逻辑,只改变输出排序和可见性。

posted @ 2025-12-15 10:06  向着朝阳  阅读(43)  评论(0)    收藏  举报