知识库功能增强,支持Milvus,并优化相关逻辑

This commit is contained in:
2026-02-24 11:19:53 +08:00
parent 148a08a3f1
commit 094b185c49
10 changed files with 196 additions and 59 deletions

View File

@@ -1,9 +1,9 @@
<script setup lang="ts">
import { onMounted, reactive, ref } from 'vue';
import {onMounted, reactive, ref} from 'vue';
import { $t } from '@easyflow/locales';
import {$t} from '@easyflow/locales';
import { InfoFilled } from '@element-plus/icons-vue';
import {InfoFilled} from '@element-plus/icons-vue';
import {
ElButton,
ElForm,
@@ -16,7 +16,7 @@ import {
ElTooltip,
} from 'element-plus';
import { api } from '#/api/request';
import {api} from '#/api/request';
const props = defineProps({
documentCollectionId: {
@@ -29,18 +29,21 @@ onMounted(() => {
getDocumentCollectionConfig();
});
const searchEngineEnable = ref(false);
const baseOptions = ref<Record<string, any>>({});
const getDocumentCollectionConfig = () => {
api
.get(`/api/v1/documentCollection/detail?id=${props.documentCollectionId}`)
.then((res) => {
const { data } = res;
searchConfig.docRecallMaxNum = data.options.docRecallMaxNum
? Number(data.options.docRecallMaxNum)
const options = data.options || {};
baseOptions.value = { ...options };
searchConfig.docRecallMaxNum = options.docRecallMaxNum
? Number(options.docRecallMaxNum)
: 5;
searchConfig.simThreshold = data.options.simThreshold
? Number(data.options.simThreshold)
searchConfig.simThreshold = options.simThreshold
? Number(options.simThreshold)
: 0.5;
searchConfig.searchEngineType = data.options.searchEngineType || 'lucene';
searchConfig.searchEngineType = options.searchEngineType || 'lucene';
searchEngineEnable.value = !!data.searchEngineEnable;
});
};
@@ -55,6 +58,7 @@ const submitConfig = () => {
const submitData = {
id: props.documentCollectionId,
options: {
...baseOptions.value,
docRecallMaxNum: searchConfig.docRecallMaxNum,
simThreshold: searchConfig.simThreshold,
searchEngineType: searchConfig.searchEngineType,
@@ -65,6 +69,7 @@ const submitConfig = () => {
api
.post('/api/v1/documentCollection/update', submitData)
.then(() => {
baseOptions.value = { ...submitData.options };
ElMessage.success($t('documentCollectionSearch.message.saveSuccess'));
})
.catch((error) => {