优步在其 Uber Eats推荐系统中引入了实时用户信号与Listwise排序方法,以改进餐厅发现的体验。该系统旨在更准确反映用户在活跃浏览会话中的实时意图,同时提升候选餐厅的整体排序效率。目前,该能力已部署在 Uber Eats 平台,用于支持首页信息流和发现类入口。
更新后的架构以实时信号处理层替换了早期以批处理为中心的特征流水线。该层持续摄取点击、搜索和下单历史等用户交互信息,以维护最新的用户行为表征。通过将特征更新切换为近实时模式,系统显著降低了用户行为到个性化结果之间的延迟,使推荐能够在单次会话内更快响应偏好的变化。
Brinda Panchal(优步的产品负责人)在一篇 LinkedIn 帖文中描述了该系统的更大目标:
在如此规模下做平台个性化,不只是展示“好吃的食物”,而是要在实时意图、多样商家生态和复杂排序目标之间取得平衡,打造流畅的发现体验。

用于构建 userContext 的下一代个性化平台架构(来源:优步的博客)
优步的推荐技术栈还引入了 Listwise 排序,即在一次推理中联合评估多个餐厅候选者,而不是逐个独立打分。这种方式使模型能够直接优化一组候选之间的相对顺序,而非给每个餐厅分配彼此独立的分值。优步表示,这种方法可以通过同上下文下的直接比较,提升计算效率和排序质量。

生成式推荐架构(来源:优步的博客)
该系统建立在统一的用户行为表征之上,将短期会话活动与长期历史信号结合。上述信号会经过共享特征提取层处理,以确保离线训练与在线服务之间的一致性。训练数据则通过回放历史用户会话来模拟生产环境,从而减少模型训练与线上推理之间的偏差。
系统设计中的一个关键点是训练与服务流水线的对齐。优步在两个环境中使用同一套特征提取逻辑,以降低特征漂移并保持一致性。该做法有助于保证模型在历史数据上训练后的行为,与上线后的实际表现尽可能一致。
Yicheng Chen(优步的工程师)在一篇帖子中强调了该系统的技术演进:
我们利用近实时的用户序列特征和生成式推荐风格模型来驱动 Uber Eats 的首页推荐,并将首页排序从手工统计特征演进到基于 Transformer 的序列建模,把特征新鲜度从 24 小时缩短到秒级。
在基础设施层面,该系统对面向消费级推荐场景的低延迟约束进行了专门的设计。特征预处理与模型推理解耦,以在高流量下提升效率与可扩展性。这使服务层可以专注于排序,而上游服务负责特征计算与聚合。
查看英文原文: Uber Improves Restaurant Recommendations Using Real-Time Signals and Listwise Ranking





