1 Commits

Author SHA1 Message Date
FredTsang
8e5ce34a2a Merge f489ea2f59 into 303392f492 2025-06-12 11:07:49 +00:00
6 changed files with 9 additions and 21 deletions

View File

@@ -71,9 +71,8 @@ public class MemoryServiceImpl implements MemoryService, CommandLineRunner {
chatMemoryDO.setS2sql(chatMemoryUpdateReq.getS2sql()); chatMemoryDO.setS2sql(chatMemoryUpdateReq.getS2sql());
chatMemoryDO.setDbSchema(chatMemoryUpdateReq.getDbSchema()); chatMemoryDO.setDbSchema(chatMemoryUpdateReq.getDbSchema());
enableMemory(chatMemoryDO); enableMemory(chatMemoryDO);
} else if ((MemoryStatus.DISABLED.equals(chatMemoryUpdateReq.getStatus()) } else if ((MemoryStatus.DISABLED.equals(chatMemoryUpdateReq.getStatus())||MemoryStatus.PENDING.equals(chatMemoryUpdateReq.getStatus())) && hadEnabled) {
|| MemoryStatus.PENDING.equals(chatMemoryUpdateReq.getStatus())) && hadEnabled) { // Remove from vector DB when transitioning: launched→disabled OR enabled→pending
// Remove from vector DB when transitioning: launched→disabled OR enabled→pending
disableMemory(chatMemoryDO); disableMemory(chatMemoryDO);
} }
LambdaUpdateWrapper<ChatMemoryDO> updateWrapper = new LambdaUpdateWrapper<>(); LambdaUpdateWrapper<ChatMemoryDO> updateWrapper = new LambdaUpdateWrapper<>();

View File

@@ -52,8 +52,7 @@ public class PromptHelper {
for (int i = 0; i < selfConsistencyNumber; i++) { for (int i = 0; i < selfConsistencyNumber; i++) {
List<Text2SQLExemplar> shuffledList = new ArrayList<>(exemplars); List<Text2SQLExemplar> shuffledList = new ArrayList<>(exemplars);
// only shuffle the exemplars from config // only shuffle the exemplars from config
List<Text2SQLExemplar> subList = List<Text2SQLExemplar> subList=shuffledList.subList(llmReq.getDynamicExemplars().size(),shuffledList.size());
shuffledList.subList(llmReq.getDynamicExemplars().size(), shuffledList.size());
Collections.shuffle(subList); Collections.shuffle(subList);
results.add(shuffledList.subList(0, Math.min(shuffledList.size(), fewShotNumber))); results.add(shuffledList.subList(0, Math.min(shuffledList.size(), fewShotNumber)));
} }

View File

@@ -5,6 +5,7 @@ import com.tencent.supersonic.headless.api.pojo.DBColumn;
import com.tencent.supersonic.headless.api.pojo.enums.FieldType; import com.tencent.supersonic.headless.api.pojo.enums.FieldType;
import com.tencent.supersonic.headless.core.pojo.ConnectInfo; import com.tencent.supersonic.headless.core.pojo.ConnectInfo;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import java.sql.*; import java.sql.*;
import java.util.ArrayList; import java.util.ArrayList;
@@ -147,8 +148,7 @@ public abstract class BaseDbAdaptor implements DbAdaptor {
String url = connectionInfo.getUrl().toLowerCase(); String url = connectionInfo.getUrl().toLowerCase();
// 设置通用属性 // 设置通用属性
String userName = Optional.ofNullable(connectionInfo.getUserName()).orElse(""); properties.setProperty("user", connectionInfo.getUserName());
properties.setProperty("user", userName);
String password = Optional.ofNullable(connectionInfo.getPassword()).orElse(""); String password = Optional.ofNullable(connectionInfo.getPassword()).orElse("");

View File

@@ -10,7 +10,6 @@ import java.sql.DatabaseMetaData;
import java.sql.ResultSet; import java.sql.ResultSet;
import java.sql.SQLException; import java.sql.SQLException;
import java.util.List; import java.util.List;
import java.util.Properties;
@Slf4j @Slf4j
public class DuckdbAdaptor extends DefaultDbAdaptor { public class DuckdbAdaptor extends DefaultDbAdaptor {
@@ -24,7 +23,7 @@ public class DuckdbAdaptor extends DefaultDbAdaptor {
String tableName) throws SQLException { String tableName) throws SQLException {
List<DBColumn> dbColumns = Lists.newArrayList(); List<DBColumn> dbColumns = Lists.newArrayList();
DatabaseMetaData metaData = getDatabaseMetaData(connectInfo); DatabaseMetaData metaData = getDatabaseMetaData(connectInfo);
ResultSet columns = metaData.getColumns(null, schemaName, tableName, null); ResultSet columns = metaData.getColumns(schemaName, null, tableName, null);
while (columns.next()) { while (columns.next()) {
String columnName = columns.getString("COLUMN_NAME"); String columnName = columns.getString("COLUMN_NAME");
String dataType = columns.getString("TYPE_NAME"); String dataType = columns.getString("TYPE_NAME");
@@ -43,9 +42,4 @@ public class DuckdbAdaptor extends DefaultDbAdaptor {
return sql.replaceAll("`", ""); return sql.replaceAll("`", "");
} }
@Override
public Properties getProperties(ConnectInfo connectionInfo) {
return new Properties();
}
} }

View File

@@ -36,8 +36,8 @@ public class DataModelNode extends SemanticNode {
&& !dataModel.getModelDetail().getSqlQuery().isEmpty()) { && !dataModel.getModelDetail().getSqlQuery().isEmpty()) {
sqlTable = dataModel.getModelDetail().getSqlQuery(); sqlTable = dataModel.getModelDetail().getSqlQuery();
// if model has sqlVariables, parse sqlVariables // if model has sqlVariables, parse sqlVariables
if (Objects.nonNull(dataModel.getModelDetail().getSqlVariables()) if (Objects.nonNull(dataModel.getModelDetail().getSqlVariables()) &&
&& !(CollectionUtils.isEmpty(dataModel.getModelDetail().getSqlVariables()))) { !(CollectionUtils.isEmpty(dataModel.getModelDetail().getSqlVariables()))) {
sqlTable = SqlVariableParseUtils.parse(sqlTable, sqlTable = SqlVariableParseUtils.parse(sqlTable,
dataModel.getModelDetail().getSqlVariables(), Lists.newArrayList()); dataModel.getModelDetail().getSqlVariables(), Lists.newArrayList());
} }

View File

@@ -156,11 +156,7 @@ public class ModelConverter {
modelDetail.setSqlQuery(modelBuildReq.getSql()); modelDetail.setSqlQuery(modelBuildReq.getSql());
} else { } else {
modelDetail.setQueryType(ModelDefineType.TABLE_QUERY.getName()); modelDetail.setQueryType(ModelDefineType.TABLE_QUERY.getName());
if (modelBuildReq.getDb() != null) { modelDetail.setTableQuery(String.format("%s.%s", modelBuildReq.getDb(), tableName));
modelDetail.setTableQuery(String.format("%s.%s", modelBuildReq.getDb(), tableName));
} else {
modelDetail.setTableQuery(tableName);
}
} }
List<Field> fields = new ArrayList<>(); List<Field> fields = new ArrayList<>();
for (SemanticColumn semanticColumn : modelSchema.getSemanticColumns()) { for (SemanticColumn semanticColumn : modelSchema.getSemanticColumns()) {