From dcc90cd79ffaaae8ded0e5e1ca9f848f6dc5ee77 Mon Sep 17 00:00:00 2001 From: kangfenmao Date: Sun, 9 Mar 2025 22:21:07 +0800 Subject: [PATCH] fix(Messages): Improve auto-rename topic logic with message filtering --- src/renderer/src/pages/home/Messages/Messages.tsx | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/renderer/src/pages/home/Messages/Messages.tsx b/src/renderer/src/pages/home/Messages/Messages.tsx index 37606f26..3723ed54 100644 --- a/src/renderer/src/pages/home/Messages/Messages.tsx +++ b/src/renderer/src/pages/home/Messages/Messages.tsx @@ -19,7 +19,7 @@ import { } from '@renderer/store/messages' import type { Assistant, Message, Topic } from '@renderer/types' import { captureScrollableDivAsBlob, captureScrollableDivAsDataURL, runAsyncFunction } from '@renderer/utils' -import { last } from 'lodash' +import { isEmpty, last } from 'lodash' import { useCallback, useEffect, useMemo, useRef, useState } from 'react' import { useTranslation } from 'react-i18next' import InfiniteScroll from 'react-infinite-scroll-component' @@ -92,9 +92,15 @@ const Messages: React.FC = ({ assistant, topic, setActiveTopic }) }, []) const autoRenameTopic = useCallback(async () => { - const messages = messagesRef.current + let messages = [...messagesRef.current] const _topic = getTopic(assistant, topic.id) + if (isEmpty(messages)) { + return + } + + messages = messages.filter((m) => m.status === 'success') + if (!enableTopicNaming) { const topicName = messages[0]?.content.substring(0, 50) if (topicName) {