Browse Source

model rpc

丁云鹏 1 year ago
parent
commit
58decb19d0

+ 1 - 1
recommend-server-client/src/main/java/com/tzld/piaoquan/recommend/server/client/ModelType.java

@@ -2,7 +2,7 @@ package com.tzld.piaoquan.recommend.server.client;
 
 public enum ModelType {
     STR("str"),
-    ROV("rov"),
+    ROS("ros"),
     ;
 
     private String key;

+ 15 - 7
recommend-server-service/src/main/java/com/tzld/piaoquan/recommend/server/service/ModelService.java

@@ -8,7 +8,6 @@ import com.tzld.piaoquan.recommend.server.gen.common.Result;
 import com.tzld.piaoquan.recommend.server.gen.model.ScoreRequest;
 import com.tzld.piaoquan.recommend.server.gen.model.ScoreResponse;
 import com.tzld.piaoquan.recommend.server.service.score.ScorerUtils;
-import com.tzld.piaoquan.recommend.server.util.CommonCollectionUtils;
 import com.tzld.piaoquan.recommend.server.util.JSONUtils;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.collections4.CollectionUtils;
@@ -127,21 +126,30 @@ public class ModelService {
 
         Map<String, String> sceneFeatureMap = this.getSceneFeature(request);
 
-        List<RankItem> result = ScorerUtils.getScorerPipeline(ScorerUtils.BASE_CONF)
+        List<RankItem> result = ScorerUtils.getScorerPipeline(ScorerUtils.VIDEO_SCORE_CONF_FOR_AD)
                 .scoring(sceneFeatureMap, userFeatureMap, rankItems);
+
         if (CollectionUtils.isEmpty(result)) {
             return ScoreResponse.newBuilder()
                     .setResult(Result.newBuilder().setCode(1))
                     .build();
         }
+        Map<String, Double> score = new HashMap<>();
+        score.put(ModelType.STR.getKey(), result.get(0).getScoreStr());
+        score.put(ModelType.ROS.getKey(), result.get(0).getScoreRos());
+
         return ScoreResponse.newBuilder()
                 .setResult(Result.newBuilder().setCode(1))
-                .putAllScore(CommonCollectionUtils.toMap(result.get(0).getRankerScore().entrySet(),
-                        e -> modelNameMap.containsKey(e.getKey())
-                                ? modelNameMap.get(e.getKey())
-                                : e.getKey(),
-                        e -> e.getValue()))
+                .putAllScore(score)
                 .build();
+//        return ScoreResponse.newBuilder()
+//                .setResult(Result.newBuilder().setCode(1))
+//                .putAllScore(CommonCollectionUtils.toMap(result.get(0).getRankerScore().entrySet(),
+//                        e -> modelNameMap.containsKey(e.getKey())
+//                                ? modelNameMap.get(e.getKey())
+//                                : e.getKey(),
+//                        e -> e.getValue()))
+//                .build();
     }
 
     private Map<String, String> getSceneFeature(ScoreRequest request) {

+ 3 - 1
recommend-server-service/src/main/java/com/tzld/piaoquan/recommend/server/service/score/ScorerPipeline.java

@@ -165,7 +165,9 @@ public class ScorerPipeline {
             int position = 0;
             for (RankItem item : items) {
                 item.getRankerIndex().put(scorerName, position++);
-                item.getRankerScore().put(scorerName, item.getScore());
+                if(scorerName.equals("finalScore")) {
+                    item.getRankerScore().put(scorerName, item.getScore());
+                }
             }
 
             //

+ 1 - 1
recommend-server-service/src/main/resources/application-dev.yml

@@ -61,4 +61,4 @@ aliyun:
 
 logging:
   file:
-    path: ../logs/${spring.application.name}/
+    path: ./${spring.application.name}/logs/

+ 5 - 0
recommend-server-service/src/main/resources/video_score_config_for_ad.conf

@@ -4,4 +4,9 @@ scorer-config = {
     scorer-priority = 99
     model-path = "video_str_model/model_sharev2_20231220_change.txt"
   }
+  ros-score-config = {
+    scorer-name = "com.tzld.piaoquan.recommend.server.service.score.VlogShareLRScorer4Ros"
+    scorer-priority = 99
+    model-path = "video_str_model/model_ros_v2_20231220_change.txt"
+  }
 }