Commit 71e8610888ee5f044666fe87bd2c38c10798d59b

Authored by qianbao
1 parent 07f79d71

AI添加问题 历史问题记录

src/main/java/com/xly/agent/ErpAiAgent.java
... ... @@ -14,10 +14,10 @@ public interface ErpAiAgent {
14 14 1. 方法匹配:先精准拆解用户查询的核心业务意图,再自动匹配唯一符合用户问题的工具方法(MethodNo),禁止自创,规则如下;
15 15 1.1 匹配方法时,无需考虑工具描述(@TOOL)中 1.必填参数,2.选填参数,示例,parameters内容 四个部分的内容;
16 16 1.2 匹配方法时,只关注工具描述(@TOOL)中 “当用户” 和 “时,必须调用本工具”两个短语之间的内容;
  17 + 1.3 调用工具前,不需要询问用户提供缺失的参数
17 18 2. 参数提取:提取该工具的全部参数,与描述完全一致,严格按标注类型赋值,规则如下:
18 19 2.1 数字无引号,为空时禁止赋值0;
19 20 2.2 如果有空格需要去掉空格后再提取。
20   - 2.3 每次都需要进行参数提取
21 21 """)
22 22 @UserMessage("用户输入:{{userInput}}")
23 23 String chat(@MemoryId String userId, @V("userInput") String userInput);
... ... @@ -48,4 +48,4 @@ public interface ErpAiAgent {
48 48 @V("sql") String sql,
49 49 @V("tableStruct") String tableStruct,
50 50 @V("result") String result);
51   -}
52 51 \ No newline at end of file
  52 +}
... ...
src/main/java/com/xly/service/XlyErpService.java
... ... @@ -97,7 +97,7 @@ public class XlyErpService {
97 97 if (input.contains("重置") || input.contains("重新选择")) {
98 98 //清除记忆缓存
99 99 reSet(userId ,sUserName, sBrandsId ,sSubsidiaryId,sUserType,authorization,session);
100   - return AiResponseDTO.builder().aiText(resetUserScene(session)).build();
  100 + return AiResponseDTO.builder().aiText(resetUserScene(session.getUserId(),session)).build();
101 101 }
102 102 //聊天只能体
103 103 if (session.getCurrentScene() != null
... ... @@ -530,7 +530,17 @@ public class XlyErpService {
530 530 * @return java.lang.String
531 531 * @Description 重置用户场景选择:恢复为未选状态,清空当前场景,重新展示选择界面
532 532 **/
533   - private String resetUserScene(UserSceneSession session) {
  533 + private String resetUserScene(String userId, UserSceneSession session) {
  534 + session.setSceneSelected(false);
  535 + session.setBCleanMemory(false);
  536 + session.setCurrentTool(null);
  537 + session.setSUserQuestionList(new ArrayList<>());
  538 + session.setCurrentScene(null);
  539 + session.setCurrentRowData(null);
  540 + UserSceneSessionService.USER_SCENE_SESSION_CACHE.put(userId, session);
  541 + // 清空Agent缓存
  542 + UserSceneSessionService.ERP_AGENT_CACHE.remove(userId);
  543 + UserSceneSessionService.CHAT_AGENT_CACHE.remove(userId);
534 544 return "场景选择已重置!请重新选择业务场景:\n" + session.buildSceneSelectHint();
535 545 }
536 546  
... ...
src/main/resources/templates/chat.html
... ... @@ -468,7 +468,7 @@
468 468 let subsidiaryid= "1111111111";
469 469 let usertype= "sysadmin";
470 470 // let usertype= "General";
471   - let authorization="CE444885A9BCFDDE1FD793F8A0931301E9D7DE6CEDD9DE4B83ECE2219C7829A8F3419238942A93E9AD666629E18D159AF7FE144A6407DE745BA0AEC8B235FC1D0771D239F1C61B14219E1D1B3A166D73495FD8E662F2065F9430347C7E4472B5538155B7ADAEE71E899235DC1122F426";
  471 + let authorization="CE444885A9BCFDDE1FD793F8A0931301E9D7DE6CEDD9DE4B83ECE2219C7829A8F3419238942A93E9AD666629E18D159AF7FE144A6407DE745BA0AEC8B235FC1D4CAE6F9AC893762209A98011A981375391D4466816B7D3D1AF306E28B989121C538155B7ADAEE71E899235DC1122F426";
472 472 let hrefLock = window.location.origin+"/xlyAi";
473 473 // ==================== 配置部分 ====================
474 474 const CONFIG = {
... ...