liudong
2024-07-30 ff8f0ad87016c47a4b21b39b62bbcc10254a2c51
调试测试接口页面逻辑
4个文件已修改
122 ■■■■■ 已修改文件
src/store/modules/storeMsg/index.ts 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/dmx/knowledgeLib/add.vue 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/dmx/knowledgeLib/index.vue 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/dmx/knowledgeLib/test.vue 91 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/store/modules/storeMsg/index.ts
@@ -2,7 +2,7 @@
const usePinia  = defineStore('user', {
  state: () => ({
    id: '',
    kbobj: {},
  }),
  getters: {
@@ -13,8 +13,8 @@
  actions: {
    // Set user's information
    setkbObj(str) {
      this.id = str;
    setkbObj(obj) {
      this.kbobj = obj;
    },
    // Reset user's information
    resetkbObj() {
src/views/dmx/knowledgeLib/add.vue
@@ -59,9 +59,8 @@
  }
)
// 上传文件
const submitForm = async()=>{
const submitForm = async(done)=>{
  if (files.value && files.value.length > 0) {
    loading.value = true;
    files.value.map((item) => {
      const formData = new FormData()
      formData.append('file', item.file);
@@ -74,7 +73,9 @@
        }
      })
    })
    loading.value = false;
    done(false)
  }else {
    done(false)
  }
}
@@ -96,7 +97,7 @@
  visible.value = true;
};
const handleBeforeOk = (done) => {
  submitForm();
  submitForm(done);
};
const handleCancel = () => {
  visible.value = false;
src/views/dmx/knowledgeLib/index.vue
@@ -36,7 +36,7 @@
        <a-tabs default-active-key="1">
          <a-tab-pane key="1" :title= "t('dmx.list.DataSet')">
            <div class="rt-container-main">
              <a-card  ref="account" class="general-card" :title="$t('')" style="padding-top: 20px">
              <a-card  ref="account" class="general-card" title="" style="padding-top: 20px">
                <a-row>
                  <a-col :flex="1" :span="12">
                    <a-form
@@ -169,7 +169,7 @@
<!--                    <span>{{ parser_ids[record.parser_id]}}</span>-->
<!--                  </template>-->
                  <template #status="{ record }">
                    <a-switch v-model="record.status"  checked-value="1" unchecked-value="0" @change="handleChangeStatus(record)"/>
                    <a-switch v-model="record.status" size="small" checked-value="1" unchecked-value="0" @change="handleChangeStatus(record)"/>
                  </template>
                  <template #run="{ record }">
                    <div style="display: flex;align-items: center;">
@@ -233,7 +233,7 @@
          </a-tab-pane>
          <a-tab-pane key="2" :title="t('dmx.list.test')">
            <div class="rt-container-main">
              <test ref="testRefs" :kbobj="kbobj"></test>
              <test></test>
            </div>
          </a-tab-pane>
          <a-tab-pane key="3" :title="t('dmx.list.disposition')">
@@ -308,8 +308,10 @@
  import test from '@/views/dmx/knowledgeLib/test.vue'
  import tool from '@/views/dmx/knowledgeLib/tool.vue'
  import addDetails from '@/views/dmx/knowledgeLib/addDetails.vue'
import { Message } from "@arco-design/web-vue";
import { parseTime } from "@/utils";
  import { Message } from "@arco-design/web-vue";
  import { parseTime } from "@/utils";
  import { usePinia } from "@/store";
  const store = usePinia();
  type SizeProps = 'mini' | 'small' | 'medium' | 'large';
  type Column = TableColumnData & { checked?: true };
  const account = ref(null)
@@ -328,7 +330,6 @@
  const renderData = ref([]);
  const formModel = ref(generateFormModel());
  const cloneColumns = ref([]);
  const testRefs = ref(null);
  const showColumns = ref<Column[]>([]);
  const size = ref<SizeProps>('medium');
@@ -356,6 +357,7 @@
    selectedTab.value= index;
    // console.log(item.id);
    kbobj= item;
    store.kbobj = kbobj
    fetchData({
      kb_id: kbobj.id,
      page: 1,
@@ -531,7 +533,7 @@
      console.log(tabs.value, 'tabs');
      if(tabs.value.length>0 && tabs.value[0]){
        kbobj = tabs.value[0]
        store.kbobj = kbobj
        fetchData({
          kb_id: kbobj.id,
          page: 1,
src/views/dmx/knowledgeLib/test.vue
@@ -8,10 +8,10 @@
          <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"  />
            </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-slider v-model="form.vector_similarity_weight"  />
            </a-form-item>
            <a-form-item field="section" label="Rerank模型" :rules="[{match:/section one/,message:'请选择'}]">
              <a-space direction="vertical" size="large">
@@ -32,7 +32,7 @@
            <a-form-item field="slider" label="Top-K" :rules="[{type:'number', min:5,message:'slider is min than 5'}]">
              <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">
@@ -43,31 +43,11 @@
                </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>
@@ -86,25 +66,33 @@
import { onMounted, onBeforeMount, reactive, ref, watch } from "vue";
import { Message } from '@arco-design/web-vue';
import { kbretrievalTest, queryModelList } from "@/api/kbList";
const props = defineProps(['kbobj'])
watch(
  ()=>props.kbobj,
  (val)=>{
    console.log(val, '见听到新值');
  },
  {
    deep: true,
    immediate: true
  }
)
import { usePinia } from "../../../store";
const store = usePinia();
// const props = defineProps({
//   kbobj: {
//     type: Object,
//     default: () => {
//       return {}
//     }
//   }
// })
// watch(
//   ()=>props.kbobj,
//   (val)=>{
//     console.log(val, '见听到新值');
//   },
//   {
//     deep: true,
//     immediate: true
//   }
// )
let visible = ref(false);
let loading = ref(false);
const formRef = ref(null);
const modelList = ref({});
let form = reactive({
  kb_id: props.kbobj.id,
  kb_id: store.kbobj.id,
  page: 1,
  question: '',
  rerank_id: '',
@@ -116,40 +104,24 @@
const formatter = (value) => {
  return Math.round(value / 100)
};
const sayHello = (str) => {
  Message.info(str);
  // return String(Math.round(value / 100))
};
const handleSubmit = async ({values, errors}) => {
  // console.log(props.kbobj, 'props.kbobj');
  console.log(store.kbobj.id, 'store');
  if (!form.question){
    return
  }
  let formObj = {...form}
  formObj.kb_id = store.kbobj.id;
  formObj.similarity_threshold = formObj.similarity_threshold/100;
  formObj.vector_similarity_weight = formObj.vector_similarity_weight/100;
   const data = await kbretrievalTest(formObj);
  console.log(data);
}
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;
@@ -157,16 +129,9 @@
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 queryModel = async (params) => {
  try {