(improvement)(semantic)Simplify datasource related code and support setting filter SQL for dict generation (#397)

* (improvement) (semantic) Simplify datasource related code and support setting filtering SQL for dict generation
* (improvement) (semantic) Remove the semicolon at the end of the datasource SQL
* (improvement) (common) Update sys parameter init

---------

Co-authored-by: jolunoluo
This commit is contained in:
LXW
2023-11-17 17:52:28 +08:00
committed by GitHub
parent d9eaf79ab8
commit 8f19584ad7
26 changed files with 394 additions and 2126 deletions

View File

@@ -1,9 +1,9 @@
package com.tencent.supersonic.common.pojo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
@Data
@AllArgsConstructor
@@ -14,4 +14,14 @@ public class Parameter {
private String comment;
private String dataType;
private String module;
private List<Object> candidateValues;
public Parameter(String name, String value, String comment, String dataType, String module) {
this.name = name;
this.value = value;
this.comment = comment;
this.dataType = dataType;
this.module = module;
}
}

View File

@@ -34,38 +34,40 @@ public class SysParameter {
public void init() {
parameters = Lists.newArrayList();
admins = Lists.newArrayList("admin");
parameters.add(new Parameter("llm.model.name", "gpt4",
"模型名称(大语言模型相关配置)", "string", "大语言模型相关配置"));
parameters.add(new Parameter("llm.api.key", "sk-afdasdasd",
"模型密钥(大语言模型相关配置)", "string", "大语言模型相关配置"));
Parameter parameter = new Parameter("llm.model.name", "gpt4",
"模型名称", "list", "大语言模型相关配置");
parameter.setCandidateValues(Lists.newArrayList("gpt3.5", "gpt3.5-16k"));
parameters.add(parameter);
parameters.add(new Parameter("llm.api.key", "sk-secret",
"模型密钥", "string", "大语言模型相关配置"));
parameters.add(new Parameter("one.detection.size", "8",
"一次探测个数(hanlp相关配置)", "number", "hanlp相关配置"));
"一次探测个数", "number", "[mapper]hanlp相关配置"));
parameters.add(new Parameter("one.detection.max.size", "20",
"一次探测最大个数(hanlp相关配置)", "number", "hanlp相关配置"));
"一次探测最大个数", "number", "[mapper]hanlp相关配置"));
parameters.add(new Parameter("metric.dimension.min.threshold", "0.3",
"指标名、维度名最小文本相似度(mapper模糊匹配相关配置)", "number", "mapper模糊匹配相关配置"));
"指标名、维度名最小文本相似度", "number", "[mapper]模糊匹配相关配置"));
parameters.add(new Parameter("metric.dimension.threshold", "0.3",
"指标名、维度名文本相似度(mapper模糊匹配相关配置)", "number", "mapper模糊匹配相关配置"));
"指标名、维度名文本相似度", "number", "[mapper]模糊匹配相关配置"));
parameters.add(new Parameter("dimension.value.threshold", "0.5",
"维度值最小文本相似度(mapper模糊匹配相关配置)", "number", "mapper模糊匹配相关配置"));
parameters.add(new Parameter("query.text.length.threshold", "0.5",
"文本长短阈值(是否跳过当前parser相关配置)", "number", "是否跳过当前parser相关配置"));
parameters.add(new Parameter("short.text.threshold", "0.5",
"短文本匹配阈值(是否跳过当前parser相关配置)", "number", "是否跳过当前parser相关配置"));
parameters.add(new Parameter("long.text.threshold", "0.5",
"长文本匹配阈值(是否跳过当前parser相关配置)", "number", "是否跳过当前parser相关配置"));
"维度值最小文本相似度", "number", "[mapper]模糊匹配相关配置"));
parameters.add(new Parameter("embedding.mapper.word.min",
"0.3", "用于向量召回最小的文本长度(向量召回mapper相关配置)", "number", "向量召回mapper相关配置"));
"0.3", "用于向量召回最小的文本长度", "number", "[mapper]向量召回相关配置"));
parameters.add(new Parameter("embedding.mapper.word.max", "0.3",
"用于向量召回最大的文本长度(向量召回mapper相关配置)", "number", "向量召回mapper相关配置"));
"用于向量召回最大的文本长度", "number", "[mapper]向量召回相关配置"));
parameters.add(new Parameter("embedding.mapper.batch", "0.3",
"批量向量召回文本请求个数(向量召回mapper相关配置)", "number", "向量召回mapper相关配置"));
"批量向量召回文本请求个数", "number", "[mapper]向量召回相关配置"));
parameters.add(new Parameter("embedding.mapper.number", "0.3",
"批量向量召回文本返回结果个数(向量召回mapper相关配置)", "number", "向量召回mapper相关配置"));
"批量向量召回文本返回结果个数", "number", "[mapper]向量召回相关配置"));
parameters.add(new Parameter("embedding.mapper.distance.threshold",
"0.3", "Mapper阶段向量召回相似度阈值(向量召回mapper相关配置)", "number", "向量召回mapper相关配置"));
"0.3", "Mapper阶段向量召回相似度阈值", "number", "[mapper]向量召回相关配置"));
parameters.add(new Parameter("query.text.length.threshold", "0.5",
"文本长短阈值", "number", "[parser]是否跳过当前parser相关配置"));
parameters.add(new Parameter("short.text.threshold", "0.5",
"短文本匹配阈值", "number", "[parser]是否跳过当前parser相关配置"));
parameters.add(new Parameter("long.text.threshold", "0.5",
"长文本匹配阈值", "number", "[parser]是否跳过当前parser相关配置"));
parameters.add(new Parameter("use.s2SQL.switch", "true",
"是否打开S2SQL转换开关(S2SQL相关配置)", "bool", "S2SQL相关配置"));
"是否打开S2SQL转换开关", "bool", "S2SQL相关配置"));
}
}

View File

@@ -18,7 +18,11 @@ public class SysParameterServiceImpl
public SysParameter getSysParameter() {
List<SysParameterDO> list = list();
if (CollectionUtils.isEmpty(list)) {
return new SysParameter();
SysParameter sysParameter = new SysParameter();
sysParameter.setId(1);
sysParameter.init();
save(sysParameter);
return sysParameter;
}
return convert(list.iterator().next());
}