Przeglądaj źródła

update ad recommend: add app_type

liqian 2 lat temu
rodzic
commit
051d2b2fc4
3 zmienionych plików z 7 dodań i 4 usunięć
  1. 3 2
      ad_recommend.py
  2. 3 1
      app.py
  3. 1 1
      config.py

+ 3 - 2
ad_recommend.py

@@ -5,9 +5,10 @@ config_ = set_config()
 redis_helper = RedisHelper()
 
 
-def ad_recommend_predict(mid, video_id):
+def ad_recommend_predict(app_type, mid, video_id):
     """
     广告推荐预测
+    :param app_type: app_type
     :param mid: mid
     :param video_id: video_id
     :return: ad_predict, type-int, 1-不发放广告,2-发放广告
@@ -49,7 +50,7 @@ def ad_recommend_predict(mid, video_id):
         mid_video_share_rate = float(group_share_rate) * float(video_share_rate)
 
         # 获取对应的阈值
-        threshold_key_name = f"{config_.KEY_NAME_PREFIX_AD_THRESHOLD}{mid_group}"
+        threshold_key_name = f"{config_.KEY_NAME_PREFIX_AD_THRESHOLD}{app_type}:{mid_group}"
         threshold = redis_helper.get_data_from_redis(key_name=threshold_key_name)
         if threshold is None:
             threshold = 0

+ 3 - 1
app.py

@@ -298,11 +298,13 @@ def ad_predict():
         request_data = json.loads(request.get_data())
         mid = request_data.get('mid')
         video_id = request_data.get('videoId')
-        predict_result = ad_recommend_predict(mid=mid, video_id=video_id)
+        app_type = request_data.get('appType')
+        predict_result = ad_recommend_predict(app_type=app_type, mid=mid, video_id=video_id)
         result = {'code': 200, 'message': 'success', 'data': predict_result.get('ad_predict')}
         log_message = {
             'requestUri': '/applet/ad/predict',
             'logTimestamp': int(time.time() * 1000),
+            'app_type': app_type,
             'mid': mid,
             'video_id': video_id,
             'predict_result': predict_result,

+ 1 - 1
config.py

@@ -637,7 +637,7 @@ class BaseConfig(object):
     KEY_NAME_PREFIX_AD_VIDEO = 'ad:video:predict:share:rate:'
     # 用户分组结果存放 redis key 前缀,完整格式:mid:group:{mid}
     KEY_NAME_PREFIX_MID_GROUP = 'mid:group:'
-    # 广告推荐阈值结果存放 redis key 前缀,完整格式:ad:threshold:{group}
+    # 广告推荐阈值结果存放 redis key 前缀,完整格式:ad:threshold:{appType}:{group}
     KEY_NAME_PREFIX_AD_THRESHOLD = 'ad:threshold:'
     # 免广告用户组列表
     NO_AD_MID_GROUP_LIST = ['return25_nmids']