From b9dd6bb7c5a865e9b9c3dc32a4657b1116a1a08c Mon Sep 17 00:00:00 2001 From: guilinlewis <185641548@qq.com> Date: Mon, 26 May 2025 21:25:43 +0800 Subject: [PATCH] (improvement)(headless | chat |webapp) (#2266) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1 在使用多轮对话改写时,内容上面的问题,替换成改写的内容,可以让用户知道该回答原来什么问题 2 解决表格内容太长导致显示的问题 3 框架的字典都是以_开头的, 添加判断,如果配置了非 _ 开头的字典而引起的报错 4 大模型分析结果时,因为textResult 是必填的参数,所以如果发现 textResult 未null 就不做分析了 --- .../processor/execute/DataInterpretProcessor.java | 3 ++- .../chat/knowledge/helper/NatureHelper.java | 14 ++++++++------ .../chat-sdk/src/components/ChatItem/index.tsx | 7 ++++--- .../src/components/ChatMsg/Table/style.less | 6 +++++- 4 files changed, 19 insertions(+), 11 deletions(-) diff --git a/chat/server/src/main/java/com/tencent/supersonic/chat/server/processor/execute/DataInterpretProcessor.java b/chat/server/src/main/java/com/tencent/supersonic/chat/server/processor/execute/DataInterpretProcessor.java index ae7334985..1c3cb6f01 100644 --- a/chat/server/src/main/java/com/tencent/supersonic/chat/server/processor/execute/DataInterpretProcessor.java +++ b/chat/server/src/main/java/com/tencent/supersonic/chat/server/processor/execute/DataInterpretProcessor.java @@ -46,7 +46,8 @@ public class DataInterpretProcessor implements ExecuteResultProcessor { public boolean accept(ExecuteContext executeContext) { Agent agent = executeContext.getAgent(); ChatApp chatApp = agent.getChatAppConfig().get(APP_KEY); - return Objects.nonNull(chatApp) && chatApp.isEnable(); + return Objects.nonNull(chatApp) && chatApp.isEnable()&& + StringUtils.isNotBlank(executeContext.getResponse().getTextResult()); // 如果都没结果,则无法处理,直接跳过 } @Override diff --git a/headless/chat/src/main/java/com/tencent/supersonic/headless/chat/knowledge/helper/NatureHelper.java b/headless/chat/src/main/java/com/tencent/supersonic/headless/chat/knowledge/helper/NatureHelper.java index 3271520e3..4c276aa37 100644 --- a/headless/chat/src/main/java/com/tencent/supersonic/headless/chat/knowledge/helper/NatureHelper.java +++ b/headless/chat/src/main/java/com/tencent/supersonic/headless/chat/knowledge/helper/NatureHelper.java @@ -179,13 +179,15 @@ public class NatureHelper { } public static Long parseIdFromNature(String nature, int index) { - try { - String[] split = nature.split(DictWordType.NATURE_SPILT); - if (split.length > index) { - return Long.valueOf(split[index]); + if(nature.startsWith("_")){ // 框架的字典都是以_开头的 + try { + String[] split = nature.split(DictWordType.NATURE_SPILT); + if (split.length > index) { + return Long.valueOf(split[index]); + } + } catch (NumberFormatException e) { + log.error("Error parsing long from nature: {}", nature, e); } - } catch (NumberFormatException e) { - log.error("Error parsing long from nature: {}", nature, e); } return null; } diff --git a/webapp/packages/chat-sdk/src/components/ChatItem/index.tsx b/webapp/packages/chat-sdk/src/components/ChatItem/index.tsx index a04120940..71c407659 100644 --- a/webapp/packages/chat-sdk/src/components/ChatItem/index.tsx +++ b/webapp/packages/chat-sdk/src/components/ChatItem/index.tsx @@ -102,7 +102,6 @@ const ChatItem: React.FC = ({ {} ); const [isParserError, setIsParseError] = useState(false); - const resetState = () => { setParseLoading(false); setParseTimeCost(undefined); @@ -441,6 +440,8 @@ const ChatItem: React.FC = ({ const { register, call } = useMethodRegister(() => message.error('该条消息暂不支持该操作')); + let actualQueryText=parseInfo?.properties.CONTEXT.queryText // lance修改 结果显示多轮对话转义的内容 + actualQueryText=actualQueryText==null?msg:actualQueryText return (
@@ -509,7 +510,7 @@ const ChatItem: React.FC = ({ = ({