gufengshou1 1 éve
szülő
commit
54c8cedc5e

+ 38 - 4
ad-engine-service/src/main/java/com/tzld/piaoquan/ad/engine/service/score/VlogMergeEcpmScorer.java

@@ -64,6 +64,41 @@ public class VlogMergeEcpmScorer extends BaseLRModelScorer {
     }
 
 
+//    public void callMergeScore(AdRankItem item,CountDownLatch countDownLatch){
+//        try {
+////            boolean isTfType=item.getItemFeature().getCreative_7day_cnt_features().getAdView()<5000;
+////            double pctr = isTfType?item.getTf_ctr():item.getCtr();
+////            double pcvr = isTfType?item.getTf_cvr():item.getCvr();
+//            double cpa = item.getCpa();
+//            double bid1 = item.getBid1();
+//            double bid2 = item.getBid2();
+//            double pctr = item.getCtr();
+//            double pcvr = item.getCvr();
+////            item.setScore_type( isTfType?1:0);
+//            item.setScore_type( 0);
+//            //todo
+//            double ecpm;
+////            if(isTfType){
+////                ecpm = cpa * bid1 * bid2 * pcvr * pctr * 1000d;
+////            }else {
+//            cpa=cpa*item.getPidLambda();
+//            if(cpa<0.5){
+//                cpa=0.5;
+//            }
+//            ecpm = cpa* bid1 * bid2 * pcvr * pctr * 1000d;
+////            }
+////            ecpm = cpa * bid1 * bid2 * pcvr * pctr * 1000d;
+//            item.setEcpm1(ecpm/1000d);
+//            item.setScore(ecpm/1000d);
+//        } catch (Exception e) {
+//            LOGGER.error("merge Ecpm Score: {} error", "");
+//            item.setScore(0.0);
+//        }finally {
+//            countDownLatch.countDown();
+//        }
+//    }
+
+
     public void callMergeScore(AdRankItem item,CountDownLatch countDownLatch){
         try {
 //            boolean isTfType=item.getItemFeature().getCreative_7day_cnt_features().getAdView()<5000;
@@ -78,18 +113,17 @@ public class VlogMergeEcpmScorer extends BaseLRModelScorer {
             item.setScore_type( 0);
             //todo
             double ecpm;
+            double ecpm1;
 //            if(isTfType){
 //                ecpm = cpa * bid1 * bid2 * pcvr * pctr * 1000d;
 //            }else {
-            cpa=cpa*item.getPidLambda();
-            if(cpa<0.5){
-                cpa=0.5;
-            }
             ecpm = cpa* bid1 * bid2 * pcvr * pctr * 1000d;
+            ecpm1 = item.getPidLambda()* bid1 * bid2 * pcvr * pctr * 1000d;
 //            }
 //            ecpm = cpa * bid1 * bid2 * pcvr * pctr * 1000d;
             item.setEcpm1(ecpm/1000d);
             item.setScore(ecpm/1000d);
+            item.setEcpm2(ecpm1/1000d);
         } catch (Exception e) {
             LOGGER.error("merge Ecpm Score: {} error", "");
             item.setScore(0.0);

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

@@ -146,6 +146,29 @@ public class RankServiceImpl implements RankService {
             rankItems=new LinkedList<>(cache.values());
         }
         double lambda=-1d;
+//        for(AdRankItem item:rankItems){
+//            try {
+////                AdPlatformBidCreativeDTO dto=groupMap.get(item.getAdId()+"").get(0);
+//                AdPlatformBidCreativeDTO dto=groupMap.get(item.getAdId()).get(0);
+//                item.setBid1(dto.getBid1());
+//                item.setBid2(dto.getBid2());
+//                lambda=PidLambdaContainer.getPidLambda(item.getAdId());
+//                if(lambda<0){
+//                    item.setCpa(dto.getCpa());
+//                    item.setPidLambda(0.6);
+//                }else {
+//                    if(dto.getCpa()>1&&lambda<=1){
+//                        lambda=2d;
+//                    }
+//                    item.setCpa(lambda);
+//                    item.setPidLambda(1d);
+//                }
+//
+//            }catch (Exception e){
+//                log.error("rankItems info error itemId={}",item.getAdId());
+//                e.printStackTrace();
+//            }
+//        }
         for(AdRankItem item:rankItems){
             try {
 //                AdPlatformBidCreativeDTO dto=groupMap.get(item.getAdId()+"").get(0);
@@ -155,13 +178,13 @@ public class RankServiceImpl implements RankService {
                 lambda=PidLambdaContainer.getPidLambda(item.getAdId());
                 if(lambda<0){
                     item.setCpa(dto.getCpa());
-                    item.setPidLambda(0.6);
+                    item.setPidLambda(dto.getCpa());
                 }else {
                     if(dto.getCpa()>1&&lambda<=1){
                         lambda=2d;
                     }
-                    item.setCpa(lambda);
-                    item.setPidLambda(1d);
+                    item.setCpa(dto.getCpa());
+                    item.setPidLambda(lambda);
                 }
 
             }catch (Exception e){
@@ -179,7 +202,18 @@ public class RankServiceImpl implements RankService {
                 item.setAdId(dto.getCreativeId());
                 item.setItemFeature(new AdItemFeature());
                 lambda=PidLambdaContainer.getPidLambda(item.getAdId());
-                if(lambda<0){
+//                if(lambda<0){
+//                    item.setCpa(dto.getCpa());
+//                    item.setPidLambda(0.6);
+//                }else {
+//                    if(dto.getCpa()>1&&lambda<=1){
+//                        lambda=2d;
+//                    }
+//                    item.setCpa(lambda);
+//                    item.setPidLambda(1d);
+//                }
+
+               if(lambda<0){
                     item.setCpa(dto.getCpa());
                     item.setPidLambda(0.6);
                 }else {