From 9dcf8c23f2cc0062664350edd4d743e2896b0f57 Mon Sep 17 00:00:00 2001 From: LXW <1264174498@qq.com> Date: Wed, 13 Mar 2024 20:15:29 +0800 Subject: [PATCH] (improvement)(Headless) move Knowledge package to chat package (#816) Co-authored-by: jolunoluo --- .../execute/MetricRecommendProcessor.java | 2 +- .../headless/api/pojo/SchemaElement.java | 3 +- .../{ => chat}/knowledge/DataSetInfoStat.java | 2 +- .../knowledge/DatabaseMapResult.java | 2 +- .../{ => chat}/knowledge/DictUpdateMode.java | 2 +- .../core/{ => chat}/knowledge/DictWord.java | 2 +- .../knowledge/DictionaryAttributeUtil.java | 2 +- .../{ => chat}/knowledge/EmbeddingResult.java | 2 +- .../knowledge/HadoopFileIOAdapter.java | 2 +- .../{ => chat}/knowledge/HanlpMapResult.java | 2 +- .../knowledge/KnowledgeService.java | 4 +- .../core/{ => chat}/knowledge/MapResult.java | 2 +- .../knowledge/MetaEmbeddingService.java | 2 +- .../knowledge/MultiCustomDictionary.java | 4 +- .../{ => chat}/knowledge/SearchService.java | 4 +- .../knowledge/builder/BaseWordBuilder.java | 4 +- .../builder/BaseWordWithAliasBuilder.java | 5 +- .../builder/DimensionWordBuilder.java | 4 +- .../knowledge/builder/EntityWordBuilder.java | 4 +- .../knowledge/builder/MetricWordBuilder.java | 4 +- .../knowledge/builder/ModelWordBuilder.java | 4 +- .../knowledge/builder/TagWordBuilder.java | 5 +- .../knowledge/builder/ValueWordBuilder.java | 4 +- .../knowledge/builder/WordBuilderFactory.java | 2 +- .../knowledge/helper/FileHelper.java | 2 +- .../knowledge/helper/HanlpHelper.java | 12 ++--- .../knowledge/helper/HdfsFileHelper.java | 2 +- .../knowledge/helper/NatureHelper.java | 4 +- .../core/chat/mapper/BaseMatchStrategy.java | 2 +- .../chat/mapper/DatabaseMatchStrategy.java | 2 +- .../core/chat/mapper/EmbeddingMapper.java | 6 +-- .../chat/mapper/EmbeddingMatchStrategy.java | 4 +- .../chat/mapper/HanlpDictMatchStrategy.java | 4 +- .../core/chat/mapper/KeywordMapper.java | 8 +-- .../core/chat/mapper/MapperHelper.java | 2 +- .../core/chat/mapper/QueryFilterMapper.java | 2 +- .../core/chat/mapper/SearchMatchStrategy.java | 6 +-- .../chat/parser/llm/LLMRequestService.java | 51 ++++++++----------- .../core/config/ChatLocalFileConfig.java | 2 +- .../headless/core/file/LocalFileConfig.java | 2 +- .../listener/ApplicationStartedListener.java | 4 +- .../listener/SchemaDictUpdateListener.java | 4 +- .../service/impl/ChatQueryServiceImpl.java | 10 ++-- .../service/impl/DictTaskServiceImpl.java | 4 +- .../service/impl/SearchServiceImpl.java | 16 +++--- .../server/service/impl/WordService.java | 4 +- .../server/utils/DataSetSchemaBuilder.java | 1 + 47 files changed, 109 insertions(+), 118 deletions(-) rename headless/core/src/main/java/com/tencent/supersonic/headless/core/{ => chat}/knowledge/DataSetInfoStat.java (84%) rename headless/core/src/main/java/com/tencent/supersonic/headless/core/{ => chat}/knowledge/DatabaseMapResult.java (92%) rename headless/core/src/main/java/com/tencent/supersonic/headless/core/{ => chat}/knowledge/DictUpdateMode.java (91%) rename headless/core/src/main/java/com/tencent/supersonic/headless/core/{ => chat}/knowledge/DictWord.java (91%) rename headless/core/src/main/java/com/tencent/supersonic/headless/core/{ => chat}/knowledge/DictionaryAttributeUtil.java (96%) rename headless/core/src/main/java/com/tencent/supersonic/headless/core/{ => chat}/knowledge/EmbeddingResult.java (91%) rename headless/core/src/main/java/com/tencent/supersonic/headless/core/{ => chat}/knowledge/HadoopFileIOAdapter.java (93%) rename headless/core/src/main/java/com/tencent/supersonic/headless/core/{ => chat}/knowledge/HanlpMapResult.java (94%) rename headless/core/src/main/java/com/tencent/supersonic/headless/core/{ => chat}/knowledge/KnowledgeService.java (94%) rename headless/core/src/main/java/com/tencent/supersonic/headless/core/{ => chat}/knowledge/MapResult.java (76%) rename headless/core/src/main/java/com/tencent/supersonic/headless/core/{ => chat}/knowledge/MetaEmbeddingService.java (98%) rename headless/core/src/main/java/com/tencent/supersonic/headless/core/{ => chat}/knowledge/MultiCustomDictionary.java (99%) rename headless/core/src/main/java/com/tencent/supersonic/headless/core/{ => chat}/knowledge/SearchService.java (98%) rename headless/core/src/main/java/com/tencent/supersonic/headless/core/{ => chat}/knowledge/builder/BaseWordBuilder.java (88%) rename headless/core/src/main/java/com/tencent/supersonic/headless/core/{ => chat}/knowledge/builder/BaseWordWithAliasBuilder.java (84%) rename headless/core/src/main/java/com/tencent/supersonic/headless/core/{ => chat}/knowledge/builder/DimensionWordBuilder.java (92%) rename headless/core/src/main/java/com/tencent/supersonic/headless/core/{ => chat}/knowledge/builder/EntityWordBuilder.java (90%) rename headless/core/src/main/java/com/tencent/supersonic/headless/core/{ => chat}/knowledge/builder/MetricWordBuilder.java (92%) rename headless/core/src/main/java/com/tencent/supersonic/headless/core/{ => chat}/knowledge/builder/ModelWordBuilder.java (89%) rename headless/core/src/main/java/com/tencent/supersonic/headless/core/{ => chat}/knowledge/builder/TagWordBuilder.java (92%) rename headless/core/src/main/java/com/tencent/supersonic/headless/core/{ => chat}/knowledge/builder/ValueWordBuilder.java (89%) rename headless/core/src/main/java/com/tencent/supersonic/headless/core/{ => chat}/knowledge/builder/WordBuilderFactory.java (92%) rename headless/core/src/main/java/com/tencent/supersonic/headless/core/{ => chat}/knowledge/helper/FileHelper.java (97%) rename headless/core/src/main/java/com/tencent/supersonic/headless/core/{ => chat}/knowledge/helper/HanlpHelper.java (96%) rename headless/core/src/main/java/com/tencent/supersonic/headless/core/{ => chat}/knowledge/helper/HdfsFileHelper.java (97%) rename headless/core/src/main/java/com/tencent/supersonic/headless/core/{ => chat}/knowledge/helper/NatureHelper.java (98%) diff --git a/chat/server/src/main/java/com/tencent/supersonic/chat/server/processor/execute/MetricRecommendProcessor.java b/chat/server/src/main/java/com/tencent/supersonic/chat/server/processor/execute/MetricRecommendProcessor.java index ad996f2ad..d6c9edffa 100644 --- a/chat/server/src/main/java/com/tencent/supersonic/chat/server/processor/execute/MetricRecommendProcessor.java +++ b/chat/server/src/main/java/com/tencent/supersonic/chat/server/processor/execute/MetricRecommendProcessor.java @@ -12,7 +12,7 @@ import com.tencent.supersonic.headless.api.pojo.SchemaElementType; import com.tencent.supersonic.headless.api.pojo.SemanticParseInfo; import com.tencent.supersonic.headless.api.pojo.request.ExecuteQueryReq; import com.tencent.supersonic.headless.api.pojo.response.QueryResult; -import com.tencent.supersonic.headless.core.knowledge.MetaEmbeddingService; +import com.tencent.supersonic.headless.core.chat.knowledge.MetaEmbeddingService; import org.springframework.util.CollectionUtils; import java.util.Collections; diff --git a/headless/api/src/main/java/com/tencent/supersonic/headless/api/pojo/SchemaElement.java b/headless/api/src/main/java/com/tencent/supersonic/headless/api/pojo/SchemaElement.java index aba57cb31..6fa343ecd 100644 --- a/headless/api/src/main/java/com/tencent/supersonic/headless/api/pojo/SchemaElement.java +++ b/headless/api/src/main/java/com/tencent/supersonic/headless/api/pojo/SchemaElement.java @@ -27,9 +27,8 @@ public class SchemaElement implements Serializable { private List alias; private List schemaValueMaps; private List relatedSchemaElements; - private String defaultAgg; - + private String dataFormatType; private double order; @Override diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/DataSetInfoStat.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/DataSetInfoStat.java similarity index 84% rename from headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/DataSetInfoStat.java rename to headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/DataSetInfoStat.java index 153c26cf8..6d8d16625 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/DataSetInfoStat.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/DataSetInfoStat.java @@ -1,4 +1,4 @@ -package com.tencent.supersonic.headless.core.knowledge; +package com.tencent.supersonic.headless.core.chat.knowledge; import lombok.Builder; import lombok.Data; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/DatabaseMapResult.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/DatabaseMapResult.java similarity index 92% rename from headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/DatabaseMapResult.java rename to headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/DatabaseMapResult.java index 10871d3d7..f47e311cf 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/DatabaseMapResult.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/DatabaseMapResult.java @@ -1,4 +1,4 @@ -package com.tencent.supersonic.headless.core.knowledge; +package com.tencent.supersonic.headless.core.chat.knowledge; import com.google.common.base.Objects; import com.tencent.supersonic.headless.api.pojo.SchemaElement; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/DictUpdateMode.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/DictUpdateMode.java similarity index 91% rename from headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/DictUpdateMode.java rename to headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/DictUpdateMode.java index b70b987c7..52eaa2215 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/DictUpdateMode.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/DictUpdateMode.java @@ -1,5 +1,5 @@ -package com.tencent.supersonic.headless.core.knowledge; +package com.tencent.supersonic.headless.core.chat.knowledge; public enum DictUpdateMode { diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/DictWord.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/DictWord.java similarity index 91% rename from headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/DictWord.java rename to headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/DictWord.java index 810749c85..3a59eab41 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/DictWord.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/DictWord.java @@ -1,4 +1,4 @@ -package com.tencent.supersonic.headless.core.knowledge; +package com.tencent.supersonic.headless.core.chat.knowledge; import java.util.Objects; import lombok.Data; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/DictionaryAttributeUtil.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/DictionaryAttributeUtil.java similarity index 96% rename from headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/DictionaryAttributeUtil.java rename to headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/DictionaryAttributeUtil.java index a05bfe7bf..8131a7ef4 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/DictionaryAttributeUtil.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/DictionaryAttributeUtil.java @@ -1,4 +1,4 @@ -package com.tencent.supersonic.headless.core.knowledge; +package com.tencent.supersonic.headless.core.chat.knowledge; import com.hankcs.hanlp.corpus.tag.Nature; import com.hankcs.hanlp.dictionary.CoreDictionary; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/EmbeddingResult.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/EmbeddingResult.java similarity index 91% rename from headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/EmbeddingResult.java rename to headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/EmbeddingResult.java index 231e37c38..1994b822f 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/EmbeddingResult.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/EmbeddingResult.java @@ -1,4 +1,4 @@ -package com.tencent.supersonic.headless.core.knowledge; +package com.tencent.supersonic.headless.core.chat.knowledge; import com.google.common.base.Objects; import java.util.Map; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/HadoopFileIOAdapter.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/HadoopFileIOAdapter.java similarity index 93% rename from headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/HadoopFileIOAdapter.java rename to headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/HadoopFileIOAdapter.java index e215ca782..e1a0d300d 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/HadoopFileIOAdapter.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/HadoopFileIOAdapter.java @@ -1,4 +1,4 @@ -package com.tencent.supersonic.headless.core.knowledge; +package com.tencent.supersonic.headless.core.chat.knowledge; import com.hankcs.hanlp.corpus.io.IIOAdapter; import java.io.IOException; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/HanlpMapResult.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/HanlpMapResult.java similarity index 94% rename from headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/HanlpMapResult.java rename to headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/HanlpMapResult.java index ba198ec00..c30a57743 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/HanlpMapResult.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/HanlpMapResult.java @@ -1,4 +1,4 @@ -package com.tencent.supersonic.headless.core.knowledge; +package com.tencent.supersonic.headless.core.chat.knowledge; import com.google.common.base.Objects; import java.util.List; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/KnowledgeService.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/KnowledgeService.java similarity index 94% rename from headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/KnowledgeService.java rename to headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/KnowledgeService.java index 47881f11c..f51c11ece 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/KnowledgeService.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/KnowledgeService.java @@ -1,8 +1,8 @@ -package com.tencent.supersonic.headless.core.knowledge; +package com.tencent.supersonic.headless.core.chat.knowledge; import com.tencent.supersonic.common.pojo.enums.DictWordType; import com.tencent.supersonic.headless.api.pojo.response.S2Term; -import com.tencent.supersonic.headless.core.knowledge.helper.HanlpHelper; +import com.tencent.supersonic.headless.core.chat.knowledge.helper.HanlpHelper; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/MapResult.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/MapResult.java similarity index 76% rename from headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/MapResult.java rename to headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/MapResult.java index 23804123a..ddbcd0fa1 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/MapResult.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/MapResult.java @@ -1,4 +1,4 @@ -package com.tencent.supersonic.headless.core.knowledge; +package com.tencent.supersonic.headless.core.chat.knowledge; import java.io.Serializable; import lombok.Data; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/MetaEmbeddingService.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/MetaEmbeddingService.java similarity index 98% rename from headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/MetaEmbeddingService.java rename to headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/MetaEmbeddingService.java index 7ea3f541a..e045fead0 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/MetaEmbeddingService.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/MetaEmbeddingService.java @@ -1,4 +1,4 @@ -package com.tencent.supersonic.headless.core.knowledge; +package com.tencent.supersonic.headless.core.chat.knowledge; import com.tencent.supersonic.common.config.EmbeddingConfig; import com.tencent.supersonic.common.pojo.Constants; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/MultiCustomDictionary.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/MultiCustomDictionary.java similarity index 99% rename from headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/MultiCustomDictionary.java rename to headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/MultiCustomDictionary.java index 194da75a7..33ff1c1f4 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/MultiCustomDictionary.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/MultiCustomDictionary.java @@ -1,4 +1,4 @@ -package com.tencent.supersonic.headless.core.knowledge; +package com.tencent.supersonic.headless.core.chat.knowledge; import static com.hankcs.hanlp.utility.Predefine.logger; @@ -15,7 +15,7 @@ import com.hankcs.hanlp.seg.common.Term; import com.hankcs.hanlp.utility.LexiconUtility; import com.hankcs.hanlp.utility.Predefine; import com.hankcs.hanlp.utility.TextUtility; -import com.tencent.supersonic.headless.core.knowledge.helper.HanlpHelper; +import com.tencent.supersonic.headless.core.chat.knowledge.helper.HanlpHelper; import java.io.BufferedOutputStream; import java.io.BufferedReader; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/SearchService.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/SearchService.java similarity index 98% rename from headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/SearchService.java rename to headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/SearchService.java index 4c6c4d8d5..6cff31060 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/SearchService.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/SearchService.java @@ -1,4 +1,4 @@ -package com.tencent.supersonic.headless.core.knowledge; +package com.tencent.supersonic.headless.core.chat.knowledge; import com.hankcs.hanlp.collection.trie.bintrie.BaseNode; import com.hankcs.hanlp.collection.trie.bintrie.BinTrie; @@ -7,7 +7,7 @@ import com.hankcs.hanlp.dictionary.CoreDictionary; import com.hankcs.hanlp.seg.common.Term; import com.tencent.supersonic.common.pojo.enums.DictWordType; import com.tencent.supersonic.headless.api.pojo.request.DimensionValueReq; -import com.tencent.supersonic.headless.core.knowledge.helper.NatureHelper; +import com.tencent.supersonic.headless.core.chat.knowledge.helper.NatureHelper; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.util.CollectionUtils; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/builder/BaseWordBuilder.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/builder/BaseWordBuilder.java similarity index 88% rename from headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/builder/BaseWordBuilder.java rename to headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/builder/BaseWordBuilder.java index 7b06d8b2c..47d6be2df 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/builder/BaseWordBuilder.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/builder/BaseWordBuilder.java @@ -1,7 +1,7 @@ -package com.tencent.supersonic.headless.core.knowledge.builder; +package com.tencent.supersonic.headless.core.chat.knowledge.builder; import com.tencent.supersonic.headless.api.pojo.SchemaElement; -import com.tencent.supersonic.headless.core.knowledge.DictWord; +import com.tencent.supersonic.headless.core.chat.knowledge.DictWord; import java.util.ArrayList; import java.util.List; import lombok.extern.slf4j.Slf4j; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/builder/BaseWordWithAliasBuilder.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/builder/BaseWordWithAliasBuilder.java similarity index 84% rename from headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/builder/BaseWordWithAliasBuilder.java rename to headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/builder/BaseWordWithAliasBuilder.java index 77bb3eb81..50c1cb638 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/builder/BaseWordWithAliasBuilder.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/builder/BaseWordWithAliasBuilder.java @@ -1,7 +1,8 @@ -package com.tencent.supersonic.headless.core.knowledge.builder; +package com.tencent.supersonic.headless.core.chat.knowledge.builder; import com.tencent.supersonic.headless.api.pojo.SchemaElement; -import com.tencent.supersonic.headless.core.knowledge.DictWord; +import com.tencent.supersonic.headless.core.chat.knowledge.DictWord; + import java.util.ArrayList; import java.util.List; import org.springframework.util.CollectionUtils; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/builder/DimensionWordBuilder.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/builder/DimensionWordBuilder.java similarity index 92% rename from headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/builder/DimensionWordBuilder.java rename to headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/builder/DimensionWordBuilder.java index 41dec4857..3c0f65e9e 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/builder/DimensionWordBuilder.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/builder/DimensionWordBuilder.java @@ -1,9 +1,9 @@ -package com.tencent.supersonic.headless.core.knowledge.builder; +package com.tencent.supersonic.headless.core.chat.knowledge.builder; import com.google.common.collect.Lists; import com.tencent.supersonic.common.pojo.enums.DictWordType; import com.tencent.supersonic.headless.api.pojo.SchemaElement; -import com.tencent.supersonic.headless.core.knowledge.DictWord; +import com.tencent.supersonic.headless.core.chat.knowledge.DictWord; import java.util.List; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/builder/EntityWordBuilder.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/builder/EntityWordBuilder.java similarity index 90% rename from headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/builder/EntityWordBuilder.java rename to headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/builder/EntityWordBuilder.java index 36756c7f9..53529eb6f 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/builder/EntityWordBuilder.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/builder/EntityWordBuilder.java @@ -1,10 +1,10 @@ -package com.tencent.supersonic.headless.core.knowledge.builder; +package com.tencent.supersonic.headless.core.chat.knowledge.builder; import com.google.common.collect.Lists; import com.tencent.supersonic.common.pojo.enums.DictWordType; import com.tencent.supersonic.headless.api.pojo.SchemaElement; -import com.tencent.supersonic.headless.core.knowledge.DictWord; +import com.tencent.supersonic.headless.core.chat.knowledge.DictWord; import java.util.List; import java.util.Objects; import lombok.extern.slf4j.Slf4j; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/builder/MetricWordBuilder.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/builder/MetricWordBuilder.java similarity index 92% rename from headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/builder/MetricWordBuilder.java rename to headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/builder/MetricWordBuilder.java index b30486635..2e54763c7 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/builder/MetricWordBuilder.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/builder/MetricWordBuilder.java @@ -1,9 +1,9 @@ -package com.tencent.supersonic.headless.core.knowledge.builder; +package com.tencent.supersonic.headless.core.chat.knowledge.builder; import com.google.common.collect.Lists; import com.tencent.supersonic.common.pojo.enums.DictWordType; import com.tencent.supersonic.headless.api.pojo.SchemaElement; -import com.tencent.supersonic.headless.core.knowledge.DictWord; +import com.tencent.supersonic.headless.core.chat.knowledge.DictWord; import java.util.List; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/builder/ModelWordBuilder.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/builder/ModelWordBuilder.java similarity index 89% rename from headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/builder/ModelWordBuilder.java rename to headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/builder/ModelWordBuilder.java index bcfbb8a19..40a66c16d 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/builder/ModelWordBuilder.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/builder/ModelWordBuilder.java @@ -1,9 +1,9 @@ -package com.tencent.supersonic.headless.core.knowledge.builder; +package com.tencent.supersonic.headless.core.chat.knowledge.builder; import com.google.common.collect.Lists; import com.tencent.supersonic.common.pojo.enums.DictWordType; import com.tencent.supersonic.headless.api.pojo.SchemaElement; -import com.tencent.supersonic.headless.core.knowledge.DictWord; +import com.tencent.supersonic.headless.core.chat.knowledge.DictWord; import java.util.List; import java.util.Objects; import lombok.extern.slf4j.Slf4j; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/builder/TagWordBuilder.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/builder/TagWordBuilder.java similarity index 92% rename from headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/builder/TagWordBuilder.java rename to headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/builder/TagWordBuilder.java index 5e7366ab7..1ca53695b 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/builder/TagWordBuilder.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/builder/TagWordBuilder.java @@ -1,9 +1,10 @@ -package com.tencent.supersonic.headless.core.knowledge.builder; +package com.tencent.supersonic.headless.core.chat.knowledge.builder; import com.google.common.collect.Lists; import com.tencent.supersonic.common.pojo.enums.DictWordType; import com.tencent.supersonic.headless.api.pojo.SchemaElement; -import com.tencent.supersonic.headless.core.knowledge.DictWord; +import com.tencent.supersonic.headless.core.chat.knowledge.DictWord; + import java.util.List; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/builder/ValueWordBuilder.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/builder/ValueWordBuilder.java similarity index 89% rename from headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/builder/ValueWordBuilder.java rename to headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/builder/ValueWordBuilder.java index 1e3627bf0..1e730e395 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/builder/ValueWordBuilder.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/builder/ValueWordBuilder.java @@ -1,10 +1,10 @@ -package com.tencent.supersonic.headless.core.knowledge.builder; +package com.tencent.supersonic.headless.core.chat.knowledge.builder; import com.google.common.collect.Lists; import com.tencent.supersonic.common.pojo.enums.DictWordType; import com.tencent.supersonic.headless.api.pojo.SchemaElement; -import com.tencent.supersonic.headless.core.knowledge.DictWord; +import com.tencent.supersonic.headless.core.chat.knowledge.DictWord; import java.util.List; import java.util.Objects; import lombok.extern.slf4j.Slf4j; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/builder/WordBuilderFactory.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/builder/WordBuilderFactory.java similarity index 92% rename from headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/builder/WordBuilderFactory.java rename to headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/builder/WordBuilderFactory.java index 21ef104ba..bdcdfad87 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/builder/WordBuilderFactory.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/builder/WordBuilderFactory.java @@ -1,4 +1,4 @@ -package com.tencent.supersonic.headless.core.knowledge.builder; +package com.tencent.supersonic.headless.core.chat.knowledge.builder; import com.tencent.supersonic.common.pojo.enums.DictWordType; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/helper/FileHelper.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/helper/FileHelper.java similarity index 97% rename from headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/helper/FileHelper.java rename to headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/helper/FileHelper.java index 5da203f3f..260b05ad1 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/helper/FileHelper.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/helper/FileHelper.java @@ -1,4 +1,4 @@ -package com.tencent.supersonic.headless.core.knowledge.helper; +package com.tencent.supersonic.headless.core.chat.knowledge.helper; import static com.hankcs.hanlp.HanLP.Config.CustomDictionaryPath; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/helper/HanlpHelper.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/helper/HanlpHelper.java similarity index 96% rename from headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/helper/HanlpHelper.java rename to headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/helper/HanlpHelper.java index e4c48819d..6be044cca 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/helper/HanlpHelper.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/helper/HanlpHelper.java @@ -1,4 +1,4 @@ -package com.tencent.supersonic.headless.core.knowledge.helper; +package com.tencent.supersonic.headless.core.chat.knowledge.helper; import com.google.common.collect.Lists; import com.hankcs.hanlp.HanLP; @@ -9,11 +9,11 @@ import com.hankcs.hanlp.seg.Segment; import com.hankcs.hanlp.seg.common.Term; import com.tencent.supersonic.common.pojo.enums.DictWordType; import com.tencent.supersonic.headless.api.pojo.response.S2Term; -import com.tencent.supersonic.headless.core.knowledge.DictWord; -import com.tencent.supersonic.headless.core.knowledge.HadoopFileIOAdapter; -import com.tencent.supersonic.headless.core.knowledge.MapResult; -import com.tencent.supersonic.headless.core.knowledge.MultiCustomDictionary; -import com.tencent.supersonic.headless.core.knowledge.SearchService; +import com.tencent.supersonic.headless.core.chat.knowledge.DictWord; +import com.tencent.supersonic.headless.core.chat.knowledge.HadoopFileIOAdapter; +import com.tencent.supersonic.headless.core.chat.knowledge.MapResult; +import com.tencent.supersonic.headless.core.chat.knowledge.MultiCustomDictionary; +import com.tencent.supersonic.headless.core.chat.knowledge.SearchService; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/helper/HdfsFileHelper.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/helper/HdfsFileHelper.java similarity index 97% rename from headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/helper/HdfsFileHelper.java rename to headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/helper/HdfsFileHelper.java index b9eddd026..829553d66 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/helper/HdfsFileHelper.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/helper/HdfsFileHelper.java @@ -1,4 +1,4 @@ -package com.tencent.supersonic.headless.core.knowledge.helper; +package com.tencent.supersonic.headless.core.chat.knowledge.helper; import static com.hankcs.hanlp.HanLP.Config.CustomDictionaryPath; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/helper/NatureHelper.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/helper/NatureHelper.java similarity index 98% rename from headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/helper/NatureHelper.java rename to headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/helper/NatureHelper.java index 5f127651c..b3b9b92f8 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/knowledge/helper/NatureHelper.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/knowledge/helper/NatureHelper.java @@ -1,11 +1,11 @@ -package com.tencent.supersonic.headless.core.knowledge.helper; +package com.tencent.supersonic.headless.core.chat.knowledge.helper; import com.google.common.collect.Lists; import com.hankcs.hanlp.corpus.tag.Nature; import com.tencent.supersonic.common.pojo.enums.DictWordType; import com.tencent.supersonic.headless.api.pojo.SchemaElementType; import com.tencent.supersonic.headless.api.pojo.response.S2Term; -import com.tencent.supersonic.headless.core.knowledge.DataSetInfoStat; +import com.tencent.supersonic.headless.core.chat.knowledge.DataSetInfoStat; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.util.CollectionUtils; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/BaseMatchStrategy.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/BaseMatchStrategy.java index 84d6f3bcd..2a2978aea 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/BaseMatchStrategy.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/BaseMatchStrategy.java @@ -3,7 +3,7 @@ package com.tencent.supersonic.headless.core.chat.mapper; import com.tencent.supersonic.headless.api.pojo.response.S2Term; import com.tencent.supersonic.headless.core.pojo.QueryContext; -import com.tencent.supersonic.headless.core.knowledge.helper.NatureHelper; +import com.tencent.supersonic.headless.core.chat.knowledge.helper.NatureHelper; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.StringUtils; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/DatabaseMatchStrategy.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/DatabaseMatchStrategy.java index 690938246..550654384 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/DatabaseMatchStrategy.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/DatabaseMatchStrategy.java @@ -7,7 +7,7 @@ import com.tencent.supersonic.headless.api.pojo.SchemaElementMatch; import com.tencent.supersonic.headless.api.pojo.response.S2Term; import com.tencent.supersonic.headless.core.config.OptimizationConfig; import com.tencent.supersonic.headless.core.pojo.QueryContext; -import com.tencent.supersonic.headless.core.knowledge.DatabaseMapResult; +import com.tencent.supersonic.headless.core.chat.knowledge.DatabaseMapResult; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/EmbeddingMapper.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/EmbeddingMapper.java index 98690784a..b2de65522 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/EmbeddingMapper.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/EmbeddingMapper.java @@ -8,9 +8,9 @@ import com.tencent.supersonic.headless.api.pojo.SchemaElementMatch; import com.tencent.supersonic.headless.api.pojo.SchemaElementType; import com.tencent.supersonic.headless.api.pojo.response.S2Term; import com.tencent.supersonic.headless.core.pojo.QueryContext; -import com.tencent.supersonic.headless.core.knowledge.EmbeddingResult; -import com.tencent.supersonic.headless.core.knowledge.builder.BaseWordBuilder; -import com.tencent.supersonic.headless.core.knowledge.helper.HanlpHelper; +import com.tencent.supersonic.headless.core.chat.knowledge.EmbeddingResult; +import com.tencent.supersonic.headless.core.chat.knowledge.builder.BaseWordBuilder; +import com.tencent.supersonic.headless.core.chat.knowledge.helper.HanlpHelper; import lombok.extern.slf4j.Slf4j; import java.util.List; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/EmbeddingMatchStrategy.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/EmbeddingMatchStrategy.java index ad23cd3d0..c14c587ca 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/EmbeddingMatchStrategy.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/EmbeddingMatchStrategy.java @@ -6,8 +6,8 @@ import com.tencent.supersonic.common.util.embedding.Retrieval; import com.tencent.supersonic.common.util.embedding.RetrieveQuery; import com.tencent.supersonic.common.util.embedding.RetrieveQueryResult; import com.tencent.supersonic.headless.core.config.OptimizationConfig; -import com.tencent.supersonic.headless.core.knowledge.EmbeddingResult; -import com.tencent.supersonic.headless.core.knowledge.MetaEmbeddingService; +import com.tencent.supersonic.headless.core.chat.knowledge.EmbeddingResult; +import com.tencent.supersonic.headless.core.chat.knowledge.MetaEmbeddingService; import com.tencent.supersonic.headless.core.pojo.QueryContext; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections.CollectionUtils; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/HanlpDictMatchStrategy.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/HanlpDictMatchStrategy.java index d02a47ac3..e31e84a39 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/HanlpDictMatchStrategy.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/HanlpDictMatchStrategy.java @@ -4,8 +4,8 @@ import com.tencent.supersonic.common.pojo.Constants; import com.tencent.supersonic.headless.api.pojo.response.S2Term; import com.tencent.supersonic.headless.core.config.OptimizationConfig; import com.tencent.supersonic.headless.core.pojo.QueryContext; -import com.tencent.supersonic.headless.core.knowledge.HanlpMapResult; -import com.tencent.supersonic.headless.core.knowledge.KnowledgeService; +import com.tencent.supersonic.headless.core.chat.knowledge.HanlpMapResult; +import com.tencent.supersonic.headless.core.chat.knowledge.KnowledgeService; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.StringUtils; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/KeywordMapper.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/KeywordMapper.java index ffd01ed96..7100fafe2 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/KeywordMapper.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/KeywordMapper.java @@ -7,10 +7,10 @@ import com.tencent.supersonic.headless.api.pojo.SchemaElementType; import com.tencent.supersonic.headless.api.pojo.SchemaMapInfo; import com.tencent.supersonic.headless.api.pojo.response.S2Term; import com.tencent.supersonic.headless.core.pojo.QueryContext; -import com.tencent.supersonic.headless.core.knowledge.DatabaseMapResult; -import com.tencent.supersonic.headless.core.knowledge.HanlpMapResult; -import com.tencent.supersonic.headless.core.knowledge.helper.HanlpHelper; -import com.tencent.supersonic.headless.core.knowledge.helper.NatureHelper; +import com.tencent.supersonic.headless.core.chat.knowledge.DatabaseMapResult; +import com.tencent.supersonic.headless.core.chat.knowledge.HanlpMapResult; +import com.tencent.supersonic.headless.core.chat.knowledge.helper.HanlpHelper; +import com.tencent.supersonic.headless.core.chat.knowledge.helper.NatureHelper; import lombok.extern.slf4j.Slf4j; import org.springframework.util.CollectionUtils; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/MapperHelper.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/MapperHelper.java index 00d49744e..2717bc346 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/MapperHelper.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/MapperHelper.java @@ -3,7 +3,7 @@ package com.tencent.supersonic.headless.core.chat.mapper; import com.hankcs.hanlp.algorithm.EditDistance; import com.tencent.supersonic.headless.api.pojo.response.S2Term; import com.tencent.supersonic.headless.core.config.OptimizationConfig; -import com.tencent.supersonic.headless.core.knowledge.helper.NatureHelper; +import com.tencent.supersonic.headless.core.chat.knowledge.helper.NatureHelper; import lombok.Data; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/QueryFilterMapper.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/QueryFilterMapper.java index 9dcef4b6d..a8fa0c21b 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/QueryFilterMapper.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/QueryFilterMapper.java @@ -9,7 +9,7 @@ import com.tencent.supersonic.headless.api.pojo.SchemaMapInfo; import com.tencent.supersonic.headless.api.pojo.request.QueryFilter; import com.tencent.supersonic.headless.api.pojo.request.QueryFilters; import com.tencent.supersonic.headless.core.pojo.QueryContext; -import com.tencent.supersonic.headless.core.knowledge.builder.BaseWordBuilder; +import com.tencent.supersonic.headless.core.chat.knowledge.builder.BaseWordBuilder; import lombok.extern.slf4j.Slf4j; import org.springframework.util.CollectionUtils; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/SearchMatchStrategy.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/SearchMatchStrategy.java index 10a0ead48..8ed36a750 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/SearchMatchStrategy.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/mapper/SearchMatchStrategy.java @@ -4,9 +4,9 @@ import com.google.common.collect.Lists; import com.tencent.supersonic.common.pojo.enums.DictWordType; import com.tencent.supersonic.headless.api.pojo.response.S2Term; import com.tencent.supersonic.headless.core.pojo.QueryContext; -import com.tencent.supersonic.headless.core.knowledge.HanlpMapResult; -import com.tencent.supersonic.headless.core.knowledge.KnowledgeService; -import com.tencent.supersonic.headless.core.knowledge.SearchService; +import com.tencent.supersonic.headless.core.chat.knowledge.HanlpMapResult; +import com.tencent.supersonic.headless.core.chat.knowledge.KnowledgeService; +import com.tencent.supersonic.headless.core.chat.knowledge.SearchService; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/parser/llm/LLMRequestService.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/parser/llm/LLMRequestService.java index 8d71f4cd2..779102861 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/parser/llm/LLMRequestService.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/chat/parser/llm/LLMRequestService.java @@ -1,6 +1,5 @@ package com.tencent.supersonic.headless.core.chat.parser.llm; -import com.google.common.collect.Lists; import com.tencent.supersonic.common.pojo.enums.DataFormatTypeEnum; import com.tencent.supersonic.common.pojo.enums.QueryType; import com.tencent.supersonic.common.pojo.enums.TimeDimensionEnum; @@ -8,9 +7,7 @@ import com.tencent.supersonic.common.util.DateUtils; import com.tencent.supersonic.headless.api.pojo.SchemaElement; import com.tencent.supersonic.headless.api.pojo.SchemaElementMatch; import com.tencent.supersonic.headless.api.pojo.SchemaElementType; -import com.tencent.supersonic.headless.api.pojo.SchemaItem; import com.tencent.supersonic.headless.api.pojo.SemanticSchema; -import com.tencent.supersonic.headless.api.pojo.response.DataSetSchemaResp; import com.tencent.supersonic.headless.core.chat.parser.SatisfactionChecker; import com.tencent.supersonic.headless.core.chat.query.llm.s2sql.LLMReq; import com.tencent.supersonic.headless.core.chat.query.llm.s2sql.LLMReq.ElementValue; @@ -80,7 +77,7 @@ public class LLMRequestService { List fieldNameList = getFieldNameList(queryCtx, dataSetId, llmParserConfig); - String priorExts = getPriorExts(dataSetId, fieldNameList); + String priorExts = getPriorExts(queryCtx, fieldNameList); llmReq.setPriorExts(priorExts); fieldNameList.add(TimeDimensionEnum.DAY.getChName()); @@ -117,34 +114,30 @@ public class LLMRequestService { return new ArrayList<>(results); } - private String getPriorExts(Long dataSetId, List fieldNameList) { + private String getPriorExts(QueryContext queryContext, List fieldNameList) { StringBuilder extraInfoSb = new StringBuilder(); - //todo - List dataSetSchemaResps = Lists.newArrayList(); - if (!CollectionUtils.isEmpty(dataSetSchemaResps)) { - DataSetSchemaResp dataSetSchemaResp = dataSetSchemaResps.get(0); - Map fieldNameToDataFormatType = dataSetSchemaResp.getMetrics() - .stream().filter(metricSchemaResp -> Objects.nonNull(metricSchemaResp.getDataFormatType())) - .flatMap(metricSchemaResp -> { - Set> result = new HashSet<>(); - String dataFormatType = metricSchemaResp.getDataFormatType(); - result.add(Pair.of(metricSchemaResp.getName(), dataFormatType)); - List aliasList = SchemaItem.getAliasList(metricSchemaResp.getAlias()); - if (!CollectionUtils.isEmpty(aliasList)) { - for (String alias : aliasList) { - result.add(Pair.of(alias, dataFormatType)); - } + SemanticSchema semanticSchema = queryContext.getSemanticSchema(); + Map fieldNameToDataFormatType = semanticSchema.getMetrics() + .stream().filter(metricSchemaResp -> Objects.nonNull(metricSchemaResp.getDataFormatType())) + .flatMap(metricSchemaResp -> { + Set> result = new HashSet<>(); + String dataFormatType = metricSchemaResp.getDataFormatType(); + result.add(Pair.of(metricSchemaResp.getName(), dataFormatType)); + List aliasList = metricSchemaResp.getAlias(); + if (!CollectionUtils.isEmpty(aliasList)) { + for (String alias : aliasList) { + result.add(Pair.of(alias, dataFormatType)); } - return result.stream(); - }).collect(Collectors.toMap(Pair::getLeft, Pair::getRight, (k1, k2) -> k1)); + } + return result.stream(); + }).collect(Collectors.toMap(Pair::getLeft, Pair::getRight, (k1, k2) -> k1)); - for (String fieldName : fieldNameList) { - String dataFormatType = fieldNameToDataFormatType.get(fieldName); - if (DataFormatTypeEnum.DECIMAL.getName().equalsIgnoreCase(dataFormatType) - || DataFormatTypeEnum.PERCENT.getName().equalsIgnoreCase(dataFormatType)) { - String format = String.format("%s的计量单位是%s", fieldName, "小数; "); - extraInfoSb.append(format); - } + for (String fieldName : fieldNameList) { + String dataFormatType = fieldNameToDataFormatType.get(fieldName); + if (DataFormatTypeEnum.DECIMAL.getName().equalsIgnoreCase(dataFormatType) + || DataFormatTypeEnum.PERCENT.getName().equalsIgnoreCase(dataFormatType)) { + String format = String.format("%s的计量单位是%s", fieldName, "小数; "); + extraInfoSb.append(format); } } return extraInfoSb.toString(); diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/config/ChatLocalFileConfig.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/config/ChatLocalFileConfig.java index b2f47ed16..f49f10425 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/config/ChatLocalFileConfig.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/config/ChatLocalFileConfig.java @@ -1,6 +1,6 @@ package com.tencent.supersonic.headless.core.config; -import com.tencent.supersonic.headless.core.knowledge.helper.HanlpHelper; +import com.tencent.supersonic.headless.core.chat.knowledge.helper.HanlpHelper; import lombok.Data; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Value; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/file/LocalFileConfig.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/file/LocalFileConfig.java index 7dc232e3d..620c38572 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/file/LocalFileConfig.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/file/LocalFileConfig.java @@ -1,6 +1,6 @@ package com.tencent.supersonic.headless.core.file; -import com.tencent.supersonic.headless.core.knowledge.helper.HanlpHelper; +import com.tencent.supersonic.headless.core.chat.knowledge.helper.HanlpHelper; import lombok.Data; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Value; diff --git a/headless/server/src/main/java/com/tencent/supersonic/headless/server/listener/ApplicationStartedListener.java b/headless/server/src/main/java/com/tencent/supersonic/headless/server/listener/ApplicationStartedListener.java index 6fe0a1325..7edc9cd24 100644 --- a/headless/server/src/main/java/com/tencent/supersonic/headless/server/listener/ApplicationStartedListener.java +++ b/headless/server/src/main/java/com/tencent/supersonic/headless/server/listener/ApplicationStartedListener.java @@ -1,8 +1,8 @@ package com.tencent.supersonic.headless.server.listener; -import com.tencent.supersonic.headless.core.knowledge.DictWord; -import com.tencent.supersonic.headless.core.knowledge.KnowledgeService; +import com.tencent.supersonic.headless.core.chat.knowledge.DictWord; +import com.tencent.supersonic.headless.core.chat.knowledge.KnowledgeService; import com.tencent.supersonic.headless.server.service.impl.WordService; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections.CollectionUtils; diff --git a/headless/server/src/main/java/com/tencent/supersonic/headless/server/listener/SchemaDictUpdateListener.java b/headless/server/src/main/java/com/tencent/supersonic/headless/server/listener/SchemaDictUpdateListener.java index 74cb5635b..59666051e 100644 --- a/headless/server/src/main/java/com/tencent/supersonic/headless/server/listener/SchemaDictUpdateListener.java +++ b/headless/server/src/main/java/com/tencent/supersonic/headless/server/listener/SchemaDictUpdateListener.java @@ -4,8 +4,8 @@ import com.tencent.supersonic.common.pojo.Constants; import com.tencent.supersonic.common.pojo.DataEvent; import com.tencent.supersonic.common.pojo.enums.DictWordType; import com.tencent.supersonic.common.pojo.enums.EventType; -import com.tencent.supersonic.headless.core.knowledge.DictWord; -import com.tencent.supersonic.headless.core.knowledge.helper.HanlpHelper; +import com.tencent.supersonic.headless.core.chat.knowledge.DictWord; +import com.tencent.supersonic.headless.core.chat.knowledge.helper.HanlpHelper; import lombok.extern.slf4j.Slf4j; import org.springframework.context.ApplicationListener; import org.springframework.scheduling.annotation.Async; diff --git a/headless/server/src/main/java/com/tencent/supersonic/headless/server/service/impl/ChatQueryServiceImpl.java b/headless/server/src/main/java/com/tencent/supersonic/headless/server/service/impl/ChatQueryServiceImpl.java index 03be4bdfa..5e064603e 100644 --- a/headless/server/src/main/java/com/tencent/supersonic/headless/server/service/impl/ChatQueryServiceImpl.java +++ b/headless/server/src/main/java/com/tencent/supersonic/headless/server/service/impl/ChatQueryServiceImpl.java @@ -43,11 +43,11 @@ import com.tencent.supersonic.headless.core.chat.query.QueryManager; import com.tencent.supersonic.headless.core.chat.query.SemanticQuery; import com.tencent.supersonic.headless.core.chat.query.llm.s2sql.LLMSqlQuery; import com.tencent.supersonic.headless.core.chat.query.rule.RuleSemanticQuery; -import com.tencent.supersonic.headless.core.knowledge.HanlpMapResult; -import com.tencent.supersonic.headless.core.knowledge.KnowledgeService; -import com.tencent.supersonic.headless.core.knowledge.SearchService; -import com.tencent.supersonic.headless.core.knowledge.helper.HanlpHelper; -import com.tencent.supersonic.headless.core.knowledge.helper.NatureHelper; +import com.tencent.supersonic.headless.core.chat.knowledge.HanlpMapResult; +import com.tencent.supersonic.headless.core.chat.knowledge.KnowledgeService; +import com.tencent.supersonic.headless.core.chat.knowledge.SearchService; +import com.tencent.supersonic.headless.core.chat.knowledge.helper.HanlpHelper; +import com.tencent.supersonic.headless.core.chat.knowledge.helper.NatureHelper; import com.tencent.supersonic.headless.core.pojo.ChatContext; import com.tencent.supersonic.headless.core.pojo.QueryContext; import com.tencent.supersonic.headless.server.persistence.dataobject.StatisticsDO; diff --git a/headless/server/src/main/java/com/tencent/supersonic/headless/server/service/impl/DictTaskServiceImpl.java b/headless/server/src/main/java/com/tencent/supersonic/headless/server/service/impl/DictTaskServiceImpl.java index 71f9f8b53..17a1ec5ec 100644 --- a/headless/server/src/main/java/com/tencent/supersonic/headless/server/service/impl/DictTaskServiceImpl.java +++ b/headless/server/src/main/java/com/tencent/supersonic/headless/server/service/impl/DictTaskServiceImpl.java @@ -9,8 +9,8 @@ import com.tencent.supersonic.headless.api.pojo.request.DictSingleTaskReq; import com.tencent.supersonic.headless.api.pojo.response.DictItemResp; import com.tencent.supersonic.headless.api.pojo.response.DictTaskResp; import com.tencent.supersonic.headless.core.file.FileHandler; -import com.tencent.supersonic.headless.core.knowledge.KnowledgeService; -import com.tencent.supersonic.headless.core.knowledge.helper.HanlpHelper; +import com.tencent.supersonic.headless.core.chat.knowledge.KnowledgeService; +import com.tencent.supersonic.headless.core.chat.knowledge.helper.HanlpHelper; import com.tencent.supersonic.headless.server.persistence.dataobject.DictTaskDO; import com.tencent.supersonic.headless.server.persistence.repository.DictRepository; import com.tencent.supersonic.headless.server.service.DictTaskService; diff --git a/headless/server/src/main/java/com/tencent/supersonic/headless/server/service/impl/SearchServiceImpl.java b/headless/server/src/main/java/com/tencent/supersonic/headless/server/service/impl/SearchServiceImpl.java index 4062c630f..2208ff02b 100644 --- a/headless/server/src/main/java/com/tencent/supersonic/headless/server/service/impl/SearchServiceImpl.java +++ b/headless/server/src/main/java/com/tencent/supersonic/headless/server/service/impl/SearchServiceImpl.java @@ -14,12 +14,12 @@ import com.tencent.supersonic.headless.core.chat.mapper.MatchText; import com.tencent.supersonic.headless.core.chat.mapper.ModelWithSemanticType; import com.tencent.supersonic.headless.core.chat.mapper.SearchMatchStrategy; import com.tencent.supersonic.headless.core.pojo.QueryContext; -import com.tencent.supersonic.headless.core.knowledge.DataSetInfoStat; -import com.tencent.supersonic.headless.core.knowledge.DictWord; -import com.tencent.supersonic.headless.core.knowledge.HanlpMapResult; -import com.tencent.supersonic.headless.core.knowledge.KnowledgeService; -import com.tencent.supersonic.headless.core.knowledge.helper.HanlpHelper; -import com.tencent.supersonic.headless.core.knowledge.helper.NatureHelper; +import com.tencent.supersonic.headless.core.chat.knowledge.DataSetInfoStat; +import com.tencent.supersonic.headless.core.chat.knowledge.DictWord; +import com.tencent.supersonic.headless.core.chat.knowledge.HanlpMapResult; +import com.tencent.supersonic.headless.core.chat.knowledge.KnowledgeService; +import com.tencent.supersonic.headless.core.chat.knowledge.helper.HanlpHelper; +import com.tencent.supersonic.headless.core.chat.knowledge.helper.NatureHelper; import com.tencent.supersonic.headless.server.service.ChatContextService; import com.tencent.supersonic.headless.server.service.DataSetService; import com.tencent.supersonic.headless.server.service.SearchService; @@ -147,10 +147,6 @@ public class SearchServiceImpl implements SearchService { && modelStat.getDimensionValueDataSetCount() <= 0 && modelStat.getDataSetCount() <= 0; } - private boolean effectiveModel(Long contextModel) { - return Objects.nonNull(contextModel) && contextModel > 0; - } - private Set searchDimensionValue(List metricsDb, Map modelToName, long metricModelCount, diff --git a/headless/server/src/main/java/com/tencent/supersonic/headless/server/service/impl/WordService.java b/headless/server/src/main/java/com/tencent/supersonic/headless/server/service/impl/WordService.java index 0889694b5..19942dc98 100644 --- a/headless/server/src/main/java/com/tencent/supersonic/headless/server/service/impl/WordService.java +++ b/headless/server/src/main/java/com/tencent/supersonic/headless/server/service/impl/WordService.java @@ -3,8 +3,8 @@ package com.tencent.supersonic.headless.server.service.impl; import com.tencent.supersonic.common.pojo.enums.DictWordType; import com.tencent.supersonic.headless.api.pojo.SchemaElement; import com.tencent.supersonic.headless.api.pojo.SemanticSchema; -import com.tencent.supersonic.headless.core.knowledge.DictWord; -import com.tencent.supersonic.headless.core.knowledge.builder.WordBuilderFactory; +import com.tencent.supersonic.headless.core.chat.knowledge.DictWord; +import com.tencent.supersonic.headless.core.chat.knowledge.builder.WordBuilderFactory; import com.tencent.supersonic.headless.server.service.SchemaService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; diff --git a/headless/server/src/main/java/com/tencent/supersonic/headless/server/utils/DataSetSchemaBuilder.java b/headless/server/src/main/java/com/tencent/supersonic/headless/server/utils/DataSetSchemaBuilder.java index fade71ae4..30506c936 100644 --- a/headless/server/src/main/java/com/tencent/supersonic/headless/server/utils/DataSetSchemaBuilder.java +++ b/headless/server/src/main/java/com/tencent/supersonic/headless/server/utils/DataSetSchemaBuilder.java @@ -187,6 +187,7 @@ public class DataSetSchemaBuilder { .alias(alias) .relatedSchemaElements(getRelateSchemaElement(metric)) .defaultAgg(metric.getDefaultAgg()) + .dataFormatType(metric.getDataFormatType()) .build(); metrics.add(metricToAdd);