摘要
用于计算用户表示的深度学习模型日益复杂,这带来了巨大的挑战,尤其是在计算资源有限且服务等级协议 (SLA) 严格的情况下。以往的研究工作主要集中在优化模型推理,但忽略了一个关键问题:在大型社交网络中,是否需要对每个广告请求执行用户模型推理?为了解决这个问题和这些挑战,我们首先分析了 Meta 的用户访问模式,发现大多数用户模型推理发生在很短的时间内。这一观察揭示了模型复杂性、嵌入新鲜度和服务 SLA 之间的三角关系。基于此洞察,我们设计、实现并评估了 ERCache,这是一种针对社交网络广告推荐系统中大规模用户表示的有效且稳健的缓存框架。ERCache 将缓存分为直接和故障转移类型,并为每个模型应用自定义设置和驱逐策略,有效地平衡了模型复杂性、嵌入新鲜度和服务 SLA,即使考虑到缓存引入的陈旧性。ERCache 已在 Meta 部署超过六个月,支持 30 多个排名模型,同时有效地节省了计算资源并符合服务 SLA 要求。