Browse Source

Merge branch 'feature_gufengshou_20240515_video_ad_thompson' into test

# Conflicts:
#	ad-engine-service/src/main/java/com/tzld/piaoquan/ad/engine/service/score/impl/RankServiceImpl.java
gufengshou1 11 months ago
parent
commit
95f430cf91

+ 1 - 1
ad-engine-service/src/main/java/com/tzld/piaoquan/ad/engine/service/predict/helper/NewExpInfoHelper.java

@@ -176,7 +176,7 @@ public class NewExpInfoHelper {
     public static String getFlagId() {
         return flagId;
     }
-    @Value("${ad.new.exp.flag.id:0}")
+    @Value("${ad.new.exp.flag.id:647}")
     private void setFlagId(String flagId) {
         this.flagId = flagId;
     }

+ 17 - 18
ad-engine-service/src/main/java/com/tzld/piaoquan/ad/engine/service/score/impl/RankServiceImpl.java

@@ -2,6 +2,8 @@ package com.tzld.piaoquan.ad.engine.service.score.impl;
 
 import com.alibaba.fastjson.JSONObject;
 import com.aliyun.openservices.shade.com.alibaba.fastjson.JSON;
+import com.tzld.piaoquan.ad.engine.service.predict.helper.NewExpInfoHelper;
+import com.tzld.piaoquan.ad.engine.service.predict.param.ThresholdPredictModelParam;
 import com.tzld.piaoquan.ad.engine.service.score.VideoAdThompsonScorerV2;
 import com.tzld.piaoquan.ad.engine.service.score.container.AdCreativeFeatureContainer;
 import com.tzld.piaoquan.ad.engine.service.score.container.PidLambdaContainer;
@@ -238,16 +240,25 @@ public class RankServiceImpl implements RankService {
                 expCodes.add(expCode);
             }
         }
-
+        ThresholdPredictModelParam modelParam = ThresholdPredictModelParam.builder()
+                .build();
         // 兜底方案
-        List<AdRankItem> rankResult = null;
-        if (expCodes.contains("663")) {
+        List<AdRankItem> rankResult=null;
+        if(expCodes.contains("663")||
+                (expCodes.contains(NewExpInfoHelper.flagId)&&NewExpInfoHelper.checkInNewExpGroupAndSetParamIfIn(
+                        request.getAppType().toString(),request.getNewExpGroup(),"663",modelParam))){
             rankResult = videoAdThompsonScorerV2.thompsonScorerByExp663(param, request.getAdIdList());
-        } else if (expCodes.contains("664")) {
+        }else if(expCodes.contains("664")||
+                (expCodes.contains(NewExpInfoHelper.flagId)&&NewExpInfoHelper.checkInNewExpGroupAndSetParamIfIn(
+                        request.getAppType().toString(),request.getNewExpGroup(),"664",modelParam))){
             rankResult = videoAdThompsonScorerV2.thompsonScorerByExp664(param, request.getAdIdList());
-        } else if (expCodes.contains("665")) {
+        }else if(expCodes.contains("665")||
+                (expCodes.contains(NewExpInfoHelper.flagId)&&NewExpInfoHelper.checkInNewExpGroupAndSetParamIfIn(
+                        request.getAppType().toString(),request.getNewExpGroup(),"665",modelParam))){
             rankResult = videoAdThompsonScorerV2.thompsonScorerByExp665(param, request.getAdIdList());
-        } else if (expCodes.contains("666")) {
+        }else if(expCodes.contains("666")||
+                (expCodes.contains(NewExpInfoHelper.flagId)&&NewExpInfoHelper.checkInNewExpGroupAndSetParamIfIn(
+                        request.getAppType().toString(),request.getNewExpGroup(),"666",modelParam))){
             rankResult = videoAdThompsonScorerV2.thompsonScorerByExp666(param, request.getAdIdList());
         }
         log.info("RankServiceImpl.adItemRankWithVideoAdThompson.adIdList: {}, result: {}", JSON.toJSONString(request.getAdIdList()), JSON.toJSONString(rankResult));
@@ -351,18 +362,6 @@ public class RankServiceImpl implements RankService {
                     item.setCpa(lambda);
                     item.setPidLambda(1d);
                 }
-//                if(lambda<0){
-//                    item.setCpa(dto.getCpa());
-//                    item.setPidLambda(dto.getCpa()*0.6);
-//                }else {
-//                    if(dto.getCpa()>1&&lambda<=1){
-//                        lambda=2d;
-//                    }
-//                    item.setCpa(dto.getCpa());
-//                    item.setPidLambda(lambda);
-//                }
-//                item.setCpa(dto.getCpa());
-//                item.setPidLambda(PidLambdaContainer.getPidLambda(item.getAdId()));
                 rankItems.add(item);
             }
             rankResult=rankServiceThompson.rank(param, userAdFeature, rankItems,null);