diff --git a/src/main/java/com/xly/service/XlyErpService.java b/src/main/java/com/xly/service/XlyErpService.java index 82bccdb..d3e6035 100644 --- a/src/main/java/com/xly/service/XlyErpService.java +++ b/src/main/java/com/xly/service/XlyErpService.java @@ -112,6 +112,8 @@ public class XlyErpService { if(session.getBCleanMemory()){ operableChatMemoryProvider.clearSpecifiedMemory(userId); session.setCurrentTool(null); + UserSceneSessionService.ERP_AGENT_CACHE.remove(userId); + UserSceneSessionService.CHAT_AGENT_CACHE.remove(userId); session.setBCleanMemory(false); } // 6.找到方法并且本方法带表结构描述时,需要调用 自然语言转SQL智能体 @@ -150,6 +152,8 @@ public class XlyErpService { operableChatMemoryProvider.clearSpecifiedMemory(userId); session.setCurrentTool(null); session.setBCleanMemory(false); + UserSceneSessionService.ERP_AGENT_CACHE.remove(userId); + UserSceneSessionService.CHAT_AGENT_CACHE.remove(userId); String sceneName = ObjectUtil.isNotEmpty(session.getCurrentScene())?session.getCurrentScene().getSSceneName():StrUtil.EMPTY; String methodName = ObjectUtil.isNotEmpty(session.getCurrentTool())?session.getCurrentTool().getSMethodName():StrUtil.EMPTY; return AiResponseDTO.builder().sSceneName(sceneName).sMethodName(methodName).aiText(StrUtil.EMPTY).systemText("清除记忆成功!").sReturnType(ReturnTypeCode.HTML.getCode()).build(); @@ -193,7 +197,7 @@ public class XlyErpService { ); }catch (Exception e){ session.setCurrentTool(null); - resultExplain = "动态SQL执行错误,请提供更具体的问题或指令"; + resultExplain = "信息模糊,请提供更具体的问题或指令"; } log.info("动态表结构NL2SQL流程执行完成"); return resultExplain; diff --git a/src/main/java/com/xly/tool/DynamicToolProvider.java b/src/main/java/com/xly/tool/DynamicToolProvider.java index 2c02422..e184014 100644 --- a/src/main/java/com/xly/tool/DynamicToolProvider.java +++ b/src/main/java/com/xly/tool/DynamicToolProvider.java @@ -758,6 +758,8 @@ public class DynamicToolProvider implements ToolProvider { if("enum".equals(sType) && ObjectUtil.isEmpty(dataListNew)){ args.remove(name); args.remove(sValue); + result.remove(name); + result.remove(sValue); continue; } if(ObjectUtil.isNotEmpty(dataListNew)){