[improvement][chat]Introduce AllFieldMapper to increase parsing robustness when normal pipeline fails.

[improvement][chat]Introduce `AllFieldMapper` to increase parsing robustness when normal pipeline fails.
This commit is contained in:
jerryjzhang
2024-12-26 21:33:40 +08:00
parent a4d2df4063
commit 94267f6028
19 changed files with 156 additions and 33 deletions

View File

@@ -76,7 +76,6 @@ public class ChatWorkflowEngine {
long start = System.currentTimeMillis();
performTranslating(queryCtx, parseResult);
parseResult.getParseTimeCost().setSqlTime(System.currentTimeMillis() - start);
parseResult.setState(ParseResp.ParseState.COMPLETED);
queryCtx.setChatWorkflowState(ChatWorkflowState.FINISHED);
break;
default:
@@ -137,7 +136,12 @@ public class ChatWorkflowEngine {
ContextUtils.getBean(SemanticLayerService.class);
SemanticTranslateResp explain =
queryService.translate(semanticQueryReq, queryCtx.getRequest().getUser());
parseInfo.getSqlInfo().setQuerySQL(explain.getQuerySQL());
if (explain.isOk()) {
parseInfo.getSqlInfo().setQuerySQL(explain.getQuerySQL());
parseResult.setState(ParseResp.ParseState.COMPLETED);
} else {
parseResult.setState(ParseResp.ParseState.FAILED);
}
if (StringUtils.isNotBlank(explain.getErrMsg())) {
errorMsg.add(explain.getErrMsg());
}