[improvement][headless&chat]当LLM生成SQL包含日期类型字段时,Correcter不再额外增加日期 (#1473)

This commit is contained in:
yudong
2024-08-02 14:14:29 +08:00
committed by GitHub
parent e26263d229
commit 53a9f7c451
4 changed files with 32 additions and 2 deletions

View File

@@ -9,6 +9,7 @@ import com.tencent.supersonic.headless.api.pojo.SchemaElement;
import com.tencent.supersonic.headless.api.pojo.SchemaElementType;
import com.tencent.supersonic.headless.api.pojo.SchemaItem;
import com.tencent.supersonic.headless.api.pojo.SchemaValueMap;
import com.tencent.supersonic.headless.api.pojo.enums.SemanticType;
import com.tencent.supersonic.headless.api.pojo.response.DataSetSchemaResp;
import com.tencent.supersonic.headless.api.pojo.response.DimSchemaResp;
import com.tencent.supersonic.headless.api.pojo.response.MetricSchemaResp;
@@ -154,6 +155,7 @@ public class DataSetSchemaBuilder {
schemaValueMaps.add(schemaValueMap);
}
}
SemanticType semanticType = SemanticType.valueOf(dim.getSemanticType());
SchemaElement dimToAdd = SchemaElement.builder()
.dataSetId(resp.getId())
.dataSetName(resp.getName())
@@ -162,6 +164,7 @@ public class DataSetSchemaBuilder {
.name(dim.getName())
.bizName(dim.getBizName())
.type(SchemaElementType.DIMENSION)
.semanticType(semanticType)
.useCnt(dim.getUseCnt())
.alias(alias)
.schemaValueMaps(schemaValueMaps)

View File

@@ -108,7 +108,11 @@ public class ModelConverter {
dimensionReq.setName(dim.getName());
dimensionReq.setBizName(dim.getBizName());
dimensionReq.setDescription(dim.getName());
dimensionReq.setSemanticType(SemanticType.CATEGORY.name());
if (Objects.equals(dim.getType(), DimensionType.time.name())) {
dimensionReq.setSemanticType(SemanticType.DATE.name());
} else {
dimensionReq.setSemanticType(SemanticType.CATEGORY.name());
}
dimensionReq.setModelId(modelDO.getId());
dimensionReq.setExpr(dim.getBizName());
dimensionReq.setType(DimensionType.categorical.name());
@@ -138,7 +142,11 @@ public class ModelConverter {
dimensionReq.setName(identify.getName());
dimensionReq.setBizName(identify.getBizName());
dimensionReq.setDescription(identify.getName());
dimensionReq.setSemanticType(SemanticType.CATEGORY.name());
if (Objects.equals(identify.getType(), DimensionType.time.name())) {
dimensionReq.setSemanticType(SemanticType.DATE.name());
} else {
dimensionReq.setSemanticType(SemanticType.CATEGORY.name());
}
dimensionReq.setModelId(modelDO.getId());
dimensionReq.setExpr(identify.getBizName());
dimensionReq.setType(identify.getType());