|
@@ -26,12 +26,16 @@ def video_rank(data, size, top_K, flow_pool_P):
|
|
|
# 小时级更新数据
|
|
|
h_recall = [item for item in data['rov_pool_recall'] if item.get('pushFrom') == config_.PUSH_FROM['rov_recall_h']]
|
|
|
h_recall_rank = sorted(h_recall, key=lambda k: (k.get('rovScore'), 0), reverse=True)
|
|
|
+ # 天级规则更新数据
|
|
|
+ day_recall = [item for item in data['rov_pool_recall'] if item.get('pushFrom') == config_.PUSH_FROM['rov_recall_day']]
|
|
|
+ day_recall_rank = sorted(h_recall, key=lambda k: k.get('rovScore', 0), reverse=True)
|
|
|
# ROV召回池
|
|
|
rov_initial_recall = [
|
|
|
- item for item in data['rov_pool_recall'] if item.get('pushFrom') != config_.PUSH_FROM['rov_recall_h']
|
|
|
+ item for item in data['rov_pool_recall']
|
|
|
+ if item.get('pushFrom') not in [config_.PUSH_FROM['rov_recall_h'], config_.PUSH_FROM['rov_recall_day']]
|
|
|
]
|
|
|
rov_initial_recall_rank = sorted(rov_initial_recall, key=lambda k: (k.get('rovScore'), 0), reverse=True)
|
|
|
- rov_recall_rank = h_recall_rank + rov_initial_recall_rank
|
|
|
+ rov_recall_rank = h_recall_rank + day_recall_rank + rov_initial_recall_rank
|
|
|
# 流量池
|
|
|
flow_recall_rank = sorted(data['flow_pool_recall'], key=lambda k: (k.get('rovScore'), 0), reverse=True)
|
|
|
# 对各路召回的视频进行去重
|