diff --git a/virtual-patient-common/src/main/java/com/supervision/config/VectorSimilarityConfiguration.java b/virtual-patient-common/src/main/java/com/supervision/config/VectorSimilarityConfiguration.java index 1e3463ce..dc8e4cf4 100644 --- a/virtual-patient-common/src/main/java/com/supervision/config/VectorSimilarityConfiguration.java +++ b/virtual-patient-common/src/main/java/com/supervision/config/VectorSimilarityConfiguration.java @@ -28,8 +28,8 @@ public class VectorSimilarityConfiguration { .withIndexName(redisVectorProperties.getIndexName()) // 定义搜索过滤器使用的元数据字段(!!!!!!!!千万重要,数据类型一定要用字符串,否则会导致查询不到!!!!!!!!) .withMetadataFields( - // 问题的ID - RedisVectorStore.MetadataField.tag("matchQuestionId"), + // 问题的ID,如果type=1,则在library表,如果type=2,则在similar表 + RedisVectorStore.MetadataField.tag("questionId"), //关联字典ID RedisVectorStore.MetadataField.tag("dictId"), // 标准问ID diff --git a/virtual-patient-common/src/main/java/com/supervision/domain/QaSimilarityQuestionAnswer.java b/virtual-patient-common/src/main/java/com/supervision/domain/QaSimilarityQuestionAnswer.java index c6651ee1..3570458f 100644 --- a/virtual-patient-common/src/main/java/com/supervision/domain/QaSimilarityQuestionAnswer.java +++ b/virtual-patient-common/src/main/java/com/supervision/domain/QaSimilarityQuestionAnswer.java @@ -13,7 +13,7 @@ public class QaSimilarityQuestionAnswer { /** * 匹配到的问题ID */ - private String matchQuestionId; + private String questionId; /** * 对应的标准问ID diff --git a/virtual-patient-common/src/main/java/com/supervision/util/SimilarityUtil.java b/virtual-patient-common/src/main/java/com/supervision/util/SimilarityUtil.java index ef6541ca..741b89d6 100644 --- a/virtual-patient-common/src/main/java/com/supervision/util/SimilarityUtil.java +++ b/virtual-patient-common/src/main/java/com/supervision/util/SimilarityUtil.java @@ -43,7 +43,7 @@ public class SimilarityUtil { return documents.stream().map(document -> { QaSimilarityQuestionAnswer qaSimilarityQuestionAnswer = new QaSimilarityQuestionAnswer(); qaSimilarityQuestionAnswer.setMatchQuestion(document.getContent()); - qaSimilarityQuestionAnswer.setMatchQuestionId(String.valueOf(document.getMetadata().get("matchQuestionId"))); + qaSimilarityQuestionAnswer.setQuestionId(String.valueOf(document.getMetadata().get("questionId"))); qaSimilarityQuestionAnswer.setDictId(String.valueOf(document.getMetadata().get("dictId"))); qaSimilarityQuestionAnswer.setLibraryQuestionId(String.valueOf(document.getMetadata().get("libraryQuestionId"))); // 1- 可以使数据进行排序,相似度越高,数值越大(redis相似度给的数据是越小相似度越高) diff --git a/virtual-patient-manage/src/main/java/com/supervision/manage/service/impl/QaKnowledgeManageServiceImpl.java b/virtual-patient-manage/src/main/java/com/supervision/manage/service/impl/QaKnowledgeManageServiceImpl.java index 48ad5599..290b8c60 100644 --- a/virtual-patient-manage/src/main/java/com/supervision/manage/service/impl/QaKnowledgeManageServiceImpl.java +++ b/virtual-patient-manage/src/main/java/com/supervision/manage/service/impl/QaKnowledgeManageServiceImpl.java @@ -38,14 +38,14 @@ public class QaKnowledgeManageServiceImpl implements QaKnowledgeManageService { redisVectorStore.add(List.of(new Document(description, Map.of("type", "1", "libraryQuestionId", askTemplateQuestionLibrary.getId(), - "matchQuestionId", askTemplateQuestionLibrary.getId(), + "questionId", askTemplateQuestionLibrary.getId(), "dictId", String.valueOf(askTemplateQuestionLibrary.getDictId()))))); List similarityList = askTemplateQuestionSimilarityService.lambdaQuery().eq(AskTemplateQuestionSimilarity::getLibraryId, askTemplateQuestionLibrary.getId()).list(); for (AskTemplateQuestionSimilarity askTemplateQuestionSimilarity : similarityList) { redisVectorStore.add(List.of(new Document(askTemplateQuestionSimilarity.getSimilarityQuestion(), Map.of("type", "2", "libraryQuestionId", askTemplateQuestionSimilarity.getLibraryId(), - "matchQuestionId", askTemplateQuestionSimilarity.getId(), + "questionId", askTemplateQuestionSimilarity.getId(), "dictId", String.valueOf(askTemplateQuestionLibrary.getDictId()))))); } } diff --git a/virtual-patient-web/src/main/java/com/supervision/controller/TestController.java b/virtual-patient-web/src/main/java/com/supervision/controller/TestController.java index 2c5f32e7..a30dc326 100644 --- a/virtual-patient-web/src/main/java/com/supervision/controller/TestController.java +++ b/virtual-patient-web/src/main/java/com/supervision/controller/TestController.java @@ -94,14 +94,14 @@ public class TestController { redisVectorStore.add(List.of(new Document(description, Map.of("type", "1", "libraryQuestionId", askTemplateQuestionLibrary.getId(), - "matchQuestionId", askTemplateQuestionLibrary.getId(), + "questionId", askTemplateQuestionLibrary.getId(), "dictId", String.valueOf(askTemplateQuestionLibrary.getDictId()))))); List similarityList = askTemplateQuestionSimilarityService.lambdaQuery().eq(AskTemplateQuestionSimilarity::getLibraryId, askTemplateQuestionLibrary.getId()).list(); for (AskTemplateQuestionSimilarity askTemplateQuestionSimilarity : similarityList) { redisVectorStore.add(List.of(new Document(askTemplateQuestionSimilarity.getSimilarityQuestion(), Map.of("type", "2", "libraryQuestionId", askTemplateQuestionSimilarity.getLibraryId(), - "matchQuestionId", askTemplateQuestionSimilarity.getId(), + "questionId", askTemplateQuestionSimilarity.getId(), "dictId", String.valueOf(askTemplateQuestionLibrary.getDictId()))))); } } diff --git a/virtual-patient-web/src/main/java/com/supervision/service/impl/AskServiceImpl.java b/virtual-patient-web/src/main/java/com/supervision/service/impl/AskServiceImpl.java index 0e9402cf..07b74174 100644 --- a/virtual-patient-web/src/main/java/com/supervision/service/impl/AskServiceImpl.java +++ b/virtual-patient-web/src/main/java/com/supervision/service/impl/AskServiceImpl.java @@ -165,7 +165,7 @@ public class AskServiceImpl implements AskService { .similarityInfo(JSONUtil.toJsonStr(similarityAnswerList)) .matchScore(similarityResult.getMatchScore()) .matchItem(Optional.ofNullable(commonDicService.getById(Long.parseLong(similarityResult.getDictId()))).orElse(new CommonDic()).getNameZhPath()) - .matchSimilarityId(similarityResult.getMatchQuestionId()) + .matchSimilarityId(similarityResult.getQuestionId()) .matchLibraryId(similarityResult.getLibraryQuestionId()) .matchQuestion(similarityResult.getMatchQuestion()) .successType(1)