import{k as Q,b as W,d as J,a as X,o as v,e as E,w as r,h as K,g as L,c as F,n as z,f as b,aa as f,x as p,Y as Z,j as w,y as P,am as ee,l as te,ap as ae,aq as j,ar as oe,G as re,q as s,s as n,ad as H,M as q,as as ne,A as G,v as ie}from"./index-_T_ZwAU8.js";import{E as le}from"./index-CunlXsH6.js";import{a as se,E as pe}from"./index-dqKVgrM4.js";import{E as ue}from"./index-DbiC_J6H.js";import{u as m,b as D,E as de}from"./index-DrL-DdXi.js";import{d as R}from"./dropdown-DXMSYYsu.js";import{D as fe}from"./DataTablePage-Cj_3cFzW.js";import{_ as ce}from"./ModelStatusTag.vue_vue_type_script_setup_true_lang-PDoJfeK9.js";import{u as me}from"./usePolling-Dx_NkJch.js";import{u as ve}from"./models-Dqw0oSno.js";import{g as ge,a as be,b as he,s as ye,d as we}from"./fineTune-C-AdrhAv.js";import{_ as ke}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./raf-BSHx3Xj9.js";import"./index-CaL9AHzU.js";import"./omit-BNuYgpQl.js";import"./_baseClone-BuLLSdZ_.js";import"./index-CnFjh-NG.js";import"./_baseIteratee-C37ZLjhl.js";import"./castArray-BlzMMKhq.js";import"./debounce-CtiCYe7I.js";import"./toNumber-B7ieOfxs.js";import"./index-DPr6SX3u.js";import"./index-DOTsJDGF.js";import"./index-I-t9u_Se.js";import"./index-DcESg4sN.js";import"./index-B6oDFOyL.js";import"./index-uEvcRnhb.js";import"./vnode-BBSgohgu.js";import"./index-jXIxALr6.js";import"./index-LblaQ-sT.js";import"./scroll-xdnWlbe1.js";import"./clamp-eKDmixUu.js";import"./directive-DnYsEmpc.js";import"./index-C-WN4qF8.js";import"./validator-CXbrKCjC.js";import"./index-D1ZBBHpl.js";import"./index-CwdOMQew.js";import"./model-CmuYoHXd.js";const Te=W({trigger:D.trigger,triggerKeys:D.triggerKeys,placement:R.placement,disabled:D.disabled,visible:m.visible,transition:m.transition,popperOptions:R.popperOptions,tabindex:R.tabindex,content:m.content,popperStyle:m.popperStyle,popperClass:m.popperClass,enterable:{...m.enterable,default:!0},effect:{...m.effect,default:"light"},teleported:m.teleported,appendTo:m.appendTo,title:String,width:{type:[String,Number],default:150},offset:{type:Number,default:void 0},showAfter:{type:Number,default:0},hideAfter:{type:Number,default:200},autoClose:{type:Number,default:0},showArrow:{type:Boolean,default:!0},persistent:{type:Boolean,default:!0},"onUpdate:visible":{type:Function}}),_e={"update:visible":t=>Q(t),"before-enter":()=>!0,"before-leave":()=>!0,"after-enter":()=>!0,"after-leave":()=>!0},Ce="onUpdate:visible";var Ee=J({name:"ElPopover",__name:"popover",props:Te,emits:_e,setup(t,{expose:d,emit:g}){const l=t,c=g,x=w(()=>l[Ce]),h=X("popover"),k=P(),i=w(()=>{var o;return(o=b(k))==null?void 0:o.popperRef}),V=w(()=>[{width:ee(l.width)},l.popperStyle]),T=w(()=>[h.b(),l.popperClass,{[h.m("plain")]:!!l.content}]),M=w(()=>l.transition===`${h.namespace.value}-fade-in-linear`),N=()=>{var o;(o=k.value)==null||o.hide()},S=()=>{c("before-enter")},A=()=>{c("before-leave")},$=()=>{c("after-enter")},B=()=>{c("update:visible",!1),c("after-leave")};return d({popperRef:i,hide:N}),(o,e)=>(v(),E(b(de),Z({ref_key:"tooltipRef",ref:k},o.$attrs,{trigger:t.trigger,"trigger-keys":t.triggerKeys,placement:t.placement,disabled:t.disabled,visible:t.visible,transition:t.transition,"popper-options":t.popperOptions,tabindex:t.tabindex,content:t.content,offset:t.offset,"show-after":t.showAfter,"hide-after":t.hideAfter,"auto-close":t.autoClose,"show-arrow":t.showArrow,"aria-label":t.title,effect:t.effect,enterable:t.enterable,"popper-class":T.value,"popper-style":V.value,teleported:t.teleported,"append-to":t.appendTo,persistent:t.persistent,"gpu-acceleration":M.value,"onUpdate:visible":x.value,onBeforeShow:S,onBeforeHide:A,onShow:$,onHide:B}),{content:r(()=>[t.title?(v(),F("div",{key:0,class:z(b(h).e("title")),role:"title"},f(t.title),3)):L("v-if",!0),K(o.$slots,"default",{hide:N},()=>[p(f(t.content),1)])]),default:r(()=>[o.$slots.reference?K(o.$slots,"reference",{key:0}):L("v-if",!0)]),_:3},16,["trigger","trigger-keys","placement","disabled","visible","transition","popper-options","tabindex","content","offset","show-after","hide-after","auto-close","show-arrow","aria-label","effect","enterable","popper-class","popper-style","teleported","append-to","persistent","gpu-acceleration","onUpdate:visible"]))}}),Pe=Ee;const Y=(t,d)=>{var l;const g=(l=d.arg||d.value)==null?void 0:l.popperRef;g&&(g.triggerRef=t)};var xe={mounted(t,d){Y(t,d)},updated(t,d){Y(t,d)}};const Me="popover",Ne=ae(xe,Me),Ve=te(Pe,{directive:Ne}),Se={class:"filter-header"},Ae={class:"filter-actions"},$e={class:"filter-header"},Be={class:"filter-actions"},De={class:"progress-value"},Re={class:"action-buttons"},Le=J({__name:"FineTuneListView",setup(t){const d=ie(),g=ve(),l=P(!1),c=P([]),x=P({}),h=Object.entries(j).map(([o,e])=>({value:o,label:e})),k=Object.entries(oe).map(([o,e])=>({value:o,label:e})),i=P({trainType:[],trainMethod:[]}),V=w(()=>c.value.filter(o=>!(i.value.trainType.length&&!i.value.trainType.includes(o.train_type)||i.value.trainMethod.length&&(!o.train_method||!i.value.trainMethod.includes(o.train_method)))));async function T(){l.value=!0;try{c.value=await ge()||[]}catch{}finally{l.value=!1}}async function M(){const o=c.value.filter(e=>e.status==="running"||e.status==="pending");for(const e of o)try{const[u,y]=await Promise.all([be(e.id),he(e.id)]);x.value[e.id]=u,y.status&&y.status!==e.status&&(e.status=y.status)}catch{}}async function N(o){await we(o.id),G.success("删除成功")}async function S(o){await ye(o.id),G.success("训练任务已停止"),T()}function A(o){d.push(`/training-log/${o.id}`)}function $(o){return o?new Date(o).toLocaleString("zh-CN",{hour12:!1}):"-"}const{start:B}=me(M,5e3,{immediate:!1});return re(async()=>{g.load(),await T(),await M(),B()}),(o,e)=>{const u=ue,y=ne,O=pe,U=se,_=le,I=Ve;return v(),E(fe,{title:"模型微调",data:V.value,loading:l.value,searchable:"","search-fields":["name"],"create-text":"创建训练任务","create-to":"/fine-tune/create","row-key":"id","page-size":10,onRefresh:T},{columns:r(()=>[n(u,{label:"任务ID",prop:"id",align:"center",width:"100"}),n(u,{label:"任务名称",prop:"name",align:"center",width:"180","show-overflow-tooltip":""}),n(u,{label:"任务状态",align:"center",width:"110"},{default:r(({row:a})=>[n(ce,{status:a.status},null,8,["status"])]),_:1}),n(u,{align:"center",width:"140"},{header:r(()=>[s("div",Se,[e[5]||(e[5]=s("span",null,"训练方式",-1)),n(I,{trigger:"click",placement:"bottom",width:160},{reference:r(()=>[n(y,{"is-dot":i.value.trainType.length>0,class:"filter-badge"},{default:r(()=>[s("i",{class:z(["fa fa-filter filter-icon",{active:i.value.trainType.length>0}])},null,2)]),_:1},8,["is-dot"])]),default:r(()=>[n(U,{modelValue:i.value.trainType,"onUpdate:modelValue":e[0]||(e[0]=a=>i.value.trainType=a),class:"filter-options"},{default:r(()=>[(v(!0),F(q,null,H(b(h),a=>(v(),E(O,{key:a.value,value:a.value},{default:r(()=>[p(f(a.label),1)]),_:2},1032,["value"]))),128))]),_:1},8,["modelValue"]),s("div",Ae,[n(_,{size:"small",link:"",onClick:e[1]||(e[1]=a=>i.value.trainType=[])},{default:r(()=>[...e[4]||(e[4]=[p("清除",-1)])]),_:1})])]),_:1})])]),default:r(({row:a})=>[p(f(b(j)[a.train_type]||"-"),1)]),_:1}),n(u,{align:"center",width:"120"},{header:r(()=>[s("div",$e,[e[7]||(e[7]=s("span",null,"训练方法",-1)),n(I,{trigger:"click",placement:"bottom",width:160},{reference:r(()=>[n(y,{"is-dot":i.value.trainMethod.length>0,class:"filter-badge"},{default:r(()=>[s("i",{class:z(["fa fa-filter filter-icon",{active:i.value.trainMethod.length>0}])},null,2)]),_:1},8,["is-dot"])]),default:r(()=>[n(U,{modelValue:i.value.trainMethod,"onUpdate:modelValue":e[2]||(e[2]=a=>i.value.trainMethod=a),class:"filter-options"},{default:r(()=>[(v(!0),F(q,null,H(b(k),a=>(v(),E(O,{key:a.value,value:a.value},{default:r(()=>[p(f(a.label),1)]),_:2},1032,["value"]))),128))]),_:1},8,["modelValue"]),s("div",Be,[n(_,{size:"small",link:"",onClick:e[3]||(e[3]=a=>i.value.trainMethod=[])},{default:r(()=>[...e[6]||(e[6]=[p("清除",-1)])]),_:1})])]),_:1})])]),default:r(({row:a})=>[p(f(a.train_method||"-"),1)]),_:1}),n(u,{label:"基座模型",align:"center",width:"190","show-overflow-tooltip":""},{default:r(({row:a})=>[p(f(b(g).getModelName(a.base_model)),1)]),_:1}),n(u,{label:"训练开始时间",align:"center",width:"190"},{default:r(({row:a})=>[p(f($(a.create_time)),1)]),_:1}),n(u,{label:"训练时长",align:"center",width:"130"},{default:r(({row:a})=>[p(f(a.train_duration||"-"),1)]),_:1}),n(u,{label:"进度",align:"center",width:"140"},{default:r(({row:a})=>{var C;return[s("span",De,f(((C=x.value[a.id])==null?void 0:C.progress)??a.progress??0)+"% ",1)]}),_:1})]),actions:r(({row:a})=>[s("div",Re,[a.status==="running"?(v(),E(_,{key:0,type:"warning",link:"",size:"small",onClick:C=>S(a)},{default:r(()=>[...e[8]||(e[8]=[s("i",{class:"fa fa-stop-circle-o",style:{"margin-right":"4px"}},null,-1),p(" 停止 ",-1)])]),_:1},8,["onClick"])):L("",!0),n(_,{type:"primary",link:"",size:"small",onClick:C=>A(a)},{default:r(()=>[...e[9]||(e[9]=[s("i",{class:"fa fa-file-text-o",style:{"margin-right":"4px"}},null,-1),p(" 日志 ",-1)])]),_:1},8,["onClick"]),n(_,{type:"danger",link:"",size:"small",onClick:C=>N(a)},{default:r(()=>[...e[10]||(e[10]=[s("i",{class:"fa fa-trash-o",style:{"margin-right":"4px"}},null,-1),p(" 删除 ",-1)])]),_:1},8,["onClick"])])]),_:1},8,["data","loading"])}}}),Tt=ke(Le,[["__scopeId","data-v-6807518b"]]);export{Tt as default};