SaFRO:短视频搜索的多任务融合开始被写成满意度 policy

背景

补完站里现有的 SearchLLM小红书搜索 relevance teacher -> 轻量 rankerS-GRecIB-GRPO 之后,我发现站里虽然已经把:

  1. reward governance
  2. reasoning teacher -> student handoff
  3. train-time semantic judge
  4. Pareto-style objective aggregation

拆得比较细,但工业搜索栈里还有一个此前没被单独记成层的位置:

多任务预测头最后是怎样被融合成一个 ranking score 的?

过去很多公开路线默认把这一步写成:

  1. 若干 task head 先预测 CTR / long-play / duration / relevance
  2. 再用固定权重、规则或轻量融合器把它们合成一个最终分数

也就是说,大家更常把融合层看成一个静态后处理器,而不是一个会被长期目标直接优化的 policy。

这一轮我先用本地 search-layer 做 exact-title / 中文检索,确认中文传播层几乎还是空的;随后回到 arXiv 摘要页、HTML、PDF 与 GitHub API 做一手核验,最终锁定:

  1. SaFRO: Satisfaction-Aware Fusion via Dual-Relative Policy Optimization for Short-Video Search
  2. SaFRO arXiv HTML
  3. SaFRO PDF

核完之后,我更倾向于把它记成:

短视频搜索的多任务融合开始被写成满意度 policy

核心判断

这条线真正新增的,不是“又一个搜索 RL 模型”,而是 multi-task fusion 本身开始被当成 policy 学习

SaFRO 最值得单独成文的一点,是它没有继续把 RL 压在:

  1. 生成 query 的上游模型
  2. 在线 answer synthesis
  3. train-time semantic judge
  4. teacher-student distillation

这些更显眼的位置上。

它真正改写的是搜索排序栈内部那层经常被默认成工程细节的模块:

Multi-Task Fusion

论文开头就把问题写得很明确。工业短视频搜索里,系统通常会同时预测:

  1. click
  2. long-play
  3. duration
  4. relevance

但这些信号并不天然等价于长期满意度。静态融合器虽然能吃到即时 engagement,却不一定能对齐长期满意、回访和平台忠诚度。

因此 SaFRO 真正新增的系统位不是“又一个 RL ranker”,而是:

fusion policy

也就是:

到底该怎样根据 query、user 和 candidate context,动态决定各个目标头在当前请求里各占多少权重。

这对 Story Lab 很重要,因为它说明搜索/推荐里的 LLM-RL 协同不只会发生在 generator、judge 或 teacher 这些“看起来像 AI 的地方”,也可能发生在传统工业排序栈内部最核心、但最容易被忽略的 score fusion 层。

它把满意度 reward 的 owner 前推到 query level,而不是继续停在 item-level click 上

SaFRO 第二个值得记住的点,是它没有把长期满意度继续粗暴写成 session 末端的黑箱标签,也没有直接拿次日留存当唯一 reward。

它先构造了一个 satisfaction-aware reward model,核心依赖三类 query-level 线索:

  1. query reformulation
  2. normalized session gap
  3. next-day retention

其中最关键的是这两个 query-level proxy:

  1. query reformulation 被当成强负信号
  2. session gap 被当成 retention 的连续代理

论文 4.2 直接说明:

  1. 如果用户看完结果后很快改写 query,往往意味着 intent 没被满足
  2. retained users 会表现出更低的 reformulation rate 和更短的 session gap

更细一点,它还不是直接拿原始 session gap,而是先按用户自己的历史分位数做归一化。论文写 beta = 60%,先用用户个人历史 60% 分位的 gap 作为 baseline,再做指数衰减压缩。

最终的 r_sat 也不是简单求和,而是:

  1. alpha 平衡连续的 gap proxy 和二值的次日 retention
  2. 再乘上 (1 - I_reform)

这意味着一旦 query 发生 reformulation,这一轮满意度奖励会被直接压成 0

我觉得这是这篇 paper 最值得长期记住的地方之一:

满意度 constructor 在这里不是 item-level click 的线性延伸,而是 query intent fulfillment + retention tendency 的联合建模。

