arize-phoenix 7.10.0__py3-none-any.whl → 7.10.2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of arize-phoenix might be problematic. Click here for more details.

@@ -1,4 +1,4 @@
1
- import{r as c,j as e,dL as v,l as n,U as F,R as w,D as E,bq as L,dM as S,dN as R,dO as a,dP as k,t as I,dQ as A}from"./vendor-DvC8cT4X.js";import{k as C,Q as _,D as j,Y as z}from"./vendor-arizeai-Do1793cv.js";import{E as O,L as T,R as D,r as N,b as G,F as M,A as U,c as q,d as B,P as J,h as K,M as Q,e as m,D as V,f as W,g as H,i as Y,j as $,k as X,l as Z,p as ee,n as h,o as ae,S as re,s as te,q as oe,t as g,v as ne,w as u,x as b,y as se,z as le,B as ie,C as de,G as ce,H as x,I as pe,J as me,K as he,N as ge,O as ue,Q as be,U as xe,V as fe}from"./pages-BEC7GxQJ.js";import{V as Pe,d2 as ye,at as ve,ab as Fe,d3 as we,d4 as Ee}from"./components-Bo_Bsbf_.js";import"./vendor-three-DwGkEfCM.js";import"./vendor-codemirror-BzwZPyJM.js";import"./vendor-shiki-Cl9QBraO.js";import"./vendor-recharts-_Jb7JjhG.js";(function(){const s=document.createElement("link").relList;if(s&&s.supports&&s.supports("modulepreload"))return;for(const t of document.querySelectorAll('link[rel="modulepreload"]'))d(t);new MutationObserver(t=>{for(const o of t)if(o.type==="childList")for(const l of o.addedNodes)l.tagName==="LINK"&&l.rel==="modulepreload"&&d(l)}).observe(document,{childList:!0,subtree:!0});function i(t){const o={};return t.integrity&&(o.integrity=t.integrity),t.referrerPolicy&&(o.referrerPolicy=t.referrerPolicy),t.crossOrigin==="use-credentials"?o.credentials="include":t.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function d(t){if(t.ep)return;t.ep=!0;const o=i(t);fetch(t.href,o)}})();const f="arize-phoenix-feature-flags",p={__RESET__:!1};function Le(){const r=localStorage.getItem(f);if(!r)return p;try{const s=JSON.parse(r);return Object.assign({},p,s)}catch{return p}}const P=c.createContext(null);function Se(){const r=w.useContext(P);if(r===null)throw new Error("useFeatureFlags must be used within a FeatureFlagsProvider");return r}function Re(r){const[s,i]=c.useState(Le()),d=t=>{localStorage.setItem(f,JSON.stringify(t)),i(t)};return e(P.Provider,{value:{featureFlags:s,setFeatureFlags:d},children:e(ke,{children:r.children})})}function ke(r){const{children:s}=r,{featureFlags:i,setFeatureFlags:d}=Se(),[t,o]=c.useState(!1);return v("ctrl+shift+f",()=>o(!0)),n(F,{children:[s,e(j,{type:"modal",isDismissable:!0,onDismiss:()=>o(!1),children:t&&e(C,{title:"Feature Flags",children:e(Pe,{height:"size-1000",padding:"size-100",children:Object.keys(i).map(l=>e(_,{isSelected:i[l],onChange:y=>d({...i,[l]:y}),children:l},l))})})})]})}function Ie(){return e(L,{styles:E`
1
+ import{r as c,j as e,dL as v,l as n,U as F,R as w,D as E,bq as L,dM as S,dN as R,dO as a,dP as k,t as I,dQ as A}from"./vendor-DvC8cT4X.js";import{k as C,Q as _,D as j,Y as z}from"./vendor-arizeai-Do1793cv.js";import{E as O,L as T,R as D,r as N,b as G,F as M,A as U,c as q,d as B,P as J,h as K,M as Q,e as m,D as V,f as W,g as H,i as Y,j as $,k as X,l as Z,p as ee,n as h,o as ae,S as re,s as te,q as oe,t as g,v as ne,w as u,x as b,y as se,z as le,B as ie,C as de,G as ce,H as x,I as pe,J as me,K as he,N as ge,O as ue,Q as be,U as xe,V as fe}from"./pages-Cw_XOLII.js";import{V as Pe,d2 as ye,at as ve,ab as Fe,d3 as we,d4 as Ee}from"./components-CMB_kvRq.js";import"./vendor-three-DwGkEfCM.js";import"./vendor-codemirror-BzwZPyJM.js";import"./vendor-shiki-Cl9QBraO.js";import"./vendor-recharts-_Jb7JjhG.js";(function(){const s=document.createElement("link").relList;if(s&&s.supports&&s.supports("modulepreload"))return;for(const t of document.querySelectorAll('link[rel="modulepreload"]'))d(t);new MutationObserver(t=>{for(const o of t)if(o.type==="childList")for(const l of o.addedNodes)l.tagName==="LINK"&&l.rel==="modulepreload"&&d(l)}).observe(document,{childList:!0,subtree:!0});function i(t){const o={};return t.integrity&&(o.integrity=t.integrity),t.referrerPolicy&&(o.referrerPolicy=t.referrerPolicy),t.crossOrigin==="use-credentials"?o.credentials="include":t.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function d(t){if(t.ep)return;t.ep=!0;const o=i(t);fetch(t.href,o)}})();const f="arize-phoenix-feature-flags",p={__RESET__:!1};function Le(){const r=localStorage.getItem(f);if(!r)return p;try{const s=JSON.parse(r);return Object.assign({},p,s)}catch{return p}}const P=c.createContext(null);function Se(){const r=w.useContext(P);if(r===null)throw new Error("useFeatureFlags must be used within a FeatureFlagsProvider");return r}function Re(r){const[s,i]=c.useState(Le()),d=t=>{localStorage.setItem(f,JSON.stringify(t)),i(t)};return e(P.Provider,{value:{featureFlags:s,setFeatureFlags:d},children:e(ke,{children:r.children})})}function ke(r){const{children:s}=r,{featureFlags:i,setFeatureFlags:d}=Se(),[t,o]=c.useState(!1);return v("ctrl+shift+f",()=>o(!0)),n(F,{children:[s,e(j,{type:"modal",isDismissable:!0,onDismiss:()=>o(!1),children:t&&e(C,{title:"Feature Flags",children:e(Pe,{height:"size-1000",padding:"size-100",children:Object.keys(i).map(l=>e(_,{isSelected:i[l],onChange:y=>d({...i,[l]:y}),children:l},l))})})})]})}function Ie(){return e(L,{styles:E`
2
2
  body {
3
3
  background-color: var(--ac-global-color-grey-75);
4
4
  color: var(--ac-global-text-color-900);
@@ -1,4 +1,4 @@
1
- import{z as R,aD as de,aE as Ee,aF as _e,aG as Oa,A as wd,r as u,j as e,R as ve,n as _a,D as v,l as s,aH as je,a0 as Y,U as B,t as L,a6 as Be,a7 as G,a8 as Ke,a9 as Te,ac as W,aI as he,aJ as mn,aK as gn,aL as Oe,aM as Rd,aN as _t,aO as Dn,aP as Ga,a2 as ie,aQ as Va,ab as Gn,g as Xl,aR as Md,a4 as zt,G as Ad,aS as Nd,aT as bt,aU as St,aV as ka,aW as da,aX as Yl,o as Xa,aY as zd,ay as Vd,az as $d,aZ as Od,p as ei,q as Qd,a_ as jd,ah as ni,a$ as qd,b0 as fl,b1 as Ud,b2 as Bd,b3 as Hd,b4 as Gd,b5 as Wd,b6 as Jd,b7 as Zd,b8 as Xd,b9 as Yd}from"./vendor-DvC8cT4X.js";import{A as ce,C as j,h as Vt,k as J,D as ee,B as $t,y as qe,z as ne,G as ec,s as Ya,p as et,P as Wn,j as Jn,q as nt,v as Zn,w as ca,H as Xe,L as Qa,J as ai,K as nc,M as ti,N as ac,O as tc,Q as ua,e as Re,f as Xn,T as ue,S as Ot,i as Me,g as ae,E as at,a as Pe,U as Qt,V as jt,c as Pn,o as hl,W as lc,n as ic,I as rc,m as kl,l as sc,u as oc,X as dc,r as cc,R as xa,d as li}from"./vendor-arizeai-Do1793cv.js";import{s as qt,a as me,l as uc,j as ii,b as xe,i as ri,c as si,d as Tn,e as oi,f as mc,g as Da,D as gc,h as ja,k as pc,T as On,m as yc,n as bl,o as fc,p as hc,q as Sl,r as kc,t as bc,N as Sc,u as vc,L as ye,v as Ce,w as wa,B as Cc,_ as k,x as Cn,I as D,C as Fc,G as di,y as Ut,P as ma,z as tt,S as Kc,A as Tc,E as xc,F as Ic,H as Dc,J as Pc,K as Lc,M as Ec,O as un,Q as N,R as He,U as ci,V as C,W as ze,X as Bt,Y as Yn,Z as Ae,$ as F,a0 as pe,a1 as Fe,a2 as ga,a3 as pn,a4 as kn,a5 as lt,a6 as Ie,a7 as re,a8 as Ze,a9 as Ln,aa as se,ab as Ne,ac as ui,ad as We,ae as mi,af as Ye,ag as En,ah as Ht,ai as an,aj as bn,ak as Gt,al as gi,am as pi,an as yn,ao as ke,ap as be,aq as Se,ar as vl,as as Cl,at as Sn,au as _c,av as wc,aw as U,ax as yi,ay as Wt,az as it,aA as pa,aB as fi,aC as ya,aD as fa,aE as hi,aF as vn,aG as we,aH as rt,aI as _n,aJ as ki,aK as Jt,aL as tn,aM as bi,aN as Rc,aO as Mc,aP as Ac,aQ as Nc,aR as zc,aS as ln,aT as rn,aU as Vc,aV as Ge,aW as $c,aX as Oc,aY as Si,aZ as Qc,a_ as jc,a$ as Fl,b0 as qc,b1 as Uc,b2 as Bc,b3 as Hc,b4 as Gc,b5 as Wc,b6 as vi,b7 as Jc,b8 as Zc,b9 as Xc,ba as Yc,bb as eu,bc as qn,bd as Zt,be as Ci,bf as ra,bg as wt,bh as $n,bi as Kn,bj as nu,bk as au,bl as Fi,bm as st,bn as Ki,bo as sn,bp as tu,bq as lu,br as Pa,bs as Le,bt as qa,bu as Ti,bv as iu,bw as $e,bx as Xt,by as ru,bz as su,bA as ou,bB as du,bC as Yt,bD as Ue,bE as en,bF as ha,bG as cu,bH as ot,bI as xi,bJ as Ii,bK as vt,bL as uu,bM as dt,bN as ct,bO as Je,bP as Ve,bQ as mu,bR as el,bS as Di,bT as Pi,bU as Li,bV as gu,bW as on,bX as Ei,bY as xn,bZ as pu,b_ as Kl,b$ as _i,c0 as yu,c1 as fu,c2 as hu,c3 as ku,c4 as wi,c5 as dn,c6 as bu,c7 as sa,c8 as Rt,c9 as Su,ca as Ri,cb as Mi,cc as vu,cd as Cu,ce as Fu,cf as ut,cg as Ai,ch as Ra,ci as Tl,cj as Ni,ck as nl,cl as Ku,cm as Tu,cn as al,co as zi,cp as Vi,cq as xu,cr as Mt,cs as $i,ct as Iu,cu as Du,cv as $a,cw as Pu,cx as Lu,cy as Oi,cz as Qi,cA as Eu,cB as _u,cC as wu,cD as Ru,cE as ji,cF as tl,cG as qi,cH as Mu,cI as Au,cJ as At,cK as Nu,cL as zu,cM as Vu,cN as $u,cO as Ou,cP as Qu,cQ as Ui,cR as ju,cS as qu,cT as Uu,cU as Bu,cV as Hu,cW as Gu,cX as Wu,cY as Ju,cZ as Zu,c_ as Xu,c$ as Yu,d0 as xl,d1 as Il}from"./components-Bo_Bsbf_.js";import{p as Ma,R as wn,n as Rn,i as em,E as Bi,m as Hi,o as Gi,g as nm}from"./vendor-codemirror-BzwZPyJM.js";import{R as Mn,C as Aa,X as An,Y as nn,a as Nn,T as zn,B as oa,A as La,b as Wi,c as ll,L as Ji,d as am,P as tm,e as lm,f as im}from"./vendor-recharts-_Jb7JjhG.js";const rm=4,sm={user:["user","human"],ai:["assistant","bot","ai"],system:["system"],tool:["tool"]},om="Unable to parse span input messages, expected messages which include a role and content.",dm="Unable to parse span output messages, expected messages which include a role and content.",cm="Unable to parse span output expected output.value to be present.",um="Unable to parse span attributes, attributes must be valid JSON.",mm="Unable to parse model config, expected llm.model_name to be present.",gm="Unable to parse model config, expected llm.invocation_parameters JSON string to be present.",pm="Unable to parse invocation parameters response_format, expected llm.invocation_parameters.response_format to be a well formed json object or undefined.",ym="Unable to parse tools, expected tools to be an array of valid tools.",fm="Unable to parse prompt template variables, expected prompt template variables to be a valid JSON object string.",Dl={AZURE_OPENAI:[],ANTHROPIC:["claude"],OPENAI:["gpt","o1"],GEMINI:["gemini"]},Ia="TOOL_CHOICE",Ua="tool_choice",Un="RESPONSE_FORMAT",Qn="response_format",hm=[Ia,Un],il=qt()(R.union([R.literal("auto"),R.literal("none"),R.literal("required"),R.object({type:R.literal("function"),function:R.object({name:R.string()})})])),rl=R.object({type:R.union([R.literal("auto"),R.literal("any"),R.literal("tool")]),disable_parallel_tool_use:R.boolean().optional(),name:R.string().optional()}),km=rl.transform(n=>{switch(n.type){case"any":case"auto":return"auto";case"tool":return n.name?{type:"function",function:{name:n.name}}:"auto";default:return"auto"}}),bm=il.transform(n=>typeof n=="string"?{type:"auto"}:{type:"tool",name:n.function.name});R.union([il,rl]);const Sm=n=>{const{success:a,data:t}=il.safeParse(n);if(a)return{provider:"OPENAI",toolChoice:t};const{success:l,data:i}=rl.safeParse(n);return l?{provider:"ANTHROPIC",toolChoice:i}:{provider:null,toolChoice:null}},vm=n=>{const{provider:a,toolChoice:t}=Sm(n);if(a==null||t==null)throw new Error("Could not detect provider of tool choice");switch(a){case"AZURE_OPENAI":case"OPENAI":return t;case"ANTHROPIC":return km.parse(t);default:me()}},Cm=({toolChoice:n,targetProvider:a})=>{switch(a){case"AZURE_OPENAI":case"OPENAI":return n;case"ANTHROPIC":return bm.parse(n);case"GEMINI":return n;default:me()}},Fm=({toolChoice:n,targetProvider:a})=>{try{const t=vm(n);return Cm({toolChoice:t,targetProvider:a})}catch{return null}},Km=R.object({tool_call:R.object({id:R.string().optional(),function:R.object({name:R.string(),arguments:R.string()}).partial()}).partial()}).partial(),Zi=R.object({[de.message]:R.object({[Ee.role]:R.string(),[Ee.content]:R.union([R.string(),R.array(R.record(R.string(),R.unknown()))]).default(""),[Ee.tool_calls]:R.array(Km).optional(),[Ee.tool_call_id]:R.string().optional()})}),Tm=R.object({[de.llm]:R.object({[_e.input_messages]:R.array(Zi)})}),xm=R.object({[de.llm]:R.object({[_e.output_messages]:R.array(Zi)})}),Im=R.object({[de.output]:R.object({value:R.string()})}),Xi=qt()(R.enum(["user","ai","system","tool"])),Dm=qt()(R.object({id:R.number(),role:Xi,content:R.string().optional(),toolCallId:R.string().optional(),toolCalls:R.array(uc).optional()})),Pm=R.array(Dm),sl=R.lazy(()=>R.record(ii)),Lm=sl,Yi=R.string().transform((n,a)=>{const{json:t}=xe(n);if(!ri(t))return a.addIssue({code:R.ZodIssueCode.custom,message:"The invocation parameters must be a valid JSON object"}),R.NEVER;const{success:l,data:i}=Lm.safeParse(t);return l?i:(a.addIssue({code:R.ZodIssueCode.custom,message:"The invocation parameters must be a valid JSON object"}),R.NEVER)}).default("{}"),Em=R.object({[de.llm]:R.object({[_e.provider]:R.string().optional(),[_e.model_name]:R.string()})}),er=R.object({[de.llm]:R.object({[_e.invocation_parameters]:Yi})}),_m=R.object({[de.llm]:R.object({[_e.invocation_parameters]:Yi.pipe(R.object({response_format:sl.optional()}))})}),wm=R.string().transform((n,a)=>{const{json:t}=xe(n);return t==null||!ri(t)?(a.addIssue({code:R.ZodIssueCode.custom,message:"The tool JSON schema must be a valid JSON object"}),R.NEVER):t}).transform((n,a)=>{const{data:t,success:l}=si.safeParse(n);return l?t:(a.addIssue({code:R.ZodIssueCode.custom,message:"The tool JSON schema must be a valid tool schema"}),R.NEVER)}),Rm=R.object({[de.llm]:R.object({[_e.tools]:R.array(R.object({[de.tool]:R.object({[Oa.json_schema]:wm})}).optional()).optional()}).optional()}).optional(),Mm=R.lazy(()=>R.object({type:R.literal("json_schema"),json_schema:R.object({name:R.string().describe("The name of the schema"),schema:ii.describe("The schema itself in JSON format"),strict:R.literal(!0).describe("The schema must be strict")})})),Am=wd(Mm,{removeAdditionalStrategy:"passthrough"}),Nm=R.string().transform((n,a)=>{const{json:t}=xe(n);return Tn(t)?Object.entries(t).reduce((i,[r,o])=>{if(typeof o=="string")i[r]=o;else{const{json:c}=oi(o);c!=null&&(i[r]=c)}return i},{}):(a.addIssue({code:R.ZodIssueCode.custom,message:"The prompt template variables must be a valid JSON object"}),R.NEVER)}),zm=R.object({[de.llm]:R.object({[_e.prompt_template]:R.object({variables:Nm}).optional()}).optional()}).optional();function nr(n){return Xi.safeParse(n).success}function Wa(n){if(nr(n))return n;for(const[a,t]of Object.entries(sm))if(t.includes(n))return a;return pc}function Vm({toolCalls:n,provider:a}){if(n!=null)return n.map(({tool_call:t})=>{var i,r,o,c;if(t==null)return null;let l={};if(((i=t.function)==null?void 0:i.arguments)!=null){const{json:d}=xe(t.function.arguments);Tn(d)&&(l=d)}switch(a){case"OPENAI":case"AZURE_OPENAI":return{id:t.id??"",function:{name:((r=t.function)==null?void 0:r.name)??"",arguments:l}};case"ANTHROPIC":return{id:t.id??"",type:"tool_use",name:((o=t.function)==null?void 0:o.name)??"",input:l};case"GEMINI":return{id:t.id??"",function:{name:((c=t.function)==null?void 0:c.name)??"",arguments:l}};default:me()}}).filter(t=>t!=null)}function ar({messages:n,provider:a}){return n.map(({message:t})=>({id:Da(),role:t.tool_call_id!=null?Wa("tool"):Wa(t.role),content:typeof t.content=="string"?t.content:void 0,toolCalls:Vm({provider:a,toolCalls:t.tool_calls}),toolCallId:t.tool_call_id}))}function $m({provider:n,parsedAttributes:a}){var l;const t=Tm.safeParse(a);if(!t.success)return{messageParsingErrors:[om],messages:null};if(n==="ANTHROPIC"){const{success:i,data:r}=er.safeParse(a);if(i){const o=t.data.llm.input_messages,c=(l=r.llm.invocation_parameters)==null?void 0:l.system;typeof c=="string"&&c&&(!o||o[0].message.role!=="system")&&t.data.llm.input_messages.unshift({message:{role:"system",content:c}})}}return{messageParsingErrors:[],messages:ar({provider:n,messages:t.data.llm.input_messages})}}function Om({provider:n,parsedAttributes:a}){const t=[],l=xm.safeParse(a);if(l.success)return{output:ar({provider:n,messages:l.data.llm.output_messages}),outputParsingErrors:t};t.push(dm);const i=Im.safeParse(a);return i.success?{output:i.data.output.value,outputParsingErrors:t}:(t.push(cm),{output:void 0,outputParsingErrors:t})}function Qm(n){if(n==null)return null;switch(n.toLowerCase()){case"openai":return"OPENAI";case"anthropic":return"ANTHROPIC";case"google":return"GEMINI";case"azure":return"AZURE_OPENAI";default:return null}}function jm(n){for(const a of Object.keys(Dl))if(Dl[a].some(l=>n.includes(l)))return a;return gc}function qm(n){const{success:a,data:t}=Em.safeParse(n);if(a){const l=Qm(t.llm.provider)||jm(t.llm.model_name);return{modelConfig:{modelName:t.llm.model_name,provider:l,invocationParameters:[],supportedInvocationParameters:[]},parsingErrors:[]}}return{modelConfig:null,parsingErrors:[mm]}}function Um(n,a=[]){const{success:t,data:l}=er.safeParse(n),i=[];return t||i.push(gm),{invocationParameters:eg((l==null?void 0:l.llm.invocation_parameters)??{},a),parsingErrors:i}}function Bm(n){const{success:a,data:t}=_m.safeParse(n);return a?{responseFormat:t.llm.invocation_parameters.response_format,parsingErrors:[]}:{responseFormat:void 0,parsingErrors:[pm]}}function Hm(n){var a;return(((a=n==null?void 0:n.llm)==null?void 0:a.tools)??[]).map(t=>(t==null?void 0:t.tool)==null?null:{id:ja(),definition:t.tool.json_schema}).filter(t=>t!=null)}function Gm(n){var l;const{data:a,success:t}=Rm.safeParse(n);return t?((l=a==null?void 0:a.llm)==null?void 0:l.tools)==null?{tools:null,parsingErrors:[]}:{tools:Hm(a),parsingErrors:[]}:{tools:null,parsingErrors:[ym]}}function Wm(n){var l;const{success:a,data:t}=zm.safeParse(n);return a?((l=t==null?void 0:t.llm)==null?void 0:l.prompt_template)==null?{variables:null,parsingErrors:[]}:{variables:t.llm.prompt_template.variables,parsingErrors:[]}:{variables:null,parsingErrors:[fm]}}function Jm(n){const a=mc(),{json:t,parseError:l}=xe(n.attributes);if(l)return{playgroundInstance:{...a,spanId:(n==null?void 0:n.id)??null},parsingErrors:[um]};const i=n.invocationParameters,r=qm(t);let{modelConfig:o}=r;const{parsingErrors:c}=r,{messages:d,messageParsingErrors:m}=$m({provider:(o==null?void 0:o.provider)??a.model.provider,parsedAttributes:t}),{output:f,outputParsingErrors:g}=Om({provider:(o==null?void 0:o.provider)??a.model.provider,parsedAttributes:t}),{invocationParameters:y,parsingErrors:p}=Um(t,i),{variables:h,parsingErrors:b}=Wm(t),{parsingErrors:K}=Bm(t);o=o!=null?{...o,invocationParameters:K.length>0?y.filter(P=>P.invocationName!==Qn&&P.canonicalName!==Un):y}:null;const{tools:T,parsingErrors:I}=Gm(t);return{playgroundInstance:{...a,model:o??a.model,template:d!=null?{__type:"chat",messages:d}:a.template,output:f,spanId:n.id,tools:T??a.tools},playgroundInput:h!=null?{variablesValueCache:h}:void 0,parsingErrors:[...m,...g,...c,...I,...p,...K,...b]}}const Zm=n=>Pm.safeParse(n).success,tr=({instance:n,templateLanguage:a})=>{if(a==On.NONE)return[];const t=new Set,l=n.template.__type,i=yc(a);switch(l){case"chat":{n.template.messages.forEach(r=>{(r.content==null?[]:i.extractVariables(r.content)).forEach(c=>{t.add(c)})});break}case"text_completion":{i.extractVariables(n.template.prompt).forEach(o=>{t.add(o)});break}default:me()}return Array.from(t)},Xm=({instances:n,templateLanguage:a})=>a==On.NONE?[]:Array.from(new Set(n.flatMap(t=>tr({instance:t,templateLanguage:a})))),lr=({instances:n,templateLanguage:a,input:t})=>{if(a==On.NONE)return{variablesMap:{},variableKeys:[]};const l=Xm({instances:n,templateLanguage:a}),i=t.variablesValueCache??{};return{variablesMap:l.reduce((o,c)=>(o[c]=i[c]||"",o),{}),variableKeys:l}};function Bn(n,a){return n.invocationName===a.invocationName||n.canonicalName!=null&&a.canonicalName!=null&&n.canonicalName===a.canonicalName}const Ym=(n,a)=>n.filter(t=>a.some(l=>Bn(l,t))).map(t=>{var l;return{...t,invocationName:((l=a.find(i=>Bn(i,t)))==null?void 0:l.invocationName)??t.invocationName}}),mt=n=>n.replace(/_([a-z])/g,(a,t)=>t.toUpperCase()),eg=(n,a)=>Object.entries(n).map(([t,l])=>{const i=a.find(r=>r.canonicalName&&r.canonicalName.toLowerCase()===t.toLowerCase()||r.invocationName&&r.invocationName.toLowerCase()===t.toLowerCase());return i==null||i.invocationInputField==null||i.invocationName==null?null:{canonicalName:i.canonicalName,invocationName:i.invocationName,[mt(i.invocationInputField)]:l}}).filter(t=>t!=null),Ba=n=>{const{provider:a,validatedToolDefinition:t}=hc(n.definition);switch(a){case"OPENAI":case"AZURE_OPENAI":return t.function.name;case"ANTHROPIC":return t.name;case"UNKNOWN":return null;default:me()}},Pl=({provider:n,toolNumber:a})=>{switch(n){case"OPENAI":case"AZURE_OPENAI":return{id:ja(),definition:Sl(a)};case"ANTHROPIC":return{id:ja(),definition:kc(a)};case"GEMINI":return{id:ja(),definition:Sl(a)};default:me()}},ng=n=>{switch(n){case"OPENAI":case"AZURE_OPENAI":return bl();case"ANTHROPIC":return fc();case"GEMINI":return bl();default:me()}};function ag(n){return{content:n.content,role:tg(n.role),toolCalls:n.toolCalls,toolCallId:n.toolCallId}}function tg(n){switch(n){case"system":return"SYSTEM";case"user":return"USER";case"tool":return"TOOL";case"ai":return"AI";default:me()}}const ir=({playgroundStore:n,instanceId:a,credentials:t})=>{const{instances:l}=n.getState(),i=l.find(m=>m.id===a);if(!i)throw new Error(`No instance found for id ${a}`);if(i.template.__type!=="chat")throw new Error("We only support chat templates for now");const r=i.model.supportedInvocationParameters;let o=[...i.model.invocationParameters];const c=Fm({toolChoice:i.toolChoice,targetProvider:i.model.provider});i.tools.length>0?(o=o.filter(m=>m.invocationName!==Ua&&m.canonicalName!==Ia),o.push({canonicalName:Ia,invocationName:Ua,valueJson:c})):o=o.filter(m=>m.invocationName!==Ua&&m.canonicalName!==Ia),o=r.length?Ym(o,r):o;const d=i.model.provider==="AZURE_OPENAI"?{endpoint:i.model.endpoint,apiVersion:i.model.apiVersion}:{};return{messages:i.template.messages.map(ag),model:{providerKey:i.model.provider,name:i.model.modelName||"",baseUrl:i.model.baseUrl,...d},invocationParameters:o,tools:i.tools.length?i.tools.map(m=>m.definition):void 0,apiKey:t[i.model.provider]||null}},lg=({playgroundStore:n,instanceId:a,credentials:t})=>{const l=ir({playgroundStore:n,instanceId:a,credentials:t}),{instances:i,templateLanguage:r,input:o}=n.getState(),{variablesMap:c}=lr({instances:i,input:o,templateLanguage:r});return{...l,template:{variables:c,language:r}}},Ll=({playgroundStore:n,instanceId:a,credentials:t,datasetId:l})=>({...ir({playgroundStore:n,instanceId:a,credentials:t}),templateLanguage:n.getState().templateLanguage,datasetId:l});function rr(n){return n==null||n===""?"{}":typeof n=="string"?n:JSON.stringify(n,null,2)}function sr(n,a){return a.filter(t=>t.required).every(t=>n.some(l=>Bn(l,t)))}const ig=n=>{for(const[a,t]of Object.entries(n))if(a.endsWith("DefaultValue")&&t!=null)return n[a]};function N1(n,a){const t=new Map(n.map(l=>[l.canonicalName||l.invocationName,l]));return a.forEach(l=>{var d;const i=l.canonicalName||l.invocationName,r=ig(l),o=mt(l.invocationInputField||"");if(!l.invocationName||!l.invocationInputField||!i||r==null||((d=t.get(i))==null?void 0:d[o])!=null)return;const c={canonicalName:l.canonicalName,invocationName:l.invocationName,[o]:r};t.set(i,c)}),Array.from(t.values())}const or=u.createContext(null);function z1({children:n,...a}){const[t]=u.useState(()=>bc(a));return e(or.Provider,{value:t,children:n})}function Ja(n,a){const t=ve.useContext(or);if(!t)throw new Error("Missing CredentialsContext.Provider in the tree");return _a(t,n,a)}const dr=u.createContext(null);function rg(){const n=u.useContext(dr);if(n===null)throw new Error("useFunctionality must be used within a FunctionalityProvider");return n}function V1(n){return e(dr.Provider,{value:{authenticationEnabled:window.Config.authenticationEnabled},children:n.children})}const sg=v`
1
+ import{z as R,aD as de,aE as Ee,aF as _e,aG as Oa,A as wd,r as u,j as e,R as ve,n as _a,D as v,l as s,aH as je,a0 as Y,U as B,t as L,a6 as Be,a7 as G,a8 as Ke,a9 as Te,ac as W,aI as he,aJ as mn,aK as gn,aL as Oe,aM as Rd,aN as _t,aO as Dn,aP as Ga,a2 as ie,aQ as Va,ab as Gn,g as Xl,aR as Md,a4 as zt,G as Ad,aS as Nd,aT as bt,aU as St,aV as ka,aW as da,aX as Yl,o as Xa,aY as zd,ay as Vd,az as $d,aZ as Od,p as ei,q as Qd,a_ as jd,ah as ni,a$ as qd,b0 as fl,b1 as Ud,b2 as Bd,b3 as Hd,b4 as Gd,b5 as Wd,b6 as Jd,b7 as Zd,b8 as Xd,b9 as Yd}from"./vendor-DvC8cT4X.js";import{A as ce,C as j,h as Vt,k as J,D as ee,B as $t,y as qe,z as ne,G as ec,s as Ya,p as et,P as Wn,j as Jn,q as nt,v as Zn,w as ca,H as Xe,L as Qa,J as ai,K as nc,M as ti,N as ac,O as tc,Q as ua,e as Re,f as Xn,T as ue,S as Ot,i as Me,g as ae,E as at,a as Pe,U as Qt,V as jt,c as Pn,o as hl,W as lc,n as ic,I as rc,m as kl,l as sc,u as oc,X as dc,r as cc,R as xa,d as li}from"./vendor-arizeai-Do1793cv.js";import{s as qt,a as me,l as uc,j as ii,b as xe,i as ri,c as si,d as Tn,e as oi,f as mc,g as Da,D as gc,h as ja,k as pc,T as On,m as yc,n as bl,o as fc,p as hc,q as Sl,r as kc,t as bc,N as Sc,u as vc,L as ye,v as Ce,w as wa,B as Cc,_ as k,x as Cn,I as D,C as Fc,G as di,y as Ut,P as ma,z as tt,S as Kc,A as Tc,E as xc,F as Ic,H as Dc,J as Pc,K as Lc,M as Ec,O as un,Q as N,R as He,U as ci,V as C,W as ze,X as Bt,Y as Yn,Z as Ae,$ as F,a0 as pe,a1 as Fe,a2 as ga,a3 as pn,a4 as kn,a5 as lt,a6 as Ie,a7 as re,a8 as Ze,a9 as Ln,aa as se,ab as Ne,ac as ui,ad as We,ae as mi,af as Ye,ag as En,ah as Ht,ai as an,aj as bn,ak as Gt,al as gi,am as pi,an as yn,ao as ke,ap as be,aq as Se,ar as vl,as as Cl,at as Sn,au as _c,av as wc,aw as U,ax as yi,ay as Wt,az as it,aA as pa,aB as fi,aC as ya,aD as fa,aE as hi,aF as vn,aG as we,aH as rt,aI as _n,aJ as ki,aK as Jt,aL as tn,aM as bi,aN as Rc,aO as Mc,aP as Ac,aQ as Nc,aR as zc,aS as ln,aT as rn,aU as Vc,aV as Ge,aW as $c,aX as Oc,aY as Si,aZ as Qc,a_ as jc,a$ as Fl,b0 as qc,b1 as Uc,b2 as Bc,b3 as Hc,b4 as Gc,b5 as Wc,b6 as vi,b7 as Jc,b8 as Zc,b9 as Xc,ba as Yc,bb as eu,bc as qn,bd as Zt,be as Ci,bf as ra,bg as wt,bh as $n,bi as Kn,bj as nu,bk as au,bl as Fi,bm as st,bn as Ki,bo as sn,bp as tu,bq as lu,br as Pa,bs as Le,bt as qa,bu as Ti,bv as iu,bw as $e,bx as Xt,by as ru,bz as su,bA as ou,bB as du,bC as Yt,bD as Ue,bE as en,bF as ha,bG as cu,bH as ot,bI as xi,bJ as Ii,bK as vt,bL as uu,bM as dt,bN as ct,bO as Je,bP as Ve,bQ as mu,bR as el,bS as Di,bT as Pi,bU as Li,bV as gu,bW as on,bX as Ei,bY as xn,bZ as pu,b_ as Kl,b$ as _i,c0 as yu,c1 as fu,c2 as hu,c3 as ku,c4 as wi,c5 as dn,c6 as bu,c7 as sa,c8 as Rt,c9 as Su,ca as Ri,cb as Mi,cc as vu,cd as Cu,ce as Fu,cf as ut,cg as Ai,ch as Ra,ci as Tl,cj as Ni,ck as nl,cl as Ku,cm as Tu,cn as al,co as zi,cp as Vi,cq as xu,cr as Mt,cs as $i,ct as Iu,cu as Du,cv as $a,cw as Pu,cx as Lu,cy as Oi,cz as Qi,cA as Eu,cB as _u,cC as wu,cD as Ru,cE as ji,cF as tl,cG as qi,cH as Mu,cI as Au,cJ as At,cK as Nu,cL as zu,cM as Vu,cN as $u,cO as Ou,cP as Qu,cQ as Ui,cR as ju,cS as qu,cT as Uu,cU as Bu,cV as Hu,cW as Gu,cX as Wu,cY as Ju,cZ as Zu,c_ as Xu,c$ as Yu,d0 as xl,d1 as Il}from"./components-CMB_kvRq.js";import{p as Ma,R as wn,n as Rn,i as em,E as Bi,m as Hi,o as Gi,g as nm}from"./vendor-codemirror-BzwZPyJM.js";import{R as Mn,C as Aa,X as An,Y as nn,a as Nn,T as zn,B as oa,A as La,b as Wi,c as ll,L as Ji,d as am,P as tm,e as lm,f as im}from"./vendor-recharts-_Jb7JjhG.js";const rm=4,sm={user:["user","human"],ai:["assistant","bot","ai"],system:["system"],tool:["tool"]},om="Unable to parse span input messages, expected messages which include a role and content.",dm="Unable to parse span output messages, expected messages which include a role and content.",cm="Unable to parse span output expected output.value to be present.",um="Unable to parse span attributes, attributes must be valid JSON.",mm="Unable to parse model config, expected llm.model_name to be present.",gm="Unable to parse model config, expected llm.invocation_parameters JSON string to be present.",pm="Unable to parse invocation parameters response_format, expected llm.invocation_parameters.response_format to be a well formed json object or undefined.",ym="Unable to parse tools, expected tools to be an array of valid tools.",fm="Unable to parse prompt template variables, expected prompt template variables to be a valid JSON object string.",Dl={AZURE_OPENAI:[],ANTHROPIC:["claude"],OPENAI:["gpt","o1"],GEMINI:["gemini"]},Ia="TOOL_CHOICE",Ua="tool_choice",Un="RESPONSE_FORMAT",Qn="response_format",hm=[Ia,Un],il=qt()(R.union([R.literal("auto"),R.literal("none"),R.literal("required"),R.object({type:R.literal("function"),function:R.object({name:R.string()})})])),rl=R.object({type:R.union([R.literal("auto"),R.literal("any"),R.literal("tool")]),disable_parallel_tool_use:R.boolean().optional(),name:R.string().optional()}),km=rl.transform(n=>{switch(n.type){case"any":case"auto":return"auto";case"tool":return n.name?{type:"function",function:{name:n.name}}:"auto";default:return"auto"}}),bm=il.transform(n=>typeof n=="string"?{type:"auto"}:{type:"tool",name:n.function.name});R.union([il,rl]);const Sm=n=>{const{success:a,data:t}=il.safeParse(n);if(a)return{provider:"OPENAI",toolChoice:t};const{success:l,data:i}=rl.safeParse(n);return l?{provider:"ANTHROPIC",toolChoice:i}:{provider:null,toolChoice:null}},vm=n=>{const{provider:a,toolChoice:t}=Sm(n);if(a==null||t==null)throw new Error("Could not detect provider of tool choice");switch(a){case"AZURE_OPENAI":case"OPENAI":return t;case"ANTHROPIC":return km.parse(t);default:me()}},Cm=({toolChoice:n,targetProvider:a})=>{switch(a){case"AZURE_OPENAI":case"OPENAI":return n;case"ANTHROPIC":return bm.parse(n);case"GEMINI":return n;default:me()}},Fm=({toolChoice:n,targetProvider:a})=>{try{const t=vm(n);return Cm({toolChoice:t,targetProvider:a})}catch{return null}},Km=R.object({tool_call:R.object({id:R.string().optional(),function:R.object({name:R.string(),arguments:R.string()}).partial()}).partial()}).partial(),Zi=R.object({[de.message]:R.object({[Ee.role]:R.string(),[Ee.content]:R.union([R.string(),R.array(R.record(R.string(),R.unknown()))]).default(""),[Ee.tool_calls]:R.array(Km).optional(),[Ee.tool_call_id]:R.string().optional()})}),Tm=R.object({[de.llm]:R.object({[_e.input_messages]:R.array(Zi)})}),xm=R.object({[de.llm]:R.object({[_e.output_messages]:R.array(Zi)})}),Im=R.object({[de.output]:R.object({value:R.string()})}),Xi=qt()(R.enum(["user","ai","system","tool"])),Dm=qt()(R.object({id:R.number(),role:Xi,content:R.string().optional(),toolCallId:R.string().optional(),toolCalls:R.array(uc).optional()})),Pm=R.array(Dm),sl=R.lazy(()=>R.record(ii)),Lm=sl,Yi=R.string().transform((n,a)=>{const{json:t}=xe(n);if(!ri(t))return a.addIssue({code:R.ZodIssueCode.custom,message:"The invocation parameters must be a valid JSON object"}),R.NEVER;const{success:l,data:i}=Lm.safeParse(t);return l?i:(a.addIssue({code:R.ZodIssueCode.custom,message:"The invocation parameters must be a valid JSON object"}),R.NEVER)}).default("{}"),Em=R.object({[de.llm]:R.object({[_e.provider]:R.string().optional(),[_e.model_name]:R.string()})}),er=R.object({[de.llm]:R.object({[_e.invocation_parameters]:Yi})}),_m=R.object({[de.llm]:R.object({[_e.invocation_parameters]:Yi.pipe(R.object({response_format:sl.optional()}))})}),wm=R.string().transform((n,a)=>{const{json:t}=xe(n);return t==null||!ri(t)?(a.addIssue({code:R.ZodIssueCode.custom,message:"The tool JSON schema must be a valid JSON object"}),R.NEVER):t}).transform((n,a)=>{const{data:t,success:l}=si.safeParse(n);return l?t:(a.addIssue({code:R.ZodIssueCode.custom,message:"The tool JSON schema must be a valid tool schema"}),R.NEVER)}),Rm=R.object({[de.llm]:R.object({[_e.tools]:R.array(R.object({[de.tool]:R.object({[Oa.json_schema]:wm})}).optional()).optional()}).optional()}).optional(),Mm=R.lazy(()=>R.object({type:R.literal("json_schema"),json_schema:R.object({name:R.string().describe("The name of the schema"),schema:ii.describe("The schema itself in JSON format"),strict:R.literal(!0).describe("The schema must be strict")})})),Am=wd(Mm,{removeAdditionalStrategy:"passthrough"}),Nm=R.string().transform((n,a)=>{const{json:t}=xe(n);return Tn(t)?Object.entries(t).reduce((i,[r,o])=>{if(typeof o=="string")i[r]=o;else{const{json:c}=oi(o);c!=null&&(i[r]=c)}return i},{}):(a.addIssue({code:R.ZodIssueCode.custom,message:"The prompt template variables must be a valid JSON object"}),R.NEVER)}),zm=R.object({[de.llm]:R.object({[_e.prompt_template]:R.object({variables:Nm}).optional()}).optional()}).optional();function nr(n){return Xi.safeParse(n).success}function Wa(n){if(nr(n))return n;for(const[a,t]of Object.entries(sm))if(t.includes(n))return a;return pc}function Vm({toolCalls:n,provider:a}){if(n!=null)return n.map(({tool_call:t})=>{var i,r,o,c;if(t==null)return null;let l={};if(((i=t.function)==null?void 0:i.arguments)!=null){const{json:d}=xe(t.function.arguments);Tn(d)&&(l=d)}switch(a){case"OPENAI":case"AZURE_OPENAI":return{id:t.id??"",function:{name:((r=t.function)==null?void 0:r.name)??"",arguments:l}};case"ANTHROPIC":return{id:t.id??"",type:"tool_use",name:((o=t.function)==null?void 0:o.name)??"",input:l};case"GEMINI":return{id:t.id??"",function:{name:((c=t.function)==null?void 0:c.name)??"",arguments:l}};default:me()}}).filter(t=>t!=null)}function ar({messages:n,provider:a}){return n.map(({message:t})=>({id:Da(),role:t.tool_call_id!=null?Wa("tool"):Wa(t.role),content:typeof t.content=="string"?t.content:void 0,toolCalls:Vm({provider:a,toolCalls:t.tool_calls}),toolCallId:t.tool_call_id}))}function $m({provider:n,parsedAttributes:a}){var l;const t=Tm.safeParse(a);if(!t.success)return{messageParsingErrors:[om],messages:null};if(n==="ANTHROPIC"){const{success:i,data:r}=er.safeParse(a);if(i){const o=t.data.llm.input_messages,c=(l=r.llm.invocation_parameters)==null?void 0:l.system;typeof c=="string"&&c&&(!o||o[0].message.role!=="system")&&t.data.llm.input_messages.unshift({message:{role:"system",content:c}})}}return{messageParsingErrors:[],messages:ar({provider:n,messages:t.data.llm.input_messages})}}function Om({provider:n,parsedAttributes:a}){const t=[],l=xm.safeParse(a);if(l.success)return{output:ar({provider:n,messages:l.data.llm.output_messages}),outputParsingErrors:t};t.push(dm);const i=Im.safeParse(a);return i.success?{output:i.data.output.value,outputParsingErrors:t}:(t.push(cm),{output:void 0,outputParsingErrors:t})}function Qm(n){if(n==null)return null;switch(n.toLowerCase()){case"openai":return"OPENAI";case"anthropic":return"ANTHROPIC";case"google":return"GEMINI";case"azure":return"AZURE_OPENAI";default:return null}}function jm(n){for(const a of Object.keys(Dl))if(Dl[a].some(l=>n.includes(l)))return a;return gc}function qm(n){const{success:a,data:t}=Em.safeParse(n);if(a){const l=Qm(t.llm.provider)||jm(t.llm.model_name);return{modelConfig:{modelName:t.llm.model_name,provider:l,invocationParameters:[],supportedInvocationParameters:[]},parsingErrors:[]}}return{modelConfig:null,parsingErrors:[mm]}}function Um(n,a=[]){const{success:t,data:l}=er.safeParse(n),i=[];return t||i.push(gm),{invocationParameters:eg((l==null?void 0:l.llm.invocation_parameters)??{},a),parsingErrors:i}}function Bm(n){const{success:a,data:t}=_m.safeParse(n);return a?{responseFormat:t.llm.invocation_parameters.response_format,parsingErrors:[]}:{responseFormat:void 0,parsingErrors:[pm]}}function Hm(n){var a;return(((a=n==null?void 0:n.llm)==null?void 0:a.tools)??[]).map(t=>(t==null?void 0:t.tool)==null?null:{id:ja(),definition:t.tool.json_schema}).filter(t=>t!=null)}function Gm(n){var l;const{data:a,success:t}=Rm.safeParse(n);return t?((l=a==null?void 0:a.llm)==null?void 0:l.tools)==null?{tools:null,parsingErrors:[]}:{tools:Hm(a),parsingErrors:[]}:{tools:null,parsingErrors:[ym]}}function Wm(n){var l;const{success:a,data:t}=zm.safeParse(n);return a?((l=t==null?void 0:t.llm)==null?void 0:l.prompt_template)==null?{variables:null,parsingErrors:[]}:{variables:t.llm.prompt_template.variables,parsingErrors:[]}:{variables:null,parsingErrors:[fm]}}function Jm(n){const a=mc(),{json:t,parseError:l}=xe(n.attributes);if(l)return{playgroundInstance:{...a,spanId:(n==null?void 0:n.id)??null},parsingErrors:[um]};const i=n.invocationParameters,r=qm(t);let{modelConfig:o}=r;const{parsingErrors:c}=r,{messages:d,messageParsingErrors:m}=$m({provider:(o==null?void 0:o.provider)??a.model.provider,parsedAttributes:t}),{output:f,outputParsingErrors:g}=Om({provider:(o==null?void 0:o.provider)??a.model.provider,parsedAttributes:t}),{invocationParameters:y,parsingErrors:p}=Um(t,i),{variables:h,parsingErrors:b}=Wm(t),{parsingErrors:K}=Bm(t);o=o!=null?{...o,invocationParameters:K.length>0?y.filter(P=>P.invocationName!==Qn&&P.canonicalName!==Un):y}:null;const{tools:T,parsingErrors:I}=Gm(t);return{playgroundInstance:{...a,model:o??a.model,template:d!=null?{__type:"chat",messages:d}:a.template,output:f,spanId:n.id,tools:T??a.tools},playgroundInput:h!=null?{variablesValueCache:h}:void 0,parsingErrors:[...m,...g,...c,...I,...p,...K,...b]}}const Zm=n=>Pm.safeParse(n).success,tr=({instance:n,templateLanguage:a})=>{if(a==On.NONE)return[];const t=new Set,l=n.template.__type,i=yc(a);switch(l){case"chat":{n.template.messages.forEach(r=>{(r.content==null?[]:i.extractVariables(r.content)).forEach(c=>{t.add(c)})});break}case"text_completion":{i.extractVariables(n.template.prompt).forEach(o=>{t.add(o)});break}default:me()}return Array.from(t)},Xm=({instances:n,templateLanguage:a})=>a==On.NONE?[]:Array.from(new Set(n.flatMap(t=>tr({instance:t,templateLanguage:a})))),lr=({instances:n,templateLanguage:a,input:t})=>{if(a==On.NONE)return{variablesMap:{},variableKeys:[]};const l=Xm({instances:n,templateLanguage:a}),i=t.variablesValueCache??{};return{variablesMap:l.reduce((o,c)=>(o[c]=i[c]||"",o),{}),variableKeys:l}};function Bn(n,a){return n.invocationName===a.invocationName||n.canonicalName!=null&&a.canonicalName!=null&&n.canonicalName===a.canonicalName}const Ym=(n,a)=>n.filter(t=>a.some(l=>Bn(l,t))).map(t=>{var l;return{...t,invocationName:((l=a.find(i=>Bn(i,t)))==null?void 0:l.invocationName)??t.invocationName}}),mt=n=>n.replace(/_([a-z])/g,(a,t)=>t.toUpperCase()),eg=(n,a)=>Object.entries(n).map(([t,l])=>{const i=a.find(r=>r.canonicalName&&r.canonicalName.toLowerCase()===t.toLowerCase()||r.invocationName&&r.invocationName.toLowerCase()===t.toLowerCase());return i==null||i.invocationInputField==null||i.invocationName==null?null:{canonicalName:i.canonicalName,invocationName:i.invocationName,[mt(i.invocationInputField)]:l}}).filter(t=>t!=null),Ba=n=>{const{provider:a,validatedToolDefinition:t}=hc(n.definition);switch(a){case"OPENAI":case"AZURE_OPENAI":return t.function.name;case"ANTHROPIC":return t.name;case"UNKNOWN":return null;default:me()}},Pl=({provider:n,toolNumber:a})=>{switch(n){case"OPENAI":case"AZURE_OPENAI":return{id:ja(),definition:Sl(a)};case"ANTHROPIC":return{id:ja(),definition:kc(a)};case"GEMINI":return{id:ja(),definition:Sl(a)};default:me()}},ng=n=>{switch(n){case"OPENAI":case"AZURE_OPENAI":return bl();case"ANTHROPIC":return fc();case"GEMINI":return bl();default:me()}};function ag(n){return{content:n.content,role:tg(n.role),toolCalls:n.toolCalls,toolCallId:n.toolCallId}}function tg(n){switch(n){case"system":return"SYSTEM";case"user":return"USER";case"tool":return"TOOL";case"ai":return"AI";default:me()}}const ir=({playgroundStore:n,instanceId:a,credentials:t})=>{const{instances:l}=n.getState(),i=l.find(m=>m.id===a);if(!i)throw new Error(`No instance found for id ${a}`);if(i.template.__type!=="chat")throw new Error("We only support chat templates for now");const r=i.model.supportedInvocationParameters;let o=[...i.model.invocationParameters];const c=Fm({toolChoice:i.toolChoice,targetProvider:i.model.provider});i.tools.length>0?(o=o.filter(m=>m.invocationName!==Ua&&m.canonicalName!==Ia),o.push({canonicalName:Ia,invocationName:Ua,valueJson:c})):o=o.filter(m=>m.invocationName!==Ua&&m.canonicalName!==Ia),o=r.length?Ym(o,r):o;const d=i.model.provider==="AZURE_OPENAI"?{endpoint:i.model.endpoint,apiVersion:i.model.apiVersion}:{};return{messages:i.template.messages.map(ag),model:{providerKey:i.model.provider,name:i.model.modelName||"",baseUrl:i.model.baseUrl,...d},invocationParameters:o,tools:i.tools.length?i.tools.map(m=>m.definition):void 0,apiKey:t[i.model.provider]||null}},lg=({playgroundStore:n,instanceId:a,credentials:t})=>{const l=ir({playgroundStore:n,instanceId:a,credentials:t}),{instances:i,templateLanguage:r,input:o}=n.getState(),{variablesMap:c}=lr({instances:i,input:o,templateLanguage:r});return{...l,template:{variables:c,language:r}}},Ll=({playgroundStore:n,instanceId:a,credentials:t,datasetId:l})=>({...ir({playgroundStore:n,instanceId:a,credentials:t}),templateLanguage:n.getState().templateLanguage,datasetId:l});function rr(n){return n==null||n===""?"{}":typeof n=="string"?n:JSON.stringify(n,null,2)}function sr(n,a){return a.filter(t=>t.required).every(t=>n.some(l=>Bn(l,t)))}const ig=n=>{for(const[a,t]of Object.entries(n))if(a.endsWith("DefaultValue")&&t!=null)return n[a]};function N1(n,a){const t=new Map(n.map(l=>[l.canonicalName||l.invocationName,l]));return a.forEach(l=>{var d;const i=l.canonicalName||l.invocationName,r=ig(l),o=mt(l.invocationInputField||"");if(!l.invocationName||!l.invocationInputField||!i||r==null||((d=t.get(i))==null?void 0:d[o])!=null)return;const c={canonicalName:l.canonicalName,invocationName:l.invocationName,[o]:r};t.set(i,c)}),Array.from(t.values())}const or=u.createContext(null);function z1({children:n,...a}){const[t]=u.useState(()=>bc(a));return e(or.Provider,{value:t,children:n})}function Ja(n,a){const t=ve.useContext(or);if(!t)throw new Error("Missing CredentialsContext.Provider in the tree");return _a(t,n,a)}const dr=u.createContext(null);function rg(){const n=u.useContext(dr);if(n===null)throw new Error("useFunctionality must be used within a FunctionalityProvider");return n}function V1(n){return e(dr.Provider,{value:{authenticationEnabled:window.Config.authenticationEnabled},children:n.children})}const sg=v`
2
2
  display: flex;
3
3
  direction: row;
4
4
  height: 100vh;
phoenix/version.py CHANGED
@@ -1 +1 @@
1
- __version__ = "7.10.0"
1
+ __version__ = "7.10.2"