|
@@ -636,36 +636,118 @@ class BaseConfig(object):
|
|
|
APP_TYPE['APP'], # 票圈视频APP
|
|
|
]
|
|
|
|
|
|
+ # 免广告用户组列表
|
|
|
+ NO_AD_MID_GROUP_LIST = {
|
|
|
+ 'class1': ['return25_nmids'],
|
|
|
+ 'class2': ['return30_nmids'],
|
|
|
+ }
|
|
|
+
|
|
|
# 广告模型abtest配置
|
|
|
AD_ABTEST_CONFIG = {
|
|
|
# 票圈vlog
|
|
|
- '173-a': {'video': 'data1', 'user': 'data1'},
|
|
|
- '173-b': {'video': 'data1', 'user': 'data1:1'}, # 调整未分组用户的阈值(去除不出广告的用户组)
|
|
|
+ '173-a': {
|
|
|
+ 'video': {'data': 'data1'},
|
|
|
+ 'user': {'data': 'data1', 'rule': 'rule1'},
|
|
|
+ 'group_class_key': 'class1',
|
|
|
+ 'no_ad_mid_group_list': NO_AD_MID_GROUP_LIST['class1']
|
|
|
+ },
|
|
|
+ '173-b': {
|
|
|
+ 'video': {'data': 'data1'},
|
|
|
+ 'user': {'data': 'data1', 'rule': 'rule2'},
|
|
|
+ 'group_class_key': 'class1',
|
|
|
+ 'no_ad_mid_group_list': NO_AD_MID_GROUP_LIST['class1']
|
|
|
+ }, # 调整未分组用户的阈值(去除不出广告的用户组)
|
|
|
+
|
|
|
# 票圈视频+
|
|
|
- '190-a': {'video': 'data1', 'user': 'data1'},
|
|
|
- '190-b': {'video': 'data1', 'user': 'data1'},
|
|
|
+ '190-a': {
|
|
|
+ 'video': {'data': 'data1'},
|
|
|
+ 'user': {'data': 'data1', 'rule': 'rule1'},
|
|
|
+ 'group_class_key': 'class1',
|
|
|
+ 'no_ad_mid_group_list': NO_AD_MID_GROUP_LIST['class1']
|
|
|
+ },
|
|
|
+ '190-b': {
|
|
|
+ 'video': {'data': 'data1'},
|
|
|
+ 'user': {'data': 'data1', 'rule': 'rule1'},
|
|
|
+ 'group_class_key': 'class1',
|
|
|
+ 'no_ad_mid_group_list': NO_AD_MID_GROUP_LIST['class1']
|
|
|
+ },
|
|
|
+
|
|
|
# 票圈视频
|
|
|
- '194-a': {'video': 'data1', 'user': 'data1'},
|
|
|
- '194-b': {'video': 'data1', 'user': 'data1:1'},
|
|
|
+ '194-a': {
|
|
|
+ 'video': {'data': 'data1'},
|
|
|
+ 'user': {'data': 'data1', 'rule': 'rule1'},
|
|
|
+ 'group_class_key': 'class1',
|
|
|
+ 'no_ad_mid_group_list': NO_AD_MID_GROUP_LIST['class1']
|
|
|
+ },
|
|
|
+ '194-b': {
|
|
|
+ 'video': {'data': 'data1'},
|
|
|
+ 'user': {'data': 'data1', 'rule': 'rule2'},
|
|
|
+ 'group_class_key': 'class1',
|
|
|
+ 'no_ad_mid_group_list': NO_AD_MID_GROUP_LIST['class1']
|
|
|
+ }, # 调整未分组用户的阈值(去除不出广告的用户组)
|
|
|
+
|
|
|
# 内容精选
|
|
|
- '195-a': {'video': 'data1', 'user': 'data1'},
|
|
|
- '195-b': {'video': 'data1', 'user': 'data1:1'},
|
|
|
+ '195-a': {
|
|
|
+ 'video': {'data': 'data1'},
|
|
|
+ 'user': {'data': 'data1', 'rule': 'rule1'},
|
|
|
+ 'group_class_key': 'class1',
|
|
|
+ 'no_ad_mid_group_list': NO_AD_MID_GROUP_LIST['class1']
|
|
|
+ },
|
|
|
+ '195-b': {
|
|
|
+ 'video': {'data': 'data1'},
|
|
|
+ 'user': {'data': 'data1', 'rule': 'rule2'},
|
|
|
+ 'group_class_key': 'class1',
|
|
|
+ 'no_ad_mid_group_list': NO_AD_MID_GROUP_LIST['class1']
|
|
|
+ }, # 调整未分组用户的阈值(去除不出广告的用户组)
|
|
|
+
|
|
|
# 票圈短视频
|
|
|
- '196-a': {'video': 'data1', 'user': 'data1'},
|
|
|
- '196-b': {'video': 'data4', 'user': 'data4'},
|
|
|
+ '196-a': {
|
|
|
+ 'video': {'data': 'data1'},
|
|
|
+ 'user': {'data': 'data1', 'rule': 'rule1'},
|
|
|
+ 'group_class_key': 'class1',
|
|
|
+ 'no_ad_mid_group_list': NO_AD_MID_GROUP_LIST['class1']
|
|
|
+ },
|
|
|
+ '196-b': {
|
|
|
+ 'video': {'data': 'data4'},
|
|
|
+ 'user': {'data': 'data4', 'rule': 'rule1'},
|
|
|
+ 'group_class_key': 'class1',
|
|
|
+ 'no_ad_mid_group_list': NO_AD_MID_GROUP_LIST['class1']
|
|
|
+ },
|
|
|
+
|
|
|
# 老好看视频
|
|
|
- '197-a': {'video': 'data1', 'user': 'data1'},
|
|
|
- '197-b': {'video': 'data1', 'user': 'data1:1'},
|
|
|
+ '197-a': {
|
|
|
+ 'video': {'data': 'data1'},
|
|
|
+ 'user': {'data': 'data1', 'rule': 'rule1'},
|
|
|
+ 'group_class_key': 'class1',
|
|
|
+ 'no_ad_mid_group_list': NO_AD_MID_GROUP_LIST['class1']
|
|
|
+ },
|
|
|
+ '197-b': {
|
|
|
+ 'video': {'data': 'data1'},
|
|
|
+ 'user': {'data': 'data1', 'rule': 'rule2'},
|
|
|
+ 'group_class_key': 'class1',
|
|
|
+ 'no_ad_mid_group_list': NO_AD_MID_GROUP_LIST['class1']
|
|
|
+ }, # 调整未分组用户的阈值(去除不出广告的用户组)
|
|
|
+
|
|
|
# 票圈最惊奇
|
|
|
- '198-a': {'video': 'data1', 'user': 'data1'},
|
|
|
- '198-b': {'video': 'data1', 'user': 'data1'},
|
|
|
+ '198-a': {
|
|
|
+ 'video': {'data': 'data1'},
|
|
|
+ 'user': {'data': 'data1', 'rule': 'rule1'},
|
|
|
+ 'group_class_key': 'class1',
|
|
|
+ 'no_ad_mid_group_list': NO_AD_MID_GROUP_LIST['class1']
|
|
|
+ },
|
|
|
+ '198-b': {
|
|
|
+ 'video': {'data': 'data1'},
|
|
|
+ 'user': {'data': 'data1', 'rule': 'rule1'},
|
|
|
+ 'group_class_key': 'class1',
|
|
|
+ 'no_ad_mid_group_list': NO_AD_MID_GROUP_LIST['class1']
|
|
|
+ },
|
|
|
}
|
|
|
|
|
|
# 用户组有广告时的分享率预测结果存放 redis key 前缀,完整格式:ad:users:group:predict:share:rate:{user_data_key}:{date}
|
|
|
KEY_NAME_PREFIX_AD_GROUP = 'ad:users:group:predict:share:rate:'
|
|
|
# 视频有广告时的分享率预测结果存放 redis key 前缀,完整格式:ad:video:predict:share:rate:{video_data_key}:{date}
|
|
|
KEY_NAME_PREFIX_AD_VIDEO = 'ad:video:predict:share:rate:'
|
|
|
- # 用户分组结果存放 redis key 前缀,完整格式:mid:group:{mid}
|
|
|
+ # 用户分组结果存放 redis key 前缀,完整格式:mid:group:{class_key}:{mid}
|
|
|
KEY_NAME_PREFIX_MID_GROUP = 'mid:group:'
|
|
|
# 广告推荐阈值结果存放 redis key 前缀,完整格式:ad:threshold:{abtestId}:{abtestConfigTag}:{group}
|
|
|
KEY_NAME_PREFIX_AD_THRESHOLD = 'ad:threshold:'
|