import{aw as A,j as e,D as I,b_ as o,p as B,bn as y,aL as Y,a0 as z,f as c,U as de,a1 as ue,fq as xe,$ as t,cM as V,c4 as he,cG as me,r as E,cH as U,cI as S,c as _,bU as k,a3 as H,a5 as M,fC as je,b9 as q,q as P,ee as pe,L as K,cB as ge,bO as Z,b1 as $,cL as C,bP as ee,bT as re,v as se,u as ne,fD as fe,k as be,e$ as Ce,fE as G,fF as Ee,cC as ve,bd as De,br as Le,b3 as Te,fG as X,ax as we,dO as ke,fH as Ne,fI as Se,fz as Ie,b as w}from"./index-46ma1THH.js";import{A as Re,a as D}from"./Anchor-VqM1KJ3L.js";import{C as L}from"./CardBoundary-BvnXl_ii.js";import{M as Me}from"./ModelSchema-CBj5qNKE.js";import{u as te}from"./useProjectId-0fA9rNnF.js";import{d as Pe}from"./index-D241LvV7.js";import{s as p}from"./styles-CqvG5Ri0.js";import{u as _e,a as Ae}from"./index-D7tjJoKl.js";import{I as Oe,K as ie,a as oe,b as ae,N as ce,h as Ve,g as $e,c as Ge}from"./utils-CSjO8SQp.js";import{P as Fe}from"./Panel-CnxQ3Lqy.js";import{u as Be,a as ye,D as le}from"./useDeploymentKibanaLink-CDuzXiSp.js";import{S as He}from"./StatusBadge-CfwO_TAJ.js";import{G as Ke}from"./GrafanaDashboard-EkwQvwgz.js";import{K as Ue}from"./KubernetesProjectView-C1axEtBt.js";import{K as qe}from"./KeywordsEditor-CccoeYFP.js";import"./Deprecated-CcWZugSq.js";import"./CardLabels-Vyu_alrE.js";const We=({deployment:r})=>{const{isLoading:s,project:n}=A(),a=()=>{const i=["Serving tool","API protocol","Inference logging","Kafka topic","Request batching"];return B(y(()=>r.batchingConfiguration.batchingEnabled,Y(z,["Maximum batch size","Maximum latency (ms)","Timeout (s)"])))(i)},h=()=>{var x,b,m,f;const i=[e.jsx(o.Cell,{children:e.jsx(c,{children:r.servingTool})},"ac.servingTool"),e.jsx(o.Cell,{children:e.jsx(c,{children:de(r.apiProtocol,ue(xe))})},"ac.apiProtocol"),e.jsx(o.Cell,{children:e.jsx(c,{color:(x=r.inferenceLogging)!=null&&x.toLowerCase()?"black":"gray",children:((b=r.inferenceLogging)==null?void 0:b.toLowerCase())??"disabled"})},"ac.inferenceLogging"),e.jsx(o.Cell,{children:e.jsx(c,{sx:{userSelect:"all"},color:(m=r.kafkaTopicDTO)!=null&&m.name?"black":"gray",children:((f=r.kafkaTopicDTO)==null?void 0:f.name)??"disabled"})},"ac.kafkaTopic"),e.jsx(o.Cell,{children:e.jsx(c,{color:r.batchingConfiguration.batchingEnabled?"black":"gray",children:r.batchingConfiguration.batchingEnabled?"enabled":"disabled"})},"ac.batchingEnabled")],u=[e.jsx(o.Cell,{children:e.jsx(c,{children:r.batchingConfiguration.maxBatchSize})},"ac.maxBatchSize"),e.jsx(o.Cell,{children:e.jsx(c,{children:r.batchingConfiguration.maxLatency})},"ac.maxLatency"),e.jsx(o.Cell,{children:e.jsx(c,{children:r.batchingConfiguration.timeout})},"ac.timeout")];return B(y(()=>r.batchingConfiguration.batchingEnabled,Y(z,u)))(i)};return s||!n?e.jsx(I,{}):e.jsx(o,{bordered:!1,padded:!1,hoverable:!1,middleColumn:r.batchingConfiguration.batchingEnabled?7:4,legend:a(),children:e.jsx(o.Row,{children:h()})})},Qe=({deployment:r})=>{const{isLoading:s,project:n}=A();return s||!n?e.jsx(I,{}):e.jsxs(t,{flexDirection:"column",sx:{gap:"20px"},p:"20px",children:[e.jsxs(t,{sx:{gap:"20px"},children:[e.jsx(V,{copyButton:!0,title:"Get deployment",language:"python",content:Ye({projectName:n==null?void 0:n.projectName,deploymentName:r.name})}),e.jsx(V,{copyButton:!0,title:"Start or stop deployment",language:"python",content:ze({projectName:n==null?void 0:n.projectName,deploymentName:r.name})})]}),e.jsx(V,{copyButton:!0,title:"Make predictions with input example",language:"python",content:Xe({projectName:n==null?void 0:n.projectName,deploymentName:r.name})})]})},Ye=r=>`import hopsworks

# connect with Hopsworks.
# NOTE: to connect from an external environment, see ${he("/user_guides/projects/api_key/create_api_key")} 
project = hopsworks.login()

# get Hopsworks Model Serving
ms = project.get_model_serving()

# get deployment object
deployment = ms.get_deployment("${r.deploymentName}")
`,ze=r=>`# print deployment info
deployment.describe()

# start or stop the deployment
deployment.start()  # .stop()

# check deployment status
state = deployment.get_state()
state.describe()
  `,Xe=r=>`# get Hopsworks Model Registry
mr = project.get_model_registry()
  
# get model
model = mr.get_model(deployment.model_name, deployment.model_version)

# make predictions
predictions = deployment.predict({"instances": [model.input_example]})
print(predictions)
`,Je=({deployment:r})=>{const{project:s,isLoading:n}=A(),{data:a,isLoading:h}=me("kube_knative_domain_name"),{currentData:i,isLoading:u}=_e(),x=E.useMemo(()=>i==null?void 0:i.find(m=>m.type===Oe.LOAD_BALANCER),[i]),b=E.useMemo(()=>r.servingTool===U.KSERVE?r.modelServer===S.VLLM?r.predictor?oe:ie:ae:ce,[r]);return n||h||u||!s?e.jsx(I,{}):e.jsxs(t,{flexDirection:"column",p:20,sx:p.defaultGap,children:[e.jsxs(t,{flexDirection:"column",children:[e.jsx(_,{mb:"0px",bold:!0,gray:!0,children:"Hopsworks REST API"}),e.jsx("hr",{style:{borderBottom:"none",borderLeft:"none",borderRight:"none",borderTop:"1px solid lightgray",width:"100%"}})]}),b.map(({label:m,value:f})=>e.jsxs(t,{flexDirection:"column",children:[e.jsx(k,{mb:"3px",gray:!0,children:m}),e.jsx(c,{primary:!0,fontFamily:"IBM Plex Mono",sx:{userSelect:"all"},children:Ve(r,m)})]},f)),x&&e.jsxs(e.Fragment,{children:[e.jsxs(t,{flexDirection:"column",mt:"10px",children:[e.jsx(_,{mb:"0px",bold:!0,gray:!0,children:"Istio Ingress"}),e.jsx("hr",{style:{borderBottom:"none",borderLeft:"none",borderRight:"none",borderTop:"1px solid lightgray",width:"100%"}})]}),b.map(({label:m,value:f})=>e.jsxs(t,{flexDirection:"column",children:[e.jsx(k,{mb:"3px",gray:!0,children:m}),e.jsx(c,{primary:!0,fontFamily:"IBM Plex Mono",sx:{userSelect:"all"},children:$e(r,m,x)})]},f)),e.jsxs(t,{flexDirection:"column",children:[e.jsx(k,{mb:"3px",gray:!0,children:"Host header"}),e.jsx(c,{fontFamily:"IBM Plex Mono",sx:{userSelect:"all"},children:Ge(s.projectName,r.name,a)})]},"HostHeader")]})]})},Ze=r=>r.status===void 0?M.neutral:r.status?r.type===je.READY?M.valid:M.neutral:M.error,er=({deployment:r})=>r.condition?e.jsx(t,{flexDirection:"column",children:e.jsx(H,{mb:"2px",content:r.condition.reason,type:Ze(r.condition)})}):null,{DATE_TIME_FULL:rr}=ee.DATE_TIME,sr=({deployment:r})=>{var v,l;const s=q(),n=Be(),a=ye(),i=(()=>{let d;switch(r.status){case C.RUNNING:case C.IDLE:d="green";break;case C.STOPPING:case C.STOPPED:d="black";break;case C.CREATING:case C.CREATED:case C.STARTING:d="white";break;default:d=void 0}return C.RUNNING===r.status?{text:r.status,variant:"green"}:{text:r.status,variant:d}})(),u=E.useCallback(()=>{s(P.project.settings.fileBrowserWithPath,{"*":`Models/${r.modelName}/${r.modelVersion}/Artifacts/${r.artifactVersion}`})},[r,s]),x=E.useCallback(()=>{window.open(n(r.name),"_blank")},[n,r.name]),b=E.useCallback(()=>{window.open(a(r.name),"_blank")},[a,r.name]),[m,f]=r.creator.split(" "),T=()=>{s(P.project.deployments.edit,{dId:r.id})},N=()=>{var d;s(P.project.settings.pythonWithEnvironment,{version:(d=r.environmentDTO)==null?void 0:d.name})},g=d=>{var j;return d.modelServer===S.TENSORFLOW_SERVING?"tensorflow/serving":d.modelServer===S.PYTHON?"kserve/sklearnserver":d.modelServer===S.VLLM?"vllm/vllm-openai":(j=d.environmentDTO)==null?void 0:j.name};return e.jsxs(e.Fragment,{children:[e.jsx(Fe,{type:pe.deployment,data:r,title:r.name,onClickEdit:T,idColor:"labels.blueShade1",status:i}),e.jsxs(t,{mt:"10px",flexDirection:"column",sx:{gap:"20px"},children:[e.jsxs(t,{justifyContent:"space-between",children:[e.jsxs(t,{sx:{gap:"30px"},children:[e.jsx(K,{children:e.jsx(ge,{firstName:m,lastName:f})}),e.jsx(nr,{ml:"-5px",label:"Created at",date:new Date(r.created)}),e.jsxs(t,{flexDirection:"column",sx:{gap:"4px"},children:[e.jsx(k,{gray:!0,children:"Model server"}),e.jsx(c,{color:"black",children:r.modelServer})]}),!!r.environmentDTO&&!!r.predictor&&e.jsxs(t,{flexDirection:"column",sx:{gap:"4px"},children:[e.jsx(k,{gray:!0,children:"Predictor environment"}),e.jsx(J,{onClick:N,children:`${(v=r.environmentDTO)==null?void 0:v.name} ->`})]}),!r.predictor&&e.jsxs(t,{flexDirection:"column",sx:{gap:"4px"},children:[e.jsx(k,{gray:!0,children:"Predictor environment"}),e.jsx(c,{color:"black",children:g(r)})]}),!!r.environmentDTO&&!!r.transformer&&e.jsxs(t,{flexDirection:"column",sx:{gap:"4px"},children:[e.jsx(k,{gray:!0,children:"Transformer environment"}),e.jsx(J,{onClick:N,children:`${(l=r.environmentDTO)==null?void 0:l.name} ->`})]}),r.deployed&&e.jsxs(t,{flexDirection:"column",sx:{gap:"4px"},children:[e.jsx(k,{gray:!0,children:"Deployed at"}),e.jsx(c,{color:"black",children:Z(new Date(r.deployed),rr)})]})]}),e.jsxs(t,{sx:{gap:"20px"},children:[e.jsx(He,{ml:"10px",mt:"6px",status:r.status}),e.jsx(le,{deployment:r})]})]}),r.description&&e.jsx(t,{children:e.jsx(_,{children:r.description})}),e.jsx(er,{deployment:r}),e.jsxs(t,{justifyContent:"space-between",children:[e.jsxs(t,{sx:{gap:"8px"},children:[e.jsx($,{onClick:b,variant:"secondary",children:"See Metrics ↗"}),e.jsx($,{onClick:x,variant:"secondary",children:"See Logs ↗"})]}),r.artifactVersion!=null&&e.jsx($,{onClick:u,intent:"secondary",children:"Browse artifact files ->"})]})]})]})},nr=({label:r,date:s,primary:n,...a})=>{const{DATE_TIME_FULL:h}=ee.DATE_TIME;return e.jsxs(t,{flexDirection:"column",...a,children:[e.jsx(k,{mb:"3px",gray:!0,children:r}),e.jsx(c,{primary:n,children:Z(s,h)})]})},J=({shouldFallback:r,children:s,onClick:n})=>r?e.jsx(c,{color:"gray",children:"not provided"}):e.jsx(c,{primary:!0,sx:{...re,textDecoration:"underline",cursor:"pointer",maxWidth:"300px"},onClick:n,children:s}),tr=({deployment:r})=>{const{project:s,isLoading:n}=A(),a="grafana/d-solo/kserve/deployment-metrics",h=[{name:"configuration",value:`${r.name}-.*`},{name:"revision",value:"All"},{name:"namespace",value:s==null?void 0:s.namespace}],i=[{title:"End to end Latencies",linkParams:{urlPath:a,variables:h,panelId:20}},{title:"Number of requests per second by Response Code Class",linkParams:{urlPath:a,variables:h,panelId:18}}];return n||!s?e.jsx(I,{}):r.status===C.CREATING||r.status===C.CREATED?e.jsx(t,{p:"20px",py:"40px",alignItems:"center",flexDirection:"column",sx:p.defaultGap,children:e.jsx(se,{color:"grey",fontWeight:"100",children:"Metrics will be shown when the deployment is started"})}):e.jsx(Ke,{panels:i})},F=(r,s)=>{const n=r[s];return["Models",r.modelName,r.modelVersion,"Artifacts",r.artifactVersion,`${s.toLowerCase()}-${n}`].join("/")},ir=({model:r,deployment:s})=>{const{id:n}=ne(),a=q(),h=()=>{a(P.project.models.overview,{mId:r.name})},i=()=>{a(P.project.models.versionView,{mId:r.name,vId:r.version})},u=fe(),x=()=>{const g=F(s,"predictor");u(Number(n),g,G.DATASET)},b=()=>{const g=F(s,"transformer");u(Number(n),g,G.DATASET)},m=()=>{const g=F(s,"configFile");u(Number(n),g,G.DATASET)},f=g=>g!=null?g===0?"MODEL-ONLY":g:"-",T=!!s.configFile||s.modelServer===S.VLLM,N=B(y(be(T),Ce("Server config file")))(["Model","Version","Artifact version","Predictor script","Transformer script"]);return e.jsx(o,{bordered:!1,padded:!1,hoverable:!1,middleColumn:T?5:4,legend:N,children:e.jsxs(o.Row,{children:[e.jsx(o.Cell,{children:e.jsx(O,{onClick:h,children:`${r.name} ->`})}),e.jsx(o.Cell,{children:e.jsx(O,{onClick:i,children:`${r.version} ->`})}),e.jsx(o.Cell,{children:e.jsx(c,{children:f(s==null?void 0:s.artifactVersion)})}),e.jsx(o.Cell,{children:e.jsx(O,{shouldFallback:!s.predictor,onClick:x,children:`${s.predictor} ↓`})}),e.jsx(o.Cell,{children:e.jsx(O,{shouldFallback:!s.transformer,onClick:b,children:`${s.transformer} ↓`})}),T&&e.jsx(o.Cell,{children:e.jsx(O,{shouldFallback:!s.configFile,onClick:m,children:`${s.configFile} ↓`})})]})})},O=({shouldFallback:r,children:s,onClick:n})=>r?e.jsx(c,{color:"gray",children:"not provided"}):e.jsx(c,{primary:!0,sx:{...re,textDecoration:"underline",cursor:"pointer",maxWidth:"300px"},onClick:n,children:s}),or=({deployment:r})=>{const{isLoading:s,project:n}=A();return s||!n?e.jsx(I,{}):e.jsxs(e.Fragment,{children:[e.jsx(o,{bordered:!1,padded:!1,hoverable:!1,middleColumn:3,legend:["Predictor instances","CPUs","Memory (MB)","GPUs"],children:e.jsxs(o.Row,{children:[e.jsxs(o.Cell,{children:[e.jsx(c,{minWidth:"135px",children:`${r.availableInstances} running out of ${r.requestedInstances}`}),r.requestedInstances===0&&e.jsx(_,{mt:"4px",bold:!0,gray:!0,children:"scale-to-zero"})]}),e.jsx(o.Cell,{children:e.jsx(c,{children:`${r.predictorResources.requests.cores??"-"} -> ${r.predictorResources.limits.cores??"-"}`})}),e.jsx(o.Cell,{children:e.jsx(c,{children:`${r.predictorResources.requests.memory??"-"} -> ${r.predictorResources.limits.memory??"-"}`})}),e.jsx(o.Cell,{children:e.jsx(c,{children:`${r.predictorResources.requests.gpus??"-"} -> ${r.predictorResources.limits.gpus??"-"}`})})]})}),r.transformer&&e.jsxs(e.Fragment,{children:[e.jsx("hr",{style:{borderBottom:"none",borderLeft:"none",borderRight:"none",borderTop:"1px solid lightgray",width:"100%",marginTop:"10px",marginBottom:"10px"}}),e.jsx(o,{bordered:!1,padded:!1,hoverable:!1,middleColumn:3,legend:["Transformer instances","CPUs","Memory (MB)","GPUs"],children:e.jsxs(o.Row,{children:[e.jsxs(o.Cell,{children:[e.jsx(c,{minWidth:"135px",children:r.transformer&&r.requestedTransformerInstances!==void 0?`${r.availableTransformerInstances} running out of ${r.requestedTransformerInstances}`:"-"}),r.transformer&&r.requestedTransformerInstances===0&&e.jsx(_,{mt:"4px",bold:!0,gray:!0,children:"scale-to-zero"})]}),e.jsx(o.Cell,{children:e.jsx(c,{children:`${r.transformerResources.requests.cores??"-"} -> ${r.transformerResources.limits.cores??"-"}`})}),e.jsx(o.Cell,{children:e.jsx(c,{children:`${r.transformerResources.requests.memory??"-"} -> ${r.transformerResources.limits.memory??"-"}`})}),e.jsx(o.Cell,{children:e.jsx(c,{children:`${r.transformerResources.requests.gpus??"-"} -> ${r.transformerResources.limits.gpus??"-"}`})})]})})]})]})},ar=({deployment:r})=>{const s=te(),n=q(),{data:a,isLoading:h}=Ee({projectId:s,model:r.modelName,status:"Running"},{refetchOnMountOrArgChange:!0});if(h||!a)return e.jsx(I,{});const i=x=>()=>{n(P.project.deployments.overview,{dId:x})},u=a.all.filter(x=>x.id!==r.id);return h||u.length===0?null:e.jsxs(t,{flexDirection:"column",sx:{gap:"8px"},children:[e.jsx(ve,{sx:p.divider}),e.jsx(c,{color:"gray",children:"Deploying the same model"}),e.jsx(t,{width:"100%",children:u.map(x=>e.jsx($,{intent:"secondary",height:"31px",onClick:i(x.id),children:`${x.name} ->`},x.id))})]})},cr=({deployment:r,model:s})=>{const n=E.useMemo(()=>r.servingTool===U.KSERVE?r.modelServer===S.VLLM?r.predictor?oe:ie:ae:ce,[r]),[a,h]=E.useState(n[0].value),[i,u]=E.useState({input:"",output:"",error:""}),x=E.useMemo(()=>{var d,j,R,W,Q;if(((d=s.inputExample)==null?void 0:d.preview)===void 0||!((R=(j=s.inputExample)==null?void 0:j.preview)!=null&&R.content))return"";const l=JSON.parse((Q=(W=s.inputExample)==null?void 0:W.preview)==null?void 0:Q.content);return r.modelServer===S.TENSORFLOW_SERVING?JSON.stringify({signature_name:"serving_default",instances:l}):r.modelServer===S.VLLM?JSON.stringify(l):JSON.stringify({instances:l})},[r,s]);E.useEffect(()=>{u({input:x,output:"",error:""})},[x]);const[b,{isLoading:m}]=Ae(),f=l=>{Array.isArray(l)||h(l)},T=l=>{m||u({...i,input:l})},N=l=>{let d="";try{d=X(l.replaceAll(`
`,""))}catch(j){console.warn(j),d=l}u({...i,input:d})},g=(l,d)=>{let j="";if(l)try{j=X(JSON.stringify(l))}catch(R){console.warn(R),j=(l==null?void 0:l.toString())||""}u(R=>({...R,output:j,error:d}))},v=async()=>{if(!i.input)return;N(i.input);let l=null,d="";try{l=await b({host:"",deployment:r,verb:a,content:i.input}).unwrap()}catch(j){console.warn(j),d=(j==null?void 0:j.response.data.usrMsg)||"An error occurred"}g(l,d)};return r.status!==C.RUNNING&&r.status!==C.IDLE?e.jsxs(t,{p:"20px",py:"40px",alignItems:"center",flexDirection:"column",sx:p.defaultGap,children:[e.jsx(se,{color:"grey",fontWeight:"100",children:"Deployment needs to be running to be tested"}),e.jsx(le,{title:"Run deployment",deployment:r})]}):e.jsxs(t,{flexDirection:"column",sx:p.defaultGap,p:"20px",children:[e.jsxs(t,{flexDirection:"row",children:[e.jsx(De,{label:"verb",labelPosition:"inline",placeholder:"pick a verb",value:a,isDisabled:m,options:n,onChange:f,mr:"20px",width:"auto"}),e.jsx(Le,{type:"submit",intent:"primary",isLoading:m,onClick:v,children:"Run test"})]}),i.error&&e.jsxs(K,{children:[e.jsx(H,{content:i.error,type:M.error}),e.jsx(H,{mt:"2px",content:"For more details, please check the deployment logs",type:M.neutral})]}),e.jsx(t,{sx:p.codeInput,flexDirection:"column",children:e.jsx(Te,{mode:"json",label:"Request data",readOnly:!1,value:i.input,onChange:T})}),i.output&&e.jsxs(K,{children:[e.jsx(_,{bold:!0,mb:"6px",children:"Response"}),e.jsx(V,{width:"100%",height:"auto !important",css:{maxHeight:"300px",minHeight:"50px"},language:"json",wrapLongLines:!0,copyButton:!0,downloadButton:!0,showLineNumbers:!0,title:"Content",content:i.output})]})]})},lr=({deployment:r})=>{const{schedulingConfig:s}=r;return e.jsx(Ue,{schedulingConfig:s})},dr=({deployment:r})=>{var g;const{id:s,project:n,isLoading:a}=A(),{data:h,isLoading:i}=we(),u=(g=n==null?void 0:n.projectTeam)==null?void 0:g.find(({user:v})=>v.username===(h==null?void 0:h.username)),x=(u==null?void 0:u.teamRole)===ke.DATA_OWNER,b=E.useMemo(()=>{var v;return((v=r.remoteAccessDTOs)==null?void 0:v.map(l=>l.remoteUserGroupName))||[]},[r]),{currentData:m=[]}=Ne(String(s)),[f,{isLoading:T}]=Se(),N=E.useCallback(v=>f({projectId:s,deploymentId:r.id,remoteUserGroups:v}),[f,s,r]);return a||i||!n?e.jsx(I,{}):e.jsx(qe,{isDisabled:!x||a||i,onSave:N,value:b,options:m,isSaving:T,itemName:"external user groups",isCaseSensitive:!0})},Sr=()=>{const{dId:r}=ne(),s=te(),{data:n}=Ie({projectId:s,id:r},{pollingInterval:5e3,refetchOnFocus:!0}),{currentData:a}=Pe({projectId:s,modelName:(n==null?void 0:n.modelName)??"",modelVersion:(n==null?void 0:n.modelVersion)??0},{skip:!(n!=null&&n.modelName)||!(n!=null&&n.modelVersion)});return!a||!n?e.jsx(I,{}):e.jsx(ur,{deployment:n,model:a})},ur=({deployment:r,model:s})=>{var n,a;return e.jsxs(t,{flexDirection:"column",pb:"20px",sx:p.defaultGap,children:[e.jsx(sr,{deployment:r}),e.jsx(ar,{deployment:r}),e.jsxs(Re,{children:[e.jsx(D,{name:"models",children:e.jsx(L,{children:e.jsx(t,{sx:p.overflowX,children:e.jsx(w,{title:"Model artifact",maxHeight:"400px",width:"100%",children:e.jsx(ir,{deployment:r,model:s})})})})}),r.servingTool===U.KSERVE&&e.jsx(D,{name:"metrics",children:e.jsx(L,{children:e.jsx(w,{title:"Metrics",contentProps:p.card,children:e.jsx(tr,{deployment:r})})})}),e.jsx(D,{name:"test-deployment",children:e.jsx(L,{children:e.jsx(w,{title:"Test deployment",contentProps:p.card,children:e.jsx(cr,{deployment:r,model:s})})})}),e.jsx(D,{name:"endpoints",children:e.jsx(L,{children:e.jsx(w,{title:"Endpoints",contentProps:p.card,children:e.jsx(Je,{deployment:r})})})}),e.jsx(D,{name:"schema",children:e.jsx(L,{children:e.jsx(w,{title:"Deployment schema",contentProps:p.card,children:e.jsx(Me,{schema:(a=(n=s.modelSchema)==null?void 0:n.preview)==null?void 0:a.content})})})}),e.jsx(D,{name:"snippets",children:e.jsx(L,{children:e.jsx(w,{title:"Code snippets",contentProps:p.card,children:e.jsx(Qe,{deployment:r})})})}),e.jsx(D,{name:"configuration",children:e.jsx(L,{children:e.jsx(t,{sx:p.overflowX,children:e.jsx(w,{title:"Configuration",width:"100%",children:e.jsx(We,{deployment:r})})})})}),e.jsx(D,{name:"resource-allocation",children:e.jsx(L,{children:e.jsx(t,{sx:p.overflowX,children:e.jsx(w,{title:"Resource allocation",width:"100%",children:e.jsx(or,{deployment:r})})})})}),e.jsx(D,{name:"kube-schedule-config",children:e.jsx(L,{children:e.jsx(t,{sx:p.overflowX,children:e.jsx(lr,{deployment:r})})})}),e.jsx(D,{name:"external-access",children:e.jsx(L,{children:e.jsx(t,{sx:p.overflowX,children:e.jsx(w,{title:"External access",width:"100%",children:e.jsx(dr,{deployment:r})})})})})]})]})};export{Sr as Overview,Sr as default};
