mirror of
https://github.com/tencentmusic/supersonic.git
synced 2025-12-12 20:51:48 +00:00
(improvement)(chat) Optimize memory recall to enable few-shot recall within the Agent level (#1696)
This commit is contained in:
@@ -44,6 +44,7 @@ import java.util.Set;
|
|||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
import static com.tencent.supersonic.chat.server.parser.ParserConfig.PARSER_MULTI_TURN_ENABLE;
|
import static com.tencent.supersonic.chat.server.parser.ParserConfig.PARSER_MULTI_TURN_ENABLE;
|
||||||
|
import static com.tencent.supersonic.headless.chat.parser.ParserConfig.PARSER_EXEMPLAR_RECALL_NUMBER;
|
||||||
|
|
||||||
@Slf4j
|
@Slf4j
|
||||||
public class NL2SQLParser implements ChatQueryParser {
|
public class NL2SQLParser implements ChatQueryParser {
|
||||||
@@ -310,8 +311,12 @@ public class NL2SQLParser implements ChatQueryParser {
|
|||||||
ExemplarServiceImpl exemplarManager = ContextUtils.getBean(ExemplarServiceImpl.class);
|
ExemplarServiceImpl exemplarManager = ContextUtils.getBean(ExemplarServiceImpl.class);
|
||||||
EmbeddingConfig embeddingConfig = ContextUtils.getBean(EmbeddingConfig.class);
|
EmbeddingConfig embeddingConfig = ContextUtils.getBean(EmbeddingConfig.class);
|
||||||
String memoryCollectionName = embeddingConfig.getMemoryCollectionName(agentId);
|
String memoryCollectionName = embeddingConfig.getMemoryCollectionName(agentId);
|
||||||
|
ParserConfig parserConfig = ContextUtils.getBean(ParserConfig.class);
|
||||||
|
int exemplarRecallNumber =
|
||||||
|
Integer.valueOf(parserConfig.getParameterValue(PARSER_EXEMPLAR_RECALL_NUMBER));
|
||||||
List<Text2SQLExemplar> exemplars =
|
List<Text2SQLExemplar> exemplars =
|
||||||
exemplarManager.recallExemplars(memoryCollectionName, queryNLReq.getQueryText(), 5);
|
exemplarManager.recallExemplars(
|
||||||
|
memoryCollectionName, queryNLReq.getQueryText(), exemplarRecallNumber);
|
||||||
queryNLReq.getDynamicExemplars().addAll(exemplars);
|
queryNLReq.getDynamicExemplars().addAll(exemplars);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user