From 85bc6935b36bcf858aa373f991e088576ed99592 Mon Sep 17 00:00:00 2001 From: Liuyang <2746366019@qq.com> Date: Tue, 11 Mar 2025 17:17:00 +0800 Subject: [PATCH] =?UTF-8?q?refactor(module-llm):=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E7=9F=A5=E8=AF=86=E5=BA=93=E5=86=85=E5=AE=B9=E4=B8=BA=E7=A9=BA?= =?UTF-8?q?=E7=9A=84=E5=A4=84=E7=90=86=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 修改知识库内容为空时的处理方式,使用中括号标记空内容 - 更新系统提示语,使其更加清晰和标准化- 调整内容过滤机制的描述,简化相关说明 --- .../conversation/ConversationServiceImpl.java | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) diff --git a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/conversation/ConversationServiceImpl.java b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/conversation/ConversationServiceImpl.java index 9a08b7c0b..a744d8c2d 100644 --- a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/conversation/ConversationServiceImpl.java +++ b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/conversation/ConversationServiceImpl.java @@ -384,20 +384,13 @@ public class ConversationServiceImpl implements ConversationService { "知识库未提供 → \"抱歉,我无法回答这个问题,因为相关信息不在知识库中。\"\n" + "问题超出知识库范围 → \"该问题超出当前知识库支持范围\"\n" + "检测到推测请求 → \"根据规则,我无法进行推测或想象\"\n" + - "【结构化输出】\n" + - "5. 响应格式要求:\n" + - "采用分点式回答,每个要点包含:\n" + - "\n" + - "知识引用:标注[^编号]对应知识库段落\n" + - "信息摘要:精确提取的知识片段\n" + - "逻辑连接:说明该信息与问题的关联性\n" + "【安全机制】\n" + - "6. 内容过滤:自动触发以下保护机制:\n" + + "4. 内容过滤:自动触发以下保护机制:\n" + "\n" + "屏蔽知识库外的任何数据引用\n" + "禁止添加解释性语句或背景补充\n" + "拦截包含\"假设\"/\"如果\"等假设性词汇的问题" + - "7. 如果存在 <知识库内容> 这个标签,但是内容为空,返回 “抱歉,我无法回答这个问题,因为相关信息不在知识库中”,"; + "5. 如果存在 [知识库内容] 这个标签,但是 [内容为空] ,返回 “抱歉,我无法回答这个问题,因为相关信息不在知识库中”"; /** * 公共模型聊天流式处理方法 * @@ -469,7 +462,7 @@ public class ConversationServiceImpl implements ConversationService { knowledgeBaseString = knowledgeBase.toString(); if (org.apache.commons.lang3.StringUtils.isBlank(knowledgeBaseString)){ - knowledgeBaseString="<知识库内容> ,内容为空"; + knowledgeBaseString="[知识库内容] , [内容为空]"; } // 处理 systemPrompt @@ -680,7 +673,7 @@ public class ConversationServiceImpl implements ConversationService { } if (StringUtils.isNotBlank(pageContent)) { - knowledgeBase.append("\n[知识库内容] ").append(pageContent); + knowledgeBase.append("\n[知识库内容] [内容如下]").append(pageContent); log.info("{} 添加知识内容,长度: {}", "[KnowledgeBase]", pageContent.length()); ParagraphHitRateVO paragraphHitRateVO = new ParagraphHitRateVO();