import{E as H}from"./index-vO_1gr94.js";import{E as Q}from"./index-fou6gWp2.js";import{E as W}from"./el-tag-vRn4tGbY.js";import{a as X,E as Y}from"./el-select-Da0omZ_1.js";import{E as Z}from"./el-pagination-DGmmkvDW.js";import{E as ee}from"./el-progress-BdmPJo3g.js";import{a as le,E as te}from"./el-table-iL3MK2jJ.js";import{v as ae}from"./directive-C9BBlUJO.js";import{d as se,G as oe,K as ne,e as w,w as u,ac as ie,y as v,o as n,c as d,q as e,aa as s,s as i,x as k,g as c,M as N,ad as B,f as re,j as E}from"./index-DFFSWMIQ.js";import"./el-scrollbar-DnriQ_Hb.js";import"./el-popper-6k5HVep-.js";import"./el-tooltip-l0sNRNKZ.js";import"./el-checkbox-D1w1-KT0.js";import{P as ue}from"./PageCard-Bg96ZDnD.js";import{_ as de}from"./ModelStatusTag.vue_vue_type_script_setup_true_lang-DYoEynCl.js";import{a as me}from"./eval-Dx_7-8RT.js";import{_ as pe}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./raf-DrT9yTBr.js";import"./index-BiOht4xG.js";import"./index-N7_DaQJo.js";import"./index-DyW30n0U.js";import"./castArray-DQVag4N8.js";import"./vnode-S7qfgrnP.js";import"./index-BjL9k8HY.js";import"./scroll-DUsvf12G.js";import"./clamp-B_k3W3zt.js";import"./toNumber-BM1gvn-G.js";import"./_baseIteratee-BZMlnFwo.js";import"./_baseClone-BNE8zOd0.js";import"./debounce-DZ4Wx3jt.js";import"./omit-DhpC2Pb_.js";import"./el-card-Qmbndz6K.js";import"./status-Dl1fykxa.js";const ve={class:"page-heading"},ce={class:"heading-copy"},_e={class:"heading-row"},ge={class:"task-meta"},fe={key:0,class:"load-state is-error",role:"alert"},ye={class:"overview-grid","aria-label":"评测概览"},be={class:"overview-item score-hero"},he={class:"overview-item"},we={class:"overview-item"},ke={class:"overview-item overview-time"},Ee={class:"overall-review","aria-labelledby":"overall-review-title"},xe={class:"review-copy"},Ve={class:"section-heading"},ze={class:"review-text"},Ce={class:"suggestion-block"},De={key:0,class:"improvement-list"},Ne={key:1,class:"empty-copy"},Te={key:0,class:"dimension-summary","aria-labelledby":"dimension-title"},Se={class:"dimension-grid"},Pe={class:"dimension-label"},Be={class:"sample-section","aria-labelledby":"sample-results-title"},Ie={class:"sample-toolbar"},$e={class:"sample-filters","aria-label":"样本筛选"},je={class:"sample-detail-grid"},Le={class:"evaluation-reason"},Me={key:0,class:"error-type"},Ue={key:1,class:"sample-dimensions"},Fe={class:"dimension-score-list"},Re={class:"cell-copy"},Ke={class:"cell-copy"},qe={class:"cell-copy"},Ge={class:"sample-score"},Je={key:1,class:"load-state sample-empty"},Oe=se({__name:"EvalDetailView",setup(Ae){const I=ie().params.id,T=v(!0),x=v(""),a=v(null),S=v(""),V=v(""),z=v(1),_=v(10),g=E(()=>{var l;const o=S.value.trim().toLowerCase();return(((l=a.value)==null?void 0:l.samples)||[]).filter(r=>{const D=!V.value||r.judgement===V.value,f=[r.input,r.reference_answer,r.model_output,r.evaluation_reason,r.error_type].filter(Boolean).join(" ").toLowerCase();return D&&(!o||f.includes(o))})}),M=E(()=>{const o=(z.value-1)*_.value;return g.value.slice(o,o+_.value)}),$=E(()=>{var l,r;const o=((l=a.value)==null?void 0:l.sample_count)||0;return o?Math.round((((r=a.value)==null?void 0:r.completed_count)||0)/o*100):0}),U=E(()=>{var l,r;const o=((l=a.value)==null?void 0:l.completed_count)||0;return o?Math.round((((r=a.value)==null?void 0:r.passed_count)||0)/o*100):0}),F=E(()=>{var o,l;return C((o=a.value)==null?void 0:o.overall_score,(l=a.value)==null?void 0:l.overall_score_max)});function R(o){if(!o)return"-";const l=new Date(o);return Number.isNaN(l.getTime())?o:l.toLocaleString("zh-CN",{hour12:!1})}function C(o,l){if(o==null)return"-";const r=Number.isInteger(o)?0:2;return`${o.toFixed(r)}${l!=null?` / ${l}`:""}`}function K(o){return o==="正确"?"success":o==="部分正确"?"warning":o==="错误"?"danger":"info"}function j(){z.value=1}async function L(){T.value=!0,x.value="";try{a.value=await me(I)}catch{a.value=null,x.value="评测详情加载失败,请稍后重试。"}finally{T.value=!1}}return oe(L),(o,l)=>{const r=Q,D=ee,f=W,q=H,P=X,G=Y,m=te,J=le,O=Z,A=ae;return ne((n(),w(ue,{class:"eval-detail-page"},{header:u(()=>{var y,b,t,h,p;return[e("div",ve,[e("div",ce,[e("div",_e,[e("h1",null,s(((y=a.value)==null?void 0:y.eval_task_name)||"评测任务详情"),1),a.value?(n(),w(de,{key:0,status:a.value.status},null,8,["status"])):c("",!0)]),e("dl",ge,[e("div",null,[l[4]||(l[4]=e("dt",null,"任务 ID",-1)),e("dd",null,s(((b=a.value)==null?void 0:b.id)||re(I)),1)]),e("div",null,[l[5]||(l[5]=e("dt",null,"评测模型",-1)),e("dd",null,s(((t=a.value)==null?void 0:t.model_name)||"-"),1)]),e("div",null,[l[6]||(l[6]=e("dt",null,"测试集",-1)),e("dd",null,s(((h=a.value)==null?void 0:h.dataset)||"-"),1)]),e("div",null,[l[7]||(l[7]=e("dt",null,"评测指标",-1)),e("dd",null,s(((p=a.value)==null?void 0:p.metric)||"-"),1)])])])])]}),default:u(()=>{var y,b;return[x.value?(n(),d("div",fe,[l[9]||(l[9]=e("i",{class:"fa fa-exclamation-circle","aria-hidden":"true"},null,-1)),l[10]||(l[10]=e("h2",null,"无法加载评测详情",-1)),e("p",null,s(x.value),1),i(r,{type:"primary",onClick:L},{default:u(()=>[...l[8]||(l[8]=[k("重新加载",-1)])]),_:1})])):a.value?(n(),d(N,{key:1},[e("section",ye,[e("div",be,[l[11]||(l[11]=e("span",null,"综合得分",-1)),e("strong",null,s(F.value),1),l[12]||(l[12]=e("small",null,"大模型综合评分",-1))]),e("div",he,[l[13]||(l[13]=e("span",null,"样本通过率",-1)),e("strong",null,s(a.value.completed_count?`${U.value}%`:"-"),1),e("small",null,"通过 "+s(a.value.passed_count||0)+" / 已评测 "+s(a.value.completed_count),1)]),e("div",we,[l[14]||(l[14]=e("span",null,"评测进度",-1)),e("strong",null,s(a.value.completed_count)+" / "+s(a.value.sample_count),1),i(D,{percentage:$.value,"show-text":!1,"stroke-width":5},null,8,["percentage"])]),e("div",ke,[e("span",null,s(a.value.completed_time?"完成时间":"创建时间"),1),e("strong",null,s(R(a.value.completed_time||a.value.create_time)),1),e("small",null,s(a.value.completed_time?"评测任务已完成":`当前进度 ${$.value}%`),1)])]),e("section",Ee,[e("div",xe,[e("div",Ve,[l[15]||(l[15]=e("div",null,[e("h2",{id:"overall-review-title"},"大模型综合评价"),e("p",null,"基于全部已评测样本生成的总体结论")],-1)),a.value.evaluator_model?(n(),w(f,{key:0,type:"primary",size:"small"},{default:u(()=>[k(" 评审模型:"+s(a.value.evaluator_model),1)]),_:1})):c("",!0)]),e("p",ze,s(a.value.overall_evaluation||(a.value.status==="running"?"评测仍在进行,综合评价将在样本评分完成后生成。":"暂无综合评价。")),1),e("div",Ce,[l[16]||(l[16]=e("h3",null,"改进建议",-1)),(y=a.value.improvement_suggestions)!=null&&y.length?(n(),d("ul",De,[(n(!0),d(N,null,B(a.value.improvement_suggestions,t=>(n(),d("li",{key:t},s(t),1))),128))])):(n(),d("p",Ne,"暂无改进建议。"))])])]),(b=a.value.dimension_summary)!=null&&b.length?(n(),d("section",Te,[l[17]||(l[17]=e("div",{class:"section-heading compact-heading"},[e("div",null,[e("h2",{id:"dimension-title"},"维度表现"),e("p",null,"查看各评测维度的得分与样本通过率")])],-1)),e("div",Se,[(n(!0),d(N,null,B(a.value.dimension_summary,t=>(n(),d("div",{key:t.name,class:"dimension-item"},[e("div",Pe,[e("strong",null,s(t.name),1),e("span",null,s(C(t.score,t.max_score)),1)]),i(D,{percentage:t.pass_rate,"stroke-width":7},null,8,["percentage"])]))),128))])])):c("",!0),e("section",Be,[e("div",Ie,[e("div",null,[l[18]||(l[18]=e("h2",{id:"sample-results-title"},"测试集样本评测结果",-1)),e("p",null,"共 "+s(g.value.length)+" 条结果,展开行可查看评分依据与子维度分数",1)]),e("div",$e,[i(q,{modelValue:S.value,"onUpdate:modelValue":l[0]||(l[0]=t=>S.value=t),clearable:"",placeholder:"搜索问题、回答或评价","aria-label":"搜索样本",onInput:j},{prefix:u(()=>[...l[19]||(l[19]=[e("i",{class:"fa fa-search","aria-hidden":"true"},null,-1)])]),_:1},8,["modelValue"]),i(G,{modelValue:V.value,"onUpdate:modelValue":l[1]||(l[1]=t=>V.value=t),clearable:"",placeholder:"全部判定","aria-label":"按判定筛选",onChange:j},{default:u(()=>[i(P,{label:"正确",value:"正确"}),i(P,{label:"部分正确",value:"部分正确"}),i(P,{label:"错误",value:"错误"})]),_:1},8,["modelValue"])])]),g.value.length?(n(),w(J,{key:0,class:"sample-results-table",data:M.value,"row-key":"id","table-layout":"fixed"},{default:u(()=>[i(m,{type:"expand",width:"48"},{default:u(({row:t})=>{var h;return[e("div",je,[e("div",Le,[l[20]||(l[20]=e("span",null,"大模型评分依据",-1)),e("p",null,s(t.evaluation_reason||"暂无评分依据。"),1)]),t.error_type?(n(),d("div",Me,[l[21]||(l[21]=e("span",null,"错误类型",-1)),i(f,{type:"danger",size:"small"},{default:u(()=>[k(s(t.error_type),1)]),_:2},1024)])):c("",!0),(h=t.dimension_scores)!=null&&h.length?(n(),d("div",Ue,[l[22]||(l[22]=e("span",null,"子维度评分",-1)),e("div",Fe,[(n(!0),d(N,null,B(t.dimension_scores,p=>(n(),d("span",{key:p.name},[k(s(p.name)+" ",1),e("strong",null,s(C(p.score,p.max_score)),1)]))),128))])])):c("",!0)])]}),_:1}),i(m,{label:"#",prop:"index",width:"56",align:"center"}),i(m,{label:"问题 / 输入","min-width":"180"},{default:u(({row:t})=>[e("p",Re,s(t.input),1)]),_:1}),i(m,{label:"标准答案","min-width":"170"},{default:u(({row:t})=>[e("p",Ke,s(t.reference_answer||"-"),1)]),_:1}),i(m,{label:"模型回答","min-width":"190"},{default:u(({row:t})=>[e("p",qe,s(t.model_output||"等待生成"),1)]),_:1}),i(m,{label:"得分",width:"90",align:"center"},{default:u(({row:t})=>[e("span",Ge,s(C(t.score,t.max_score)),1)]),_:1}),i(m,{label:"判定",width:"96",align:"center"},{default:u(({row:t})=>[i(f,{type:K(t.judgement),size:"small"},{default:u(()=>[k(s(t.judgement||(t.status==="pending"?"待评测":"-")),1)]),_:2},1032,["type"])]),_:1})]),_:1},8,["data"])):(n(),d("div",Je,[l[23]||(l[23]=e("i",{class:"fa fa-list-alt","aria-hidden":"true"},null,-1)),e("h3",null,s(a.value.samples.length?"没有符合筛选条件的样本":"暂无样本评测结果"),1),e("p",null,s(a.value.status==="running"?"任务正在运行,结果生成后会显示在这里。":"请调整筛选条件或稍后重试。"),1)])),g.value.length>_.value?(n(),w(O,{key:2,"current-page":z.value,"onUpdate:currentPage":l[2]||(l[2]=t=>z.value=t),"page-size":_.value,"onUpdate:pageSize":l[3]||(l[3]=t=>_.value=t),background:"",layout:"total, sizes, prev, pager, next","page-sizes":[10,20,50],total:g.value.length,"aria-label":"样本结果分页"},null,8,["current-page","page-size","total"])):c("",!0)])],64)):c("",!0)]}),_:1})),[[A,T.value]])}}}),Dl=pe(Oe,[["__scopeId","data-v-a0594b97"]]);export{Dl as default};