|
@@ -4,13 +4,10 @@ import com.alibaba.fastjson.JSON;
|
|
|
import com.alibaba.fastjson.JSONArray;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.diagbot.client.CRFServiceClient;
|
|
|
-import com.diagbot.client.ChiefPresentSimilarityServiceClient;
|
|
|
import com.diagbot.model.entity.Annotation;
|
|
|
-import com.diagbot.model.entity.ChiefPresentAnnotation;
|
|
|
import com.diagbot.util.CatalogueUtil;
|
|
|
import com.diagbot.util.StringUtil;
|
|
|
import com.diagbot.vo.CRFVo;
|
|
|
-import com.diagbot.vo.ChiefPresentSimilarityVo;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
|
|
|
import java.util.List;
|
|
@@ -175,47 +172,6 @@ public class ModelAI {
|
|
|
similarContent.put("string2", clinicArr);
|
|
|
}
|
|
|
|
|
|
- /**
|
|
|
- * 获取主诉现病史症状相似度返回数据
|
|
|
- *
|
|
|
- * @param string1 需要转换的文本
|
|
|
- * @param string2 模型文本
|
|
|
- * @return
|
|
|
- */
|
|
|
- public JSONArray loadSimilarAI(String string1, List<String> string2, boolean directionCheck
|
|
|
- , String modelName, ChiefPresentSimilarityServiceClient chiefPresentSimilarityServiceClient) {
|
|
|
- //存储CRF完整所需结构数据
|
|
|
- ChiefPresentSimilarityVo similarityVo = new ChiefPresentSimilarityVo();
|
|
|
- JSONObject data = new JSONObject();
|
|
|
- putContent(data, string1, string2);
|
|
|
- similarityVo.setData(data);
|
|
|
- similarityVo.setDirection_check(directionCheck);
|
|
|
- similarityVo.setModel_name(modelName);
|
|
|
- //获取CRF模型返回数据
|
|
|
- JSONArray predY = getAnnotation(chiefPresentSimilarityServiceClient, similarityVo).getPred_y();
|
|
|
- return getChiefPresentSimilarOutputs(predY);
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- * 主诉现病史相似度接口返回
|
|
|
- *
|
|
|
- * @param chiefPresentSimilarityServiceClient
|
|
|
- * @param chiefPresentSimilarityVo
|
|
|
- * @return
|
|
|
- */
|
|
|
- private ChiefPresentAnnotation getAnnotation(ChiefPresentSimilarityServiceClient chiefPresentSimilarityServiceClient,
|
|
|
- ChiefPresentSimilarityVo chiefPresentSimilarityVo) {
|
|
|
- ChiefPresentAnnotation annotation = new ChiefPresentAnnotation();
|
|
|
- try {
|
|
|
- String annotation_str = chiefPresentSimilarityServiceClient.getAnnotation(chiefPresentSimilarityVo);
|
|
|
- annotation = JSON.parseObject(annotation_str, ChiefPresentAnnotation.class);
|
|
|
- } catch (Exception ex) {
|
|
|
- ex.printStackTrace();
|
|
|
- } finally {
|
|
|
- return annotation;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
/**
|
|
|
* 获取主诉现病史文本相似度模型输出并处理
|
|
|
*
|