From c25278cec392c6286348bb5c49a709dca4abb881 Mon Sep 17 00:00:00 2001
From: zhaoshibao <501348474@qq.com>
Date: Sun, 30 Mar 2025 14:51:18 +0800
Subject: [PATCH] =?UTF-8?q?feat:=20=E6=96=B0=E5=A2=9E=E5=AF=B9=E8=AF=9D?=
=?UTF-8?q?=E9=87=8D=E6=96=B0=E7=94=9F=E6=88=90=E5=8A=9F=E8=83=BD=EF=BC=88?=
=?UTF-8?q?=E5=85=B3=E8=81=94=20Issue=20#104=EF=BC=89?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
web/src/components/ChatComponent.vue | 27 +++++++++++++++++++++++++--
web/src/components/RefsComponent.vue | 13 ++++++++++++-
2 files changed, 37 insertions(+), 3 deletions(-)
diff --git a/web/src/components/ChatComponent.vue b/web/src/components/ChatComponent.vue
index ad824d03..3187c1ea 100644
--- a/web/src/components/ChatComponent.vue
+++ b/web/src/components/ChatComponent.vue
@@ -122,7 +122,7 @@
你停止生成了本次回答
重新编辑问题
-
+
@@ -220,7 +220,9 @@ import {
BulbOutlined,
CaretRightOutlined,
DeploymentUnitOutlined,
- StopOutlined
+ StopOutlined,
+ ReloadOutlined,
+ CopyOutlined
} from '@ant-design/icons-vue'
import { onClickOutside } from '@vueuse/core'
import { Marked } from 'marked';
@@ -702,6 +704,24 @@ const selectModel = (provider, name) => {
message.success(`已切换到模型: ${provider}/${name}`)
}
+
+// 添加重新生成方法
+const regenerateMessage = (message) => {
+ // 找到用户的原始问题
+ const messageIndex = conv.value.messages.findIndex(msg => msg.id === message.id)
+ if (messageIndex > 0) {
+ const userMessage = conv.value.messages[messageIndex - 1]
+ if (userMessage && userMessage.role === 'sent') {
+ // 删除当前AI回复
+ conv.value.messages = conv.value.messages.slice(0, messageIndex)
+ // 重新生成回答
+ appendAiMessage("", null)
+ const cur_res_id = conv.value.messages[conv.value.messages.length - 1].id
+ isStreaming.value = true
+ fetchChatResponse(userMessage.text, cur_res_id)
+ }
+ }
+}