(improvement)(headless) Modify the headless module structure to api, core and server (#588)

Co-authored-by: jolunoluo
This commit is contained in:
LXW
2024-01-02 16:43:28 +08:00
committed by GitHub
parent af1c560cc4
commit e7f13572d7
352 changed files with 2296 additions and 2675 deletions

View File

@@ -23,7 +23,7 @@
</dependency>
<dependency>
<groupId>com.tencent.supersonic</groupId>
<artifactId>headless-common</artifactId>
<artifactId>headless-api</artifactId>
<version>${project.version}</version>
<scope>compile</scope>
</dependency>

View File

@@ -4,20 +4,20 @@ import com.github.pagehelper.PageInfo;
import com.tencent.supersonic.auth.api.authentication.pojo.User;
import com.tencent.supersonic.chat.api.pojo.ModelSchema;
import com.tencent.supersonic.common.pojo.enums.AuthType;
import com.tencent.supersonic.headless.common.model.request.PageDimensionReq;
import com.tencent.supersonic.headless.common.model.request.PageMetricReq;
import com.tencent.supersonic.headless.common.model.response.DomainResp;
import com.tencent.supersonic.headless.common.model.response.DimensionResp;
import com.tencent.supersonic.headless.common.model.response.ExplainResp;
import com.tencent.supersonic.headless.common.model.response.MetricResp;
import com.tencent.supersonic.headless.common.model.response.ModelResp;
import com.tencent.supersonic.headless.common.model.response.ModelSchemaResp;
import com.tencent.supersonic.headless.common.model.response.QueryResultWithSchemaResp;
import com.tencent.supersonic.headless.common.query.request.ExplainSqlReq;
import com.tencent.supersonic.headless.common.query.request.QueryDimValueReq;
import com.tencent.supersonic.headless.common.query.request.QueryS2SQLReq;
import com.tencent.supersonic.headless.common.query.request.QueryMultiStructReq;
import com.tencent.supersonic.headless.common.query.request.QueryStructReq;
import com.tencent.supersonic.headless.common.server.request.PageDimensionReq;
import com.tencent.supersonic.headless.common.server.request.PageMetricReq;
import com.tencent.supersonic.headless.common.server.response.DomainResp;
import com.tencent.supersonic.headless.common.server.response.DimensionResp;
import com.tencent.supersonic.headless.common.server.response.ExplainResp;
import com.tencent.supersonic.headless.common.server.response.MetricResp;
import com.tencent.supersonic.headless.common.server.response.ModelResp;
import com.tencent.supersonic.headless.common.server.response.ModelSchemaResp;
import com.tencent.supersonic.headless.common.server.response.QueryResultWithSchemaResp;
import com.tencent.supersonic.headless.common.core.request.ExplainSqlReq;
import com.tencent.supersonic.headless.common.core.request.QueryDimValueReq;
import com.tencent.supersonic.headless.common.core.request.QueryS2SQLReq;
import com.tencent.supersonic.headless.common.core.request.QueryMultiStructReq;
import com.tencent.supersonic.headless.common.core.request.QueryStructReq;
import java.util.List;

View File

@@ -77,12 +77,12 @@
</dependency>
<dependency>
<groupId>com.tencent.supersonic</groupId>
<artifactId>headless-common</artifactId>
<artifactId>headless-api</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>com.tencent.supersonic</groupId>
<artifactId>headless-query</artifactId>
<artifactId>headless-core</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>

View File

@@ -1,8 +1,8 @@
package com.tencent.supersonic.chat.config;
import com.tencent.supersonic.headless.common.model.response.DimSchemaResp;
import com.tencent.supersonic.headless.common.model.response.MetricSchemaResp;
import com.tencent.supersonic.headless.common.server.response.DimSchemaResp;
import com.tencent.supersonic.headless.common.server.response.MetricSchemaResp;
import java.util.List;
import lombok.Data;

View File

@@ -9,20 +9,20 @@ 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.common.util.embedding.S2EmbeddingStore;
import com.tencent.supersonic.headless.server.listener.MetaEmbeddingListener;
import com.tencent.supersonic.knowledge.dictionary.EmbeddingResult;
import com.tencent.supersonic.headless.model.domain.listener.MetaEmbeddingListener;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
/**
* EmbeddingMatchStrategy uses vector database to perform

View File

@@ -23,8 +23,8 @@ import com.tencent.supersonic.common.pojo.enums.DataFormatTypeEnum;
import com.tencent.supersonic.common.pojo.enums.TimeDimensionEnum;
import com.tencent.supersonic.common.util.DateUtils;
import com.tencent.supersonic.knowledge.service.SchemaService;
import com.tencent.supersonic.headless.common.model.pojo.SchemaItem;
import com.tencent.supersonic.headless.common.model.response.ModelSchemaResp;
import com.tencent.supersonic.headless.common.server.pojo.SchemaItem;
import com.tencent.supersonic.headless.common.server.response.ModelSchemaResp;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.HashSet;

View File

@@ -12,7 +12,7 @@ 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.common.util.embedding.S2EmbeddingStore;
import com.tencent.supersonic.headless.model.domain.listener.MetaEmbeddingListener;
import com.tencent.supersonic.headless.server.listener.MetaEmbeddingListener;
import org.springframework.util.CollectionUtils;
import java.util.Collections;

View File

@@ -15,11 +15,11 @@ import com.tencent.supersonic.common.pojo.Order;
import com.tencent.supersonic.common.pojo.enums.TimeDimensionEnum;
import com.tencent.supersonic.common.util.ContextUtils;
import com.tencent.supersonic.knowledge.service.SchemaService;
import com.tencent.supersonic.headless.common.model.enums.QueryTypeEnum;
import com.tencent.supersonic.headless.common.model.response.ExplainResp;
import com.tencent.supersonic.headless.common.query.request.ExplainSqlReq;
import com.tencent.supersonic.headless.common.query.request.QueryS2SQLReq;
import com.tencent.supersonic.headless.common.query.request.QueryStructReq;
import com.tencent.supersonic.headless.common.server.enums.QueryType;
import com.tencent.supersonic.headless.common.server.response.ExplainResp;
import com.tencent.supersonic.headless.common.core.request.ExplainSqlReq;
import com.tencent.supersonic.headless.common.core.request.QueryS2SQLReq;
import com.tencent.supersonic.headless.common.core.request.QueryStructReq;
import lombok.ToString;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
@@ -48,7 +48,7 @@ public abstract class BaseSemanticQuery implements SemanticQuery, Serializable {
if (StringUtils.isNotBlank(sqlInfo.getCorrectS2SQL())) {
//sql
explainSqlReq = ExplainSqlReq.builder()
.queryTypeEnum(QueryTypeEnum.SQL)
.queryTypeEnum(QueryType.SQL)
.queryReq(QueryReqBuilder.buildS2SQLReq(
sqlInfo.getCorrectS2SQL(), parseInfo.getModel().getModelIds()
))
@@ -56,7 +56,7 @@ public abstract class BaseSemanticQuery implements SemanticQuery, Serializable {
} else {
//struct
explainSqlReq = ExplainSqlReq.builder()
.queryTypeEnum(QueryTypeEnum.STRUCT)
.queryTypeEnum(QueryType.STRUCT)
.queryReq(QueryReqBuilder.buildStructReq(parseInfo))
.build();
}

View File

@@ -18,8 +18,8 @@ import com.tencent.supersonic.common.pojo.QueryColumn;
import com.tencent.supersonic.common.pojo.enums.QueryType;
import com.tencent.supersonic.common.pojo.enums.AggOperatorEnum;
import com.tencent.supersonic.common.util.ContextUtils;
import com.tencent.supersonic.headless.common.model.response.QueryResultWithSchemaResp;
import com.tencent.supersonic.headless.common.query.request.QueryStructReq;
import com.tencent.supersonic.headless.common.server.response.QueryResultWithSchemaResp;
import com.tencent.supersonic.headless.common.core.request.QueryStructReq;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

View File

@@ -10,8 +10,8 @@ import com.tencent.supersonic.chat.query.llm.LLMSemanticQuery;
import com.tencent.supersonic.chat.utils.ComponentFactory;
import com.tencent.supersonic.chat.utils.QueryReqBuilder;
import com.tencent.supersonic.common.pojo.QueryColumn;
import com.tencent.supersonic.headless.common.model.response.QueryResultWithSchemaResp;
import com.tencent.supersonic.headless.common.query.request.QueryS2SQLReq;
import com.tencent.supersonic.headless.common.server.response.QueryResultWithSchemaResp;
import com.tencent.supersonic.headless.common.core.request.QueryS2SQLReq;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;

View File

@@ -23,9 +23,9 @@ import com.tencent.supersonic.common.pojo.ModelCluster;
import com.tencent.supersonic.common.pojo.QueryColumn;
import com.tencent.supersonic.common.pojo.enums.FilterOperatorEnum;
import com.tencent.supersonic.common.util.ContextUtils;
import com.tencent.supersonic.headless.common.model.response.QueryResultWithSchemaResp;
import com.tencent.supersonic.headless.common.query.request.QueryMultiStructReq;
import com.tencent.supersonic.headless.common.query.request.QueryStructReq;
import com.tencent.supersonic.headless.common.server.response.QueryResultWithSchemaResp;
import com.tencent.supersonic.headless.common.core.request.QueryMultiStructReq;
import com.tencent.supersonic.headless.common.core.request.QueryStructReq;
import lombok.ToString;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;

View File

@@ -9,8 +9,8 @@ import com.tencent.supersonic.chat.api.pojo.response.QueryResult;
import com.tencent.supersonic.common.pojo.enums.FilterType;
import com.tencent.supersonic.common.pojo.enums.FilterOperatorEnum;
import com.tencent.supersonic.common.pojo.Filter;
import com.tencent.supersonic.headless.common.query.request.QueryMultiStructReq;
import com.tencent.supersonic.headless.common.query.request.QueryStructReq;
import com.tencent.supersonic.headless.common.core.request.QueryMultiStructReq;
import com.tencent.supersonic.headless.common.core.request.QueryStructReq;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;

View File

@@ -18,7 +18,7 @@ import com.tencent.supersonic.chat.service.ConfigService;
import com.tencent.supersonic.chat.service.SemanticService;
import com.tencent.supersonic.common.pojo.DateConf;
import com.tencent.supersonic.common.util.ContextUtils;
import com.tencent.supersonic.headless.common.model.response.QueryResultWithSchemaResp;
import com.tencent.supersonic.headless.common.server.response.QueryResultWithSchemaResp;
import java.time.LocalDate;
import java.util.List;
import java.util.Objects;

View File

@@ -10,8 +10,8 @@ import com.tencent.supersonic.chat.api.pojo.response.QueryResult;
import com.tencent.supersonic.common.pojo.Filter;
import com.tencent.supersonic.common.pojo.enums.FilterOperatorEnum;
import com.tencent.supersonic.common.pojo.enums.FilterType;
import com.tencent.supersonic.headless.common.query.request.QueryMultiStructReq;
import com.tencent.supersonic.headless.common.query.request.QueryStructReq;
import com.tencent.supersonic.headless.common.core.request.QueryMultiStructReq;
import com.tencent.supersonic.headless.common.core.request.QueryStructReq;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;

View File

@@ -12,12 +12,12 @@ import com.tencent.supersonic.chat.api.pojo.response.ChatConfigRichResp;
import com.tencent.supersonic.chat.service.ConfigService;
import com.tencent.supersonic.chat.utils.ComponentFactory;
import com.tencent.supersonic.common.pojo.enums.AuthType;
import com.tencent.supersonic.headless.common.model.request.PageDimensionReq;
import com.tencent.supersonic.headless.common.model.request.PageMetricReq;
import com.tencent.supersonic.headless.common.model.response.DimensionResp;
import com.tencent.supersonic.headless.common.model.response.DomainResp;
import com.tencent.supersonic.headless.common.model.response.MetricResp;
import com.tencent.supersonic.headless.common.model.response.ModelResp;
import com.tencent.supersonic.headless.common.server.request.PageDimensionReq;
import com.tencent.supersonic.headless.common.server.request.PageMetricReq;
import com.tencent.supersonic.headless.common.server.response.DimensionResp;
import com.tencent.supersonic.headless.common.server.response.DomainResp;
import com.tencent.supersonic.headless.common.server.response.MetricResp;
import com.tencent.supersonic.headless.common.server.response.ModelResp;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;

View File

@@ -41,8 +41,8 @@ import com.tencent.supersonic.common.pojo.enums.QueryType;
import com.tencent.supersonic.common.pojo.enums.RatioOverType;
import com.tencent.supersonic.common.util.ContextUtils;
import com.tencent.supersonic.common.util.DateUtils;
import com.tencent.supersonic.headless.common.model.response.QueryResultWithSchemaResp;
import com.tencent.supersonic.headless.common.query.request.QueryStructReq;
import com.tencent.supersonic.headless.common.server.response.QueryResultWithSchemaResp;
import com.tencent.supersonic.headless.common.core.request.QueryStructReq;
import com.tencent.supersonic.knowledge.service.SchemaService;
import java.text.DecimalFormat;
import java.time.DayOfWeek;

View File

@@ -31,12 +31,12 @@ import com.tencent.supersonic.chat.utils.ChatConfigHelper;
import com.tencent.supersonic.chat.utils.ComponentFactory;
import com.tencent.supersonic.chat.utils.VisibilityEvent;
import com.tencent.supersonic.common.util.JsonUtil;
import com.tencent.supersonic.headless.common.model.pojo.SchemaItem;
import com.tencent.supersonic.headless.common.model.response.DimensionResp;
import com.tencent.supersonic.headless.common.model.response.MetricResp;
import com.tencent.supersonic.headless.model.domain.DimensionService;
import com.tencent.supersonic.headless.model.domain.MetricService;
import com.tencent.supersonic.headless.model.domain.pojo.MetaFilter;
import com.tencent.supersonic.headless.common.server.pojo.SchemaItem;
import com.tencent.supersonic.headless.common.server.response.DimensionResp;
import com.tencent.supersonic.headless.common.server.response.MetricResp;
import com.tencent.supersonic.headless.server.pojo.MetaFilter;
import com.tencent.supersonic.headless.server.service.DimensionService;
import com.tencent.supersonic.headless.server.service.MetricService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;

View File

@@ -16,7 +16,7 @@ import com.tencent.supersonic.chat.service.PluginService;
import com.tencent.supersonic.chat.utils.ComponentFactory;
import com.tencent.supersonic.common.pojo.enums.AuthType;
import com.tencent.supersonic.common.util.JsonUtil;
import com.tencent.supersonic.headless.common.model.response.ModelResp;
import com.tencent.supersonic.headless.common.server.response.ModelResp;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;

View File

@@ -59,8 +59,8 @@ import com.tencent.supersonic.knowledge.dictionary.MultiCustomDictionary;
import com.tencent.supersonic.knowledge.service.SearchService;
import com.tencent.supersonic.knowledge.utils.HanlpHelper;
import com.tencent.supersonic.knowledge.utils.NatureHelper;
import com.tencent.supersonic.headless.common.model.response.QueryResultWithSchemaResp;
import com.tencent.supersonic.headless.common.query.request.QueryStructReq;
import com.tencent.supersonic.headless.common.server.response.QueryResultWithSchemaResp;
import com.tencent.supersonic.headless.common.core.request.QueryStructReq;
import lombok.extern.slf4j.Slf4j;
import net.sf.jsqlparser.expression.Expression;
import net.sf.jsqlparser.expression.LongValue;

View File

@@ -14,8 +14,8 @@ import com.tencent.supersonic.chat.persistence.dataobject.DimValueDO;
import com.tencent.supersonic.chat.service.ConfigService;
import com.tencent.supersonic.knowledge.dictionary.DictUpdateMode;
import com.tencent.supersonic.knowledge.dictionary.DimValue2DictCommand;
import com.tencent.supersonic.headless.common.model.request.PageDimensionReq;
import com.tencent.supersonic.headless.common.model.response.DimensionResp;
import com.tencent.supersonic.headless.common.server.request.PageDimensionReq;
import com.tencent.supersonic.headless.common.server.response.DimensionResp;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;

View File

@@ -18,8 +18,8 @@ import com.tencent.supersonic.common.pojo.Order;
import com.tencent.supersonic.common.pojo.QueryColumn;
import com.tencent.supersonic.common.pojo.enums.AggOperatorEnum;
import com.tencent.supersonic.common.pojo.enums.FilterOperatorEnum;
import com.tencent.supersonic.headless.common.model.response.QueryResultWithSchemaResp;
import com.tencent.supersonic.headless.common.query.request.QueryStructReq;
import com.tencent.supersonic.headless.common.server.response.QueryResultWithSchemaResp;
import com.tencent.supersonic.headless.common.core.request.QueryStructReq;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;

View File

@@ -13,9 +13,9 @@ import com.tencent.supersonic.common.pojo.enums.QueryType;
import com.tencent.supersonic.common.pojo.enums.AggOperatorEnum;
import com.tencent.supersonic.common.pojo.enums.AggregateTypeEnum;
import com.tencent.supersonic.common.pojo.enums.TimeDimensionEnum;
import com.tencent.supersonic.headless.common.query.request.QueryMultiStructReq;
import com.tencent.supersonic.headless.common.query.request.QueryS2SQLReq;
import com.tencent.supersonic.headless.common.query.request.QueryStructReq;
import com.tencent.supersonic.headless.common.core.request.QueryMultiStructReq;
import com.tencent.supersonic.headless.common.core.request.QueryS2SQLReq;
import com.tencent.supersonic.headless.common.core.request.QueryStructReq;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.apache.logging.log4j.util.Strings;

View File

@@ -1,14 +1,14 @@
package com.tencent.supersonic.chat.test.context;
import com.tencent.supersonic.chat.persistence.repository.impl.ChatContextRepositoryImpl;
import com.tencent.supersonic.chat.utils.ComponentFactory;
import com.tencent.supersonic.chat.persistence.mapper.ChatContextMapper;
import com.tencent.supersonic.knowledge.semantic.RemoteSemanticInterpreter;
import com.tencent.supersonic.chat.persistence.repository.impl.ChatContextRepositoryImpl;
import com.tencent.supersonic.chat.test.ChatBizLauncher;
import com.tencent.supersonic.headless.model.domain.DimensionService;
import com.tencent.supersonic.headless.model.domain.MetricService;
import com.tencent.supersonic.headless.model.domain.ModelService;
import com.tencent.supersonic.headless.query.service.QueryService;
import com.tencent.supersonic.chat.utils.ComponentFactory;
import com.tencent.supersonic.headless.core.service.QueryService;
import com.tencent.supersonic.headless.server.service.DimensionService;
import com.tencent.supersonic.headless.server.service.MetricService;
import com.tencent.supersonic.headless.server.service.ModelService;
import com.tencent.supersonic.knowledge.semantic.RemoteSemanticInterpreter;
import org.junit.runner.RunWith;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

View File

@@ -1,9 +1,5 @@
package com.tencent.supersonic.chat.test.context;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.anyLong;
import static org.mockito.Mockito.when;
import com.tencent.supersonic.chat.api.pojo.ChatContext;
import com.tencent.supersonic.chat.api.pojo.response.ChatConfigResp;
import com.tencent.supersonic.chat.config.DefaultMetric;
@@ -15,24 +11,29 @@ import com.tencent.supersonic.chat.service.ChatService;
import com.tencent.supersonic.chat.service.QueryService;
import com.tencent.supersonic.chat.service.impl.ConfigServiceImpl;
import com.tencent.supersonic.common.pojo.Constants;
import com.tencent.supersonic.headless.common.model.response.DimSchemaResp;
import com.tencent.supersonic.headless.common.model.response.DimensionResp;
import com.tencent.supersonic.headless.common.model.response.MetricResp;
import com.tencent.supersonic.headless.common.model.response.MetricSchemaResp;
import com.tencent.supersonic.headless.common.model.response.ModelSchemaResp;
import com.tencent.supersonic.headless.model.domain.DimensionService;
import com.tencent.supersonic.headless.model.domain.MetricService;
import com.tencent.supersonic.headless.model.domain.ModelService;
import com.tencent.supersonic.headless.model.domain.pojo.DimensionFilter;
import com.tencent.supersonic.headless.model.domain.pojo.MetaFilter;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import com.tencent.supersonic.headless.common.server.response.DimSchemaResp;
import com.tencent.supersonic.headless.common.server.response.DimensionResp;
import com.tencent.supersonic.headless.common.server.response.MetricResp;
import com.tencent.supersonic.headless.common.server.response.MetricSchemaResp;
import com.tencent.supersonic.headless.common.server.response.ModelSchemaResp;
import com.tencent.supersonic.headless.server.pojo.DimensionFilter;
import com.tencent.supersonic.headless.server.pojo.MetaFilter;
import com.tencent.supersonic.headless.server.service.DimensionService;
import com.tencent.supersonic.headless.server.service.MetricService;
import com.tencent.supersonic.headless.server.service.ModelService;
import org.mockito.Mockito;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.client.RestTemplate;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.anyLong;
import static org.mockito.Mockito.when;
@Configuration
public class MockBeansConfiguration {

View File

@@ -10,8 +10,8 @@ import com.tencent.supersonic.common.pojo.enums.AggOperatorEnum;
import com.tencent.supersonic.common.util.ContextUtils;
import com.tencent.supersonic.common.util.DateModeUtils;
import com.tencent.supersonic.common.util.SqlFilterUtils;
import com.tencent.supersonic.headless.common.query.request.QueryS2SQLReq;
import com.tencent.supersonic.headless.common.query.request.QueryStructReq;
import com.tencent.supersonic.headless.common.core.request.QueryS2SQLReq;
import com.tencent.supersonic.headless.common.core.request.QueryStructReq;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

View File

@@ -100,7 +100,7 @@
</dependency>
<dependency>
<groupId>com.tencent.supersonic</groupId>
<artifactId>headless-query</artifactId>
<artifactId>headless-core</artifactId>
<version>${project.version}</version>
<scope>compile</scope>
</dependency>

View File

@@ -4,7 +4,7 @@ import com.google.common.cache.Cache;
import com.google.common.cache.CacheBuilder;
import com.tencent.supersonic.chat.api.component.SemanticInterpreter;
import com.tencent.supersonic.chat.api.pojo.ModelSchema;
import com.tencent.supersonic.headless.common.model.response.ModelSchemaResp;
import com.tencent.supersonic.headless.common.server.response.ModelSchemaResp;
import java.util.ArrayList;
import java.util.List;
import java.util.Optional;

View File

@@ -5,25 +5,25 @@ import com.tencent.supersonic.auth.api.authentication.pojo.User;
import com.tencent.supersonic.common.pojo.enums.AuthType;
import com.tencent.supersonic.common.util.ContextUtils;
import com.tencent.supersonic.common.util.JsonUtil;
import com.tencent.supersonic.headless.common.model.request.ModelSchemaFilterReq;
import com.tencent.supersonic.headless.common.model.request.PageDimensionReq;
import com.tencent.supersonic.headless.common.model.request.PageMetricReq;
import com.tencent.supersonic.headless.common.model.response.DimensionResp;
import com.tencent.supersonic.headless.common.model.response.DomainResp;
import com.tencent.supersonic.headless.common.model.response.ExplainResp;
import com.tencent.supersonic.headless.common.model.response.MetricResp;
import com.tencent.supersonic.headless.common.model.response.ModelResp;
import com.tencent.supersonic.headless.common.model.response.ModelSchemaResp;
import com.tencent.supersonic.headless.common.model.response.QueryResultWithSchemaResp;
import com.tencent.supersonic.headless.common.query.request.ExplainSqlReq;
import com.tencent.supersonic.headless.common.query.request.QueryDimValueReq;
import com.tencent.supersonic.headless.common.query.request.QueryMultiStructReq;
import com.tencent.supersonic.headless.common.query.request.QueryS2SQLReq;
import com.tencent.supersonic.headless.common.query.request.QueryStructReq;
import com.tencent.supersonic.headless.model.domain.DimensionService;
import com.tencent.supersonic.headless.model.domain.MetricService;
import com.tencent.supersonic.headless.query.service.QueryService;
import com.tencent.supersonic.headless.query.service.SchemaService;
import com.tencent.supersonic.headless.common.server.request.ModelSchemaFilterReq;
import com.tencent.supersonic.headless.common.server.request.PageDimensionReq;
import com.tencent.supersonic.headless.common.server.request.PageMetricReq;
import com.tencent.supersonic.headless.common.server.response.DimensionResp;
import com.tencent.supersonic.headless.common.server.response.DomainResp;
import com.tencent.supersonic.headless.common.server.response.ExplainResp;
import com.tencent.supersonic.headless.common.server.response.MetricResp;
import com.tencent.supersonic.headless.common.server.response.ModelResp;
import com.tencent.supersonic.headless.common.server.response.ModelSchemaResp;
import com.tencent.supersonic.headless.common.server.response.QueryResultWithSchemaResp;
import com.tencent.supersonic.headless.common.core.request.ExplainSqlReq;
import com.tencent.supersonic.headless.common.core.request.QueryDimValueReq;
import com.tencent.supersonic.headless.common.core.request.QueryMultiStructReq;
import com.tencent.supersonic.headless.common.core.request.QueryS2SQLReq;
import com.tencent.supersonic.headless.common.core.request.QueryStructReq;
import com.tencent.supersonic.headless.core.service.QueryService;
import com.tencent.supersonic.headless.core.service.SchemaService;
import com.tencent.supersonic.headless.server.service.DimensionService;
import com.tencent.supersonic.headless.server.service.MetricService;
import lombok.SneakyThrows;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;

View File

@@ -6,12 +6,12 @@ import com.tencent.supersonic.chat.api.pojo.RelatedSchemaElement;
import com.tencent.supersonic.chat.api.pojo.SchemaElement;
import com.tencent.supersonic.chat.api.pojo.SchemaElementType;
import com.tencent.supersonic.chat.api.pojo.SchemaValueMap;
import com.tencent.supersonic.headless.common.model.pojo.DimValueMap;
import com.tencent.supersonic.headless.common.model.pojo.RelateDimension;
import com.tencent.supersonic.headless.common.model.pojo.SchemaItem;
import com.tencent.supersonic.headless.common.model.response.DimSchemaResp;
import com.tencent.supersonic.headless.common.model.response.MetricSchemaResp;
import com.tencent.supersonic.headless.common.model.response.ModelSchemaResp;
import com.tencent.supersonic.headless.common.server.pojo.DimValueMap;
import com.tencent.supersonic.headless.common.server.pojo.RelateDimension;
import com.tencent.supersonic.headless.common.server.pojo.SchemaItem;
import com.tencent.supersonic.headless.common.server.response.DimSchemaResp;
import com.tencent.supersonic.headless.common.server.response.MetricSchemaResp;
import com.tencent.supersonic.headless.common.server.response.ModelSchemaResp;
import org.apache.logging.log4j.util.Strings;
import org.springframework.beans.BeanUtils;
import org.springframework.util.CollectionUtils;

View File

@@ -19,21 +19,21 @@ import com.tencent.supersonic.common.util.ContextUtils;
import com.tencent.supersonic.common.util.JsonUtil;
import com.tencent.supersonic.common.util.S2ThreadContext;
import com.tencent.supersonic.common.util.ThreadContext;
import com.tencent.supersonic.headless.common.model.request.ModelSchemaFilterReq;
import com.tencent.supersonic.headless.common.model.request.PageDimensionReq;
import com.tencent.supersonic.headless.common.model.request.PageMetricReq;
import com.tencent.supersonic.headless.common.model.response.DimensionResp;
import com.tencent.supersonic.headless.common.model.response.DomainResp;
import com.tencent.supersonic.headless.common.model.response.ExplainResp;
import com.tencent.supersonic.headless.common.model.response.MetricResp;
import com.tencent.supersonic.headless.common.model.response.ModelResp;
import com.tencent.supersonic.headless.common.model.response.ModelSchemaResp;
import com.tencent.supersonic.headless.common.model.response.QueryResultWithSchemaResp;
import com.tencent.supersonic.headless.common.query.request.ExplainSqlReq;
import com.tencent.supersonic.headless.common.query.request.QueryDimValueReq;
import com.tencent.supersonic.headless.common.query.request.QueryMultiStructReq;
import com.tencent.supersonic.headless.common.query.request.QueryS2SQLReq;
import com.tencent.supersonic.headless.common.query.request.QueryStructReq;
import com.tencent.supersonic.headless.common.server.request.ModelSchemaFilterReq;
import com.tencent.supersonic.headless.common.server.request.PageDimensionReq;
import com.tencent.supersonic.headless.common.server.request.PageMetricReq;
import com.tencent.supersonic.headless.common.server.response.DimensionResp;
import com.tencent.supersonic.headless.common.server.response.DomainResp;
import com.tencent.supersonic.headless.common.server.response.ExplainResp;
import com.tencent.supersonic.headless.common.server.response.MetricResp;
import com.tencent.supersonic.headless.common.server.response.ModelResp;
import com.tencent.supersonic.headless.common.server.response.ModelSchemaResp;
import com.tencent.supersonic.headless.common.server.response.QueryResultWithSchemaResp;
import com.tencent.supersonic.headless.common.core.request.ExplainSqlReq;
import com.tencent.supersonic.headless.common.core.request.QueryDimValueReq;
import com.tencent.supersonic.headless.common.core.request.QueryMultiStructReq;
import com.tencent.supersonic.headless.common.core.request.QueryS2SQLReq;
import com.tencent.supersonic.headless.common.core.request.QueryStructReq;
import java.net.URI;
import java.net.URL;
import java.util.HashMap;