推荐系统的候选物品可能有百万甚至上亿量级,直接用复杂模型对全量候选打分在延迟上不可接受。两阶段设计把问题拆成粗筛和精排,兼顾效率与效果。
召回阶段追求高覆盖率,用轻量模型或近似最近邻检索快速缩小候选集。多路召回并行是常见做法,比如协同过滤一路、向量召回一路、热门内容一路,最后合并去重。
排序阶段只面对几百条候选,可以使用特征更丰富、结构更复杂的模型。此阶段关注的是精确区分用户对不同物品的偏好程度,输出可用于排序的分数。
两阶段之间还存在粗排环节,用于进一步压缩候选规模。整体链路的设计原则是每一层都把计算量控制在合理范围,同时尽量不丢失潜在的好结果。