| 
														
															@@ -1,9 +1,11 @@ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import json 
														 | 
														
														 | 
														
															 import json 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+import time 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import traceback 
														 | 
														
														 | 
														
															 import traceback 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import datetime 
														 | 
														
														 | 
														
															 import datetime 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 from utils import RedisHelper 
														 | 
														
														 | 
														
															 from utils import RedisHelper 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 from config import set_config 
														 | 
														
														 | 
														
															 from config import set_config 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 from log import Log 
														 | 
														
														 | 
														
															 from log import Log 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+from lr_model import get_final_score 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 log_ = Log() 
														 | 
														
														 | 
														
															 log_ = Log() 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 config_ = set_config() 
														 | 
														
														 | 
														
															 config_ = set_config() 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 redis_helper = RedisHelper() 
														 | 
														
														 | 
														
															 redis_helper = RedisHelper() 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -294,7 +296,8 @@ def predict_mid_video_res_with_add(now_date, mid, video_id, abtest_param, abtest 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             'ad_predict': ad_predict} 
														 | 
														
														 | 
														
															             'ad_predict': ad_predict} 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     return result 
														 | 
														
														 | 
														
															     return result 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															-def predict_mid_video_res_with_model(now_date, mid, video_id, abtest_param, abtest_id, abtest_config_tag, ab_test_code, care_model_status): 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+def predict_mid_video_res_with_model(now_date, mid, video_id, abtest_param, abtest_id, abtest_config_tag, ab_test_code, care_model_status, app_type): 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     model_key = abtest_param.get('model_key', 'ad_out_v1') 
														 | 
														
														 | 
														
															     model_key = abtest_param.get('model_key', 'ad_out_v1') 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     mean_key = 'mean' 
														 | 
														
														 | 
														
															     mean_key = 'mean' 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     user_key_name = f"{config_.KEY_NAME_PREFIX_AD_OUT_MODEL_SCORE_USER}{model_key}:{mid}" 
														 | 
														
														 | 
														
															     user_key_name = f"{config_.KEY_NAME_PREFIX_AD_OUT_MODEL_SCORE_USER}{model_key}:{mid}" 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -321,7 +324,15 @@ def predict_mid_video_res_with_model(now_date, mid, video_id, abtest_param, abte 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         else: 
														 | 
														
														 | 
														
															         else: 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             item_score = 0.0 
														 | 
														
														 | 
														
															             item_score = 0.0 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															-    final_score = user_score + item_score 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    offline_score = user_score + item_score 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    online_features = { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        'ctx_apptype': str(app_type), 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        'ctx_week': time.strftime('%w', time.localtime()), 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        'ctx_hour':  time.strftime('%H', time.localtime()), 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    final_score, online_score = get_final_score(online_features, offline_score) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															     # 获取对应的阈值 
														 | 
														
														 | 
														
															     # 获取对应的阈值 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     threshold = redis_helper.get_data_from_redis(key_name=threshold_key) 
														 | 
														
														 | 
														
															     threshold = redis_helper.get_data_from_redis(key_name=threshold_key) 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -339,6 +350,7 @@ def predict_mid_video_res_with_model(now_date, mid, video_id, abtest_param, abte 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         'user_score': user_score, 
														 | 
														
														 | 
														
															         'user_score': user_score, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         'item_score': item_score, 
														 | 
														
														 | 
														
															         'item_score': item_score, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         'final_score': final_score, 
														 | 
														
														 | 
														
															         'final_score': final_score, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        'online_score': online_score, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         'threshold': threshold, 
														 | 
														
														 | 
														
															         'threshold': threshold, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         'ad_predict': ad_predict 
														 | 
														
														 | 
														
															         'ad_predict': ad_predict 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     } 
														 | 
														
														 | 
														
															     } 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -507,7 +519,8 @@ def ad_recommend_predict(app_type, mid, video_id, ab_exp_info, ab_test_code, car 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 abtest_id=abtest_id, 
														 | 
														
														 | 
														
															                 abtest_id=abtest_id, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 abtest_config_tag=abtest_config_tag, 
														 | 
														
														 | 
														
															                 abtest_config_tag=abtest_config_tag, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 ab_test_code=ab_test_code, 
														 | 
														
														 | 
														
															                 ab_test_code=ab_test_code, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-                care_model_status=care_model_status 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                care_model_status=care_model_status, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                app_type=app_type 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             ) 
														 | 
														
														 | 
														
															             ) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         else: 
														 | 
														
														 | 
														
															         else: 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             result = predict_mid_video_res( 
														 | 
														
														 | 
														
															             result = predict_mid_video_res( 
														 |