!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._posthogChunkIds=e._posthogChunkIds||{},e._posthogChunkIds[n]="01a091c0-f1bd-7c73-9d01-269b7ff7841f")}catch(e){}}();(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,117439,e=>{"use strict";var t=e.i(222666),r=e.i(505962),a=e.i(114034),l=e.i(553215),n=e.i(452473),i=e.i(394333),o=e.i(79247),s=e.i(270401),c=e.i(264552),d=e.i(536582),p=e.i(128722),u=e.i(151960),m=e.i(626824),g=e.i(10684),h=e.i(450740),f=e.i(8842),x=e.i(204067),y=e.i(796805);let b=y.z.object({x:y.z.string(),y:y.z.record(y.z.string(),(0,x.zDouble)())}),v=y.z.array(b),T=y.z.object({x:y.z.string(),y:y.z.record(y.z.string(),(0,x.zDouble)().nullable())});y.z.array(T);let j=(0,m.createQueryKeys)("endpoint-performance-comparison",{cacheHitRate:e=>[{...e}],uptime:e=>[{...e}],throughput:e=>[{...e}]});function C(e){return 0===e.length||1===e.length&&1===Object.keys(e[0].y).length}function E(e){let a,l,n,s=(0,r.c)(14),{permaslug:m,endpointLabelMap:x,colorMapping:y,timeRange:b}=e;if(s[0]!==m||s[1]!==b){var T;T={permaslug:m,timeRange:b},a=(0,f.queryOptions)({queryKey:j.cacheHitRate(T),queryFn:null===T.permaslug?h.skipToken:({signal:e})=>(0,u.fetchAPIQuery)("/api/frontend/v1/stats/cache-hit-rate-comparison",{searchParams:{permaslug:T.permaslug,timeRange:T.timeRange},signal:e,schema:v}),placeholderData:null===T.permaslug?void 0:h.keepPreviousData,staleTime:g.StaleTime.COALESCE_MOUNTS}),s[0]=m,s[1]=b,s[2]=a}else a=s[2];let{data:E,isPending:w,error:L}=(0,o.useQuery)(a);e:{let e;if(!E){let e;s[3]===Symbol.for("react.memo_cache_sentinel")?(e=[],s[3]=e):e=s[3],l=e;break e}if(s[4]!==E||s[5]!==x){let t;s[7]!==x?(t=e=>({x:e.x,y:Object.fromEntries(Object.entries(e.y).flatMap(e=>{let[t,r]=e,a=x.get(t);return void 0===a?[]:[[a,r]]}))}),s[7]=x,s[8]=t):t=s[8],e=E.map(t),s[4]=E,s[5]=x,s[6]=e}else e=s[6];l=e}let N=l;if(null===m)return null;if(void 0===E){if(w){let e;return s[9]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsx)(i.Skeleton,{"aria-label":"Loading cache hit rate comparison",role:"status",className:"h-12 w-full rounded-lg border"}),s[9]=e):e=s[9],e}return null}if(L){let e;return s[10]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsx)(d.EmptyAnalyticsData,{message:"Analytics data could not be retrieved at this time. Please try again later.",icon:"bar"}),s[10]=e):e=s[10],e}return C(E)?null:(s[11]!==N||s[12]!==y?(n=(0,t.jsx)(p.ExpandableStackedLineChart,{data:N,previewTitle:"Cache Hit Rate",title:"Cache Hit Rate by Provider",previewTitleTooltip:c.PERFORMANCE_TOOLTIPS.CACHE_HIT_RATE_CHART,titleTooltip:c.PERFORMANCE_TOOLTIPS.CACHE_HIT_RATE_CHART,yAxisLabel:"Cache Hit Rate",unit:"%",seriesLabel:"Providers",previewTopCount:3,colorMapping:y,interactivePreview:!0}),s[11]=N,s[12]=y,s[13]=n):n=s[13],n)}let w=y.z.object({x:y.z.string(),y:y.z.record(y.z.string(),(0,x.zDouble)())}),L=y.z.array(w),N="latency",S="latencyE2E",_=(0,m.createQueryKeys)("endpoint-latency-comparison",{latency:e=>[{...e}],latencyE2E:e=>[{...e}]}),k={[N]:{queryKey:_.latency,route:"/api/frontend/v1/stats/latency-comparison"},[S]:{queryKey:_.latencyE2E,route:"/api/frontend/v1/stats/latency-e2e-comparison"}};function M(e,t){let{queryKey:r,route:a}=k[e],l=t.permaslug;return(0,f.queryOptions)({queryKey:r({...t,permaslug:l}),queryFn:null===l?h.skipToken:({signal:e})=>{var r;return(0,u.fetchAPIQuery)(a,{searchParams:(r=t,{permaslug:l,variant:r.variant,perfWorkload:r.perfWorkload,colo:r.colo,timeRange:r.timeRange,percentile:r.percentileLines||"p50"===r.percentile?void 0:r.percentile,percentileLines:r.percentileLines?"true":void 0,reasoningEffort:r.reasoningEffort}),signal:e,schema:L})},placeholderData:null===l?void 0:h.keepPreviousData,staleTime:g.StaleTime.COALESCE_MOUNTS})}var P=e.i(538152);function R(e,t){return"p50"===t?e:`${e} (${t.toUpperCase()})`}function A(e,t){return"p50"===t?`Median ${e} on OpenRouter`:`${t.toUpperCase()} ${e} on OpenRouter`}function O(e){return e.toUpperCase()}function I(e){return`${e} percentiles on OpenRouter`}function D(e){return new Map(P.QUANTILE_KEYS.map(t=>[O(t),e[t]]))}let H=D({p50:"#16a34a",p75:"#eab308",p90:"#f97316",p95:"#ef4444",p99:"#b91c1c"}),z=D({p50:"#bfdbfe",p75:"#60a5fa",p90:"#3b82f6",p95:"#2563eb",p99:"#1e40af"});function F(e,t){return e.map(e=>({x:e.x,y:Object.fromEntries(Object.entries(e.y).filter(([e])=>t.has(e)).map(([e,r])=>[t.get(e),r]))})).filter(e=>Object.keys(e.y).length>0)}var U=e.i(586404);function B(e){return e.map(e=>({x:e.x,y:Object.fromEntries(P.QUANTILE_KEYS.flatMap(t=>{let r=e.y[t];return(0,U.isDefinedAndNotNull)(r)?[[O(t),r]]:[]}))}))}let q={[N]:{options:function(e){return M(N,e)},previewMetric:"Latency",titleMetric:"Latency",tooltip:c.PERFORMANCE_TOOLTIPS.LATENCY_CHART,yAxisLabel:c.PERFORMANCE_CHART_LABELS.LATENCY,loadingLabel:"Loading latency comparison"},[S]:{options:function(e){return M(S,e)},previewMetric:"E2E Latency",titleMetric:"End-to-End Latency",tooltip:c.PERFORMANCE_TOOLTIPS.E2E_LATENCY_CHART,yAxisLabel:c.PERFORMANCE_CHART_LABELS.E2E_LATENCY,loadingLabel:"Loading end-to-end latency comparison"}};function Q(e){let a,l=(0,r.c)(2);return l[0]!==e?(a=(0,t.jsx)(W,{...e,resource:N}),l[0]=e,l[1]=a):a=l[1],a}function W(e){let a,l,n,i,s,c,d,p,u,m,g,h,f=(0,r.c)(35);f[0]!==e?({resource:c,permaslug:n,variant:m,perfWorkload:l,colo:a,timeRange:u,percentile:d,percentileLines:p,reasoningEffort:s,...i}=e,f[0]=e,f[1]=a,f[2]=l,f[3]=n,f[4]=i,f[5]=s,f[6]=c,f[7]=d,f[8]=p,f[9]=u,f[10]=m):(a=f[1],l=f[2],n=f[3],i=f[4],s=f[5],c=f[6],d=f[7],p=f[8],u=f[9],m=f[10]);let x=void 0===d?"p50":d,y=void 0!==p&&p,b=q[c];f[11]!==a||f[12]!==x||f[13]!==y||f[14]!==l||f[15]!==n||f[16]!==s||f[17]!==b||f[18]!==u||f[19]!==m?(g=b.options({permaslug:n,variant:m,perfWorkload:l,colo:a,timeRange:u,percentile:x,percentileLines:y,reasoningEffort:s}),f[11]=a,f[12]=x,f[13]=y,f[14]=l,f[15]=n,f[16]=s,f[17]=b,f[18]=u,f[19]=m,f[20]=g):g=f[20];let{data:v,isPending:T,error:j}=(0,o.useQuery)(g),C=null!==j;return f[21]!==a||f[22]!==v||f[23]!==T||f[24]!==x||f[25]!==y||f[26]!==l||f[27]!==n||f[28]!==i||f[29]!==s||f[30]!==b||f[31]!==C||f[32]!==u||f[33]!==m?(h=(0,t.jsx)(K,{...i,permaslug:n,variant:m,perfWorkload:l,colo:a,timeRange:u,percentile:x,percentileLines:y,reasoningEffort:s,data:v,isPending:T,hasError:C,resourceConfig:b}),f[21]=a,f[22]=v,f[23]=T,f[24]=x,f[25]=y,f[26]=l,f[27]=n,f[28]=i,f[29]=s,f[30]=b,f[31]=C,f[32]=u,f[33]=m,f[34]=h):h=f[34],h}function K(e){let a,l,n,i,o,s,c,d=(0,r.c)(16);if(d[0]!==e?({permaslug:o,data:l,isPending:i,hasError:n,resourceConfig:s,...a}=e,d[0]=e,d[1]=a,d[2]=l,d[3]=n,d[4]=i,d[5]=o,d[6]=s):(a=d[1],l=d[2],n=d[3],i=d[4],o=d[5],s=d[6]),null===o)return null;if(void 0===l){let e;return d[7]!==i||d[8]!==s.loadingLabel?(e=(0,t.jsx)($,{isPending:i,loadingLabel:s.loadingLabel}),d[7]=i,d[8]=s.loadingLabel,d[9]=e):e=d[9],e}return d[10]!==a||d[11]!==l||d[12]!==n||d[13]!==o||d[14]!==s?(c=(0,t.jsx)(V,{...a,permaslug:o,data:l,hasError:n,resourceConfig:s}),d[10]=a,d[11]=l,d[12]=n,d[13]=o,d[14]=s,d[15]=c):c=d[15],c}function $(e){let a,l=(0,r.c)(3),{isPending:n,loadingLabel:o}=e;return l[0]!==n||l[1]!==o?(a=n?(0,t.jsx)(i.Skeleton,{"aria-label":o,role:"status",className:"w-full rounded-lg border h-12"}):null,l[0]=n,l[1]=o,l[2]=a):a=l[2],a}function V(e){let a,l,n,i,o,s,c=(0,r.c)(13);if(c[0]!==e?({data:l,hasError:i,resourceConfig:o,emptyState:n,...a}=e,c[0]=e,c[1]=a,c[2]=l,c[3]=n,c[4]=i,c[5]=o):(a=c[1],l=c[2],n=c[3],i=c[4],o=c[5]),i){let e;return c[6]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsx)(d.EmptyAnalyticsData,{message:"Analytics data could not be retrieved at this time. Please try again later.",icon:"bar"}),c[6]=e):e=c[6],e}if(C(l)){let e,r=n??null;return c[7]!==r?(e=(0,t.jsx)(t.Fragment,{children:r}),c[7]=r,c[8]=e):e=c[8],e}return c[9]!==a||c[10]!==l||c[11]!==o?(s=(0,t.jsx)(Y,{...a,data:l,resourceConfig:o}),c[9]=a,c[10]=l,c[11]=o,c[12]=s):s=c[12],s}function Y(e){let a,l,n=(0,r.c)(27),{data:i,endpointLabelMap:o,colorMapping:s,percentile:c,percentileLines:d,headerControls:u,resourceConfig:m}=e;e:{let e,t,r,l;if(d){let e,t,r;n[0]!==i?(e=B(i),n[0]=i,n[1]=e):e=n[1];let l=m.previewMetric;n[2]!==m.titleMetric?(t=I(m.titleMetric),n[2]=m.titleMetric,n[3]=t):t=n[3],n[4]!==m.previewMetric||n[5]!==e||n[6]!==t?(r={data:e,previewTitle:l,title:t,seriesLabel:"Percentile",previewTopCount:5,colorMapping:H},n[4]=m.previewMetric,n[5]=e,n[6]=t,n[7]=r):r=n[7],a=r;break e}n[8]!==i||n[9]!==o?(e=F(i,o),n[8]=i,n[9]=o,n[10]=e):e=n[10],n[11]!==c||n[12]!==m.previewMetric?(t=R(m.previewMetric,c),n[11]=c,n[12]=m.previewMetric,n[13]=t):t=n[13],n[14]!==c||n[15]!==m.titleMetric?(r=A(m.titleMetric,c),n[14]=c,n[15]=m.titleMetric,n[16]=r):r=n[16],n[17]!==s||n[18]!==e||n[19]!==t||n[20]!==r?(l={data:e,previewTitle:t,title:r,seriesLabel:"Providers",previewTopCount:3,colorMapping:s},n[17]=s,n[18]=e,n[19]=t,n[20]=r,n[21]=l):l=n[21],a=l}let g=a;return n[22]!==u||n[23]!==g||n[24]!==m.tooltip||n[25]!==m.yAxisLabel?(l=(0,t.jsx)(p.ExpandableStackedLineChart,{...g,previewTitleTooltip:m.tooltip,titleTooltip:m.tooltip,yAxisLabel:m.yAxisLabel,unit:"s",transformValue:G,previewSortAscending:!0,headerControls:u,interactivePreview:!0}),n[22]=u,n[23]=g,n[24]=m.tooltip,n[25]=m.yAxisLabel,n[26]=l):l=n[26],l}function G(e){return e/1e3}function J(e){let a,l=(0,r.c)(2);return l[0]!==e?(a=(0,t.jsx)(W,{...e,resource:"latencyE2E"}),l[0]=e,l[1]=a):a=l[1],a}var X=e.i(276874);function Z(e){let a,l,n=(0,r.c)(14),{data:o,isLoading:s,error:c,endpointLabelMap:u,colorMapping:m,previewTitle:g,tooltip:h}=e;e:{let e;if(!o){let e;n[0]===Symbol.for("react.memo_cache_sentinel")?(e=[],n[0]=e):e=n[0],a=e;break e}if(n[1]!==o||n[2]!==u){let t;n[4]!==u?(t=e=>({x:e.x,y:Object.fromEntries(Object.entries(e.y).filter(e=>{let[t]=e;return u.has(t)}).map(e=>{let[t,r]=e;return[u.get(t),r]}))}),n[4]=u,n[5]=t):t=n[5],e=o.map(t),n[1]=o,n[2]=u,n[3]=e}else e=n[3];a=e}let f=a;if(c){let e;return n[6]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsx)(d.EmptyAnalyticsData,{message:"Analytics data could not be retrieved at this time. Please try again later.",icon:"bar"}),n[6]=e):e=n[6],e}if(void 0===o){if(s){let e;return n[7]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsx)(i.Skeleton,{className:"h-12 w-full rounded-lg border"}),n[7]=e):e=n[7],e}return null}if(C(o))return null;let x=`${g} by Provider`;return n[8]!==f||n[9]!==m||n[10]!==g||n[11]!==x||n[12]!==h?(l=(0,t.jsx)(p.ExpandableStackedLineChart,{data:f,previewTitle:g,title:x,previewTitleTooltip:h,titleTooltip:h,yAxisLabel:"Error Rate",unit:"%",seriesLabel:"Providers",previewTopCount:3,colorMapping:m,previewSortAscending:!0,interactivePreview:!0,defaultSortAscending:!0}),n[8]=f,n[9]=m,n[10]=g,n[11]=x,n[12]=h,n[13]=l):l=n[13],l}function ee(e){let a,l,n=(0,r.c)(9),{permaslug:i,timeRange:s,endpointLabelMap:c,colorMapping:d}=e;n[0]!==i||n[1]!==s?(a=(0,X.structuredOutputErrorRateComparisonOptions)(i,s),n[0]=i,n[1]=s,n[2]=a):a=n[2];let{data:p,isLoading:u,error:m}=(0,o.useQuery)(a);return n[3]!==d||n[4]!==p||n[5]!==c||n[6]!==m||n[7]!==u?(l=(0,t.jsx)(Z,{data:p,isLoading:u,error:m,endpointLabelMap:c,colorMapping:d,previewTitle:"Structured Output Error Rate",tooltip:"Percentage of structured output requests that resulted in errors. Data aggregated over one full day."}),n[3]=d,n[4]=p,n[5]=c,n[6]=m,n[7]=u,n[8]=l):l=n[8],l}var et=e.i(779100),er=e.i(193975);function ea(e){let a,l,n,s,m,x,y=(0,r.c)(33),{permaslug:b,variant:T,perfWorkload:E,endpointLabelMap:w,colorMapping:L,colo:N,timeRange:S,percentile:_,percentileLines:k,reasoningEffort:M,headerControls:P}=e,O=void 0===_?"p50":_,D=void 0!==k&&k,H=(0,et.useLocale)();if(y[0]!==N||y[1]!==O||y[2]!==D||y[3]!==E||y[4]!==b||y[5]!==M||y[6]!==S||y[7]!==T){var U;let e;e=(U={permaslug:b,variant:T,perfWorkload:E,colo:N,timeRange:S,percentile:O,percentileLines:D,reasoningEffort:M}).permaslug,a=(0,f.queryOptions)({queryKey:j.throughput({...U,permaslug:e}),queryFn:null===e?h.skipToken:({signal:t})=>{var r;return(0,u.fetchAPIQuery)("/api/frontend/v1/stats/throughput-comparison",{searchParams:(r=U,{permaslug:e,variant:r.variant,perfWorkload:r.perfWorkload,colo:r.colo,timeRange:r.timeRange,percentile:r.percentileLines||"p50"===r.percentile?void 0:r.percentile,percentileLines:r.percentileLines?"true":void 0,reasoningEffort:r.reasoningEffort}),signal:t,schema:v})},placeholderData:null===e?void 0:h.keepPreviousData,staleTime:g.StaleTime.COALESCE_MOUNTS}),y[0]=N,y[1]=O,y[2]=D,y[3]=E,y[4]=b,y[5]=M,y[6]=S,y[7]=T,y[8]=a}else a=y[8];let{data:q,isPending:Q,error:W}=(0,o.useQuery)(a);e:{let e;if(!q){let e;y[9]===Symbol.for("react.memo_cache_sentinel")?(e=[],y[9]=e):e=y[9],l=e;break e}y[10]!==q||y[11]!==w||y[12]!==D?(e=D?B(q):F(q,w),y[10]=q,y[11]=w,y[12]=D,y[13]=e):e=y[13],l=e}let K=l;if(null===b)return null;if(void 0===q){if(Q){let e;return y[14]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsx)(i.Skeleton,{"aria-label":"Loading throughput comparison",role:"status",className:"h-12 w-full rounded-lg border"}),y[14]=e):e=y[14],e}return null}if(W){let e;return y[15]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsx)(d.EmptyAnalyticsData,{message:"Analytics data could not be retrieved at this time. Please try again later.",icon:"bar"}),y[15]=e):e=y[15],e}if(C(q))return null;y[16]!==O||y[17]!==D?(n=D?"Throughput":R("Throughput",O),y[16]=O,y[17]=D,y[18]=n):n=y[18],y[19]!==O||y[20]!==D?(s=D?I("Throughput"):A("Throughput",O),y[19]=O,y[20]=D,y[21]=s):s=y[21],y[22]!==H?(m=el.bind(null,H),y[22]=H,y[23]=m):m=y[23];let $=D?"Percentile":"Providers",V=D?5:3,Y=D?z:L;return y[24]!==K||y[25]!==P||y[26]!==Y||y[27]!==n||y[28]!==s||y[29]!==m||y[30]!==$||y[31]!==V?(x=(0,t.jsx)(p.ExpandableStackedLineChart,{data:K,previewTitle:n,title:s,previewTitleTooltip:c.PERFORMANCE_TOOLTIPS.THROUGHPUT_CHART,titleTooltip:c.PERFORMANCE_TOOLTIPS.THROUGHPUT_CHART,yAxisLabel:"Throughput",unit:"tok/s",formatValue:m,seriesLabel:$,previewTopCount:V,colorMapping:Y,headerControls:P,interactivePreview:!0}),y[24]=K,y[25]=P,y[26]=Y,y[27]=n,y[28]=s,y[29]=m,y[30]=$,y[31]=V,y[32]=x):x=y[32],x}function el(e,t){return(0,er.formatNativeFixed)(Math.round(t),{locale:e,fractionDigits:0})??"—"}function en(e){let a,l,n=(0,r.c)(9),{permaslug:i,timeRange:s,endpointLabelMap:c,colorMapping:d}=e;n[0]!==i||n[1]!==s?(a=(0,X.toolCallErrorRateComparisonOptions)(i,s),n[0]=i,n[1]=s,n[2]=a):a=n[2];let{data:p,isLoading:u,error:m}=(0,o.useQuery)(a);return n[3]!==d||n[4]!==p||n[5]!==c||n[6]!==m||n[7]!==u?(l=(0,t.jsx)(Z,{data:p,isLoading:u,error:m,endpointLabelMap:c,colorMapping:d,previewTitle:"Tool Call Error Rate",tooltip:"Percentage of tool call requests that resulted in errors. Data aggregated over one full day."}),n[3]=d,n[4]=p,n[5]=c,n[6]=m,n[7]=u,n[8]=l):l=n[8],l}var ei=e.i(738286),eo=e.i(20629),es=e.i(746125),ec=e.i(252358),ed=e.i(463522),ep=e.i(621364),eu=e.i(682964),em=e.i(536652),eg=e.i(704318);e.i(519158);var eh=e.i(528164),ef=e.i(956506),ex=e.i(389097),ey=e.i(712621),eb=e.i(133974),ev=e.i(648156),eT=e.i(185473),ej=e.i(870855),eC=e.i(999426);let eE="text-right tabular-nums";function ew(e){return e.label??e.endpointId??e.provider}function eL(e){let a,l,i,o,s,c,d=(0,r.c)(16),{row:p,color:u,dotClassName:m,labelClassName:g}=e;return d[0]!==m?(a=(0,n.cn)("shrink-0 rounded-full",m),d[0]=m,d[1]=a):a=d[1],d[2]!==u?(l={backgroundColor:u},d[2]=u,d[3]=l):l=d[3],d[4]!==a||d[5]!==l?(i=(0,t.jsx)("span",{className:a,style:l}),d[4]=a,d[5]=l,d[6]=i):i=d[6],d[7]!==p.endpointId||d[8]!==p.label?(o=(0,t.jsx)(ej.BenchmarkEndpointLabel,{label:p.label,endpointId:p.endpointId}),d[7]=p.endpointId,d[8]=p.label,d[9]=o):o=d[9],d[10]!==g||d[11]!==o?(s=(0,t.jsx)("span",{className:g,children:o}),d[10]=g,d[11]=o,d[12]=s):s=d[12],d[13]!==i||d[14]!==s?(c=(0,t.jsxs)("span",{className:"flex min-w-0 items-center gap-3",children:[i,s]}),d[13]=i,d[14]=s,d[15]=c):c=d[15],c}function eN({permaslug:e,data:r,providerLabelMap:a,colorMapping:i}){let o,c=(0,et.useLocale)(),d=(0,ec.usePosthogClient)(),[p,u]=(0,s.useState)(!1),m=()=>{u(!0),d.capture(l.PostHogEvent.ExpandModelPageBenchmarkScores,{permaslug:e})},{benchmarkTypes:g,providerRows:h}=(0,s.useMemo)(()=>({benchmarkTypes:[...new Set((r?.scores??[]).map(e=>e.benchmark_type))].sort(),providerRows:(0,eT.groupBy)(r?.scores??[],e=>e.provider_name).flatMap(({key:e,values:t})=>{let r=[...new Set(t.flatMap(e=>null===e.endpoint_id?[]:[e.endpoint_id]))],l=r.length>1;return(l?r:[null]).map(r=>{let n=null===r?t:t.filter(e=>e.endpoint_id===r),i=new Map;for(let e of n)(void 0===i.get(e.benchmark_type)||null!==e.endpoint_id)&&i.set(e.benchmark_type,e.score);let o=l?r:null,s=null===o?a.get(e)??e:t.find(e=>e.endpoint_id===o)?.display_name;return{key:`${e}:${o??""}`,provider:e,label:s,endpointId:o??void 0,scores:i,avg:[...i.values()].reduce((e,t)=>e+t,0)/i.size}})}).sort((e,t)=>t.avg-e.avg)}),[r,a]),f=new Set(h.map(e=>e.provider)).size,x=(0,s.useMemo)(()=>{let e=h.map(ew),t=(0,eo.createStableColorMapping)(e);return new Map(e.map(e=>[e,i.get(e)??t.get(e)??"hsl(var(--muted-foreground))"]))},[h,a,i]),y=r?.lookback_days===void 0?"Rolling average over the same lookback window used for quality-based routing":`Rolling average over the past ${r.lookback_days} days — the same lookback window used for quality-based routing`;return 0===h.length?null:(0,t.jsxs)("div",{className:"flex flex-col gap-3 h-full",children:[(0,t.jsxs)(ef.Card,{tabIndex:0,role:"button",onClick:m,className:"shadow-none hover:shadow-none flex-1 cursor-pointer flex flex-col",children:[(0,t.jsx)(ef.CardHeader,{className:"px-4 pt-4 pb-3",children:(0,t.jsxs)(ef.CardTitle,{className:"flex items-center justify-between gap-2",children:[(0,t.jsx)("span",{className:"text-sm font-medium",children:"AutoExacto Benchmarks"}),(0,t.jsx)(eh.Button,{size:"icon",variant:"ghost",onClick:e=>{e.stopPropagation(),m()},"aria-label":"Expand benchmark scores",className:"size-8 shrink-0",children:(0,t.jsx)(em.ArrowsPointingOutIcon,{className:"size-5"})})]})}),(0,t.jsxs)(ef.CardContent,{className:"flex flex-col gap-3 px-4 pb-4",children:[(0,t.jsxs)("div",{className:"grid items-center gap-x-3 gap-y-2.5",style:{gridTemplateColumns:(0,eC.previewGridTemplateColumns)(g.length)},children:[(0,t.jsx)("span",{}),g.map(e=>(0,t.jsx)(ev.Tooltip,{content:(0,eC.formatBenchmarkTitle)(e),children:(0,t.jsx)("span",{className:"whitespace-nowrap text-right text-2xs text-muted-foreground",children:(0,eC.formatBenchmarkShortTitle)(e)})},e)),(o=new Set(h.map(e=>e.provider).filter((e,t,r)=>r.indexOf(e)===t).slice(0,5)),h.filter(e=>o.has(e.provider))).map(e=>(0,t.jsxs)(s.Fragment,{children:[(0,t.jsx)(eL,{row:e,color:x.get(ew(e)),dotClassName:"size-2.5",labelClassName:"truncate text-xs text-foreground"}),g.map(r=>(0,t.jsx)("span",{className:(0,n.cn)(eE,"text-xs font-medium text-foreground"),children:(0,eC.formatBenchmarkScore)(c,e.scores.get(r))},r))]},e.key))]}),f>5&&(0,t.jsxs)("span",{className:"text-xs text-muted-foreground",children:["+",f-5," more providers"]})]})]}),(0,t.jsx)(ex.Dialog,{open:p,onOpenChange:u,children:(0,t.jsxs)(ex.DialogContent,{className:"!grid max-h-[min(90dvh,56rem)] w-[calc(100vw-2rem)] max-w-4xl grid-rows-[auto_minmax(0,1fr)] gap-6 overflow-hidden p-4 sm:p-6 data-[closed]:!animate-none data-[closed]:!duration-0",overlayClassName:"data-[closed]:!animate-none data-[closed]:!duration-0",children:[(0,t.jsx)(ex.DialogHeader,{className:"min-w-0 shrink-0",children:(0,t.jsxs)(ex.DialogTitle,{className:"flex min-w-0 flex-col gap-2 text-base",children:[(0,t.jsx)("span",{children:"AutoExacto Benchmarks"}),(0,t.jsxs)("span",{className:"flex min-w-0 flex-wrap items-center gap-x-1.5 gap-y-1 text-xs font-normal text-muted-foreground",children:[(0,t.jsx)("span",{children:y}),(0,t.jsx)(ev.Tooltip,{side:"top",content:"We continuously benchmark each provider's tool-calling proficiency. The results feed into Auto Exacto's quality-weighted routing.",children:(0,t.jsx)("span",{role:"img","aria-label":"More information about AutoExacto benchmarks",className:"inline-flex shrink-0 cursor-help text-muted-foreground transition-colors hover:text-foreground",children:(0,t.jsx)(eg.InformationCircleIcon,{className:"size-4"})})}),(0,t.jsx)(ey.ExternalLink,{href:"/docs/guides/routing/auto-exacto",target:"_blank",rel:"noopener noreferrer",onClick:()=>{d.capture(l.PostHogEvent.ClickModelPageBenchmarkDocsLink,{permaslug:e})},className:"shrink-0 text-xs",children:"Learn more"})]})]})}),(0,t.jsx)("div",{className:"min-h-0 overflow-hidden",children:(0,t.jsxs)(eb.Table,{containerClassName:"or-table-wrapper--framed",children:[(0,t.jsx)(eb.TableHeader,{sticky:!0,children:(0,t.jsxs)(eb.TableRow,{children:[(0,t.jsx)(eb.TableHead,{children:"Provider"}),g.map(e=>(0,t.jsx)(eb.TableHead,{className:(0,n.cn)(eE,"or-table__cell--wrap-words"),children:(0,eC.formatBenchmarkTitle)(e)},e))]})}),(0,t.jsx)(eb.TableBody,{children:h.map(e=>(0,t.jsxs)(eb.TableRow,{children:[(0,t.jsx)(eb.TableCell,{className:"or-table__cell--wrap-words font-medium",children:(0,t.jsx)(eL,{row:e,color:x.get(ew(e)),dotClassName:"size-3"})}),g.map(r=>(0,t.jsx)(eb.TableCell,{className:eE,children:(0,eC.formatBenchmarkScore)(c,e.scores.get(r))},r))]},e.key))})]})})]})})]})}var eS=e.i(369677),e_=e.i(420863),ek=e.i(616384),eM=e.i(885567),eP=e.i(707690),eR=e.i(585351);function eA(e){return(0,t.jsx)(ei.SelectItem,{value:e,children:(0,eu.formatPercentileLabel)(e)},e)}function eO(e){return e.provider_display_name}function eI(e){return[e.id,e.provider_display_name]}function eD(e){return!!e.provider_name}e.s(["ModelPerformance",0,function(){let e,i,c,p,u,m,g,h,f,x,y,b,v,T,j,C,w,L,N,S,_,k,M,P,R,A,O=(0,r.c)(87),I=(0,et.useLocale)(),{model:D,staticVariant:H,isPrivateView:z}=(0,eS.useModelPage)(),F=(0,ec.usePosthogClient)(),U=(0,ek.getProviderTablePerfSelector)(D),B=(0,ek.getProviderTablePerfPresentation)(U),{showReasoningEffortSelect:q,selectableEfforts:W,reasoningEffort:K}=(0,eP.useReasoningEffortFilter)({model:D,perfWorkload:U.perfWorkload,isPrivateView:z}),{data:$,isSuccess:V}=(0,o.useQuery)((0,eR.endpointStatsOptions)({permaslug:D.permaslug,variant:H,...U,reasoningEffort:K}));O[0]!==D.permaslug?(e=(0,eR.benchmarkScoresOptions)(D.permaslug),O[0]=D.permaslug,O[1]=e):e=O[1];let{data:Y,isSuccess:G}=(0,o.useQuery)(e),X=(Y?.scores.length??0)>0,[Z,el]=(0,s.useState)();O[2]!==D.permaslug?(i=(0,eR.topColosOptions)(D.permaslug),O[2]=D.permaslug,O[3]=i):i=O[3];let{data:em}=(0,o.useQuery)(i);O[4]===Symbol.for("react.memo_cache_sentinel")?(c=(0,ep.parseAsStringLiteral)(eu.METRIC_PERCENTILE_VALUES).withOptions({history:"replace"}),O[4]=c):c=O[4];let[eg,eh]=(0,ep.useQueryState)("percentile",c),ef=eg??eu.DEFAULT_METRIC_PERCENTILE;O[5]!==F||O[6]!==eh?(p=e=>{(0,eu.isMetricPercentile)(e)&&(F.capture(l.PostHogEvent.ChangeModelPageProviderFilter,{filter:"percentile",value:e}),eh(e===eu.DEFAULT_METRIC_PERCENTILE?null:e))},O[5]=F,O[6]=eh,O[7]=p):p=O[7];let ex=p,ey=3*ed.oneDayMS,eb=Date.now()-new Date(D.created_at).getTime()0;O[14]!==eC?(h=(0,eu.hasSelectablePercentileData)(eC),O[14]=eC,O[15]=h):h=O[15];let ew=h;O[16]!==eC?(f=new Map(eC.map(eI)),O[16]=eC,O[17]=f):f=O[17];let eL=f;if(O[18]!==eC){for(let e of(x=new Map,eC))void 0!==e.service_tier&&x.has(e.provider_name)||x.set(e.provider_name,e.provider_display_name);O[18]=eC,O[19]=x}else x=O[19];let eH=x,ez=ew&&($?.length??0)===1;if(O[20]!==eC){let e=[...new Set(eC.map(eO))];y=(0,eo.createStableColorMapping)(e),O[20]=eC,O[21]=y}else y=O[21];let eF=y;O[22]!==ej||O[23]!==Z?(b=(0,t.jsx)(es.ColoSelector,{selectedColo:Z,onColoChange:el,availableColos:ej,showAllOption:!0,variant:"compact",displayMode:"compact",className:"w-32"}),O[22]=ej,O[23]=Z,O[24]=b):b=O[24];let eU=b;O[25]===Symbol.for("react.memo_cache_sentinel")?(v=(0,t.jsx)(d.EmptyAnalyticsData,{className:"min-h-40",message:"Not enough performance data to display yet."}),O[25]=v):v=O[25];let eB=v;O[26]!==eC||O[27]!==I||O[28]!==ef||O[29]!==B.shouldShowThroughputColumn?(T=function(e,{filteredEndpointStats:t,percentile:r,shouldShowThroughput:a}){let l=t.filter(e=>e.stats);if(0===l.length)return null;let n=a?Math.max(...l.map(e=>(0,eu.getThroughputTps)(e.stats,r)??0)):0,i=Math.min(...l.map(e=>(0,eu.getLatencyMs)(e.stats,r)??1/0));return{throughput:n>0?(0,er.formatNativeFixed)(n,{locale:e,fractionDigits:0})??"—":null,latency:Number.isFinite(i)?(0,er.formatNativeFixed)(i/1e3,{locale:e,fractionDigits:2})??"—":null}}(I,{filteredEndpointStats:eC,percentile:ef,shouldShowThroughput:B.shouldShowThroughputColumn}),O[26]=eC,O[27]=I,O[28]=ef,O[29]=B.shouldShowThroughputColumn,O[30]=T):T=O[30];let eq=T;O[31]!==ef||O[32]!==B.latencyLabel||O[33]!==B.latencyTooltip||O[34]!==eq?(j=eq&&(0,t.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[eq.throughput&&(0,t.jsxs)("div",{className:"rounded-lg border border-border bg-card px-3 py-2.5",children:[(0,t.jsx)("p",{className:"text-2xs font-medium text-muted-foreground",children:"Throughput"}),(0,t.jsxs)("p",{className:"text-base font-medium leading-tight mt-0.5 tabular-nums",children:[eq.throughput,(0,t.jsx)("span",{className:"text-xs font-normal text-muted-foreground ml-1",children:"tok/s"})]}),(0,t.jsxs)("p",{className:"text-2xs font-medium text-muted-foreground mt-0.5",children:[(0,eu.formatPercentileLabel)(ef),", best across providers"]})]}),eq.latency&&(0,t.jsxs)("div",{className:"rounded-lg border border-border bg-card px-3 py-2.5",children:[(0,t.jsxs)("p",{className:"flex items-center gap-1 text-2xs font-medium text-muted-foreground",children:[B.latencyLabel,(0,t.jsx)(e_.PricingInfoTooltip,{label:B.latencyLabel,tooltip:B.latencyTooltip})]}),(0,t.jsxs)("p",{className:"text-base font-medium leading-tight mt-0.5 tabular-nums",children:[eq.latency,(0,t.jsx)("span",{className:"text-xs font-normal text-muted-foreground ml-1",children:"s"})]}),(0,t.jsxs)("p",{className:"text-2xs font-medium text-muted-foreground mt-0.5",children:[(0,eu.formatPercentileLabel)(ef),", best provider"]})]})]}),O[31]=ef,O[32]=B.latencyLabel,O[33]=B.latencyTooltip,O[34]=eq,O[35]=j):j=O[35],O[36]!==ej||O[37]!==Z?(C=(0,t.jsx)(es.ColoSelector,{selectedColo:Z,onColoChange:el,availableColos:ej,showAllOption:!0,displayMode:"compact",className:"w-full md:w-40"}),O[36]=ej,O[37]=Z,O[38]=C):C=O[38],O[39]!==W||O[40]!==q?(w=q&&(0,t.jsx)(eM.ReasoningEffortSelect,{className:"flex w-full items-center gap-2 md:w-auto",efforts:W}),O[39]=W,O[40]=q,O[41]=w):w=O[41],O[42]!==ex||O[43]!==ez||O[44]!==ef||O[45]!==ew?(L=ew&&!ez&&(0,t.jsxs)("label",{className:"flex w-full items-center gap-2 md:w-auto",children:[(0,t.jsx)("span",{className:"whitespace-nowrap text-xs text-muted-foreground",children:"Latency / throughput"}),(0,t.jsxs)(ei.Select,{onValueChange:ex,value:ef,children:[(0,t.jsx)(ei.SelectTrigger,{className:"w-full md:w-20","aria-label":"Latency / throughput percentile",children:(0,t.jsx)(ei.SelectValue,{})}),(0,t.jsx)(ei.SelectContent,{children:eu.METRIC_PERCENTILE_VALUES.map(eA)})]})]}),O[42]=ex,O[43]=ez,O[44]=ef,O[45]=ew,O[46]=L):L=O[46],O[47]!==D||O[48]!==F?(N=e=>{("1w"===e||"3d"===e)&&(eT(e),F.capture(l.PostHogEvent.ChangeModelPagePerformanceTimeRange,{time_range:e,permaslug:D.permaslug}))},O[47]=D,O[48]=F,O[49]=N):N=O[49];let eQ="1w"===ev?"1 week":"3 days";O[50]!==eQ?(S=(0,t.jsx)(ei.SelectTrigger,{className:"w-full md:w-28",children:(0,t.jsx)(ei.SelectValue,{children:eQ})}),O[50]=eQ,O[51]=S):S=O[51],O[52]===Symbol.for("react.memo_cache_sentinel")?(_=(0,t.jsxs)(ei.SelectContent,{children:[(0,t.jsx)(ei.SelectItem,{value:"1w",children:"1 week"}),(0,t.jsx)(ei.SelectItem,{value:"3d",children:"3 days"})]}),O[52]=_):_=O[52],O[53]!==ev||O[54]!==N||O[55]!==S?(k=(0,t.jsxs)(ei.Select,{value:ev,onValueChange:N,children:[S,_]}),O[53]=ev,O[54]=N,O[55]=S,O[56]=k):k=O[56],O[57]!==w||O[58]!==L||O[59]!==k?(M=(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[w,L,k]}),O[57]=w,O[58]=L,O[59]=k,O[60]=M):M=O[60],O[61]!==C||O[62]!==M?(P=(0,t.jsxs)("div",{className:"flex flex-col gap-2 md:flex-row md:justify-between md:items-center",children:[C,M]}),O[61]=C,O[62]=M,O[63]=P):P=O[63],O[64]!==Y||O[65]!==eU||O[66]!==eL||O[67]!==X||O[68]!==eE||O[69]!==V||O[70]!==ez||O[71]!==D||O[72]!==ef||O[73]!==B.shouldShowThroughputColumn||O[74]!==U||O[75]!==eF||O[76]!==eH||O[77]!==K||O[78]!==Z||O[79]!==ev||O[80]!==H?(R=(eE||X)&&(0,t.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-6 gap-12 md:gap-6 md:auto-rows-[1fr] md:[&>*>*]:h-full",children:[eE&&B.shouldShowThroughputColumn&&(0,t.jsx)("div",{className:"md:col-span-2 empty:hidden",children:(0,t.jsx)(ea,{permaslug:D.permaslug,variant:H,perfWorkload:U.perfWorkload,endpointLabelMap:eL,colorMapping:eF,colo:Z,timeRange:ev,percentile:ef,percentileLines:ez,reasoningEffort:K,headerControls:eU})}),eE&&"latency"===U.latencyMetric&&(0,t.jsx)("div",{className:"md:col-span-2 empty:hidden",children:(0,t.jsx)(Q,{permaslug:D.permaslug,variant:H,perfWorkload:U.perfWorkload,endpointLabelMap:eL,colorMapping:eF,colo:Z,timeRange:ev,percentile:ef,percentileLines:ez,reasoningEffort:K,headerControls:eU})}),eE&&(0,t.jsx)("div",{className:(0,n.cn)("md:col-span-2 empty:hidden","has-[[data-slot=empty-analytics-data]]:md:col-span-6"),children:(0,t.jsx)(J,{permaslug:D.permaslug,variant:H,perfWorkload:U.perfWorkload,endpointLabelMap:eL,colorMapping:eF,colo:Z,timeRange:ev,percentile:ef,percentileLines:ez,reasoningEffort:K,headerControls:eU,emptyState:eB})}),V&&!eE&&(0,t.jsx)("div",{className:"md:col-span-4",children:eB}),X&&(0,t.jsx)("div",{className:"md:col-span-2",children:(0,t.jsx)(eN,{permaslug:D.permaslug,data:Y,providerLabelMap:eH,colorMapping:eF})}),eE&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"md:col-span-2 empty:hidden",children:(0,t.jsx)(en,{permaslug:D.permaslug,endpointLabelMap:eL,colorMapping:eF,timeRange:ev})}),(0,t.jsx)("div",{className:"md:col-span-2 empty:hidden",children:(0,t.jsx)(ee,{permaslug:D.permaslug,endpointLabelMap:eL,colorMapping:eF,timeRange:ev})}),(0,t.jsx)("div",{className:"md:col-span-2 empty:hidden",children:(0,t.jsx)(E,{permaslug:D.permaslug,endpointLabelMap:eL,colorMapping:eF,timeRange:ev})})]})]}),O[64]=Y,O[65]=eU,O[66]=eL,O[67]=X,O[68]=eE,O[69]=V,O[70]=ez,O[71]=D,O[72]=ef,O[73]=B.shouldShowThroughputColumn,O[74]=U,O[75]=eF,O[76]=eH,O[77]=K,O[78]=Z,O[79]=ev,O[80]=H,O[81]=R):R=O[81];let eW=V&&G&&!eE&&!X&&eB;return O[82]!==j||O[83]!==P||O[84]!==R||O[85]!==eW?(A=(0,t.jsxs)("div",{className:"flex w-full flex-col gap-6",children:[j,P,R,eW]}),O[82]=j,O[83]=P,O[84]=R,O[85]=eW,O[86]=A):A=O[86],A}],117439)}]); //# sourceMappingURL=2kejr_e9o7cuy.js.map //# chunkId=01a091c0-f1bd-7c73-9d01-269b7ff7841f