|
@@ -9,17 +9,17 @@ 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.remote.FeatureRemoteService;
|
|
|
import com.tzld.piaoquan.ad.engine.service.score.*;
|
|
|
-import com.tzld.piaoquan.ad.engine.service.score.convert.RequestConvert;
|
|
|
+import com.tzld.piaoquan.ad.engine.commons.convert.RequestConvert;
|
|
|
import com.tzld.piaoquan.ad.engine.service.score.deprecated.BidRankRecommendRequestParam;
|
|
|
import com.tzld.piaoquan.ad.engine.service.score.deprecated.RankServiceThompsonImpl;
|
|
|
-import com.tzld.piaoquan.ad.engine.service.score.deprecated.TacticsAndLRModelScoreRankService;
|
|
|
+import com.tzld.piaoquan.ad.engine.service.score.RankStrategyBy679;
|
|
|
import com.tzld.piaoquan.ad.engine.service.score.deprecated.VideoAdThompsonScorerV2;
|
|
|
import com.tzld.piaoquan.ad.engine.service.score.deprecated.container.AdCreativeFeatureContainer;
|
|
|
import com.tzld.piaoquan.ad.engine.service.score.deprecated.container.PidLambdaContainer;
|
|
|
import com.tzld.piaoquan.ad.engine.service.score.deprecated.container.PidLambdaForCpcContainer;
|
|
|
import com.tzld.piaoquan.ad.engine.service.score.deprecated.container.PidLambdaV2Container;
|
|
|
-import com.tzld.piaoquan.ad.engine.service.score.dto.AdPlatformCreativeDTO;
|
|
|
-import com.tzld.piaoquan.ad.engine.service.score.param.RankRecommendRequestParam;
|
|
|
+import com.tzld.piaoquan.ad.engine.commons.dto.AdPlatformCreativeDTO;
|
|
|
+import com.tzld.piaoquan.ad.engine.commons.param.RankRecommendRequestParam;
|
|
|
import com.tzld.piaoquan.recommend.feature.domain.ad.base.AdItemFeature;
|
|
|
import com.tzld.piaoquan.recommend.feature.domain.ad.base.AdRankItem;
|
|
|
import com.tzld.piaoquan.recommend.feature.domain.ad.base.UserAdFeature;
|
|
@@ -56,15 +56,17 @@ public class RankServiceImpl implements RankService {
|
|
|
private AdCreativeFeatureContainer adCreativeFeatureContainer;
|
|
|
|
|
|
@Autowired
|
|
|
- private RankService680 rankService680;
|
|
|
+ private RankStrategyBy680 rankService680;
|
|
|
@Autowired
|
|
|
- private RankService683 rankService683;
|
|
|
+ private RankStrategyBy683 rankService683;
|
|
|
@Autowired
|
|
|
- private RankService687 rankService687;
|
|
|
+ private RankStrategyBy687 rankService687;
|
|
|
@Autowired
|
|
|
- private RankStrategyXGBAutoUpdateModel688 rankStrategyXGBAutoUpdateModel688;
|
|
|
+ private RankStrategyBy688 rankStrategyBy688;
|
|
|
@Autowired
|
|
|
- private TacticsAndLRModelScoreRankService tacticsAndFmModelScoreRankService;
|
|
|
+ private RankStrategyBy679 rankStrategyBy679;
|
|
|
+ @Autowired
|
|
|
+ private RankStrategyByWeight rankStrategyByWeight;
|
|
|
|
|
|
@Value("${ad.model.cpm.max:200}")
|
|
|
Double cpmMax = 200d;
|
|
@@ -75,28 +77,23 @@ public class RankServiceImpl implements RankService {
|
|
|
@Value("${ad.cvr.adjusting.exp:652}")
|
|
|
private String cvrAdjustingExpCode;
|
|
|
|
|
|
- @Value("${fm.model.score.exp.code:680}")
|
|
|
- private String fmModelScoreExpCode;
|
|
|
-
|
|
|
- @Value("${tactics.fm.mode.score.exp.code:679}")
|
|
|
- private String tacticsAndFmModelScoreExpCode;
|
|
|
|
|
|
public AdRankItem adItemRank(RankRecommendRequestParam requestParam) {
|
|
|
Set<String> expCodeSet = AbUtil.unfoldAllExpCode(requestParam.getAdAbExpArr());
|
|
|
Long appType = requestParam.getAppType();
|
|
|
Integer newExpGroup = requestParam.getNewExpGroup();
|
|
|
- if (AbUtil.isInAbExp(expCodeSet, appType, newExpGroup, fmModelScoreExpCode)) {
|
|
|
- return rankBy680(requestParam);
|
|
|
+ if (AbUtil.isInAbExp(expCodeSet, appType, newExpGroup, "680")) {
|
|
|
+ return rankService680.adItemRank(requestParam);
|
|
|
} else if (AbUtil.isInAbExp(expCodeSet, appType, newExpGroup, "683")) {
|
|
|
- return rankBy683(requestParam);
|
|
|
+ return rankService683.adItemRank(requestParam);
|
|
|
} else if (AbUtil.isInAbExp(expCodeSet, appType, newExpGroup, "687")) {
|
|
|
- return rankBy687(requestParam);
|
|
|
- } else if (AbUtil.isInAbExp(expCodeSet, appType, newExpGroup, tacticsAndFmModelScoreExpCode)) {
|
|
|
- return rankBy679(requestParam);
|
|
|
+ return rankService687.adItemRank(requestParam);
|
|
|
+ } else if (AbUtil.isInAbExp(expCodeSet, appType, newExpGroup, "679")) {
|
|
|
+ return rankStrategyBy679.adItemRank(requestParam);
|
|
|
} else if (AbUtil.isInAbExp(expCodeSet, appType, newExpGroup, "688")) {
|
|
|
- return rankStrategyXGBAutoUpdateModel688(requestParam);
|
|
|
+ return rankStrategyBy688.adItemRank(requestParam);
|
|
|
} else {
|
|
|
- return adItemRankWithVideoAdThompson(requestParam);
|
|
|
+ return rankStrategyByWeight.adItemRank(requestParam);
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -123,14 +120,14 @@ public class RankServiceImpl implements RankService {
|
|
|
|
|
|
private AdRankItem rankStrategyXGBAutoUpdateModel688(RankRecommendRequestParam request) {
|
|
|
ScoreParam scoreParam = RequestConvert.requestConvert(request);
|
|
|
- List<AdRankItem> adRankItems = rankStrategyXGBAutoUpdateModel688.adItemRank(request, scoreParam);
|
|
|
+ List<AdRankItem> adRankItems = rankStrategyBy688.adItemRank(request, scoreParam);
|
|
|
logHubService.scoreLogUpload(scoreParam, request.getAdIdList(), adRankItems, request, "688");
|
|
|
return adRankItems.get(0);
|
|
|
}
|
|
|
|
|
|
private AdRankItem rankBy679(RankRecommendRequestParam requestParam) {
|
|
|
ScoreParam scoreParam = RequestConvert.requestConvert(requestParam);
|
|
|
- List<AdRankItem> adRankItems = tacticsAndFmModelScoreRankService.adItemRank(requestParam, scoreParam);
|
|
|
+ List<AdRankItem> adRankItems = rankStrategyBy679.adItemRank(requestParam, scoreParam);
|
|
|
logHubService.scoreLogUpload(scoreParam, requestParam.getAdIdList(), adRankItems, requestParam, "679");
|
|
|
double score = adRankItems.get(0).getScore();
|
|
|
if (score > 0) {
|