|
@@ -2,7 +2,9 @@ package com.tzld.piaoquan.recommend.server.service.rank;
|
|
|
|
|
|
|
|
|
|
import com.typesafe.config.Config;
|
|
import com.typesafe.config.Config;
|
|
|
|
+import com.tzld.piaoquan.recommend.server.common.base.ItemFeature;
|
|
import com.tzld.piaoquan.recommend.server.common.base.RankItem;
|
|
import com.tzld.piaoquan.recommend.server.common.base.RankItem;
|
|
|
|
+import com.tzld.piaoquan.recommend.server.common.base.RequestContext;
|
|
import com.tzld.piaoquan.recommend.server.common.base.UserFeature;
|
|
import com.tzld.piaoquan.recommend.server.common.base.UserFeature;
|
|
import com.tzld.piaoquan.recommend.server.common.enums.AppTypeEnum;
|
|
import com.tzld.piaoquan.recommend.server.common.enums.AppTypeEnum;
|
|
import com.tzld.piaoquan.recommend.server.gen.recommend.RecommendRequest;
|
|
import com.tzld.piaoquan.recommend.server.gen.recommend.RecommendRequest;
|
|
@@ -41,6 +43,7 @@ public class RankService {
|
|
// LR scores
|
|
// LR scores
|
|
public RankResult rank(RecommendRequest recommendRequest,
|
|
public RankResult rank(RecommendRequest recommendRequest,
|
|
RankParam param,
|
|
RankParam param,
|
|
|
|
+ RequestContext requestContext,
|
|
RecallResult recallResult,
|
|
RecallResult recallResult,
|
|
UserFeature userFeature,
|
|
UserFeature userFeature,
|
|
List<RankItem> videoRankFeatures,
|
|
List<RankItem> videoRankFeatures,
|
|
@@ -70,7 +73,7 @@ public class RankService {
|
|
List<RankItem> rankItem = new ArrayList<RankItem>();
|
|
List<RankItem> rankItem = new ArrayList<RankItem>();
|
|
|
|
|
|
List<RankItem> rovRecallRank =
|
|
List<RankItem> rovRecallRank =
|
|
- scorerPipeline.scoring(recommendRequest, param, userFeature, rankItem);
|
|
|
|
|
|
+ scorerPipeline.scoring(requestContext, param, userFeature, rankItem);
|
|
|
|
|
|
log.info("mergeAndRankRovRecall rovRecallRank={}", JSONUtils.toJson(rovRecallRank));
|
|
log.info("mergeAndRankRovRecall rovRecallRank={}", JSONUtils.toJson(rovRecallRank));
|
|
List<Video> flowPoolRank = mergeAndRankFlowPoolRecall(param);
|
|
List<Video> flowPoolRank = mergeAndRankFlowPoolRecall(param);
|
|
@@ -219,11 +222,15 @@ public class RankService {
|
|
List<Long> videoIds = CommonCollectionUtils.toListDistinct(recallVideos, Video::getVideoId);
|
|
List<Long> videoIds = CommonCollectionUtils.toListDistinct(recallVideos, Video::getVideoId);
|
|
Map<Long, ItemFeature> videoFeatureMap = featureRemoteService.getVideoFeatureMap(videoIds);
|
|
Map<Long, ItemFeature> videoFeatureMap = featureRemoteService.getVideoFeatureMap(videoIds);
|
|
for (RankItem rankItem : rankItems) {
|
|
for (RankItem rankItem : rankItems) {
|
|
- rankItem.setItemFeature(videoFeatureMap.get(rankItem.getVideoId()));
|
|
|
|
|
|
+ rankItem.setItemFeature(videoFeatureMap.get(rankItem.getVideoid()));
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ // TODO
|
|
|
|
+ // 初始化 RecommendRequest, RequenstContxt
|
|
|
|
+ RequestContext requestContext = new RequestContext();
|
|
|
|
+
|
|
List<RankItem> rovRecallScore = ScorerUtils.getScorerPipeline(ScorerUtils.BASE_CONF)
|
|
List<RankItem> rovRecallScore = ScorerUtils.getScorerPipeline(ScorerUtils.BASE_CONF)
|
|
- .scoring(param, userFeature, rankItems);
|
|
|
|
|
|
+ .scoring(requestContext, param, userFeature, rankItems);
|
|
log.info("mergeAndRankRovRecall rovRecallScore={}", JSONUtils.toJson(rovRecallScore));
|
|
log.info("mergeAndRankRovRecall rovRecallScore={}", JSONUtils.toJson(rovRecallScore));
|
|
|
|
|
|
return CommonCollectionUtils.toList(rovRecallScore, i -> {
|
|
return CommonCollectionUtils.toList(rovRecallScore, i -> {
|