feat(knowledge): 重构知识库命中测试功能

- 更新命中测试弹窗样式和布局
-增加新的检索模式选项,包括语义检索和混合检索- 添加权重设置和重排序模型选择功能
- 优化参数配置界面,提高用户体验
-调整知识库列表和搜索功能布局
- 移除不必要的组件引用
This commit is contained in:
Huangzhe
2025-04-28 18:05:45 +08:00
parent 3c8d0e9e6a
commit 464a6b1735
2 changed files with 185 additions and 197 deletions

View File

@@ -7,36 +7,16 @@
<div class="mr20 header" v-if="!editKnowledge">
{{ knowledgeName }}
</div>
<el-input
class="mr20 w400"
size="small"
v-else
v-model="copyKnowledgeName"
>{{ knowledgeName }}</el-input
>
<el-icon
class="fs16 el-icon-edit-outline cursor-pointer"
@click.native="editKnowledgeName"
v-if="!editKnowledge"
/>
<el-input class="mr20 w400" size="small" v-else v-model="copyKnowledgeName">{{ knowledgeName }}</el-input>
<el-icon class="fs16 el-icon-edit-outline cursor-pointer" @click.native="editKnowledgeName"
v-if="!editKnowledge" />
<div v-else>
<el-button
type="primary"
size="medium"
class="render-button"
@click="saveKnowledgeName"
>保存</el-button
>
<el-button
size="medium"
class="render-button"
@click="cancelKnowledgeName"
>取消</el-button
>
<el-button type="primary" size="medium" class="render-button" @click="saveKnowledgeName">保存</el-button>
<el-button size="medium" class="render-button" @click="cancelKnowledgeName">取消</el-button>
</div>
<span class="segment-content">{{
segmentedMode | filterSegmentedMode
}}</span>
}}</span>
</div>
<p class="mt10 fs14" style="line-height: 20px">
描述{{ knowledgeDesc }}
@@ -55,8 +35,7 @@
<el-button type="primary" icon="el-icon-s-promotion" size="medium" class="line-button"
@click="handleHitTestClick">命中测试
</el-button>
<el-button
type="primary" icon="el-icon-edit-outline" size="medium" class="line-button"
<el-button type="primary" icon="el-icon-edit-outline" size="medium" class="line-button"
@click="handleMetaData">元数据
</el-button>
</div>
@@ -64,52 +43,29 @@
<div class="mt20 card-body">
<el-empty v-if="!hasList">
<div class="mt20">
<el-button
type="primary"
size="medium"
class="fs14"
@click="jumpAddKnowledge"
>立即添加</el-button
>
<el-button type="primary" size="medium" class="fs14" @click="jumpAddKnowledge">立即添加</el-button>
</div>
</el-empty>
<div class="table-container" v-else>
<div class="flex align-items-c justify-content-b">
<el-form
:model="form"
label-width="100px"
label-position="top"
inline
>
<el-form :model="form" label-width="100px" label-position="top" inline>
<el-form-item label="知识文件名称" prop="fileName">
<el-input
v-model="form.knowledgeNameLike"
size="medium"
placeholder="请输入知识文件名称"
@keydown.enter.native="search"
></el-input>
<el-input v-model="form.knowledgeNameLike" size="medium" placeholder="请输入知识文件名称"
@keydown.enter.native="search"></el-input>
</el-form-item>
<el-form-item label="知识文件来源" prop="documentSource">
<el-select v-model="form.documentSource" size="medium">
<el-option label="全部" value=""></el-option>
<el-option
v-for="item in documentSourceOptions"
:label="item.label"
:value="item.value"
:key="item.value"
></el-option>
<el-option v-for="item in documentSourceOptions" :label="item.label" :value="item.value"
:key="item.value"></el-option>
</el-select>
</el-form-item>
<el-form-item label="上传用户" prop="createdUserLike">
<el-select v-model="form.createdUserLike" size="medium">
<el-option label="全部" value=""></el-option>
<el-option
v-for="item in createdUserOptions"
:label="item.label"
:value="item.value"
:key="item.value"
></el-option>
<el-option v-for="item in createdUserOptions" :label="item.label" :value="item.value"
:key="item.value"></el-option>
</el-select>
</el-form-item>
<!-- <el-form-item label="关键字">-->
@@ -121,57 +77,27 @@
<!-- ></el-input>-->
<!-- </el-form-item>-->
<el-form-item label="上传时间" prop="times">
<el-date-picker
size="medium"
style="width:100%"
v-model="form.times"
value-format="yyyy-MM-dd"
start-placeholder="开始时间"
end-placeholder="结束时间"
type="daterange"
></el-date-picker>
<el-date-picker size="medium" style="width:100%" v-model="form.times" value-format="yyyy-MM-dd"
start-placeholder="开始时间" end-placeholder="结束时间" type="daterange"></el-date-picker>
</el-form-item>
</el-form>
<div class="mt15 flex align-items-c justify-content-b">
<el-button size="medium" type="primary" @click="search"
>查询</el-button
>
<el-button size="medium" type="primary" @click="search">查询</el-button>
<el-button size="medium" @click="reset">重置</el-button>
</div>
</div>
<r-table
:columns="columns"
:data="list"
:deletion="false"
:total="total"
@page-change="pageChange"
@current-change="currentChange"
:current-page="page"
:page-size="pageSize"
></r-table>
<r-table :columns="columns" :data="list" :deletion="false" :total="total" @page-change="pageChange"
@current-change="currentChange" :current-page="page" :page-size="pageSize"></r-table>
</div>
</div>
<document-drawer
:visible.sync="drawer"
:descriptions="descriptions"
:document-detail="documentDetail"
:active-segment="activeSegment"
@update:visible="val => (drawer = val)"
/>
<document-drawer :visible.sync="drawer" :descriptions="descriptions" :document-detail="documentDetail"
:active-segment="activeSegment" @update:visible="val => (drawer = val)" />
<knowledgeForm
:visible.sync="drawerForm"
:datasetId="$route.query.datasetId"
@update:visible="getKnowledgeDetail"
>
<knowledgeForm :visible.sync="drawerForm" :datasetId="$route.query.datasetId" @update:visible="getKnowledgeDetail">
</knowledgeForm>
<!-- 命中测试抽屉弹窗 -->
<el-drawer
:title="hitTestConfig.title"
:visible.sync="hitTestConfig.visible"
size="60%"
>
<el-drawer :title="hitTestConfig.title" :visible.sync="hitTestConfig.visible" size="80%">
<hitTest></hitTest>
</el-drawer>
@@ -479,7 +405,7 @@ export default {
return item ? item.label : '否'
}
},
created() {},
created() { },
async mounted() {
this.getKnowledgeDetail()
// 获取知识库文件列表