Files
YG_FT/frontend/dist/assets/InferenceChatView-mqKHZA9k.js

13 lines
13 KiB
JavaScript
Raw Normal View History

import{E as he,a as _e}from"./el-form-item--AdlsBF7.js";import{E as be}from"./index-D0wqu88j.js";import{a as ke,E as ye}from"./index-6OTFNiIi.js";import{ak as Ce,J as ge,a6 as we,b as Y,R as H,a5 as xe,T as Te,i as Ee,y as b,D as Z,a as L,j as T,F as Ie,aJ as W,k as Ve,C as Se,aK as Ke,d as O,o as g,c as E,h as R,n as K,f as s,B as Ne,q as l,x as ee,aa as A,s as _,w as x,e as te,r as $e,E as Pe,t as se,aL as ae,K as ne,L as Ae,ab as De,l as Be,G as Me,g as F,M as Fe,ad as He,aM as Re,ac as Ue,P as M,A as qe,z as Le,v as Oe}from"./index-CD29OCdJ.js";import{C as oe,U as le}from"./raf-DGtHIxe2.js";import{c as G}from"./castArray-BEiueV6y.js";import{E as ze}from"./index-nU1bUa76.js";import{E as je}from"./el-drawer-CJxSltWc.js";import{E as Je}from"./el-slider-D0ESR8FK.js";import"./el-popper-DIiB8Y-M.js";import"./el-tooltip-l0sNRNKZ.js";import"./el-input-number-CUR6qfYr.js";import{_ as We}from"./MarkdownView.vue_vue_type_style_index_0_lang-Cz6hZilm.js";import{b as Ge,a as Qe}from"./compare-BAX_umRe.js";import{_ as Xe}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./_baseClone-Blem5BWg.js";import"./index-C8FAS7l2.js";import"./index-DpY84JwG.js";import"./index-BpugJXyE.js";import"./index-roSlfP_P.js";import"./scroll-D-TPweuo.js";import"./use-dialog-DvXGfCuS.js";import"./debounce-BCyqG5kC.js";import"./toNumber-B6P5MqPp.js";import"./clamp-BfrLWns4.js";import"./index-sBiRi5wE.js";const Q=t=>Ce(t)||ge(t)||we(t),Ye=Y({accordion:Boolean,modelValue:{type:H([Array,String,Number]),default:()=>xe([])},expandIconPosition:{type:H([String]),default:"right"},beforeCollapse:{type:H(Function)}}),Ze={[le]:Q,[oe]:Q},ie=Symbol("collapseContextKey"),et=Y({title:{type:String,default:""},name:{type:H([String,Number]),default:void 0},icon:{type:Ee,default:Te},disabled:Boolean}),X="ElCollapse",tt=(t,i)=>{const d=b(G(t.modelValue)),p=o=>{d.value=o;const r=t.accordion?d.value[0]:d.value;i(le,r),i(oe,r)},n=o=>{if(t.accordion)p([d.value[0]===o?"":o]);else{const r=[...d.value],c=r.indexOf(o);c>-1?r.splice(c,1):r.push(o),p(r)}},a=async o=>{const{beforeCollapse:r}=t;if(!r){n(o);return}const c=r(o);[W(c),Ve(c)].includes(!0)||Se(X,"beforeCollapse must return type `Promise<boolean>` or `boolean`"),W(c)?c.then(f=>{f!==!1&&n(o)}).catch(f=>{Ke(X,`some error occurred: ${f}`)}):c&&n(o)};return Z(()=>t.modelValue,()=>d.value=G(t.modelValue),{deep:!0}),Ie(ie,{activeNames:d,handleItemClick:a}),{activeNames:d,setActiveNames:p}},st=t=>{const i=L("collapse");return{rootKls:T(()=>[i.b(),i.b(`icon-position-${t.expandIconPosition}`)])}};var at=O({name:"ElCollapse",__name:"collapse",props:Ye,emits:Ze,setup(t,{expose:i,emit:d}){const p=t,{activeNames:n,setActiveNames:a}=tt(p,d),{rootKls:o}=st(p);return i({activeNames:n,setActiveNames:a}),(r,c)=>(g(),E("div",{class:K(s(o))},[R(r.$slots,"default")],2))}}),nt=at;const ot=t=>{const i=Ne(ie),{namespace:d}=L("collapse"),p=b(!1),n=b(!1),a=ke(),o=T(()=>a.current++),r=T(()=>t.name??`${d.value}-id-${a.prefix}-${s(o)}`),c=T(()=>i==null?void 0:i.activeNames.value.includes(s(r)));return{focusing:p,id:o,isActive:c,handleFocus:()=>{setTimeout(()=>{n.value?n.value=!1:p.value=!0},50)},handleHeaderClick:v=>{var y;t.disabled||(y=v.target)!=null&&y.closest("input, textarea, select")||(i==null||i.handleItemClick(s(r)),p.value=!1,n.value=!0)},handleEnterClick:v=>{var y;(y=v.target)!=null&&y.closest("input, textarea, select")||(v.preventDefault(),i==null||i.handleItemClick(s(r)))}}},lt=(t,{focusing:i,isActive:d,id:p})=>{const n=L("collapse"),a=T(()=>[n.b("item"),n.is("active",s(d)),n.is("disabled",t.disabled)]),o=T(()=>[n.be("item","header"),n.is("active",s(d)),{focusing:s(i)&&!t.disabled}]),r=T(()=>[n.be("item","arrow"),n.is("active",s(d))]);return{itemTitleKls:T(()=>[n.be("item","title")]),arrowKls:r,headKls:o,rootKls:a,itemWrapperKls:T(()=>n.be("item","wrap")),itemContentKls:T(()=>n.be("item","content")),scopedContentId:T(()=>n.b(`content-${s(p)}`)),scopedHeadId:T(()=>n.b(`head-${s(p)}`))}},it=["id","aria-expanded","aria-controls","aria-describedby","tabindex","aria-disabled"],rt=["id","aria-hidden","aria-labelledby"];var ut=O({name:"ElColla
你刚才问的是
> ${e}
这是一段模拟回复用于演示对话界面接入真实模型后这里会展示模型的真实推理输出
## 说明
- 当前为前端 mock 环境
- 回复内容由本地生成
- 流式打字效果为前端模拟`;for(const S of P)u.content+=S,await M(),D(),u.content.length%3===0&&await new Promise(U=>setTimeout(U,16));u.isStreaming=!1,u.done=!0,await M(),D()}Z(()=>[a.value.displayContent,a.value.thinkContent,a.value.isThinking,a.value.done],async([u,e,P,S])=>{h&&(h.content=u,h.think=e,h.isThinking=P,h.isStreaming=!S,await M(),D())},{flush:"post"});function D(){I.value&&(I.value.scrollTop=I.value.scrollHeight)}function J(){h=null,k.value=[],c()}function de(u){const e=u.target;e.style.height="auto",e.style.height=Math.min(e.scrollHeight,120)+"px"}function ce(){const u=document.querySelector(".input-box");u&&(u.style.height="auto")}return Me(N),(u,e)=>{const P=ct,S=dt,U=be,B=_e,q=Je,me=ye,pe=he,fe=je;return g(),E("div",pt,[l("header",ft,[l("div",vt,[l("div",ht,[l("span",_t,A(n.value||"模型对话"),1),p?(g(),E("span",bt,"mock")):F("",!0)])]),l("button",{class:"header-btn",title:"设置",onClick:e[0]||(e[0]=m=>w.value=!0)},[...e[7]||(e[7]=[l("i",{class:"fa fa-sliders"},null,-1)])])]),l("div",{ref_key:"contentRef",ref:I,class:"chat-body"},[l("div",kt,[k.value.length===0?(g(),E("div",yt,[e[8]||(e[8]=l("div",{class:"empty-logo"},[l("i",{class:"fa fa-cube"})],-1)),e[9]||(e[9]=l("h2",null,"有什么我可以帮你的吗?",-1)),l("p",null,"开始与 "+A(n.value||"模型")+" 对话",1)])):F("",!0),(g(!0),E(Fe,null,He(k.value,(m,ve)=>(g(),E("div",{key:ve,class:K(["msg-row",m.role])},[m.role==="assistant"?(g(),E("div",Ct,[...e[10]||(e[10]=[l("i",{class:"fa fa-robot"},null,-1)])])):F("",!0),l("div",gt,[m.think?(g(),te(S,{key:0,class:"think-collapse"},{default:x(()=>[_(P,{title:"思考过程",name:"think"},{default:x(()=>[l("div",wt,A(m.think),1)]),_:2},1024)]),_:2},1024)):F("",!0),m.role==="user"?(g(),E("div",xt,A(m.content),1)):m.done?(g(),E("div",Tt,[_(We,{content:m.content},null,8,["content"])])):(g(),E("div",Et,[l("span",null,A(m.content||(m.isThinking?"思考中...":"生成中")),1),e[11]||(e[11]=l("span",{class:"typing-cursor"},null,-1))]))])],2))),128))])],512),l("footer",It,[l("div",Vt,[l("button",{class:"clear-btn",title:"清空对话",onClick:J},[...e[12]||(e[12]=[l("i",{class:"fa fa-eraser"},null,-1)])]),l("div",St,[ne(l("textarea",{"onUpdate:modelValue":e[1]||(e[1]=m=>C.value=m),class:"input-box",rows:"1",disabled:s(o),placeholder:"给模型发送消息...",onKeydown:se(ae(j,["exact","prevent"]),["enter"]),onInput:de},null,40,Kt),[[Re,C.value]]),l("button",{class:K(["send-btn",{active:C.value.trim()&&!s(o)}]),disabled:!C.value.trim()||s(o),onClick:j},[...e[13]||(e[13]=[l("i",{class:"fa fa-arrow-up"},null,-1)])],10,Nt)])]),e[14]||(e[14]=l("div",{class:"footer-hint"},"内容由 AI 生成,请仔细甄别。",-1))]),_(fe,{modelValue:w.value,"onUpdate:modelValue":e[6]||(e[6]=m=>w.value=m),title:"对话设置",size:"360px"},{default:x(()=>[_(pe,{"label-position":"top"},{default:x(()=>[_(B,{label:"系统提示词"},{default:x(()=>[_(U,{modelValue:v.value,"onUpdate:modelValue":e[2]||(e[2]=m=>v.value=m),type:"textarea",rows:6,placeholder:"设置模型角色/约束(可选)",resize:"none"},null,8,["modelValue"])]),_:1}),_(B,{label:"Temperature (温度)"},{default:x(()=>[_(q,{modelValue:y.value,"onUpdate:modelValue":e[3]||(e[3]=m=>y.value=m),min:0,max:2,step:.1,"show-input":""},null,8,["modelValue"])]),_:1}),_(B,{label:"Top P (核心采样)"},{default:x(()=>[_(q,{modelValue:$.value,"onUpdate:modelValue":e[4]||(e[4]=m=>$.value=m),min:0,max:1,step:.05,"show-input":""},null,8,["modelValue"])]),_:1}),_(B,{label:"Max Tokens (最大生成长度)"},{default:x(()=>[_(q,{modelValue:V.value,"onUpdate:modelValue":e[5]||(e[5]=m=>V.value=m),min:128,max:8192,step:128,"show-input":""},null,8,["modelValue"])]),_:1}),_(B,null,{default:x(()=>[_(me,{type:"danger",plain:"",onClick:J,style:{width:"100%","margin-top":"20px"}},{default:x(()=>[...e[15]||(e[15]=[l("i",{class:"fa fa-trash-o",style:{"margin-right":"4px"}},null,-1),ee("清空当前对话 ",-1)])]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue"])])}}}),os=Xe($t,[["__scopeId","data-v-9d0a3d84"]]);export{os as default};