Browse Source

Merge branch 'feature_gufengshou_20240513_pid_v7' into pre-master

zhaohaipeng 11 months ago
parent
commit
fc41642539

+ 2 - 3
ad-engine-service/src/main/java/com/tzld/piaoquan/ad/engine/service/score/VlogAdCvrLRAdjustingScorer.java

@@ -69,7 +69,6 @@ public class VlogAdCvrLRAdjustingScorer extends AbstractScorer {
             }
         }
 
-        LOGGER.debug("ctr ranker java execute time: [{}]", System.currentTimeMillis() - startTime);
         LOGGER.debug("[ctr ranker time java] items size={}, cost={} ",
                 items.size(), System.currentTimeMillis() - startTime);
         return items;
@@ -79,13 +78,13 @@ public class VlogAdCvrLRAdjustingScorer extends AbstractScorer {
     /**
      * 校准cvr
      */
-    public void calcScore(final CvrAdjustingModel lrModel,
+    public void calcScore(final CvrAdjustingModel model,
                             final AdRankItem item,
                             final AdRequestContext requestContext) {
 
         double pro = item.getCvr();
         try {
-            Double coef = lrModel.getAdjustingCoefficien(pro);
+            Double coef = model.getAdjustingCoefficien(pro);
             if (Objects.nonNull(coef)) {
                 LOGGER.info("[VlogAdCvrLRAdjustingScorer.cvr adjusting] before: {}", pro);
                 pro = pro / coef;

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

@@ -48,6 +48,8 @@ public class RankServiceImpl implements RankService {
     Double cpmMin=30d;
     @Value("${ad.pid.cpc.exp:30}")
     private String cpcPidExpCode;
+    @Value("${ad.cvr.adjusting.exp:652}")
+    private String cvrAdjustingExpCode;
 
     public AdRankItem adItemRank(RankRecommendRequestParam request){
         ScoreParam param= RequestConvert.requestConvert(request);
@@ -84,11 +86,15 @@ public class RankServiceImpl implements RankService {
             }
         }
         boolean inCpcPidExp=false;
+        boolean inCvrAdjustingExp=false;
         if (request.getAdAbExpArr() != null && request.getAdAbExpArr().size() != 0) {
             for (Map<String, Object> map : request.getAdAbExpArr() ) {
                 if (map.getOrDefault("abExpCode", "").equals(cpcPidExpCode)) {
                     inCpcPidExp = true;
                 }
+                if (map.getOrDefault("abExpCode", "").equals(cvrAdjustingExpCode)) {
+                    inCvrAdjustingExp = true;
+                }
             }
         }
         double lambda=-1d;
@@ -131,7 +137,7 @@ public class RankServiceImpl implements RankService {
 
         // 兜底方案
         List<AdRankItem> rankResult;
-        if (inCpcPidExp) {
+        if (inCvrAdjustingExp) {
             rankResult = rank(param, userAdFeature, rankItems, ScorerUtils.CVR_ADJUSTING);
         } else {
             rankResult = rank(param, userAdFeature, rankItems, ScorerUtils.BASE_CONF);
@@ -155,6 +161,7 @@ public class RankServiceImpl implements RankService {
                 AdPlatformCreativeDTO dto=groupMap.get(rankResult.get(0).getAdId()).get(0);
                 object.put("cpa",dto.getCpa()*dto.getBid1());
                 object.put("oCpa",dto.getCpa());
+                object.put("realECpm",rankResult.get(0).getEcpm1());
                 log.info("svc=cpc_pid obj={}", JSONObject.toJSONString(object));
             }else {
                 log.info("svc=pid_log obj={}", JSONObject.toJSONString(object));