|
@@ -106,6 +106,21 @@ def predict_ad_group_video(dt, config_key, config_param):
|
|
for key, val in threshold_data.items():
|
|
for key, val in threshold_data.items():
|
|
key_name = f"{config_.KEY_NAME_PREFIX_AD_THRESHOLD}{abtest_id}:{abtest_config_tag}:{abtest_group}:{key}"
|
|
key_name = f"{config_.KEY_NAME_PREFIX_AD_THRESHOLD}{abtest_id}:{abtest_config_tag}:{abtest_group}:{key}"
|
|
redis_helper.set_data_to_redis(key_name=key_name, value=val, expire_time=2 * 24 * 3600)
|
|
redis_helper.set_data_to_redis(key_name=key_name, value=val, expire_time=2 * 24 * 3600)
|
|
|
|
+
|
|
|
|
+ # 计算关怀模式实验阈值 并 写入Redis
|
|
|
|
+ care_model = config_param.get('care_model', None)
|
|
|
|
+ threshold_rate = config_param.get('threshold_rate', None)
|
|
|
|
+ if care_model is True:
|
|
|
|
+ care_model_threshold_data = {}
|
|
|
|
+ for key, val in threshold_data.items():
|
|
|
|
+ up_val = val * threshold_rate
|
|
|
|
+ care_model_threshold_data[key] = up_val
|
|
|
|
+ up_key_name = \
|
|
|
|
+ f"{config_.KEY_NAME_PREFIX_AD_THRESHOLD_CARE_MODEL}{abtest_id}:{abtest_config_tag}:{abtest_group}:{key}"
|
|
|
|
+ redis_helper.set_data_to_redis(key_name=up_key_name, value=up_val, expire_time=2 * 24 * 3600)
|
|
|
|
+ log_.info(f"config_key = {config_key}, abtest_group = {abtest_group}, "
|
|
|
|
+ f"care_model_threshold_data = {care_model_threshold_data}")
|
|
|
|
+
|
|
# predict_df.to_csv(f'./data/ad_user_video_predict_{config_key}.csv')
|
|
# predict_df.to_csv(f'./data/ad_user_video_predict_{config_key}.csv')
|
|
log_.info(f"config_key = {config_key} update end!")
|
|
log_.info(f"config_key = {config_key} update end!")
|
|
|
|
|
|
@@ -119,11 +134,12 @@ def predict():
|
|
for config_key, config_param in params.items():
|
|
for config_key, config_param in params.items():
|
|
predict_ad_group_video(dt=dt, config_key=config_key, config_param=config_param)
|
|
predict_ad_group_video(dt=dt, config_key=config_key, config_param=config_param)
|
|
# 阈值参数记录
|
|
# 阈值参数记录
|
|
- # for abtest_group, ad_threshold_mapping in config_param['threshold'].items():
|
|
|
|
- # threshold_record[f"{config_key}-{abtest_group}"] = ad_threshold_mapping['group']
|
|
|
|
- # redis_helper.set_data_to_redis(key_name=config_.KEY_NAME_PREFIX_AD_THRESHOLD_RECORD,
|
|
|
|
- # value=str(threshold_record),
|
|
|
|
- # expire_time=24*3600)
|
|
|
|
|
|
+ ad_threshold_mappings = config_.AD_ABTEST_THRESHOLD_CONFIG.get(config_key.split('-')[0])
|
|
|
|
+ for abtest_group, ad_threshold_mapping in ad_threshold_mappings.items():
|
|
|
|
+ threshold_record[f"{config_key}-{abtest_group}"] = ad_threshold_mapping['group']
|
|
|
|
+ redis_helper.set_data_to_redis(key_name=config_.KEY_NAME_PREFIX_AD_THRESHOLD_RECORD,
|
|
|
|
+ value=str(threshold_record),
|
|
|
|
+ expire_time=24*3600)
|
|
|
|
|
|
|
|
|
|
if __name__ == '__main__':
|
|
if __name__ == '__main__':
|