Jelajahi Sumber

Merge branch 'abtest-161-162-20220927' into test

liqian 2 tahun lalu
induk
melakukan
b49188a26b
3 mengubah file dengan 32 tambahan dan 1 penghapusan
  1. 10 0
      config.py
  2. 20 1
      recommend.py
  3. 2 0
      video_rank.py

+ 10 - 0
config.py

@@ -88,6 +88,8 @@ class BaseConfig(object):
             'abtest_147': 60034,
             'abtest_153': 60035,
             'abtest_159': 60036,
+            'abtest_161': 60037,
+            'abtest_162': 60038,
         },  # 地域分组小时级规则实验
 
         'rank_by_24h': {
@@ -217,6 +219,14 @@ class BaseConfig(object):
             'data_key': 'data14', 'rule_key': 'rule7',
             'ab_code': AB_CODE['region_rank_by_h'].get('abtest_159')
         },  # vlog 全数据实验 data-[vlog: 0.78, 票圈视频: 0.11, 票圈短视频: 0.08, 内容精选: 0.03], rule-rule7
+        '161': {
+            'data_key': 'data1', 'rule_key': 'rule13',
+            'ab_code': AB_CODE['region_rank_by_h'].get('abtest_161')
+        },
+        '162': {
+            'data_key': 'data1', 'rule_key': 'rule14',
+            'ab_code': AB_CODE['region_rank_by_h'].get('abtest_162')
+        },
     }
 
     # APP ab实验配置

+ 20 - 1
recommend.py

@@ -580,8 +580,26 @@ def get_recommend_params(recommend_type, ab_exp_info, ab_info_data, mid, page_ty
                     expire_time = 3600
                     rule_key = param.get('rule_key')
                     data_key = param.get('data_key')
-                    rule_key_30day = param.get('30day_rule_key')
                     no_op_flag = True
+            elif '161' in ab_exp_code_list:
+                # 无回流
+                if user_30day_return_result == 0:
+                    param = config_.AB_EXP_CODE.get('161')
+                    ab_code = param.get('ab_code')
+                    expire_time = 3600
+                    rule_key = param.get('rule_key')
+                    data_key = param.get('data_key')
+                    no_op_flag = True
+            elif '162' in ab_exp_code_list:
+                # 有回流
+                if user_30day_return_result == 1:
+                    param = config_.AB_EXP_CODE.get('162')
+                    ab_code = param.get('ab_code')
+                    expire_time = 3600
+                    rule_key = param.get('rule_key')
+                    data_key = param.get('data_key')
+                    no_op_flag = True
+
             else:
                 for code, param in config_.AB_EXP_CODE.items():
                     if code in ab_exp_code_list:
@@ -589,6 +607,7 @@ def get_recommend_params(recommend_type, ab_exp_info, ab_info_data, mid, page_ty
                         expire_time = 3600
                         rule_key = param.get('rule_key')
                         data_key = param.get('data_key')
+                        rule_key_30day = param.get('30day_rule_key')
                         no_op_flag = True
                         break
 

+ 2 - 0
video_rank.py

@@ -267,6 +267,8 @@ def bottom_strategy2(size, app_type, mid, uid, ab_code, client_info, params):
     redis_helper = RedisHelper(params=params)
     bottom_data = redis_helper.get_data_from_set(key_name=config_.BOTTOM2_KEY_NAME)
     bottom_result = []
+    if bottom_data is None:
+        return bottom_result
     if len(bottom_data) > 0:
         try:
             random_data = numpy.random.choice(bottom_data, size * 5, False)