Ver Fonte

add rov_rank_appType_18_19 test

liqian há 3 anos atrás
pai
commit
4fb37cba87
3 ficheiros alterados com 22 adições e 2 exclusões
  1. 7 2
      config.py
  2. 12 0
      recommend.py
  3. 3 0
      video_recall.py

+ 7 - 2
config.py

@@ -21,7 +21,8 @@ class BaseConfig(object):
         'rec_size_home': '003',
         'rec_size_relevant': '004',
         'rule_rank1_20': '011',
-        'rule_rank1_10': '016'
+        'rule_rank1_10': '016',
+        'rov_rank_appType_18_19': '019'
     }
 
     # abTest
@@ -38,6 +39,7 @@ class BaseConfig(object):
         'position_insert': 10002,  # 按位置插入
         'relevant_video_op': 10003,  # 运营对某些视频给定一些相关视频,调整为对应视频相关推荐的头部
         'rank_by_h': [20001, 20002],  # 小时级别更新rov列表实验
+        'rov_rank_appType_18_19': 30001,  # 老好看视频 / 票圈最惊奇 首页/相关推荐逻辑更新实验
     }
 
     # pushFrom
@@ -86,8 +88,11 @@ class BaseConfig(object):
     # app应用 小时级数据更新最终结果存放 redis key前缀,完整格式:com.weiqu.video.recall.hot.item.score.app.{date}.{h}
     APP_FINAL_RECALL_KEY_NAME_PREFIX = 'com.weiqu.video.recall.hot.item.score.app.'
 
+    # appType:[18, 19]小程序离线ROV模型结果存放 redis key前缀,完整格式:com.weiqu.video.recall.hot.item.score.{appType}.{date}
+    RECALL_KEY_NAME_PREFIX_APP_TYPE = 'com.weiqu.video.recall.hot.item.score.'
+
     # appType = 6, ROV召回池redis key前缀,完整格式:com.weiqu.video.recall.hot.apptype.h.item.score.6.{h}
-    RECALL_KEY_NAME_PREFIX_APP_TYPE = 'com.weiqu.video.recall.hot.apptype.h.item.score.6.'
+    # RECALL_KEY_NAME_PREFIX_APP_TYPE = 'com.weiqu.video.recall.hot.apptype.h.item.score.6.'
 
     # 流量池redis key前缀,完整格式 com.weiqu.video.flowpool.hot.item.score.{appType}
     FLOW_POOL_KEY_NAME_PREFIX = 'com.weiqu.video.flowpool.hot.item.score.'

+ 12 - 0
recommend.py

@@ -420,6 +420,12 @@ def video_homepage_recommend(mid, uid, size, app_type, algo_type, client_info, a
                 expire_time = 24 * 3600
                 return_count = -1
 
+            # 老好看视频 / 票圈最惊奇 首页/相关推荐逻辑更新实验
+            if config_.AB_EXP_CODE['rov_rank_appType_18_19'] in ab_exp_code_list:
+                ab_code = config_.AB_CODE['rov_rank_appType_18_19']
+            else:
+                ab_code = config_.AB_CODE['initial']
+
         # 简单召回 - 排序 - 兜底
         rank_result, last_rov_recall_key = video_recommend(mid=mid, uid=uid, app_type=app_type,
                                                            size=size, top_K=top_K, flow_pool_P=flow_pool_P,
@@ -499,6 +505,12 @@ def video_relevant_recommend(video_id, mid, uid, size, app_type, ab_exp_info):
             expire_time = 24 * 3600
             return_count = -1
 
+        # 老好看视频 / 票圈最惊奇 首页/相关推荐逻辑更新实验
+        if config_.AB_EXP_CODE['rov_rank_appType_18_19'] in ab_exp_code_list:
+            ab_code = config_.AB_CODE['rov_rank_appType_18_19']
+        else:
+            ab_code = config_.AB_CODE['initial']
+
     # 简单召回 - 排序 - 兜底
     rank_result, last_rov_recall_key = video_recommend(mid=mid, uid=uid, app_type=app_type,
                                                        size=size, top_K=top_K, flow_pool_P=flow_pool_P,

+ 3 - 0
video_recall.py

@@ -442,6 +442,9 @@ class PoolRecall(object):
             # appType = 13  票圈视频app
             if self.app_type == config_.APP_TYPE['APP']:
                 key_name_prefix = config_.RECALL_KEY_NAME_PREFIX_APP
+            # abCode = 30001   # 老好看视频 / 票圈最惊奇 首页/相关推荐逻辑更新实验
+            elif self.ab_code == config_.AB_CODE['rov_rank_appType_18_19']:
+                key_name_prefix = f"{config_.RECALL_KEY_NAME_PREFIX_APP_TYPE}{self.app_type}."
             # 其他
             else:
                 key_name_prefix = config_.RECALL_KEY_NAME_PREFIX