所以它补出的新观察位,不只是“有没有 satisfaction reward”,而是:

  1. satisfaction constructor
  2. query-level retention proxy
  3. proxy horizon

否则后面很容易把 ECPO 的 dissatisfaction constructor、SearchLLM 的 evidence-conditioned reward owner、S-GRec 的 semantic judge 和 SaFRO 的 search-log-derived satisfaction constructor,又写成同一种“奖励设计”。

DRPO 的关键不是又一个 PPO 变体,而是把梯度预算从低质量 query 挪向高质量 query

如果只看摘要,很容易把 DRPO 误解成又一个 GRPO / PPO 变体。

但正文里它真正要修的问题更具体:

搜索场景里 query 之间质量差异很大,直接按组内相对优势更新,会把很多梯度浪费在低质量 query 上。

因此 Dual-Relative Policy Optimization 做了两层相对比较:

  1. within-group
  2. across-batch

也就是不仅看同一 query 采样出来的候选动作之间谁更好,还要看这整个 query 相对 batch 均值到底是高质量还是低质量。

论文 4.3Figure 5 的关键结论是:

  1. DRPO 会保留组内 preference direction
  2. 但会通过 batch-relative shift,把优势分布整体上移或下移
  3. 高质量 query 会拿到更强梯度
  4. 低质量 query 的梯度会被抑制

这让它和普通 GRPO 的差别变得很具体:

不是只在 query 内做相对排序,而是开始在 batch 级别判断“这类 query 值不值得继续花优化预算”。

我会把这层记成:

batch-quality modulation

因为它补的不是通用 RL 技巧,而是搜索场景里一个很现实的工业问题:

同样一单位训练预算,不同 query 的可学价值并不相同。

TRAF 说明 objective fusion 也有自己的结构拓扑,而不只是几个 head 加权求和

SaFRO 第三个很值得单独记的点,是它没有停在“reward 做好了,RL 自然会学会融合”。

论文 4.4 又专门加了一层:

Task-Relation-Aware Fusion (TRAF)

这层修的问题也很明确:以往很多方法给每个 objective 单独分配权重,但忽略了不同任务之间本身有关系。

TRAF 的做法是:

  1. 先把隐状态投影成 task-specific embeddings
  2. 再通过任务两两内积得到 interaction scores
  3. 用这些 interaction scores 对 base logits 做 attention-style 聚合
  4. 再配上 gated residual,得到 refined logits

也就是说,它不再假设:

CTR / long-play / duration / relevance

只是四个彼此独立、最后做线性加权的头。

它显式承认:

objective relation topology

本身就是一个要学的对象。

这对 Story Lab 的方法表也很关键,因为过去我们很容易只记:

  1. scalarization
  2. Pareto dominance
  3. per-reward normalization
  4. gate-before-utility

SaFRO 说明还不够。

后面至少还要再补:

  1. fusion policy locus
  2. task-relation topology
  3. context-sensitive weight adaptation

否则 IB-GRPO / SearchLLM / SafeCRS / SaFRO 会继续被写成同一种“多目标优化”。

它的线上价值,说明这不是 reward 分析论文,而是生产搜索栈里的 fusion controller

SaFRO 的工业信号也很硬。

论文 5.1 直接给出数据规模:

  1. 来自快手短视频搜索
  2. 400M users
  3. 806M items
  4. 2.15B sessions

离线 Table 1 也不是只在单个指标上取巧,而是同时把短期 ranking 和长期满意度都往前推。SaFRO 达到:

  1. Average NDCG = 0.7102
  2. Satisfaction Score = 0.8656
  3. User Retention = 0.8173

相比强基线:

  1. 高于 DCN0.7037 / 0.8422 / 0.8054
  2. 也高于 AURO0.7040 / 0.8467 / 0.8026

更关键的是线上实验。

论文 5.4 直接写到:

  1. 在快手生产搜索系统里做了两个月
  2. 分配了 10% 总搜索流量
  3. baseline 是面向 user engagement 的 DDPG

