|
@@ -19,9 +19,11 @@ import com.tzld.piaoquan.recommend.server.util.FeatureBucketUtils;
|
|
import com.tzld.piaoquan.recommend.server.util.FeatureUtils;
|
|
import com.tzld.piaoquan.recommend.server.util.FeatureUtils;
|
|
import com.tzld.piaoquan.recommend.server.util.JSONUtils;
|
|
import com.tzld.piaoquan.recommend.server.util.JSONUtils;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
|
+import org.apache.commons.collections4.CollectionUtils;
|
|
import org.apache.commons.collections4.MapUtils;
|
|
import org.apache.commons.collections4.MapUtils;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
+import org.springframework.beans.factory.annotation.Value;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
import java.util.*;
|
|
import java.util.*;
|
|
@@ -35,11 +37,25 @@ public class RankStrategy4RegionMergeModelV566 extends RankStrategy4RegionMergeM
|
|
@ApolloJsonValue("${rank.score.merge.weightv566:}")
|
|
@ApolloJsonValue("${rank.score.merge.weightv566:}")
|
|
private Map<String, Double> mergeWeight;
|
|
private Map<String, Double> mergeWeight;
|
|
|
|
|
|
|
|
+ @Value("#{'${rootsessionid.tails.566:}'.split(',')}")
|
|
|
|
+ private Set<String> rootSessionIdTails;
|
|
|
|
+
|
|
@Autowired
|
|
@Autowired
|
|
private FeatureService featureService;
|
|
private FeatureService featureService;
|
|
|
|
|
|
|
|
+ @Autowired
|
|
|
|
+ private RankStrategy4RegionMergeModelV567 modelV567;
|
|
|
|
+
|
|
@Override
|
|
@Override
|
|
public List<Video> mergeAndRankRovRecall(RankParam param) {
|
|
public List<Video> mergeAndRankRovRecall(RankParam param) {
|
|
|
|
+ String rootSessionId = param.getRootSessionId();
|
|
|
|
+ if (StringUtils.isBlank(rootSessionId) || CollectionUtils.isEmpty(rootSessionIdTails)) {
|
|
|
|
+ return modelV567.mergeAndRankRovRecall(param);
|
|
|
|
+ }
|
|
|
|
+ String tail = rootSessionId.substring(rootSessionId.length() - 1);
|
|
|
|
+ if (!rootSessionIdTails.contains(tail)) {
|
|
|
|
+ return modelV567.mergeAndRankRovRecall(param);
|
|
|
|
+ }
|
|
Map<String, Double> mergeWeight = this.mergeWeight != null ? this.mergeWeight : new HashMap<>(0);
|
|
Map<String, Double> mergeWeight = this.mergeWeight != null ? this.mergeWeight : new HashMap<>(0);
|
|
|
|
|
|
//-------------------融-------------------
|
|
//-------------------融-------------------
|