From b498bd0c9b8fa0f13ce52a9257da6da1d0ea01ac Mon Sep 17 00:00:00 2001
From: junleea <354425203@qq.com>
Date: Thu, 10 Apr 2025 16:38:14 +0800
Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E6=88=90=E7=9F=A5=E8=AF=86=E5=BA=93?=
=?UTF-8?q?=E9=97=AE=E7=AD=94=E5=8A=9F=E8=83=BD?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/store/permiss.ts | 48 ++++++++++++++--------------
src/types/im.ts | 1 +
src/views/system/kbase-chat.vue | 40 +++++++++++++++--------
src/views/system/manage-function.vue | 2 +-
4 files changed, 52 insertions(+), 39 deletions(-)
diff --git a/src/store/permiss.ts b/src/store/permiss.ts
index 7acfe29..4659cf0 100644
--- a/src/store/permiss.ts
+++ b/src/store/permiss.ts
@@ -16,30 +16,30 @@ export const usePermissStore = defineStore("permiss", {
"11", //用户管理
"12",
"13",
- "2",
- "21",
- "22",
- "23",
- "24",
- "25",
- "26",
- "27",
- "28",
- "29",
- "291",
- "292",
- "3",
- "31",
- "32",
- "33",
- "34",
- "4",
- "41",
- "42",
- "5",
- "7",
- "6",
- "8",
+ // "2", //组件
+ // "21",
+ // "22",
+ // "23",
+ // "24",
+ // "25",
+ // "26",
+ // "27",
+ // "28",
+ // "29",
+ // "291",
+ // "292",
+ // "3", //表格
+ // "31",
+ // "32",
+ // "33",
+ // "34",
+ // "4", //图表
+ // "41",
+ // "42",
+ // "5", //图标
+ "7", //主题
+ "6", //附加页面
+ "8", //个人中心
"61",
"62",
"63",
diff --git a/src/types/im.ts b/src/types/im.ts
index 9009d8a..e067ebd 100644
--- a/src/types/im.ts
+++ b/src/types/im.ts
@@ -1,5 +1,6 @@
export interface WSMessage {
+ code: number;
type: string;
msg: AIQMessage;
session_id: number;
diff --git a/src/views/system/kbase-chat.vue b/src/views/system/kbase-chat.vue
index 6d1f92d..4eaf4e0 100644
--- a/src/views/system/kbase-chat.vue
+++ b/src/views/system/kbase-chat.vue
@@ -101,16 +101,10 @@
>发送
-
模型参数
-
temperature
-
+
+ query
+ chat
+
@@ -287,6 +281,7 @@
const ModelList = ref([]);
const selectModel = ref(0);
const temperature = ref(0.5);
+ const selectedValue = ref(1); // 默认选中query
const topP = ref(0.9);
const selectedFiles = ref([]); // 用于存储已选文件
const selectFileVisible = ref(false); // 控制文件选择对话框的显示与隐藏
@@ -392,7 +387,7 @@
});
};
- onMounted(() => {
+ onMounted(async () => {
// if (typeof window !== 'undefined') {
// // 浏览器环境
// md.use(markdownItMermaid);
@@ -414,6 +409,11 @@
socket.value.onmessage = (event) => {
let msg: WSMessage = JSON.parse(event.data);
+ if(msg.code === 150 || msg.code === 151){
+ ElMessage.error("知识库错误:" +msg.type)
+ loading.value = false;
+ return
+ }
const existingMessage = messages.find(
(msg) => msg.role === "assistant" && !msg.finished
);
@@ -453,6 +453,11 @@
socket.value = new WebSocket(url);
console.error("WebSocket 发生错误:", error);
};
+
+ await showSession(); //获取历史会话
+ //默认设置第一个会话
+ loadSession(historySessions.value[0]?.ID || 0);
+
});
onUnmounted(() => {
@@ -535,12 +540,19 @@
let end_msg = {
msg: inputMessage.value,
type: "ollama",
- function: "gen-ai-chat",
+ function: "kbase-chat",
session_id: sessionID.value,
model_id: selectModel.value,
temperature: temperature.value,
top_p: topP.value,
+ is_kbase: true,
+ kbase_type: "query",
};
+ console.log("end_msg:", end_msg);
+ console.log("selectedValue:", selectedValue.value);
+ if (selectedValue.value == 2) {
+ end_msg["kbase_type"] = "chat";
+ }
if (selectedFiles.value.length > 0) {
// 处理选中的文件
console.log("选中的文件:", selectedFiles.value);
@@ -642,8 +654,8 @@
sessionIsShow.value = !sessionIsShow.value;
};
const getShortenedName = (name: string) => {
- if (name.length > 10) {
- return name.slice(0, 10) + "...";
+ if (name.length > 20) {
+ return name.slice(0, 20) + "...";
}
return name;
};
diff --git a/src/views/system/manage-function.vue b/src/views/system/manage-function.vue
index a2181a9..90365e9 100644
--- a/src/views/system/manage-function.vue
+++ b/src/views/system/manage-function.vue
@@ -95,7 +95,7 @@ const getData = async () => {
}
let result = await FindFunctionService(req);
tableData.value = result.data;
- page.total = result.data.length;
+ page.total = 12;
};
getData();