From 64920403797a80149ac1ba2cd2426ad5db044bec Mon Sep 17 00:00:00 2001
From: zhangxiao <898441624@qq.com>
Date: 星期一, 26 八月 2024 14:58:01 +0800
Subject: [PATCH] fix: 修改settings 备注
---
src/views/dmx/knowledgeLib/test.vue | 145 ++++++++++++++++++++++--------------------------
1 files changed, 67 insertions(+), 78 deletions(-)
diff --git a/src/views/dmx/knowledgeLib/test.vue b/src/views/dmx/knowledgeLib/test.vue
index f632bc4..4dae6dc 100644
--- a/src/views/dmx/knowledgeLib/test.vue
+++ b/src/views/dmx/knowledgeLib/test.vue
@@ -8,18 +8,18 @@
<a-divider style="margin-top: 10px" />
<a-form ref="formRef" :model="form" :style="{width:'100%'}" layout="vertical" @submit="handleSubmit">
<a-form-item field="similarity_threshold" label="鐩镐技搴﹂槇鍊�">
- <a-slider v-model="form.similarity_threshold" :format-tooltip="formatter" />
+ <a-slider v-model="form.similarity_threshold" :step="0.01" :min="0" :max="1" />
</a-form-item>
- <a-form-item field="slider" label="鍏抽敭瀛楃浉浼煎害鏉冮噸" :rules="[{type:'number', min:5,message:'slider is min than 5'}]">
- <a-slider v-model="form.vector_similarity_weight" :format-tooltip="formatter" />
+ <a-form-item field="slider" label="鍏抽敭瀛楃浉浼煎害鏉冮噸" >
+ <a-slider v-model="form.vector_similarity_weight" :step="0.01" :min="0" :max="1" />
</a-form-item>
- <a-form-item field="section" label="Rerank妯″瀷" :rules="[{match:/section one/,message:'璇烽�夋嫨'}]">
+ <a-form-item field="section" label="Rerank妯″瀷" >
<a-space direction="vertical" size="large">
- <a-select :size="'large'" :default-value="form.rerank_id" :style="{width:'100%'}" placeholder="璇烽�夋嫨 ..." allow-clear>
+ <a-select :size="'large'" v-model="form.rerank_id" :style="{width:'100%'}" placeholder="璇烽�夋嫨 ..." allow-clear>
<a-optgroup :label="index" v-for="(item,index) in modelList" :key=index>
<a-option
v-for="(obj) in item"
- :key=obj.fid
+ :key="obj.fid"
:disabled="!obj.available"
:value="obj.llm_name"
>
@@ -29,45 +29,25 @@
</a-select>
</a-space>
</a-form-item>
- <a-form-item field="slider" label="Top-K" :rules="[{type:'number', min:5,message:'slider is min than 5'}]">
+ <a-form-item field="slider" label="Top-K" v-if="form.rerank_id">
<a-slider v-model="form.top_k" :min="1" :max="2048" />
</a-form-item>
- <a-form-item field="section" :rules="[{match:/section one/,message:'璇烽�夋嫨'}]">
+ <a-form-item >
<div class="main-container-form-item-extra">
<div class="main-container-form-item-extra-top">娴嬭瘯鏂囨湰</div>
<div class="main-container-form-item-extra-down">
<a-textarea v-model="form.question" style="height: 10rem;border: 1px solid var(--color-fill-3);border-radius: 4px" placeholder="" allow-clear/>
</div>
<div class="main-container-form-item-extra-btn">
- <a-button type="primary" html-type="submit">娴嬭瘯</a-button>
+ <a-button :disabled="!form.question" :loading="loading" type="primary" html-type="submit">娴嬭瘯</a-button>
</div>
</div>
</a-form-item>
-<!-- <a-form-item>-->
-<!-- <a-space>-->
-<!-- <a-button html-type="submit">Submit</a-button>-->
-<!-- <a-button @click="$refs.formRef.resetFields()">Reset</a-button>-->
-<!-- </a-space>-->
-<!-- </a-form-item>-->
</a-form>
</div>
</div>
<div class="main-container-rt">
<a-collapse style="width: 96%;margin-top: 1rem;margin-left: 2%">
-<!-- <a-collapse-item header="Beijing Toutiao Technology Co., Ltd." key="1">-->
-<!-- <template #extra>-->
-<!-- <icon-copy />-->
-<!-- </template>-->
-<!-- <div>Beijing Toutiao Technology Co., Ltd.</div>-->
-<!-- <div>Beijing Toutiao Technology Co., Ltd.</div>-->
-<!-- </a-collapse-item>-->
-<!-- <a-collapse-item header="Beijing Toutiao Technology Co., Ltd." :key="2">-->
-<!-- <template #extra>-->
-<!-- <a-button type="primary" size="mini" @click.stop="sayHello">hello</a-button>-->
-<!-- </template>-->
-<!-- <div>Beijing Toutiao Technology Co., Ltd.</div>-->
-<!-- <div>Beijing Toutiao Technology Co., Ltd.</div>-->
-<!-- </a-collapse-item>-->
<a-collapse-item header="0/0 閫夊畾鐨勬枃浠�" key="3">
<template #extra>
<a-tag size="small">鍛戒腑鏁�</a-tag>
@@ -83,67 +63,70 @@
</template>
<script lang="ts" setup>
-import { onMounted ,onBeforeMount, reactive, ref } from "vue";
+import { onMounted, onBeforeMount, reactive, ref, watch } from "vue";
import { Message } from '@arco-design/web-vue';
import { kbretrievalTest, queryModelList } from "@/api/kbList";
+// const props = defineProps(['kbId'])
-const props = defineProps({
- kbobj: {
- type: Object,
- default: () => {
- return {}
- }
- }
-})
+// watch(() => props.kbId, (newValue, oldValue) => {
+// console.log('kbId 鍙樺寲浜�', newValue, oldValue);
+// },{
+// deep:true,
+// });
+
+
let visible = ref(false);
let loading = ref(false);
const formRef = ref(null);
+const kbid = ref('');
const modelList = ref({});
let form = reactive({
- kb_id: props.kbobj.kb_id,
page: 1,
question: '',
rerank_id: '',
- similarity_threshold: 20,
+ similarity_threshold: 0.2,
size: 10,
top_k: 1024,
- vector_similarity_weight: 30,
+ vector_similarity_weight: 0.7,
});
const formatter = (value) => {
- return value / 100
-};
-
-
-
-const sayHello = () => {
- Message.info('hello');
+ // return String(Math.round(value / 100))
};
const handleSubmit = async ({values, errors}) => {
+ // console.log(props.kbobj, 'props.kbobj');
if (!form.question){
return
}
- form.similarity_threshold = form.similarity_threshold/100;
- form.vector_similarity_weight = form.vector_similarity_weight/100;
- const data = await kbretrievalTest(form);
- console.log(data);
+ let formObj = {
+ ...form,
+ kb_id:kbid.value,
+ vector_similarity_weight:(1 - form.vector_similarity_weight).toFixed(2),
+ }
+ if(!formObj.rerank_id){
+ delete formObj.top_k;
+ delete formObj.rerank_id;
+ }
+ try {
+ loading.value = true;
+ const data = await kbretrievalTest(formObj);
+ if(data.code == 0){
+ Message.success('娴嬭瘯鎴愬姛');
+ }else{
+ Message.error('娴嬭瘯澶辫触');
+ }
+ loading.value = false;
+ }catch (err){
+ Message.error(err.message);
+ loading.value = false;
+ }
+
}
const handleClick = () => {
visible.value = true;
-};
-const handleBeforeOk = (done) => {
- formRef.value.validate().then(res => {
- console.log('form:', form)
- if (!form.name) {
- done(false)
- }else {
- console.log('璇锋眰鏁版嵁');
-
- }
- })
};
const handleCancel = () => {
visible.value = false;
@@ -151,21 +134,20 @@
const handleOpened =(el) => {
Object.assign(form,{
- name: '',// 鐢ㄦ埛鍚�
- nameJoin: '',// 鏄电О
- post: '',// 宀椾綅
- txt: '',// 澶囨敞
+
});
formRef.value.resetFields();
- // console.log(props.record, 'record');
- // if(props.edit == 'edit'){
- // Object.assign(form,props.record);
- // }
}
+
+const changekbid = (value) => {
+ console.log(value, 'kbid鐨剉alue');
+ kbid.value = value;
+}
+
const queryModel = async (params) => {
try {
const data = await queryModelList(params);
- console.log(data.data, '澶фā鍨嬪垪琛�');
+ // console.log(data.data, '澶фā鍨嬪垪琛�');
modelList.value = {
BAAI: [data.data.BAAI[1]],
Jina: data.data.Jina,
@@ -177,6 +159,12 @@
}
};
+
+
+defineExpose({
+ changekbid
+})
+
onBeforeMount(()=>{
queryModel({})
})
@@ -184,6 +172,8 @@
})
+
+
</script>
<script lang="ts">
@@ -199,14 +189,13 @@
display: flex;
justify-content: space-between;
height: 100%;
- //background: #626aea;
&-lf{
width: 30%;
height: 100%;
- //border: 1px solid #cccccc;
- background: #ffffff;
+ //border: 1px solid var(--color-fill-3);
+ background: var(--color-bg-2);
border-radius: 10px;
- overflow: hidden;
+ overflow: auto;
&-top{
width: 100%;
height: 60px;
@@ -250,8 +239,8 @@
width: 69%;
height: 100%;
//background: #626aea;
- //border: 1px solid #cccccc;
- background: #ffffff;
+ //border: 1px solid var(--color-fill-3);
+ background: var(--color-bg-2);
border-radius: 10px;
}
}
--
Gitblit v1.8.0