结果 Table 3 给出:

  1. QRR -0.319%
  2. CTR +0.136%
  3. LPR +0.495%
  4. Watch Time +0.611%

同时 Figure 8 还显示,和 baseline 相比,SaFRO 的 retention 曲线会在 60 天窗口里持续向上分离。

所以它更适合被记成:

industrial satisfaction-aware fusion controller

而不是:

  1. 普通搜索 reranker
  2. 普通 reward shaping
  3. 普通 retention paper

对 Story Lab 的意义

SaFRO 补出的不是一条新 benchmark,而是一组此前站里没有单独记开的观察位:

  1. fusion policy locus:对齐发生在 generator、teacher、judge 还是 fusion 层
  2. satisfaction constructor:满意度到底是来自 query log proxy、semantic judge 还是 simulated user
  3. query-level retention proxy:长期目标是不是先被压到 query 这一层
  4. batch-quality modulation:优化预算会不会因 query 质量不同而再分配
  5. task-relation topology:objective 之间的关系是不是被显式建模

如果不补这几列,后面很容易把这些路线又压回同一种搜索/推荐对齐:

  1. SearchLLM 更像 reward governance contract
  2. 小红书搜索 relevance teacher 更像 criteria-grounded reasoning teacher -> light student
  3. S-GRec 更像 train-time semantic judge
  4. SaFRO 则是在 multi-task fusion layer 上直接学满意度 policy

这四条线的 consumer 其实已经完全不同。

公开边界与中文传播层

这条线当前的公开边界也比较清楚。

我这轮直接按以下三组关键词做了 GitHub API 检索:

  1. 论文全标题
  2. SaFRO short-video search
  3. 2603.19585

截至 2026-03-24,都没有返回稳定官方 repo。

所以当前更适合把它记成:

industrial paper-first satisfaction-aware fusion-policy route

而不是“已公开 workflow”。

中文传播层目前也明显偏弱。

这轮我继续补做了:

  1. SaFRO short-video search 中文
  2. site:xiaohongshu.com SaFRO 搜索
  3. xhslink SaFRO 搜索
  4. 2603.19585 中文

稳定结果基本还是:

  1. arXiv 摘要页
  2. arXiv HTML
  3. arXiv PDF
  4. 少量泛快手搜索/推荐讨论页

还没有拿到稳定高价值中文机制稿,也没有可复用的小红书线索。

所以截至 2026-03-24,这条线仍应以论文、HTML、PDF 与 GitHub API 为准。

证据与来源

  • SaFRO: Satisfaction-Aware Fusion via Dual-Relative Policy Optimization for Short-Video Search:摘要页明确给出 query-level behavioral proxiesDRPOTRAF、快手短视频搜索线上 A/B 这些关键信号。
  • SaFRO arXiv HTML:用于核对 4.2query reformulation + normalized session gap + next-day retention4.3 的 dual-relative advantage、4.4 的 task-relation modeling,以及 5.4 的两个月线上实验。
  • SaFRO PDF:用于复核数据规模 400M users / 806M items / 2.15B sessionsTable 1 的离线最优结果,以及 Table 3QRR / CTR / LPR / Watch Time 线上指标。
  • GitHub API 定向检索:按论文全标题、SaFRO short-video search 与 arXiv id 2603.19585 检索,截至 2026-03-24 仍未看到稳定官方实现仓。
  • 本地 search-layer 定向检索:"SaFRO: Satisfaction-Aware Fusion via Dual-Relative Policy Optimization for Short-Video Search"site:xiaohongshu.com SaFRO 搜索xhslink SaFRO 搜索2603.19585 中文 的结果显示中文传播层仍明显滞后,尚不足以替代一手材料。

下一步

  • SaFRO / SearchLLM / 小红书搜索 relevance teacher / S-GRec / IB-GRPO 压到同一张搜索/推荐 alignment 观察表里,新增 fusion policy locus / satisfaction constructor / query-level retention proxy / batch-quality modulation / task-relation topology 五列。
  • 继续追这条线是否出现官方仓、技术博客、Slides,或者更强的中文机制稿与稳定 xhslink;在这之前,不让传播层材料覆盖一手事实判断。