From b0825070ef2c080dc51e5e86c6f2b57ed169da5e Mon Sep 17 00:00:00 2001 From: zhangxiao <898441624@qq.com> Date: 星期三, 07 八月 2024 16:00:10 +0800 Subject: [PATCH] Merge branch 'master' of http://192.168.5.5:10010/r/web/flow_web --- src/views/dmx/IntelligentAgent/components/agentConfig.vue | 2 src/views/dmx/knowledgeLib/addKnow.vue | 21 +------ src/views/dmx/knowledgeLib/test.vue | 16 +++- src/views/session/sessionRecordsManager/index.vue | 4 src/views/dmx/knowledgeLib/index.vue | 89 +++++++++++++++++++++-------- src/views/dmx/knowledgeLib/config.vue | 13 ++-- 6 files changed, 88 insertions(+), 57 deletions(-) diff --git a/src/views/dmx/IntelligentAgent/components/agentConfig.vue b/src/views/dmx/IntelligentAgent/components/agentConfig.vue index 75c56df..ff93fc2 100644 --- a/src/views/dmx/IntelligentAgent/components/agentConfig.vue +++ b/src/views/dmx/IntelligentAgent/components/agentConfig.vue @@ -344,7 +344,7 @@ rerank_id:'', top_k:1024, }); -const height = ref('calc(100vh - 520px)'); +const height = ref('calc(500px)'); const props = defineProps(['typeAngint', 'formData']); const emit = defineEmits(['queryList']); const columns = [ diff --git a/src/views/dmx/knowledgeLib/addKnow.vue b/src/views/dmx/knowledgeLib/addKnow.vue index f94af22..1146c01 100644 --- a/src/views/dmx/knowledgeLib/addKnow.vue +++ b/src/views/dmx/knowledgeLib/addKnow.vue @@ -26,12 +26,8 @@ import { Message } from '@arco-design/web-vue'; const visible = ref(false); -const loading = ref(false); const form = reactive({ name: '',// 鐢ㄦ埛鍚� - nameJoin: '',// 鏄电О - post: '',// 宀椾綅 - txt: '',// 澶囨敞 }); const formRef = ref(null); @@ -45,7 +41,7 @@ } -const emit = defineEmits(['knowledgeData']) +const emit = defineEmits(['getknowledge','getKbdetail']) const handleSubmit = async({values, errors}) => { if(errors) return; @@ -55,7 +51,8 @@ if(data.code == 0){ visible.value = false; Message.success('鍒涘缓鎴愬姛'); - emit("knowledgeData"); + // emit('getKbdetail',data.data.kb_id); + emit("getknowledge",data.data.kb_id); } } @@ -80,9 +77,6 @@ const handleOpened =(el) => { Object.assign(form,{ name: '',// 鐢ㄦ埛鍚� - nameJoin: '',// 鏄电О - post: '',// 宀椾綅 - txt: '',// 澶囨敞 }); formRef.value.resetFields(); } @@ -94,13 +88,4 @@ }) -</script> - -<script lang="ts"> -export default { - name: 'add', - methods: { - - } -}; </script> \ No newline at end of file diff --git a/src/views/dmx/knowledgeLib/config.vue b/src/views/dmx/knowledgeLib/config.vue index c55b0d6..3f3e832 100644 --- a/src/views/dmx/knowledgeLib/config.vue +++ b/src/views/dmx/knowledgeLib/config.vue @@ -68,9 +68,9 @@ <!-- <a-option value="1">鑻辨枃</a-option>--> <!-- </a-select>--> <!-- </a-form-item>--> - <a-form-item field="section" label="宓屽叆妯″瀷" :rules="[{match:/section one/,message:'璇烽�夋嫨'}]"> + <a-form-item field="section" label="宓屽叆妯″瀷"> <a-space direction="vertical" size="large"> - <a-select :size="'large'" v-model="form.embd_id" :style="{width:'100%'}" placeholder="璇烽�夋嫨 ..." disabled allow-clear> + <a-select :size="'large'" v-model="form.embd_id" :style="{width:'100%'}" placeholder="璇烽�夋嫨 ..." :disabled="kbObj.chunk_num>0 || kbObj.token_num>0" allow-clear> <a-optgroup :label="index" v-for="(item,index) in modelList" :key=index> <a-option v-for="(obj) in item" @@ -83,8 +83,8 @@ </a-select> </a-space> </a-form-item> - <a-form-item field="section" label="瑙f瀽鏂规硶" :rules="[{match:/section one/,message:'璇烽�夋嫨'}]"> - <a-select v-model="form.parser_id" placeholder="璇烽�夋嫨" disabled allow-clear> + <a-form-item field="parser_id" label="瑙f瀽鏂规硶"> + <a-select v-model="form.parser_id" placeholder="璇烽�夋嫨" :disabled="kbObj.chunk_num>0 || kbObj.token_num>0" allow-clear> <a-option v-for="item in parser_ids" :key="item.value" :label="item.name" :value="item.value"></a-option> </a-select> </a-form-item> @@ -196,9 +196,8 @@ const props = defineProps(['kbtenantInfo']) // const emit = defineEmits(['upTabdateItem']) - const kbtenantInfo = props.kbtenantInfo; - +// 瑙f瀽鏂规硶鍒楄〃 let parser_ids = kbtenantInfo.parser_ids.split(",").map((item) => { const [value1, value2] = item.split(":"); return { @@ -305,7 +304,7 @@ const data = await kbUpdate(parms); if(data.code == '0'){ Message.success("閰嶇疆鎴愬姛"); - window.location.reload(); + // window.location.reload(); } // visible.value = false; // emit('upTabdateItem') diff --git a/src/views/dmx/knowledgeLib/index.vue b/src/views/dmx/knowledgeLib/index.vue index a28e977..e3dc639 100644 --- a/src/views/dmx/knowledgeLib/index.vue +++ b/src/views/dmx/knowledgeLib/index.vue @@ -8,7 +8,7 @@ :placeholder="$t('cardList.searchInput.placeholder')" style="width: 130px;" /> - <addKnow @knowledgeData="knowledgeData"></addKnow> + <addKnow @getknowledge="getknowledge" @getKbdetail="getKbdetail"></addKnow> </div> <div class="lf-container-down"> <a-scrollbar style="height:56rem;overflow: auto;"> @@ -32,8 +32,8 @@ </a-scrollbar> </div> </div> - <div class="rt-container"> - <a-tabs default-active-key="1"> + <div class="rt-container" v-if="tabs.length > 0"> + <a-tabs :activeKey="activeKey" @change="handleTabChange"> <a-tab-pane key="1" :title= "t('dmx.list.DataSet')"> <div class="rt-container-main"> <a-card ref="account" class="general-card" title="" style="padding-top: 20px"> @@ -54,7 +54,7 @@ @change="search" /> <!--鏂板缓--> - <span v-if="tabs.length > 0"> + <span> <add :kbobj="kbobj" @changeFetchData="changeFetchData"/> </span> </a-col> @@ -359,6 +359,7 @@ const size = ref<SizeProps>('medium'); let visible = ref(false) let keywords = ref('') + let activeKey = ref('1') let detailsShow = ref(false) let selectedTab = ref(0) let testForm = ref(null) @@ -371,15 +372,15 @@ let parser_ids = reactive({}) let seeObj = reactive({}) let kbtenantInfo = reactive({ - "asr_id": "paraformer-realtime-8k-v1", - "embd_id": "BAAI/bge-large-zh-v1.5", - "img2txt_id": "qwen-vl-max", - "llm_id": "qwen-plus", - "name": "wanghao鈥榮 Kingdom", - "parser_ids": "naive:General,qa:Q&A,resume:Resume,manual:Manual,table:Table,paper:Paper,book:Book,laws:Laws,presentation:Presentation,picture:Picture,one:One", - "rerank_id": "BAAI/bge-reranker-v2-m3", - "role": "owner", - "tenant_id": "948fc6fa41ab11ef8fb80242ac120004", + asr_id: "paraformer-realtime-8k-v1", + embd_id: "BAAI/bge-large-zh-v1.5", + img2txt_id: "qwen-vl-max", + llm_id: "qwen-plus", + name: "wanghao鈥榮 Kingdom", + parser_ids: "naive:General,qa:Q&A,resume:Resume,manual:Manual,table:Table,paper:Paper,book:Book,laws:Laws,presentation:Presentation,picture:Picture,one:One", + rerank_id: "BAAI/bge-reranker-v2-m3", + role: "owner", + tenant_id: "948fc6fa41ab11ef8fb80242ac120004", parser_idObj:{} }) let tabs = ref([]) @@ -389,13 +390,12 @@ // console.log(item.id); kbobj= item; kbId = kbobj.id; - testForm.value.changekbid(kbId); - configForm.value.changekbObj(kbobj); fetchData({ kb_id: kbobj.id, page: 1, page_size: 20 }) + getKbdetail(kbobj.id) } const basePagination: Pagination = { @@ -502,8 +502,6 @@ const data = await queryKbDocumentList(params); console.log(data, 'data'); if(data.code=='0'){ - // 璇︽儏 - // const kbtenantInfo = await queryKbtenantInfo(); parser_ids = kbtenantInfo.parser_ids.split(',').reduce((acc, pair) => { const [key, value] = pair.split(':'); acc[key] = value; @@ -523,10 +521,6 @@ pagination.current = params.page; pagination.total = data.data.total; - // 鏌ヨ鐭ヨ瘑搴撹鎯� - // kbdetail = await queryKbdetail({ - // kb_id:params.kb_id, - // }); } } catch (err) { @@ -565,13 +559,15 @@ if(tabs.value.length>0 && tabs.value[0]){ kbobj = tabs.value[0] kbId = kbobj.id; - testForm.value.changekbid(kbId); - configForm.value.changekbObj(kbobj); + activeKey.value = '1'; fetchData({ kb_id: kbobj.id, page: 1, page_size: 20 }) + getKbdetail(kbobj.id) + }else{ + } // renderData.value = data.list; // console.log(renderData, 'renderData'); @@ -583,6 +579,47 @@ setLoading(false); } }; + + + const getKbdetail = async (kb_id) => { + // 鏌ヨ鐭ヨ瘑搴撹鎯� + const data = await queryKbdetail({ + kb_id:kb_id, + }); + kbdetail = data.data; + testForm.value.changekbid(kbdetail.id); + configForm.value.changekbObj(kbdetail); + }; + + + + +const getknowledge = async (id) => { + setLoading(true); + try { + const { data } = await queryKbList({ page: 1, page_size: 20 }); + console.log(data, '鏌ヨ鐭ヨ瘑搴撳垪琛�'); + tabs.value = data; + if(tabs.value.length>0){ + // 瀹氫綅鍒版柊澧炵殑鐭ヨ瘑搴撳崟鍏� + selectedTab.value = tabs.value.findIndex(item=>item.id==id); + getKbdetail(id) // 鑾峰彇璇︽儏 + activeKey.value = '3'; + // 璇︽儏 + // const kbtenantInfo = await queryKbtenantInfo(); + } + + + + + + + } catch (err) { + // you can report use errorHandler or other + } finally { + setLoading(false); + } +}; const deleteKnowledge = async (id) => { let data = await deleteKnow({ @@ -596,7 +633,11 @@ const reset = () => { formModel.value = generateFormModel(); }; - + function handleTabChange(key: string) { + // 澶勭悊鏍囩鏀瑰彉浜嬩欢 + console.log('Changed to tab:', key); + activeKey.value=key; + } const handleSelectDensity = ( val: string | number | Record<string, any> | undefined, e: Event diff --git a/src/views/dmx/knowledgeLib/test.vue b/src/views/dmx/knowledgeLib/test.vue index 780a97d..db1f6c3 100644 --- a/src/views/dmx/knowledgeLib/test.vue +++ b/src/views/dmx/knowledgeLib/test.vue @@ -29,7 +29,7 @@ </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 === 'Jina' || form.rerank_id === 'BAAI'"> <a-slider v-model="form.top_k" :min="1" :max="2048" /> </a-form-item> <a-form-item > @@ -39,7 +39,7 @@ <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" type="primary" html-type="submit">娴嬭瘯</a-button> </div> </div> </a-form-item> @@ -87,7 +87,7 @@ similarity_threshold: 0.2, size: 10, top_k: 1024, - vector_similarity_weight: 0.3, + vector_similarity_weight: 0.7, }); @@ -103,8 +103,13 @@ let formObj = { ...form, kb_id:kbid.value, + vector_similarity_weight:(1 - form.vector_similarity_weight).toFixed(2), } - const data = await kbretrievalTest(formObj); + if(!formObj.rerank_id){ + delete formObj.top_k; + delete formObj.rerank_id; + } + const data = await kbretrievalTest(formObj); } const handleClick = () => { @@ -122,13 +127,14 @@ } 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, diff --git a/src/views/session/sessionRecordsManager/index.vue b/src/views/session/sessionRecordsManager/index.vue index 2ac9a46..fb879ba 100644 --- a/src/views/session/sessionRecordsManager/index.vue +++ b/src/views/session/sessionRecordsManager/index.vue @@ -142,7 +142,7 @@ avatar="https://p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/3ee5f13fb09879ecb5185e440cef6eb9.png~tplv-uwbnlip3yd-webp.webp" > <template #content> - <div :class="{ light: theme === 'light' }">{{ + <div>{{ sessionDetail.content }} </div> @@ -174,7 +174,7 @@ auto-size v-model="displayedText" class="chat-item-answer" - style="background-color: rgba(63, 64, 79, 1)" + style="background-color:rgba(192,172,172,0.88)" > </a-textarea> </template> -- Gitblit v1.8.0