From 93e342898232744a3632e10811f81876ed576d5f Mon Sep 17 00:00:00 2001 From: YunaiV Date: Mon, 25 Aug 2025 23:47:47 +0800 Subject: [PATCH] =?UTF-8?q?feat=EF=BC=9A=E3=80=90ai=20=E5=A4=A7=E6=A8=A1?= =?UTF-8?q?=E5=9E=8B=E3=80=91=E5=A2=9E=E5=8A=A0=E8=81=94=E7=BD=91=E6=90=9C?= =?UTF-8?q?=E7=B4=A2=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/ai/chat/message/index.ts | 10 + .../index/components/message/MessageList.vue | 2 + .../components/message/MessageWebSearch.vue | 190 ++++++++++++++++++ src/views/ai/chat/index/index.vue | 6 +- 4 files changed, 207 insertions(+), 1 deletion(-) create mode 100644 src/views/ai/chat/index/components/message/MessageWebSearch.vue diff --git a/src/api/ai/chat/message/index.ts b/src/api/ai/chat/message/index.ts index 193e87b79..a4c5b8d3b 100644 --- a/src/api/ai/chat/message/index.ts +++ b/src/api/ai/chat/message/index.ts @@ -23,6 +23,14 @@ export interface ChatMessageVO { documentId: number // 文档编号 documentName: string // 文档名称 }[] + webSearchPages?: { + name: string // 名称 + icon: string // 图标 + title: string // 标题 + url: string // URL + snippet: string // 内容的简短描述 + summary: string // 内容的文本摘要 + }[] createTime: Date // 创建时间 roleAvatar: string // 角色头像 userAvatar: string // 用户头像 @@ -44,6 +52,7 @@ export const ChatMessageApi = { content: string, ctrl, enableContext: boolean, + enableWebSearch: boolean, onMessage, onError, onClose, @@ -61,6 +70,7 @@ export const ChatMessageApi = { conversationId, content, useContext: enableContext, + webSearch: enableWebSearch, attachmentUrls: attachmentUrls || [] }), onmessage: onMessage, diff --git a/src/views/ai/chat/index/components/message/MessageList.vue b/src/views/ai/chat/index/components/message/MessageList.vue index 790485888..77b41c796 100644 --- a/src/views/ai/chat/index/components/message/MessageList.vue +++ b/src/views/ai/chat/index/components/message/MessageList.vue @@ -24,6 +24,7 @@ /> +
+ + + + + diff --git a/src/views/ai/chat/index/index.vue b/src/views/ai/chat/index/index.vue index 2b96010f8..91a78ddcb 100644 --- a/src/views/ai/chat/index/index.vue +++ b/src/views/ai/chat/index/index.vue @@ -89,7 +89,9 @@
- 上下文 + 上下文 + + 联网搜索
() // 对话进行中 abort 控制 const inputTimeout = ref() // 处理输入中回车的定时器 const prompt = ref() // prompt const enableContext = ref(true) // 是否开启上下文 +const enableWebSearch = ref(false) // 是否开启联网搜索 const uploadFiles = ref([]) // 上传的文件 URL 列表 // 接收 Stream 消息 const receiveMessageFullText = ref('') @@ -468,6 +471,7 @@ const doSendMessageStream = async (userMessage: ChatMessageVO) => { userMessage.content, conversationInAbortController.value, enableContext.value, + enableWebSearch.value, async (res) => { const { code, data, msg } = JSON.parse(res.data) if (code !== 0) {