diff --git a/apps/web-antd/src/api/ai/chat/message/index.ts b/apps/web-antd/src/api/ai/chat/message/index.ts index 9de927023..fc031d044 100644 --- a/apps/web-antd/src/api/ai/chat/message/index.ts +++ b/apps/web-antd/src/api/ai/chat/message/index.ts @@ -8,6 +8,7 @@ import { requestClient } from '#/api/request'; const { apiURL } = useAppConfig(import.meta.env, import.meta.env.PROD); const accessStore = useAccessStore(); + export namespace AiChatMessageApi { export interface ChatMessage { id: number; // 编号 @@ -26,10 +27,21 @@ export namespace AiChatMessageApi { documentName: string; // 文档名称 id: number; // 段落编号 }[]; + webSearchPages?: WebSearchPage[]; // 联网搜索结果 createTime: Date; // 创建时间 roleAvatar: string; // 角色头像 userAvatar: string; // 用户头像 } + + /** 联网搜索页面接口 */ + export interface WebSearchPage { + name: string; // 网站名称 + icon: string; // 网站图标 URL + title: string; // 页面标题 + url: string; // 页面 URL + snippet: string; // 简短描述 + summary: string; // 内容摘要 + } } // 消息列表 @@ -47,6 +59,7 @@ export function sendChatMessageStream( content: string, ctrl: any, enableContext: boolean, + enableWebSearch: boolean, onMessage: any, onError: any, onClose: any, @@ -63,6 +76,7 @@ export function sendChatMessageStream( conversationId, content, useContext: enableContext, + useSearch: enableWebSearch, }), onmessage: onMessage, onerror: onError, diff --git a/apps/web-antd/src/views/ai/chat/index/index.vue b/apps/web-antd/src/views/ai/chat/index/index.vue index c24968491..f8c1f07fc 100644 --- a/apps/web-antd/src/views/ai/chat/index/index.vue +++ b/apps/web-antd/src/views/ai/chat/index/index.vue @@ -359,6 +359,10 @@ async function doSendMessageStream(userMessage: AiChatMessageApi.ChatMessage) { const { code, data, msg } = JSON.parse(res.data); if (code !== 0) { await alert(`对话异常! ${msg}`); + // 如果未接收到消息,则进行删除 + if (receiveMessageFullText.value === '') { + activeMessageList.value.pop(); + } return; } @@ -382,7 +386,8 @@ async function doSendMessageStream(userMessage: AiChatMessageApi.ChatMessage) { await scrollToBottom(); }, (error: any) => { - alert(`对话异常! ${error}`); + // 异常提示,并停止流 + alert(`对话异常!`); stopStream(); // 需要抛出异常,禁止重试 throw error;