liudong
2024-07-30 ff8f0ad87016c47a4b21b39b62bbcc10254a2c51
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 {