| | |
| | | <el-table :data="fileList" style="margin-top: 20px" border> |
| | | <el-table-column prop="fileName" label="文件名" show-overflow-tooltip /> |
| | | <el-table-column prop="fileType" label="文件类型" width="100" /> |
| | | <el-table-column label="向量化状态" width="120"> |
| | | <template #default="{ row }"> |
| | | <el-tag :type="getStatusType(row.vectorStatus)"> |
| | | {{ getStatusText(row.vectorStatus) }} |
| | | </el-tag> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="chunkCount" label="切片数" width="100" align="center" /> |
| | | <!-- <el-table-column label="向量化状态" width="120">--> |
| | | <!-- <template #default="{ row }">--> |
| | | <!-- <el-tag :type="getStatusType(row.vectorStatus)">--> |
| | | <!-- {{ getStatusText(row.vectorStatus) }}--> |
| | | <!-- </el-tag>--> |
| | | <!-- </template>--> |
| | | <!-- </el-table-column>--> |
| | | <!-- <el-table-column prop="chunkCount" label="切片数" width="100" align="center" />--> |
| | | <el-table-column label="错误信息" width="200" show-overflow-tooltip> |
| | | <template #default="{ row }"> |
| | | <span v-if="row.vectorError" style="color: #f56c6c">{{ row.vectorError }}</span> |
| | |
| | | |
| | | // ============ 知识库问答相关 ============ |
| | | |
| | | // 生成UUID的fallback方案 |
| | | const generateUUID = () => { |
| | | if (typeof crypto !== 'undefined' && crypto.randomUUID) { |
| | | return crypto.randomUUID(); |
| | | } |
| | | // fallback: 兼容不支持 crypto.randomUUID 的环境 |
| | | return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) { |
| | | const r = Math.random() * 16 | 0; |
| | | const v = c === 'x' ? r : (r & 0x3 | 0x8); |
| | | return v.toString(16); |
| | | }); |
| | | }; |
| | | |
| | | // 打开问答弹窗 |
| | | const openChatDialog = (row) => { |
| | | currentKnowledgeBase.value = row; |
| | | chatDialogVisible.value = true; |
| | | memoryId.value = crypto.randomUUID(); |
| | | memoryId.value = generateUUID(); |
| | | messages.value = []; |
| | | inputQuestion.value = ""; |
| | | }; |
| | |
| | | } |
| | | ).then(() => { |
| | | messages.value = []; |
| | | memoryId.value = crypto.randomUUID(); // 重新生成会话ID |
| | | memoryId.value = generateUUID(); // 重新生成会话ID |
| | | ElMessage.success("对话已清空"); |
| | | }).catch(() => { |
| | | // 用户取消 |