From 695dd49d004157f2ec282922e2958e644feaa067 Mon Sep 17 00:00:00 2001 From: qianbao Date: Wed, 20 May 2026 21:57:43 +0800 Subject: [PATCH] 添加未清选择 改成动态引导语 --- src/main/java/com/xly/tool/DynamicToolProvider.java | 23 +++++++++++++++++++++-- src/main/resources/application.yml | 4 ++-- 2 files changed, 23 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/xly/tool/DynamicToolProvider.java b/src/main/java/com/xly/tool/DynamicToolProvider.java index 46ac50a..f90aba4 100644 --- a/src/main/java/com/xly/tool/DynamicToolProvider.java +++ b/src/main/java/com/xly/tool/DynamicToolProvider.java @@ -808,6 +808,12 @@ public class DynamicToolProvider implements ToolProvider { session.setSFunPrompts("选择的数据ID:"+args.get("sSlaveId")+"不存在,请重新选择。"); throw new BusinessException(-1,"选择的数据ID:"+args.get("sSlaveId")+"不存在,请重新选择。"); } + Map dataOne = DeepCopyUtils.deepCopy(args); + dataOne.remove("sSlaveId"); + dataOne.remove("sId"); + sRowData.forEach(one->{ + one.putAll(dataOne); + }); data.put("sRowData", JSONObject.toJSONString(sRowData)); } Map searMap = this.dynamicExeDbService.getDoProMap(sBizContent, data); @@ -871,8 +877,18 @@ public class DynamicToolProvider implements ToolProvider { log.info("doGetFromData========================"); List> list = new ArrayList<>(); Map serOne = new HashMap<>(4); + if(ObjectUtil.isEmpty(args.get("sSlaveId"))){ + return new ArrayList<>(); + } + String sSlaveId = StrUtil.EMPTY; + if(args.get("sSlaveId") instanceof List){ + List sSlaveIds = (List) args.get("sSlaveId"); + sSlaveId = String.join(",",sSlaveIds); + }else{ + sSlaveId = args.get("sSlaveId").toString(); + } serOne.put("bFilterCondition","IN"); - serOne.put("bFilterValue",args.get("sSlaveId")); + serOne.put("bFilterValue",sSlaveId); serOne.put("bFilterName","sSlaveId"); list.add(serOne); @@ -1040,7 +1056,9 @@ public class DynamicToolProvider implements ToolProvider { .append(""); markdown.append("\n"); machineData.add(rMap); - currentRowData.put(i + 1,recordData.get(i)); + Map cMap = new HashMap<>(); + cMap.put("sSlaveId",uniqueValue); + currentRowData.put(i + 1,cMap); } markdown.append(">"); if(meta.getIBizType()==4){ @@ -1083,6 +1101,7 @@ public class DynamicToolProvider implements ToolProvider { public String buildDynamicSystemPrompt(UserSceneSession session) { String methodNo = session.getCurrentTool().getSMethodNo(); String rowJson = JSONUtil.toJsonStr(session.getCurrentRowData()); + return """ 【极强约束·必须执行】 1. 禁止说话!禁止解释! diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 7bee45b..30164db 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -77,7 +77,7 @@ ocr: milvus: host: 112.82.245.194 - port: 19530 + port: 49530 database: xlymilvus username: password: @@ -134,7 +134,7 @@ management: langchain4j: ollama: # 聊天模型配置(用于一般对话) - base-url: http://112.82.245.194:11434 + base-url: http://112.82.245.194:41434 # chat-model-name: qwen2.5:7b-instruct chat-model-name: qwen2.5:14b # chat-model-name: qwen3:14b -- libgit2 0.22.2