Bladeren bron

feat:562同步567

zhaohaipeng 2 weken geleden
bovenliggende
commit
7e9fb82bd5

+ 11 - 3
recommend-server-service/src/main/java/com/tzld/piaoquan/recommend/server/service/rank/strategy/RankStrategy4RegionMergeModelV562.java

@@ -43,7 +43,7 @@ public class RankStrategy4RegionMergeModelV562 extends RankStrategy4RegionMergeM
     private FeatureService featureService;
 
     @Autowired
-    private RankStrategy4RegionMergeModelV564 rank564;
+    private RankStrategy4RegionMergeModelV567 modelV567;
 
     @Override
     public List<Video> mergeAndRankRovRecall(RankParam param) {
@@ -51,12 +51,12 @@ public class RankStrategy4RegionMergeModelV562 extends RankStrategy4RegionMergeM
         String rootSessionId = param.getRootSessionId();
 
         if (StringUtils.isBlank(rootSessionId) || CollectionUtils.isEmpty(rootSessionIdTails)) {
-            return rank564.mergeAndRankRovRecall(param);
+            return modelV567.mergeAndRankRovRecall(param);
         }
 
         String tail = rootSessionId.substring(rootSessionId.length() - 1);
         if (!rootSessionIdTails.contains(tail)) {
-            return rank564.mergeAndRankRovRecall(param);
+            return modelV567.mergeAndRankRovRecall(param);
         }
         Map<String, Double> mergeWeight = this.mergeWeight != null ? this.mergeWeight : new HashMap<>(0);
 
@@ -117,6 +117,14 @@ public class RankStrategy4RegionMergeModelV562 extends RankStrategy4RegionMergeM
         // -------------------head province cate2------------------
         int headCate2RecallN = mergeWeight.getOrDefault("headCate2RecallN", 3.0).intValue();
         addRecall(param, headCate2RecallN, HeadProvinceCate2RecallStrategy.PUSH_FORM, setVideo, rovRecallRank);
+        //-------------------head cate2 of rovn------------------
+        List<Video> headCate2Rov = extractAndSort(param, HeadCate2RovRecallStrategy.PUSH_FROM);
+        // 视频去重
+        removeDuplicate(headCate2Rov);
+        headCate2Rov = headCate2Rov.stream().filter(o -> !setVideo.contains(o.getVideoId())).collect(Collectors.toList());
+        headCate2Rov = headCate2Rov.subList(0, Math.min(mergeWeight.getOrDefault("headCate2Rov", 5.0).intValue(), headCate2Rov.size()));
+        rovRecallRank.addAll(headCate2Rov);
+        setVideo.addAll(headCate2Rov.stream().map(Video::getVideoId).collect(Collectors.toSet()));
 
         //-------------------排-------------------
         //-------------------序-------------------

+ 1 - 0
recommend-server-service/src/main/java/com/tzld/piaoquan/recommend/server/service/recall/RecallService.java

@@ -127,6 +127,7 @@ public class RecallService implements ApplicationContextAware {
             strategies.add(strategyMap.get(UserCate2RecallStrategy.class.getSimpleName()));
             strategies.add(strategyMap.get(HeadProvinceCate1RecallStrategy.class.getSimpleName()));
             strategies.add(strategyMap.get(HeadProvinceCate2RecallStrategy.class.getSimpleName()));
+            strategies.add(strategyMap.get(HeadCate2RovRecallStrategy.class.getSimpleName()));
         }
 
         if (CollectionUtils.isNotEmpty(abExpCodes) && abExpCodes.contains("567")) {