|
|
|
|
|
import{d as R,az as B,D as b,o as m,c as r,M as d,s as t,w as o,ad as f,e as v,g as _,x as w,aa as V,q as E,f as I,aA as L,aC as G,j as U,aD as k,aE as j}from"./index-DdQQsURt.js";import{a as q}from"./el-form-item-Bf1ASn5W.js";import{E as z}from"./index-CMWHMPp0.js";import{E as H,a as Y}from"./el-select-BslWanml.js";import{a as J,E as K}from"./el-checkbox-C30U6HyK.js";import{E as Q,b as W}from"./el-radio-group-BZw_vTIf.js";import{E as X}from"./el-input-number-8Eh01QWw.js";import{E as Z}from"./el-slider-DkuDEniy.js";import{E as $}from"./el-switch-Dhsc7NkN.js";import"./el-popper-B8UgShUN.js";import"./el-tooltip-l0sNRNKZ.js";/* empty css */import"./el-scrollbar-DrHhzmuH.js";import"./el-tag-CPRZ_Dgw.js";import{_ as ee}from"./_plugin-vue_export-helper-DlAUqK2U.js";const M={classification:[{value:"standard",name:"标准匹配",desc:"根据预设标准评估"},{value:"sentiment",name:"情感分析",desc:"识别文本情感倾向"},{value:"custom",name:"自定义评分器",desc:"自定义评估规则"}],metric:[{value:"metric_standard",name:"综合评测",desc:"根据预设标准评分"},{value:"semantic",name:"语义相似度",desc:"计算语义相似程度"},{value:"custom",name:"自定义评分器",desc:"自定义评估规则"}],text_similarity:[{value:"bleu_4",name:"BLEU-4",desc:"N-gram 精确度评估"},{value:"cosine",name:"Cosine",desc:"余弦相似度"},{value:"rouge_1",name:"ROUGE-1",desc:"unigram 重叠评估"},{value:"rouge_2",name:"ROUGE-2",desc:"bigram 重叠评估"},{value:"rouge_4",name:"ROUGE-4",desc:"4-gram 重叠评估"}]},y={standard:`# 角色
|
2026-07-27 09:50:33 +08:00
|
|
|
|
请在此编写您的自定义评估 Prompt...`},le={class:"method-desc"},ae={class:"method-desc"},te={style:{width:"100%"}},c=.5,oe=R({__name:"DimensionFormFields",props:L({evalModels:{},showDescription:{type:Boolean,default:!0},showStatusSettings:{type:Boolean,default:!0},allowedTypes:{default:()=>["classification","metric","text_similarity"]}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(p){const P=G(async()=>(await k(()=>Promise.resolve({}),__vite__mapDeps([0])),(await k(()=>import("./index-5HeZc9rh.js").then(l=>l.w),__vite__mapDeps([1,2,3]))).MdEditor)),D=p,e=B(p,"modelValue"),N=U(()=>Object.entries(j).filter(([u])=>D.allowedTypes.includes(u)).map(([u,l])=>({value:u,label:l}))),x=U(()=>e.value.type?M[e.value.type]||[]:[]);return b(()=>e.value.type,u=>{var s,i;if(!u)return;const l=((i=(s=M[u])==null?void 0:s[0])==null?void 0:i.value)||"";e.value.eval_method=u==="text_similarity"?[l]:l,u!=="text_similarity"&&y[l]&&(e.value.eval_prompt=y[l])},{flush:"sync"}),b(()=>e.value.eval_method,u=>{if(e.value.type==="text_similarity"||!u)return;const l=Array.isArray(u)?u[0]:u;l&&y[l]&&(e.value.eval_prompt=y[l])},{flush:"sync"}),b(()=>[e.value.type,e.value.score_min,e.value.score_max],([u,l,s])=>{if(u==="metric"){if(s<=l){e.value.score_max=l+c;return}e.value.pass_threshold=Math.min(Math.max(e.value.pass_threshold,l),s)}},{flush:"sync"}),(u,l)=>{const s=Y,i=H,n=q,O=z,S=W,C=Q,T=K,A=J,h=X,F=Z,g=$;return m(),r(d,null,[t(n,{label:"指标类型",prop:"type"},{default:o(()=>[t(i,{modelValue:e.value.type,"onUpdate:modelValue":l[0]||(l[0]=a=>e.value.type=a),placeholder:"请选择指标类型",style:{width:"100%"}},{default:o(()=>[(m(!0),r(d,null,f(N.value,a=>(m(),v(s,{key:a.value,label:a.label,value:a.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),p.showDescription?(m(),v(n,{key:0,label:"描述"},{default:o(()=>[t(O,{modelValue:e.value.description,"onUpdate:modelValue":l[1]||(l[1]=a=>e.value.description=a),type:"textarea",rows:2,maxlength:"200","show-word-limit":""},null,8,["modelValue"])]),_:1})):_("",!0),e.value.type==="classification"||e.value.type==="metric"?(m(),r(d,{key:1},[t(n,{label:"选择大模型",prop:"eval_model"},{default:o(()=>[t(i,{modelValue:e.value.eval_model,"onUpdate:modelValue":l[2]||(l[2]=a=>e.value.eval_model=a),placeholder:"请选择评测模型",filterable:"",style:{width:"100%"}},{default:o(()=>[(m(!0),r(d,null,f(p.evalModels,a=>(m(),v(s,{key:a.id,label:a.name,value:a.name},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),t(n,{label:"评估方式",prop:"eval_method"},{default:o(()=>[t(C,{modelValue:e.value.eval_method,"onUpdate:modelValue":l[3]||(l[3]=a=>e.value.eval_method=a)},{default:o(()=>[(m(!0),r(d,null,f(x.value,a=>(m(),v(S,{key:a.value,value:a.value},{default:o(()=>[w(V(a.name)+" ",1),E("span",le,V(a.desc),1)]),_:2},1032,["value"]))),128))]),_:1},8,["modelValue"])]),_:1}),t(n,{label:"评估 Prompt",prop:"eval_prompt"},{default:o(()=>[t(I(P),{modelValue:e.value.eval_prompt,"onUpdate:modelValue":l[4]||(l[4]=a=>e.value.eval_prompt=a),language:"zh-CN","toolbars-exclude":["github","save"],style:{height:"320px"}},null,8,["modelValue"])]),_:1})],64)):_("",!0),e.value.type==="text_similarity"?(m(),r(d,{key:2},[t(n,{label:"评估方式",prop:"eval_method"},{default:o(()=>[t(A,{modelValue:e.value.eval_method,"onUpdate:modelValue":l[5]||(l[5]=a=>e.value.eval_method=a)},{default:o(()=>[(m(!0),r(d,null,f(x.value,a=>(m(),v(T,{key:a.value,value:a.value},{default:o(()=>[w(V(a.name)+" ",1),E("span",ae,V(a.desc),1)]),_:2},1032,["value"]))),128))]),_:1},8,["modelValue"])]),_:1}),t(n,{label:"BLEU n-gram"},{default:o(()=>[t(i,{modelValue:e.value.bleu_n,"onUpdate:modelValue":l[6]||(l[6]=a=>e.value.bleu_n=a),style:{width:"160px"}},{default:o(()=>[t(s,{value:1,label:"1-gram"}),t(s,{value:2,label:"2-gram"}),t(s,{value:3,label:"3-gram"}),t(s,{value:4,label:"4-gram"})]),_:1},8,["modelValue"])]),_:1}),t(n,{label:"输出精度"},{default:o(()=>[t(i,{modelValue:e.value.output_precision,"onUpdate:modelValue":l[7]||(l[7]=a=>e.value.output_precision=a),style:
|