浏览代码

Merge branch 'feature_20240531_zhaohaipeng_log' of algorithm/ad-engine into master

zhaohaipeng 11 月之前
父节点
当前提交
7ca34f3a8a

+ 1 - 1
ad-engine-service/src/main/java/com/tzld/piaoquan/ad/engine/service/log/LogHubService.java

@@ -9,5 +9,5 @@ import java.util.List;
 
 public interface LogHubService {
 
-    void scoreLogUpload(ScoreParam param, List<AdPlatformCreativeDTO> adIdList, List<AdRankItem> rankItems, RecommendRequestParam requestParam, String scoreStrategy);
+    void scoreLogUpload(ScoreParam param, List<AdPlatformCreativeDTO> adIdList, List<AdRankItem> rankItems, RecommendRequestParam requestParam, String scoreStrategy, String abCode);
 }

+ 2 - 1
ad-engine-service/src/main/java/com/tzld/piaoquan/ad/engine/service/log/impl/LogHubServiceImpl.java

@@ -40,7 +40,7 @@ public class LogHubServiceImpl implements LogHubService {
     private AliyunLogManager aliyunLogManager;
 
     @Override
-    public void scoreLogUpload(ScoreParam param, List<AdPlatformCreativeDTO> adIdList, List<AdRankItem> rankItems, RecommendRequestParam requestParam, String scoreStrategy) {
+    public void scoreLogUpload(ScoreParam param, List<AdPlatformCreativeDTO> adIdList, List<AdRankItem> rankItems, RecommendRequestParam requestParam, String scoreStrategy, String abCode) {
         logUploadThreadPool.execute(new Runnable() {
             @Override
             public void run() {
@@ -48,6 +48,7 @@ public class LogHubServiceImpl implements LogHubService {
                 logMap.put("pqtId", param.getPqtId());
                 logMap.put("mid", param.getMid());
                 logMap.put("videoId", param.getVideoId());
+                logMap.put("abCode", abCode);
                 // 获取AB实验列表
                 Set<String> abExpCode = new HashSet<>();
                 if (CollectionUtils.isNotEmpty(requestParam.getAdAbExpArr())) {

+ 9 - 6
ad-engine-service/src/main/java/com/tzld/piaoquan/ad/engine/service/score/VideoAdThompsonScorerV2.java

@@ -117,8 +117,8 @@ public class VideoAdThompsonScorerV2 {
 
                 score = s1 * dto.getCpa() * dto.getBid1() * dto.getBid2();
 
-                ext.put("a", alpha);
-                ext.put("b", beta);
+                ext.put("alpha", alpha);
+                ext.put("beta", beta);
                 ext.put("order", order);
                 ext.put("exp", exp);
                 ext.put("s1", s1);
@@ -138,6 +138,8 @@ public class VideoAdThompsonScorerV2 {
             item.setExt(ext);
             item.setVideoId(param.getVideoId());
             item.setScore_type(663);
+            item.setBid1(dto.getBid1());
+            item.setBid2(dto.getBid2());
             result.add(item);
         }
 
@@ -345,9 +347,9 @@ public class VideoAdThompsonScorerV2 {
                 score = s1 * dto.getCpa() * dto.getBid1() * dto.getBid2();
 
 
-                ext.put("a", alpha);
-                ext.put("b", beta);
-                ext.put("bk", betaK);
+                ext.put("alpha", alpha);
+                ext.put("beta", beta);
+                ext.put("beta_k", betaK);
                 ext.put("order", order);
                 ext.put("exp", exp);
                 ext.put("s1", s1);
@@ -369,7 +371,8 @@ public class VideoAdThompsonScorerV2 {
             item.setExt(ext);
             item.setVideoId(param.getVideoId());
             item.setScore_type(666);
-
+            item.setBid2(dto.getBid2());
+            item.setBid1(dto.getBid1());
             result.add(item);
         }
 

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

@@ -182,7 +182,8 @@ public class RankServiceImpl implements RankService {
                 adRankItem.getExt().put("userAdFeature", JSON.toJSONString(userAdFeature));
             }
             // 日志上报
-            logHubService.scoreLogUpload(param, request.getAdIdList(), rankResult, request, inCvrAdjustingExp ? "cvr_adjusting" : "base_line");
+            logHubService.scoreLogUpload(param, request.getAdIdList(), rankResult, request,
+                    inCvrAdjustingExp ? "cvr_adjusting" : "base_line", "531");
 
             return rankResult.get(0);
         }else {
@@ -252,35 +253,42 @@ public class RankServiceImpl implements RankService {
         ThresholdPredictModelParam modelParam = ThresholdPredictModelParam.builder()
                 .build();
         // 兜底方案
+        String abCode = "";
         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());
+            abCode = "663";
         }else if(expCodes.contains("664")||
                 (expCodes.contains(NewExpInfoHelper.flagId)&&NewExpInfoHelper.checkInNewExpGroupAndSetParamIfIn(
                         request.getAppType().toString(),request.getNewExpGroup(),"664",modelParam))){
             rankResult = videoAdThompsonScorerV2.thompsonScorerByExp664(param, request.getAdIdList());
+            abCode = "664";
         }else if(expCodes.contains("665")||
                 (expCodes.contains(NewExpInfoHelper.flagId)&&NewExpInfoHelper.checkInNewExpGroupAndSetParamIfIn(
                         request.getAppType().toString(),request.getNewExpGroup(),"665",modelParam))){
             rankResult = videoAdThompsonScorerV2.thompsonScorerByExp665(param, request.getAdIdList());
+            abCode = "665";
         }else if(expCodes.contains("666")||
                 (expCodes.contains(NewExpInfoHelper.flagId)&&NewExpInfoHelper.checkInNewExpGroupAndSetParamIfIn(
                         request.getAppType().toString(),request.getNewExpGroup(),"666",modelParam))){
             rankResult = videoAdThompsonScorerV2.thompsonScorerByExp666(param, request.getAdIdList());
+            abCode = "666";
         } else if (expCodes.contains("669") ||
                 (expCodes.contains(NewExpInfoHelper.flagId) && NewExpInfoHelper.checkInNewExpGroupAndSetParamIfIn(
                         request.getAppType().toString(), request.getNewExpGroup(), "669", modelParam))) {
             rankResult = videoAdThompsonScorerV2.thompsonScorerByExp669(param, request.getAdIdList());
+            abCode = "669";
         } else if (expCodes.contains("670") ||
                 (expCodes.contains(NewExpInfoHelper.flagId) && NewExpInfoHelper.checkInNewExpGroupAndSetParamIfIn(
                         request.getAppType().toString(), request.getNewExpGroup(), "670", modelParam))) {
             rankResult = videoAdThompsonScorerV2.thompsonScorerByExp670(param, request.getAdIdList());
+            abCode = "670";
         }
 
         // 日志上报
-        logHubService.scoreLogUpload(param, request.getAdIdList(), rankResult, request, "video_ad_thompson");
+        logHubService.scoreLogUpload(param, request.getAdIdList(), rankResult, request, "video_ad_thompson", abCode);
 
         if (!CollectionUtils.isEmpty(rankResult)) {
             JSONObject object=new JSONObject();