完成知识库问答功能
This commit is contained in:
parent
77c7a2f560
commit
b498bd0c9b
|
|
@ -16,30 +16,30 @@ export const usePermissStore = defineStore("permiss", {
|
||||||
"11", //用户管理
|
"11", //用户管理
|
||||||
"12",
|
"12",
|
||||||
"13",
|
"13",
|
||||||
"2",
|
// "2", //组件
|
||||||
"21",
|
// "21",
|
||||||
"22",
|
// "22",
|
||||||
"23",
|
// "23",
|
||||||
"24",
|
// "24",
|
||||||
"25",
|
// "25",
|
||||||
"26",
|
// "26",
|
||||||
"27",
|
// "27",
|
||||||
"28",
|
// "28",
|
||||||
"29",
|
// "29",
|
||||||
"291",
|
// "291",
|
||||||
"292",
|
// "292",
|
||||||
"3",
|
// "3", //表格
|
||||||
"31",
|
// "31",
|
||||||
"32",
|
// "32",
|
||||||
"33",
|
// "33",
|
||||||
"34",
|
// "34",
|
||||||
"4",
|
// "4", //图表
|
||||||
"41",
|
// "41",
|
||||||
"42",
|
// "42",
|
||||||
"5",
|
// "5", //图标
|
||||||
"7",
|
"7", //主题
|
||||||
"6",
|
"6", //附加页面
|
||||||
"8",
|
"8", //个人中心
|
||||||
"61",
|
"61",
|
||||||
"62",
|
"62",
|
||||||
"63",
|
"63",
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
|
|
||||||
export interface WSMessage {
|
export interface WSMessage {
|
||||||
|
code: number;
|
||||||
type: string;
|
type: string;
|
||||||
msg: AIQMessage;
|
msg: AIQMessage;
|
||||||
session_id: number;
|
session_id: number;
|
||||||
|
|
|
||||||
|
|
@ -101,16 +101,10 @@
|
||||||
>发送</el-button
|
>发送</el-button
|
||||||
>
|
>
|
||||||
<div>
|
<div>
|
||||||
<p>模型参数</p>
|
<el-radio-group v-model="selectedValue">
|
||||||
<el-slider v-model="temperature" :min="0" :max="1" :step="0.1"
|
<el-radio :label="1">query</el-radio>
|
||||||
>temperature</el-slider
|
<el-radio :label="2">chat</el-radio>
|
||||||
>
|
</el-radio-group>
|
||||||
<el-slider
|
|
||||||
v-model="topP"
|
|
||||||
:min="0"
|
|
||||||
:max="1"
|
|
||||||
:step="0.1"
|
|
||||||
></el-slider>
|
|
||||||
</div>
|
</div>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="3" style="text-align: center">
|
<el-col :span="3" style="text-align: center">
|
||||||
|
|
@ -287,6 +281,7 @@
|
||||||
const ModelList = ref<Model[]>([]);
|
const ModelList = ref<Model[]>([]);
|
||||||
const selectModel = ref(0);
|
const selectModel = ref(0);
|
||||||
const temperature = ref(0.5);
|
const temperature = ref(0.5);
|
||||||
|
const selectedValue = ref(1); // 默认选中query
|
||||||
const topP = ref(0.9);
|
const topP = ref(0.9);
|
||||||
const selectedFiles = ref<File[]>([]); // 用于存储已选文件
|
const selectedFiles = ref<File[]>([]); // 用于存储已选文件
|
||||||
const selectFileVisible = ref(false); // 控制文件选择对话框的显示与隐藏
|
const selectFileVisible = ref(false); // 控制文件选择对话框的显示与隐藏
|
||||||
|
|
@ -392,7 +387,7 @@
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
onMounted(() => {
|
onMounted(async () => {
|
||||||
// if (typeof window !== 'undefined') {
|
// if (typeof window !== 'undefined') {
|
||||||
// // 浏览器环境
|
// // 浏览器环境
|
||||||
// md.use(markdownItMermaid);
|
// md.use(markdownItMermaid);
|
||||||
|
|
@ -414,6 +409,11 @@
|
||||||
|
|
||||||
socket.value.onmessage = (event) => {
|
socket.value.onmessage = (event) => {
|
||||||
let msg: WSMessage = JSON.parse(event.data);
|
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(
|
const existingMessage = messages.find(
|
||||||
(msg) => msg.role === "assistant" && !msg.finished
|
(msg) => msg.role === "assistant" && !msg.finished
|
||||||
);
|
);
|
||||||
|
|
@ -453,6 +453,11 @@
|
||||||
socket.value = new WebSocket(url);
|
socket.value = new WebSocket(url);
|
||||||
console.error("WebSocket 发生错误:", error);
|
console.error("WebSocket 发生错误:", error);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
await showSession(); //获取历史会话
|
||||||
|
//默认设置第一个会话
|
||||||
|
loadSession(historySessions.value[0]?.ID || 0);
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
onUnmounted(() => {
|
onUnmounted(() => {
|
||||||
|
|
@ -535,12 +540,19 @@
|
||||||
let end_msg = {
|
let end_msg = {
|
||||||
msg: inputMessage.value,
|
msg: inputMessage.value,
|
||||||
type: "ollama",
|
type: "ollama",
|
||||||
function: "gen-ai-chat",
|
function: "kbase-chat",
|
||||||
session_id: sessionID.value,
|
session_id: sessionID.value,
|
||||||
model_id: selectModel.value,
|
model_id: selectModel.value,
|
||||||
temperature: temperature.value,
|
temperature: temperature.value,
|
||||||
top_p: topP.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) {
|
if (selectedFiles.value.length > 0) {
|
||||||
// 处理选中的文件
|
// 处理选中的文件
|
||||||
console.log("选中的文件:", selectedFiles.value);
|
console.log("选中的文件:", selectedFiles.value);
|
||||||
|
|
@ -642,8 +654,8 @@
|
||||||
sessionIsShow.value = !sessionIsShow.value;
|
sessionIsShow.value = !sessionIsShow.value;
|
||||||
};
|
};
|
||||||
const getShortenedName = (name: string) => {
|
const getShortenedName = (name: string) => {
|
||||||
if (name.length > 10) {
|
if (name.length > 20) {
|
||||||
return name.slice(0, 10) + "...";
|
return name.slice(0, 20) + "...";
|
||||||
}
|
}
|
||||||
return name;
|
return name;
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -95,7 +95,7 @@ const getData = async () => {
|
||||||
}
|
}
|
||||||
let result = await FindFunctionService(req);
|
let result = await FindFunctionService(req);
|
||||||
tableData.value = result.data;
|
tableData.value = result.data;
|
||||||
page.total = result.data.length;
|
page.total = 12;
|
||||||
};
|
};
|
||||||
getData();
|
getData();
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue