生成式推荐 (Generative Recommendation)
定义
生成式推荐是一种将推荐任务重新定义为自回归序列生成的新范式。与传统的”检索-排序”(cascaded retrieve-and-rank)架构不同,生成式推荐用单一的 Transformer 模型直接生成用户可能感兴趣的 item 标识符(semantic IDs 或 item tokens),实现端到端优化。
核心原理
1. 问题重定义
传统推荐被视为多级分类/排序问题:
召回(候选集: 百万) -> 粗排(候选集: 千) -> 精排(候选集: 百) -> 返回 Top-K
生成式推荐将其重定义为条件生成问题:
即:给定用户历史行为序列,自回归地生成下一个 item 的 semantic ID。
2. 关键技术组件
Tokenization(语义ID量化):
- 目标:将 item(视频/商品/广告)压缩为固定长度的离散 token 序列
- 方法:RQ-Kmeans(残差 K-means 量化),多级码本,粗到细的语义层次
- 与 RQ-VAE 对比:RQ-Kmeans 在重建质量、码本利用率和平衡性上更优
- 输入:多模态特征(文本、视觉帧)+ 协同信号(用户行为相似性)
架构选择:
- Encoder-Decoder(OneRec V1):encoder 处理用户历史,decoder 生成语义 ID。问题:97.66% 的 FLOPs 消耗在 context encoding 上。
- Lazy Decoder-Only(OneRec V2):消除 encoder,所有计算集中在目标 item 的解码。通过 KV-Sharing + GQA 大幅降低显存和计算。
- LLM Backbone(OpenOneRec):基于 LLaMA/Dense LM 架构,统一文本 token 和 item token 的词汇表。
训练策略:
- Pre-training:Next Token Prediction(NTP)——标准自回归训练
- Post-training / Alignment:DPO(OneRec V1)、真实用户反馈 RL(OneRec V2)、GRPO(OpenOneRec)
- Co-Pretraining(OpenOneRec):推荐语料与通用文本混合训练,防止灾难性遗忘
3. 为什么生成式推荐优于传统架构?
| 问题 | 传统级联 | 生成式推荐 |
|---|---|---|
| 计算碎片化 | 50%+ 资源用于通信和存储 | 端到端,减少非计算开销 |
| 优化目标冲突 | 各阶段独立目标 | 统一 NTP loss + RL reward |
| MFU | 4.6%(训练)/ 11.2%(推理) | 23.7% / 28.8%(接近 LLM) |
| OPEX | 基线 | 10.6% |
| 规模化 | 受限于架构复杂度 | 遵循 scaling law,可扩展至 8B+ |
演化脉络
传统检索 -> 生成式检索(GR) -> 端到端生成式推荐(OneRec V1)
↓
Session-wise 生成 + DPO
↓
Lazy Decoder-Only (V2) — 94% 计算量降低
↓
CoT 推理 (Think) — 可解释推荐
↓
开源基础模型 (OpenOneRec) — 1.7B/8B + RecIF-Bench
与关联概念的区别
- vs 传统推荐:生成式推荐是端到端生成,传统推荐是多级检索排序
- vs CTR 预估:CTR 预估是判别式任务(预测点击概率),生成式推荐是生成式任务(生成 item ID)。但统一 Transformer(如 OneTrans)在技术上与生成式推荐共享架构思想
- vs LLM 的生成:本质相同(自回归生成),但 output space 不同:LLM 输出自然语言 token,生成式推荐输出 item semantic ID
关键挑战
- Token 空间设计:语义 ID 的质量和层级数直接影响推荐性能
- 推理效率:beam search 解码在工业级 QPS(>400k)和延迟(<500ms)下的可行性
- 冷启动:新 item 的 semantic ID 需要与已有码本进行匹配
- 多样性 vs 准确性:自回归生成天然的”多样性”优势与推荐精度的平衡
- 与 LLM 的深度整合:如 OneRec-Think 引入 CoT 推理,OpenOneRec 统一文本/item token