2 lines
4.3 KiB
JavaScript
2 lines
4.3 KiB
JavaScript
import{a as k,E as M}from"./el-form-item-BwXgphUQ.js";import{E as q}from"./index-BeDLK02H.js";import{E as R}from"./index-CsmH9aOV.js";import{d as S,G as B,e as F,w as i,j as y,y as _,z as I,o as O,s as r,f as m,aB as P,x as h,aa as j,A as x,v as A,ac as L}from"./index-qX-n478y.js";import{P as N}from"./PageCard-DwzC15hm.js";import{E as T,D as U}from"./DimensionFormFields-DxZV5CnB.js";import{b as z,u as G,c as H}from"./eval-j-ohrp3e.js";import{g as J}from"./model-C-yfMU_m.js";import"./castArray-Bn5hpKcW.js";import"./_baseClone-DGWZyacP.js";import"./raf-D_6iDDv9.js";import"./index-L-nYG2YU.js";import"./index-Bv5P4D1b.js";import"./el-card-BsyGJwSB.js";import"./_plugin-vue_export-helper-DlAUqK2U.js";import"./el-select-BtaHFwbP.js";import"./index-BBjNlxJ5.js";import"./vnode-uhNuJ02f.js";import"./el-popper-ByY_mp0F.js";import"./el-scrollbar-BUMM2_CD.js";import"./index-hE4aZesL.js";import"./el-tag-B-JGJj9z.js";import"./scroll-Bw8Zs_VJ.js";import"./clamp-Cu8yiuNv.js";import"./toNumber-rF0S7Wk6.js";import"./_baseIteratee-CFLbixU9.js";import"./el-checkbox-BKpzF1Ga.js";import"./omit-D5jdppCn.js";import"./el-radio-group-CKSeC6OM.js";import"./el-input-number-CrBYGegL.js";import"./index-CXO4KiA4.js";import"./el-slider-WpDNlIDh.js";import"./debounce-CNr3KETr.js";import"./el-switch-DjMTcEYa.js";import"./validator-BMOGd-d6.js";import"./el-tooltip-l0sNRNKZ.js";/* empty css */const Se=S({__name:"DimensionCreateView",setup(K){const c=L(),f=A(),n=_(),p=_(!1),u=y(()=>!!c.params.id),s=y(()=>c.params.id),d=_([]);let e=I({name:"",type:"",description:"",eval_model:"",eval_method:"",eval_prompt:"",is_active:!0,is_default:!1,bleu_n:1,output_precision:3,score_min:0,score_max:5,pass_threshold:3});const b={name:[{required:!0,message:"请输入维度名称",trigger:"blur"},{max:50,message:"不超过 50 字符",trigger:"blur"}],type:[{required:!0,message:"请选择指标类型",trigger:"change"}],eval_model:[{required:!0,message:"请选择大模型",trigger:"change"}],eval_method:[{required:!0,message:"请选择评估方式",trigger:"change"}],eval_prompt:[{required:!0,message:"请填写评估 Prompt",trigger:"blur"}]};async function w(){var o,t;if(s.value)try{const a=await z(s.value);Object.assign(e,{name:a.name||"",type:a.type||"",description:a.description||"",eval_model:a.eval_model||"",eval_method:a.eval_method||(a.type?(t=(o=T[a.type])==null?void 0:o[0])==null?void 0:t.value:""),eval_prompt:a.eval_prompt||"",is_active:a.is_active!==!1,is_default:!!a.is_default,bleu_n:a.bleu_n??1,output_precision:a.output_precision??3,score_min:a.score_min??0,score_max:a.score_max??5,pass_threshold:a.pass_threshold??3})}catch{}}async function E(){try{const o=await J()||[];d.value=o.filter(t=>t.purpose==="evaluation")}catch{d.value=[]}}async function D(){n.value&&await n.value.validate(async o=>{if(o){p.value=!0;try{const t={name:e.name,type:e.type,description:e.description,eval_model:e.type==="text_similarity"?null:e.eval_model,eval_method:e.eval_method,eval_prompt:e.type==="text_similarity"?null:e.eval_prompt,is_active:e.is_active,is_default:e.is_default,create_time:new Date().toISOString()};e.type==="text_similarity"&&(t.bleu_n=e.bleu_n,t.output_precision=e.output_precision),e.type==="metric"&&(t.score_min=e.score_min,t.score_max=e.score_max,t.pass_threshold=e.pass_threshold),u.value&&s.value?(await G(s.value,t),x.success("更新成功")):(await H(t),x.success("创建成功")),f.push("/model-eval")}catch{}finally{p.value=!1}}})}function V(){f.back()}return B(()=>{E(),w()}),(o,t)=>{const a=q,v=k,g=R,C=M;return O(),F(N,{title:u.value?"编辑评测维度":"添加评测维度"},{default:i(()=>[r(C,{ref_key:"formRef",ref:n,model:m(e),rules:b,"label-width":"130px",style:{"max-width":"760px"}},{default:i(()=>[r(v,{label:"维度名称",prop:"name"},{default:i(()=>[r(a,{modelValue:m(e).name,"onUpdate:modelValue":t[0]||(t[0]=l=>m(e).name=l),placeholder:"请输入维度名称",maxlength:"50","show-word-limit":""},null,8,["modelValue"])]),_:1}),r(U,{modelValue:m(e),"onUpdate:modelValue":t[1]||(t[1]=l=>P(e)?e.value=l:e=l),"eval-models":d.value},null,8,["modelValue","eval-models"]),r(v,null,{default:i(()=>[r(g,{type:"primary",loading:p.value,onClick:D},{default:i(()=>[h(j(u.value?"保存":"创建"),1)]),_:1},8,["loading"]),r(g,{onClick:V},{default:i(()=>[...t[2]||(t[2]=[h("取消",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1},8,["title"])}}});export{Se as default};
|