1. 为什么“生成式推荐”突然成了工业界的必答题
如果你这两年一直在做推荐系统,大概率会有一种割裂感:一边是业务侧还在催着优化AUC、提升CTR,另一边是各种技术群里天天在聊LLM、聊生成式、聊Foundation Model。2026年这个时间点往回看,Generative Recommendation(生成式推荐)已经不是实验室里的概念了,它正在变成工业界推荐系统迭代的下一站。
我先把这个话题的边界划清楚。所谓Generative Recommendation,核心思路是把推荐问题从“打分排序”重新建模成“生成”问题——模型不再只是给候选物品打一个分数,而是直接生成用户可能感兴趣的物品序列、物品语义ID,甚至是推荐理由。而Large Recommendation Model(LRM)和Recommendation Foundation Model(RFM)是这条演进路线上的两个关键阶段:LRM更像是把推荐模型做大做深,参数量、序列长度、特征交互都往大模型的路子上靠;RFM则是更进一步,追求一个可以跨场景、跨域、甚至跨任务迁移的推荐基座。
这篇文章适合谁看?如果你是有一定推荐系统基础的算法工程师、技术负责人,正在评估要不要把现有推荐链路往生成式方向迁移,或者你已经在做相关预研但被各种概念绕晕了,那这篇调研应该能帮你把脉络理清楚。我会从整体设计思路、核心技术点、工业落地实操、常见坑这几个维度展开,尽量把“为什么这么设计”讲透,而不是只罗列论文结论。
需要提前说明的是,这个领域迭代极快,很多方案还在快速演进中,我写的是基于当前工业界常见实践的一个相对稳定的认知框架,具体到你的业务场景,还需要结合数据规模、延迟要求、算力预算做取舍。
2. 从LRM到RFM:整体设计思路与演进逻辑拆解
2.1 传统推荐链路的瓶颈到底在哪
要理解为什么会有生成式推荐,得先看清楚传统推荐架构的天花板。经典的推荐系统是“召回-粗排-精排-重排”四级漏斗,每一级都在做一件事:从海量候选里筛出更小的一批,最后精排出Top-K。这个范式跑了十几年,工程上非常成熟,但它的根本问题在于目标割裂。
召回阶段优化的是“能不能把相关物品捞回来”,精排阶段优化的是“单个物品的点击率”,重排阶段又要考虑多样性、商业价值。每个阶段的目标函数不一样,模型之间信息传递靠的是特征和分数,而不是统一的语义理解。结果就是:召回可能漏掉了精排真正想要的物品,精排的分数在重排阶段又被强行打散,整个链路的全局最优性很难保证。
另一个瓶颈是特征工程的边际收益递减。过去靠人工交叉特征、序列特征能持续涨点,但现在很多场景下,加特征的收益已经非常微弱,而维护成本却越来越高。用户行为序列越来越长,简单的Pooling或Attention已经很难充分建模长序列里的复杂意图。
还有一个容易被忽视的点:冷启动和长尾。传统模型对ID类特征依赖很重,新物品、新用户没有历史行为,Embedding学不好,效果就上不去。而生成式模型如果能基于语义生成,理论上对冷启动更友好。
2.2 LRM:把推荐模型“做大”的第一阶段
Large Recommendation Model的核心思路很直接:既然NLP和CV领域证明了Scaling Law有效,那推荐模型也往大了做。具体体现在几个方面:
- 参数量膨胀:从早期的几百万参数,到现在的十亿甚至百亿级别。主要增长来自更深的网络、更宽的Embedding层、更复杂的序列建模模块。
- 序列长度拉长:用户行为序列从几十个扩展到几千个甚至上万。长序列建模成为LRM的标配能力。
- 特征交互升级:从简单的FM、DeepFM,到DIN、DIEN,再到基于Transformer的序列建模,特征交互的复杂度大幅提升。
- 训练数据规模化:用全量曝光、点击、转化数据做预训练,再在下游任务微调。
LRM解决了一部分问题,比如长序列建模能力更强了,特征交互更充分了。但它本质上还是“判别式”模型——给定用户和物品,输出一个分数。它没有改变推荐问题的建模方式,只是把模型容量做大了。而且LRM的参数量上去了,推理延迟和成本也上去了,工业落地时要在效果和效率之间做精细平衡。
2.3 RFM:从“判别”到“生成”的范式跃迁
Recommendation Foundation Model是更激进的一步。它的目标不是做一个更大的精排模型,而是做一个通用的推荐基座,能够通过Prompt或少量微调适配到不同场景、不同任务。
RFM的几个核心特征:
- 生成式建模:把推荐转化为序列生成问题。输入用户历史行为序列,输出下一个可能交互的物品的语义ID或Token序列。
- 语义ID体系:物品不再只是一个ID,而是被映射到一组语义Token。这样模型可以在语义空间里做生成和推理,而不是在离散ID空间里做分类。
- 统一表征:用户、物品、上下文都被编码到同一个语义空间,跨域迁移成为可能。
- 预训练+微调范式:在大规模多域数据上预训练,然后通过Prompt或轻量微调适配下游任务。
从LRM到RFM,本质上是推荐系统从“判别式排序”向“生成式建模”的范式迁移。这个迁移的意义在于:推荐系统终于可以像LLM一样,有一个统一的基座,然后通过适配层解决各种下游任务。这对工业界意味着什么?意味着你可能不再需要为每个场景单独维护一套召回、排序模型,而是用一个基座加少量适配就能覆盖多个场景。
2.4 工业界为什么现在开始认真对待RFM
几个现实驱动力:
第一,LLM的技术溢出。Tokenizer、Transformer、预训练、Instruction Tuning这些技术已经在NLP领域验证过了,迁移到推荐领域的成本在降低。很多团队发现,把推荐问题改造成序列生成问题后,可以直接复用LLM的训练框架和工程设施。
第二,业务场景碎片化。大厂内部往往有几十个推荐场景,每个场景单独维护模型成本极高。RFM的跨域迁移能力正好切中这个痛点。
第三,算力结构变化。GPU集群的普及让大模型训练和推理成为可能,而生成式模型的推理可以用KV Cache、量化等技术优化,成本在可接受范围内。
第四,冷启动和长尾压力。业务方越来越关注新物品、新用户的推荐效果,生成式模型基于语义的泛化能力在这方面有天然优势。
3. 核心技术点深度解析:语义ID、生成式建模与基座架构
3.1 语义ID:生成式推荐的地基
生成式推荐最核心的技术点之一就是语义ID(Semantic ID)。传统推荐里,物品ID是一个离散的、无意义的整数,模型只能通过共现关系学习物品之间的关联。而语义ID是把物品映射到一组有语义意义的Token序列,比如一个物品可能被表示为[a3, b7, c2]这样的Token组合。
为什么需要语义ID?因为生成式模型需要在离散Token空间里做生成,如果直接用物品ID,词表会非常大(百万甚至千万级),生成难度极高。而语义ID通过层次化聚类或向量量化,把物品映射到一个较小的Token词表上,生成难度大幅降低。
常见的语义ID构建方法:
- RQ-VAE(Residual Quantized VAE):用残差量化把物品Embedding逐层量化成多个Token。第一层量化捕捉粗粒度语义,后续层捕捉残差细节。这是目前工业界比较主流的方法。
- 层次化K-Means:对物品Embedding做多层K-Means聚类,每层得到一个Token,组合起来就是语义ID。实现简单,但语义表达能力不如RQ-VAE。
- 基于LLM的语义编码:用LLM对物品的文本描述做编码,然后量化成Token。适合有丰富文本信息的场景。
语义ID的质量直接决定了生成式推荐的上限。如果语义ID不能很好地保留物品之间的语义关系,生成出来的物品就会“驴唇不对马嘴”。实操中,语义ID的构建需要仔细调参:码本大小、量化层数、是否共享码本,这些都会影响最终效果。
3.2 生成式建模:从分类到序列生成
传统精排模型做的是二分类或多分类,输出一个概率值。生成式推荐做的是序列生成,输入用户历史行为序列,输出下一个物品的语义ID序列。
这个建模方式的改变带来几个关键差异:
损失函数不同。传统模型用交叉熵损失做分类,生成式模型用自回归的Next Token Prediction损失。这意味着模型在训练时看到的是完整的序列,学习的是序列的联合概率分布,而不是单个物品的独立概率。
推理方式不同。传统模型对每个候选物品打分,然后排序。生成式模型直接生成Top-K序列,可以用Beam Search、Top-K采样等策略。推理时不需要遍历所有候选,理论上效率更高,但生成质量依赖模型能力。
评估指标不同。传统模型看AUC、GAUC、NDCG。生成式模型除了这些,还要看生成序列的多样性、新颖性、语义一致性。工业界常用的还有Hit Rate、MRR等。
实操中,生成式推荐的训练数据构造很关键。通常会把用户行为序列按时间切分,用前面的行为预测后面的行为。序列长度、滑动窗口大小、是否加入负采样,这些都会影响模型效果。
3.3 RFM的基座架构:统一表征与跨域迁移
Recommendation Foundation Model的架构设计目标是“一个基座,多场景适配”。典型架构包含几个部分:
- 输入编码层:把用户特征、物品语义ID、上下文特征编码成统一Token序列。这里的关键是设计好Prompt模板,让不同场景的输入都能映射到同一个格式。
- Transformer主干:多层Transformer做序列建模。参数量从几亿到几百亿不等,取决于算力预算。
- 输出层:预测下一个Token的概率分布。可以是物品语义ID的Token,也可以是其他辅助Token。
- 适配层:通过Prompt Tuning、LoRA等轻量微调技术,让基座适配到具体场景。
跨域迁移是RFM的核心卖点。实现方式通常有两种:一种是多域数据混合预训练,让模型学到跨域的通用表征;另一种是元学习或Prompt-based适配,让模型快速适应新域。
工业落地时,RFM的挑战在于:预训练成本极高,需要大规模GPU集群;推理延迟要控制在业务可接受范围内;跨域迁移的效果需要仔细验证,不是所有场景都能受益。
3.4 训练范式:预训练、微调与对齐
RFM的训练通常分三个阶段:
预训练阶段:在大规模多域行为数据上做自监督学习。目标是让模型学会通用的用户行为建模能力。这个阶段数据量最大,算力消耗最高。
微调阶段:在目标场景的数据上做有监督微调。可以用全量微调,也可以用LoRA等参数高效方法。这个阶段决定模型在具体场景的效果。
对齐阶段:通过RLHF或DPO等技术,让模型的生成结果更符合业务目标(比如多样性、商业价值、用户体验)。这个阶段在工业界越来越受重视,因为纯生成模型可能生成“合理但无趣”的结果。
实操中,预训练和微调的配比、学习率调度、数据配比都需要仔细调。一个常见的问题是:预训练学到的通用能力在微调时被“遗忘”了,导致跨域迁移效果打折。解决办法包括Rehearsal(混合预训练数据)、正则化、Adapter等。
4. 工业落地实操:从数据准备到线上部署
4.1 数据准备与语义ID构建实操
落地生成式推荐的第一步是构建语义ID。我以最常见的RQ-VAE方案为例,讲一下实操流程。
首先,你需要拿到物品的Embedding。这个Embedding可以来自现有精排模型的物品塔,也可以用物品的文本/图像特征单独训练一个编码器。工业界常见做法是复用现有模型的物品Embedding,这样成本最低。
然后,训练RQ-VAE。核心参数包括:
- 码本大小(Codebook Size):每层量化的聚类中心数量。常见取值256、512、1024。码本越大,语义表达能力越强,但生成难度也越大。
- 量化层数(Num Layers):通常2-4层。层数越多,语义ID越精细,但序列长度也越长。
- Commitment Loss权重:控制量化误差和重构误差的平衡。
训练完成后,每个物品会被映射成一个Token序列,比如[23, 187, 45]。这个序列就是它的语义ID。
注意:语义ID构建完成后,一定要做质量校验。常见方法是看语义ID的碰撞率(不同物品映射到同一ID的比例)和语义一致性(语义相近的物品是否ID也相近)。碰撞率太高说明码本太小或层数太少,需要调整。
数据准备方面,用户行为序列的构造也很关键。通常按时间排序,取最近N个行为。N的取值取决于业务场景,短视频可能取几百,电商可能取几十。序列太长会稀释近期行为的影响,太短又捕捉不到长期兴趣。
4.2 模型训练与调参要点
模型训练阶段,有几个关键决策点:
序列长度与Batch Size的权衡。生成式模型的序列长度通常比传统模型长很多,因为要包含用户历史行为序列和物品语义ID序列。长序列意味着显存占用大,Batch Size要相应减小。实操中,可以用梯度累积来模拟大Batch。
学习率与Warmup。生成式模型对学习率比较敏感,通常用较小的学习率(1e-4到1e-5)配合Warmup。Warmup步数一般占总训练步数的5%-10%。
损失函数设计。除了标准的Next Token Prediction损失,工业界还会加入辅助损失,比如对比学习损失、物品语义一致性损失。这些辅助损失可以帮助模型学到更好的表征。
负采样策略。生成式模型理论上不需要负采样,因为Softmax本身就在做对比。但工业界实践中,全量Softmax计算量太大,通常会用Sampled Softmax或In-batch Negative。负采样的质量和数量会显著影响模型效果。
我踩过的一个坑是:一开始直接用全量Softmax,结果训练极慢,显存直接爆掉。后来改成In-batch Negative加少量Hard Negative,效果基本持平,但训练速度提升了3倍多。
4.3 推理优化与线上部署
生成式推荐的推理和传统模型差异很大。传统模型是“打分-排序”,生成式模型是“生成-解码”。推理优化的核心是降低生成延迟。
常用的推理优化技术:
- KV Cache:缓存已生成Token的Key/Value,避免重复计算。这是自回归生成的标准优化,能大幅降低延迟。
- Beam Search调参:Beam Size越大,生成质量越好,但延迟也越高。工业界通常用Beam Size 3-10,具体看延迟预算。
- 量化:把模型权重从FP16量化到INT8,推理速度提升明显,效果损失可控。
- 蒸馏:用大模型蒸馏一个小模型做线上推理,平衡效果和效率。
线上部署时,生成式推荐通常作为一个独立的服务,和现有推荐链路并行。常见做法是:生成式模型负责生成候选集,传统精排模型负责最终排序。这样既能利用生成式模型的泛化能力,又能保留传统模型的可控性。
提示:生成式推荐的线上A/B实验要特别关注“惊喜度”指标。因为生成式模型可能推荐出传统模型不会推的物品,这些物品可能效果很好,也可能完全跑偏。需要设计合理的评估体系。
4.4 效果评估与迭代闭环
生成式推荐的评估比传统模型复杂。除了CTR、GMV这些业务指标,还需要关注:
- 生成多样性:生成结果是否过于集中,是否有多样性。
- 语义一致性:生成的物品是否和用户历史行为语义一致。
- 新颖性:是否推荐了用户没见过的物品,且用户有正向反馈。
- 跨域迁移效果:在新场景上的冷启动效果如何。
迭代闭环方面,生成式推荐特别适合做“生成-反馈-再训练”的飞轮。因为生成式模型可以生成大量候选,线上反馈数据可以快速回流,用于模型迭代。这个闭环跑通后,模型效果会持续提升。
5. 常见问题与排查技巧实录
5.1 语义ID相关高频问题
问题一:语义ID碰撞率过高。表现是很多不同物品映射到同一组Token。原因是码本太小或量化层数太少。解决办法是增大码本或增加层数,但要注意生成难度也会上升。实操中,碰撞率控制在1%以下比较理想。
问题二:语义ID语义不一致。表现是语义相近的物品ID差异很大。这通常是RQ-VAE训练不充分或Embedding质量差导致的。可以尝试增加训练轮数、调整Commitment Loss权重,或者换用更好的物品Embedding。
问题三:语义ID序列过长。层数太多会导致序列过长,生成延迟高。需要在语义表达能力和生成效率之间做权衡。通常3层是一个比较平衡的选择。
5.2 训练过程常见故障
Loss不下降或震荡。常见原因包括学习率太大、Batch Size太小、数据质量差。排查顺序:先看数据,再看学习率,最后看模型结构。生成式模型的Loss曲线通常比传统模型更平滑,如果剧烈震荡,大概率是学习率问题。
生成结果重复。模型总是生成相同的物品序列。这通常是训练数据中某些物品出现频率过高,或者解码策略太保守。解决办法包括:调整采样温度、加入重复惩罚、平衡训练数据分布。
跨域迁移效果差。预训练模型在新场景上效果不如预期。原因可能是预训练数据和目标场景差异太大,或者微调不充分。可以尝试增加目标场景的微调数据、调整Prompt模板、或者用Adapter做更精细的适配。
5.3 线上部署常见坑
延迟超标。生成式模型推理延迟通常比传统模型高。优化手段包括:KV Cache、量化、蒸馏、减少Beam Size。如果还是超标,可以考虑异步生成或预生成。
显存不足。长序列和大模型导致显存占用高。解决办法包括:梯度检查点、混合精度训练、模型并行。推理时可以用PagedAttention等技术优化显存。
效果不稳定。生成式模型的效果可能随输入分布变化而波动。需要建立完善的监控体系,及时发现效果退化。常见做法是监控生成结果的分布、多样性、语义一致性等指标。
5.4 常见问题速查表
| 问题类型 | 具体表现 | 可能原因 | 排查方向 | 解决建议 |
|---|---|---|---|---|
| 语义ID | 碰撞率高 | 码本小/层数少 | 统计碰撞率 | 增大码本或层数 |
| 语义ID | 语义不一致 | Embedding差/训练不足 | 可视化Embedding | 换Embedding/增训练轮数 |
| 训练 | Loss震荡 | 学习率大/Batch小 | 检查学习率 | 降学习率/梯度累积 |
| 训练 | 生成重复 | 数据偏斜/解码保守 | 看数据分布 | 调温度/加重复惩罚 |
| 迁移 | 新场景效果差 | 域差异大/微调不足 | 对比预训练域 | 增微调数据/调Prompt |
| 部署 | 延迟超标 | 模型大/序列长 | Profile推理耗时 | KV Cache/量化/蒸馏 |
| 部署 | 显存不足 | 序列长/Batch大 | 看显存占用 | 梯度检查点/混合精度 |
6. 我对这条技术路线的一些个人判断
从LRM到RFM,推荐系统正在经历一次范式级的迁移。这个迁移不会一蹴而就,工业界至少还需要两到三年来消化。但方向是明确的:推荐系统会越来越像LLM,有统一的基座、有生成能力、有跨域迁移能力。
我在实际预研中体会最深的一点是:语义ID的质量决定了生成式推荐的上限。很多团队一上来就调模型结构、调训练策略,但忽略了语义ID这个地基。地基不牢,后面怎么调都事倍功半。建议在语义ID构建上多花时间,做好质量校验。
另一个体会是:生成式推荐不是要取代传统推荐,而是互补。传统推荐在精确排序、商业价值控制上依然有优势,生成式推荐在泛化、冷启动、多样性上更强。工业落地时,把两者结合起来,往往比单纯替换效果更好。
最后分享一个实操小技巧:如果你刚开始做生成式推荐预研,不要一上来就搞RFM。先从一个小场景入手,构建语义ID,训练一个小的生成式模型,跑通“生成-评估-迭代”的闭环。这个闭环跑通了,再往大了做。很多团队卡在第一步,就是因为想一步到位,结果数据、工程、算法都没准备好,项目就搁置了。
这个方向后续还可以往多模态生成推荐、Agent-based推荐、实时生成推荐等方向扩展。但不管怎么扩展,语义ID、生成式建模、基座架构这三个核心点是不会变的。把这三个点吃透,后面的演进都是在这个基础上的自然延伸。