|  | @@ -1,6 +1,8 @@
 | 
	
		
			
				|  |  |  package com.tzld.longarticle.recommend.server.service.recommend.score.strategy;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +import com.alibaba.fastjson.JSONObject;
 | 
	
		
			
				|  |  |  import com.ctrip.framework.apollo.spring.annotation.ApolloJsonValue;
 | 
	
		
			
				|  |  | +import com.tzld.longarticle.recommend.server.common.ApolloConfigModifier;
 | 
	
		
			
				|  |  |  import com.tzld.longarticle.recommend.server.model.dto.kimi.KimiResult;
 | 
	
		
			
				|  |  |  import com.tzld.longarticle.recommend.server.remote.KimiApiService;
 | 
	
		
			
				|  |  |  import com.tzld.longarticle.recommend.server.remote.NLPRemoteService;
 | 
	
	
		
			
				|  | @@ -47,6 +49,9 @@ public class SimilarityStrategy implements ScoreStrategy {
 | 
	
		
			
				|  |  |      @ApolloJsonValue("${similarityTypeAccountMap:}")
 | 
	
		
			
				|  |  |      private Map<String, List<String>> similarityTypeAccountMap;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +    @Value("${spring.profiles.active:prod}")
 | 
	
		
			
				|  |  | +    private String env;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |      @Override
 | 
	
		
			
				|  |  |      public List<Score> score(ScoreParam param) {
 | 
	
		
			
				|  |  |          long start = System.currentTimeMillis();
 | 
	
	
		
			
				|  | @@ -79,6 +84,14 @@ public class SimilarityStrategy implements ScoreStrategy {
 | 
	
		
			
				|  |  |                  List<String> ghIds = similarityTypeAccountMap.get(type);
 | 
	
		
			
				|  |  |                  if (CollectionUtils.isNotEmpty(ghIds)) {
 | 
	
		
			
				|  |  |                      ghId = ghIds.get(RandomUtils.nextInt(0, ghIds.size()));
 | 
	
		
			
				|  |  | +                    try {
 | 
	
		
			
				|  |  | +                        Map<String, String> value = accountSimScoreReplaceMap;
 | 
	
		
			
				|  |  | +                        value.put(param.getGhId(), ghId);
 | 
	
		
			
				|  |  | +                        ApolloConfigModifier.modifyConfig("account.score.sim.replace", JSONObject.toJSONString(value), env.toUpperCase());
 | 
	
		
			
				|  |  | +                        log.info("SimilarityStrategy 更新apollo配置 account.score.sim.replace 成功 {}:{}", param.getGhId(), ghId);
 | 
	
		
			
				|  |  | +                    } catch (Exception e) {
 | 
	
		
			
				|  |  | +                        log.error("SimilarityStrategy 更新apollo配置失败", e);
 | 
	
		
			
				|  |  | +                    }
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |                  log.info("SimilarityStrategy 排序账号:{} 替换账号:{}", param.getGhId(), ghId);
 | 
	
		
			
				|  |  |              }
 |