瀏覽代碼

update info

linfan 1 年之前
父節點
當前提交
76ede30156
共有 4 個文件被更改,包括 30 次插入15 次删除
  1. 18 2
      app.py
  2. 6 7
      rank_service.py
  3. 4 4
      recommend.py
  4. 2 2
      video_rank.py

+ 18 - 2
app.py

@@ -149,7 +149,22 @@ def relevant_recommend():
         page_type = request_data.get('pageType')  # 1:详情页;2:分享页
         ab_info_data = request_data.get('abInfoData', None)
         version_audit_status = request_data.get('versionAuditStatus', 2)  # 小程序版本审核参数:1-审核中,2-审核通过,默认:2
-
+        machineinfoBrand = request_data.get('machineinfoBrand', '')
+        machineinfoModel = request_data.get('machineinfoModel', '')
+        machineinfoPlatform = request_data.get('machineinfoPlatform', '')
+        pagesource = request_data.get('pageSource', '')
+        versioncode = request_data.get('versionCode', '')
+        recommendsource = request_data.get('recommendSource', '0')
+        sencetype =  request_data.get('senceType', '0')
+        env_dict = {}
+        env_dict['app_type'] = app_type
+        env_dict['pagesource'] = pagesource
+        env_dict['versioncode'] = versioncode
+        env_dict['machineinfo_brand'] = machineinfoBrand
+        env_dict['machineinfo_model'] = machineinfoModel
+        env_dict['machineinfo_platform'] = machineinfoPlatform
+        env_dict['recommendsource'] = recommendsource
+        env_dict['sencetype'] = sencetype
         params = Params(request_id=request_id)
         recommend_result = video_relevant_recommend(
             request_id=request_id,
@@ -163,7 +178,8 @@ def relevant_recommend():
             page_type=page_type,
             params=params,
             ab_info_data=ab_info_data,
-            version_audit_status=version_audit_status
+            version_audit_status=version_audit_status,
+            env_dict = env_dict
         )
 
         result = {'code': 200, 'message': 'success', 'data': {'videos': recommend_result['videos']}}

+ 6 - 7
rank_service.py

@@ -8,19 +8,18 @@ log_ = Log()
 
 
 config_ = set_config()
-def get_featurs(data, size, top_K, flow_pool_P, env_dict=None):
+def get_featurs(mid, data, size, top_K, flow_pool_P, env_dict=None):
     recall_list = []
     vidKeys = []
     feature_dict = {}
     # defult value
-    apptype = 0
-    pagesource = "iLife-pages/user-videos-share-recommend"
-    versioncode = 580
+    apptype = 4
+    pagesource = ""
+    versioncode = "580"
     machineinfo_brand="HUAWEI"
     recommendsource = "0"
     machineinfo_platform = 'android'
     sencetype = 100078
-    mid = 'test1'
     machineinfo_model ='M2006C3LC'
     if env_dict:
         apptype = env_dict.get('app_type','')
@@ -28,7 +27,7 @@ def get_featurs(data, size, top_K, flow_pool_P, env_dict=None):
         versioncode = env_dict.get('versioncode', '')
         machineinfo_brand = env_dict.get('machineinfo_brand', '')
         machineinfo_model = env_dict.get('machineinfo_model', '')
-        recommendsource = env_dict.get('recommendsource', '')
+        recommendsource = env_dict.get('recommendsource', '0')
         machineinfo_platform = env_dict.get('machineinfo_platform', '')
         sencetype = env_dict.get('sencetype', '')
     redisObj = RedisHelper()
@@ -182,7 +181,7 @@ def get_tf_serving_sores(feature_dict):
     request_data_dict["inputs"] = inputs_data
     #print(request_data_dict)
     request_data= json.dumps(request_data_dict)
-    #print(request_data)
+    print(request_data)
     # 调用http接口
     result = request_post_data(config_.TF_SERVING_URL,request_data, timeout=(0.1, 1))
 

+ 4 - 4
recommend.py

@@ -411,7 +411,7 @@ def video_recommend(request_id, mid, uid, size, top_K, flow_pool_P, app_type, al
 def video_old_recommend(request_id, mid, uid, size, top_K, flow_pool_P, app_type, algo_type, client_info,
                     expire_time=24*3600, ab_code=config_.AB_CODE['initial'], rule_key='', data_key='',
                     no_op_flag=False, old_video_index=-1, video_id=None, params=None, rule_key_30day=None,
-                    shield_config=None):
+                    shield_config=None, env_dict = None):
     """
     首页线上推荐逻辑
     :param request_id: request_id
@@ -653,7 +653,7 @@ def video_old_recommend(request_id, mid, uid, size, top_K, flow_pool_P, app_type
             }
     #if ab_code=="ab_new_test":
     #print("before data:", data)
-    rank_result, flow_num  = video_new_rank2(data=data, size=size, top_K=top_K, flow_pool_P=float(flow_pool_P), ab_code=ab_code, exp_config=exp_config)
+    rank_result, flow_num  = video_new_rank2(data=data, size=size, top_K=top_K, flow_pool_P=float(flow_pool_P), ab_code=ab_code, mid=mid, exp_config=exp_config, env_dict=env_dict)
     #print(rank_result)
     if rank_result:
         result['rank_num'] = len(rank_result)
@@ -1743,7 +1743,7 @@ def video_homepage_recommend(request_id, mid, uid, size, app_type, algo_type,
 
 
 def video_relevant_recommend(request_id, video_id, mid, uid, size, app_type, ab_exp_info, client_info,
-                             page_type, params, ab_info_data, version_audit_status):
+                             page_type, params, ab_info_data, version_audit_status, env_dict):
     """
     相关推荐逻辑
     :param request_id: request_id
@@ -1807,7 +1807,7 @@ def video_relevant_recommend(request_id, video_id, mid, uid, size, app_type, ab_
                                  ab_code=ab_code, expire_time=expire_time,
                                  rule_key=rule_key, data_key=data_key, no_op_flag=no_op_flag,
                                  old_video_index=old_video_index, video_id=video_id,
-                                 params=params, rule_key_30day=rule_key_30day, shield_config=shield_config)
+                                 params=params, rule_key_30day=rule_key_30day, shield_config=shield_config, env_dict = env_dict)
     else:
         result = video_recommend(request_id=request_id,
                              mid=mid, uid=uid, app_type=app_type,

+ 2 - 2
video_rank.py

@@ -593,7 +593,7 @@ def video_rank_with_old_video(rank_result, old_video_recall, size, top_K, old_vi
     return new_rank_result[:size]
 
 
-def video_new_rank2(data, size, top_K, flow_pool_P, ab_code, exp_config=None):
+def video_new_rank2(data, size, top_K, flow_pool_P, ab_code, mid, exp_config=None, env_dict=None):
     """
         视频分发排序
         :param data: 各路召回的视频 type-dict {'rov_pool_recall': [], 'flow_pool_recall': []}
@@ -629,7 +629,7 @@ def video_new_rank2(data, size, top_K, flow_pool_P, ab_code, exp_config=None):
     rov_recall_rank = data['rov_pool_recall']
     #call rank service
     if ab_code == 60066:
-        feature_dict, recall_list = get_featurs(data, size, top_K, flow_pool_P)
+        feature_dict, recall_list = get_featurs(mid, data, size, top_K, flow_pool_P, env_dict)
         score_result = get_tf_serving_sores(feature_dict)
         if score_result and len(score_result) > 0 and len(score_result) == len(recall_list):
             for i in range(len(score_result)):