From d303c73cf35ae76bf94c1c4e0a484242c3a53973 Mon Sep 17 00:00:00 2001 From: Tanushree Sharma Date: Thu, 25 Sep 2025 18:04:47 -0700 Subject: [PATCH 1/4] clarifications to llm call formats --- src/langsmith/images/chat-model-dark.png | Bin 0 -> 51681 bytes src/langsmith/images/chat-model-light.png | Bin 0 -> 48939 bytes src/langsmith/images/chat-model.png | Bin 74543 -> 0 bytes src/langsmith/log-llm-trace.mdx | 152 ++++++++-------------- 4 files changed, 57 insertions(+), 95 deletions(-) create mode 100644 src/langsmith/images/chat-model-dark.png create mode 100644 src/langsmith/images/chat-model-light.png delete mode 100644 src/langsmith/images/chat-model.png diff --git a/src/langsmith/images/chat-model-dark.png b/src/langsmith/images/chat-model-dark.png new file mode 100644 index 0000000000000000000000000000000000000000..f49541d74dbb53ceeabf5d8c50f924eb54a0cee9 GIT binary patch literal 51681 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

?myGZ4k*^0b!dBq?@g0Sk2KtWq6pPuXIX!}AA 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 Nam)~Xv_Ri6{6E04ILiP4 literal 0 HcmV?d00001 diff --git a/src/langsmith/images/chat-model.png b/src/langsmith/images/chat-model.png deleted file mode 100644 index 7a332caaf886ca189a3ecc95928966eaecf11bce..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 74543 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 z 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

O6_~MNsd#v< zArou)e(V=hD@;a)D_8t&w$k6#2^VM9TIadj)(cCqIy+PAtKXH}zQ|iy9Pa!Z*=fK8 zvSZ=vb?Q)d&?5vtmD%+b>$}yOOiWJN&l{2WgXocay8Hux<|>?xYr1$@qCYxhs!yG0 zdLAb#w>`yC1Ct#g&Jn&>)2v*4n3UOy4U2S|e1oc(DQ3R+y=&(T>|1+-HC;$(7M)~2@^tc?4 zRCs#1^T>S$INN$ZE#A%h7+V76^^QK4nZ=P2j+PdS&9?lcTvPVZ_Ii_BEnN9X9)PU! zo$4dM^5tEr5M_x#*|LR;!1M2)s&Q0T5?uwhgp2llufYy>rao`r??g34;}aHjhAh%V zQ8&vHl+l7L~#*YtC(iKesl6@wG5~#0PBPtNpF66f!xlp8+&u~C0 zV$aAlJyLpBRfp#o!MoDx7BOz;I5;;`YC9}y*}|vcusN&}(Ilh%a_)Vxso_T@NBXb1 zyYF&6bqnPsnFJ230ykXl>5Ji@rA@l&h z(sS;>?w-TJkZrqYHUG`5n@*r)c>55iMg)oTsE?kBXhfcX27OqUta7Si932`h^GX7X zx9i42$&?6vbyqv(qA&k*#})v;WQhrCF|yPi|^ zZnXv>(OQ+9{jT$huB?iJ%$CFIbXd{Gw7*uowfnzWcKEDVU8rG=1^wr)?DuI$Uo4_i zO6{{%yW;$dyGPRs)?z5WP1C*+eE%2L|DXvq+)DaXWq@SAdHCTf{OccoFPD`UIKgZ0 z(!M!C$&Y7FC!oEgh{_pbi}>S+>tGTebJ_DJ2>kJjFCu5q#ke805RN~NU7PP; zd>~YkmQ1l-ghvu_Lf(H2h5B3plU#oc|C_p##YQV;jI#QvO>_!gLi*+=x| zuRH1=Vz^Vlno%v>ZKnL=h(}1H% z*{p%hbgP(2ftEc+EUhGt^I;iu=6! z9H=Aox{7PxUAbie@C>W%4B>2D8w|r=K2?Kwe4?7|5Q8g;8#d|ieaVoYd^uu(V9#a1 zVZyy>8r1i(xaXUAkR^~>;_|>r5abx#26524&N~AmXAu(RicSbQU?nr>392ixxs|WiV<*Ok2nD;fK8vzQdI$u9I5GH&E`@{JvtnlqX{rC=}Oy?`~VE}s4PH6POALt{0knbN2Np=z$~~MDM?^v2vgp7J@9l1F{V;+hcRzX59pd( z2k151PG$?@k{utPH732mSN>?Q6aQw&2rDDx(%VaFIdz=$d^_{KY&P?~pT<_&;glK? z%Lb9mdS``(n8l_*b2f2MzCkCP*WO~xc&mUt#;}o)&ESc$byrtAi13B(FZn)h2Q3u_ zbew~!fY&xkUfq6zt@egx0<$&=7r#29!0?@rL5r7`(Tuntca>j{cLfE?% zS@{ljE&HA=a=b2QZA1st;bMCM*l38@4O$PyEf7 zs;^0v?+j50k)=3#kaYxzF$V9i=a(lwz~)P+B-<9cw#Uej+u6<~oLz+@HXhsB!sD9M z_d-I31dCAqMpe5WsG~1U$hp|8#qos)0uPp_e|gO}5$Wn0bED26vYY}ep@(i(-k?RJ z)?}NJ(8p&pH&%OH5B7-AaR_^eoI#0Wef^#1yIZYNO#CwXiJpwxCSxDA?7*uw-}AiN z>oAwz@rcMIQj%w(a}|_6&YLAZReFK3;LhG8=QaEdQyFyrNpby1bB9Y$5fJg1@Iw-1!S)zdRc6WQ8tD}ZQ4fcnjaY=)iOG-wwhOp8Q@HMBtE zX~XROc%N;NqVJzBEa$4(^cD8ra0=PwKfC73v$(mMrV*urew~B5|DekX)OSw2<-04Q ztQ#yBPERKZYU(G2+TVHn^q?-M8b1Q=yfH*26nhJe*&nn74t(UhFSp%O9!-0;rAJc5 zWUV=8$Yuavo(Rsjv1{6bdrbEtIhF?!Ac#_Vm^b)v`~}*fX@U$FB$IqcGEw zCFDfkt%;`e5_hH3S+4b<2}Duk3W(lG9qb`pSLRwdzr`#cyQg zQ%AqR(Zr>_UfZczF*585Pw_GdGK;uFjB9$DH4YOA&0 zLVrQ(wJ@{agnuwf*OITNM_9G8@`(~GmTp9sh<5|Dj}o_Bml69g{3R$EzFpF(JYR_m zEjN_e6w*xWbj>nrczJ;_XvYeiq;=I*EIOVHd5V|FYuwkJ%2G{2oc=Lbz)5|_64G`bX20E-5=cZ6MkBJQVhMoL}g-=^R z;hNsqcZwPGdLs}0G~0x((di|xwuptw>3Q&)^T8%*7kt|S9#53QH?m>?=5Ahz_w&a% zA9W$Y=`pSP?7rouchb>@8fgr4FLi@yc*{0QojpqR@C_^k!lr96uB*A&f1YR|Kadt< zkW-RPL#8b;UPXbxf`{|A)-1@@YQ@kBcvIBs~t#9jA`i_45<1s z58dzvG?zPOa))a!0r zTHQ}*MqXpeY#dM%=dUY!gYzAcBQKuTqivtwn?{KS$wF6{Z(FH2jXnNC-B?<{Vmz6* zF&S?#qPtZg4a*<;i&oX+hOQsD=CTrpojWpiJ2Yb1JY$#2NW>Tmb<%=cS;X??SAgWO zRwwog(4O5yiU3^QgDm@9DQSS@T5*=*U3%!U&=#++u1*UJ^*GpGk7BRJQ8N)S9|5J5 zmi0#9JLHO2c6`AjI^Z%AWi>c5!8B-uS-zqPNzo3pA zWx!rhv?*jc^@0;Es9RCnd)bBJsVr~Dm-ij(TOK*D}nXx=RiG7 z5m4|fAKr1aX9{SLsMcm(x-;ms(u^|7)q*yH$w!8(+hs%86}3K4_||xP zk%=dmd$gTqA;W(+PQFq_`51AR8N#J1wV^m|-18E(|T zYDBoK>yHPylk)HpppF!tA8p?Ke{AG znZ}jAI=4fT2M&5=+yYmWPTlTrgD5nMJ`q6UU1PON-Eykdp8^(CYh!Tm?03;$EpNgL z;JGrUPWjqL3#D0vQ8l^=jJ1#ukD~Sdxej0l_`f>yn8e=BbFKR96f@n#MtM2CnahyY z+Ns`zySH#IJh%fgSigu4TYuCFvSbg)fbIYtyN>7Z~pz94u}xi|uY7RGuRh z2kpYRhpajnxE?g&^%`X&6ZiL~#1+)6t&0|mh@{a4zV(rlwX1rRKFlatma@ z)zRDzEDg1$mxcTz(#r%qHpb>IR#{&+)VRo&5i!In>XP&<09~v!1I#?emke$RfTL9B zG&9P!XRT@ok~kHt4IAQFRgpl#NMFwGFK`0QN+z^RU~qGc)#ZV&pl zvL?6`6&s`_Daa;x=`rVtfn@9eX!8}>J}5MGcry}I!2RK?!Oow{;*Rsm zV~f=&cd?Jnhx73hhFsfl`d)d?9(T2-r{95Bv!X&PuU-X<17eoq)oZ5H5Y$>OYfCS~ z-bjx~z!v!6Qtowq)Tg zO&Ae0F+fuwyvTd+*e{P$lEPEUkZtjgqm|mPv}&Z=26`J=v2a-UDluO1f|!NFS`{4U ztOS0!P*`0;IgNn(jKGNB@-OSUzpLlye3fIqYwY{ z9-&U#|DSq~paj%+bVWsnikd6VCWrrW^d7obXrb3XyJtnp2WX1W2{InKte`b$fmBkW zd=Bdnr+(&Nx_>6J2&5HU9n0u@B%87_iR2l&&6s&7X`H+yma* zPO}jMf}h_Um$WCRfe)FGEbZm-e;kp3aXDE74A@=(O(1@LbDUm7GJwxGtt0o7>|;cp zLR+H)1InG_b^k~v7H}aOzW8wd1e1P{9qR%d*|Yg(IbMGx6ACVlSblQ%PRRHVvO6=u zfW38Z*a^YF5erv3T%acZI4z>l3WQr5=uM>5X>Z#ui6{Fy&;yBv*gHXow= z=#a`pU%{9{{BZs=bipTHD^>>OcW*H5FhEUa;9F6PENhP*7&;1Y{F}rt)#xBf1Skpx1Fp?I@jX&czu{?)1lZXo>K1$wSSC7^iu-=G6z%Pp#nY5O0aZLM$~}+Z;8d7F?78Mlf2Gi+ZckLzt~T{y?CIY zFQlkZ;z))B@vj4~a=*(CaXac#22(LDThn0q-sj`m0P`ip*X;(D);0YZtZH1->vnpcj z&_wN=!z@iEbEH50!rc>t!DKrU3 zh8blPN|(FrC2qNJ{_2kdBy*<$Y1UuhT0qG=lz{f*YP;CfHWJ)ORzV(zYYGFZ0wG9f zyC&1bLIAp|m6d^;9~`t?<_4XRhq0EiiHi*QUB~?e>ZicHqR^>iYf@!=3}EY7TV<8N zt$x`&($^wy*dZbZL}1`)8QYc)-z%ACddm3)ObS3-(+2*PCXMkD&{kUi)e18mWrL!Y zJH^UY%>HVxRXs(>hg$?->Ev1X)k6D@*0T$9ZpC;J zGt$xVT8~TUrMsHtR^$F|NvKV7%ja&~y)wf~Equ0C+#oJt(T(!B^lUV0?8k+xG}?>e zGn^3@?Gd$aKU$hD@yin#_G_1?+ zT}OJFTTpYpSKpEb4o8I3TD*UQ-;fmJY-2c_xSTUJ7|M*zS-{5ua|Mwx8RW3DG(Cbn zUYh2*^m(6$JfcXk9zEHC&J%maKon?LnyXWX+F6he4a5RjxoXKhFG4uXOXe~=xeT|^4}&|-n7BlBa}(jUH{3%PN9oXA4H~=l28N@X!M_hX5dZkx z7EaKP9(=fyp)FM3S33?wZHKJ&3GY7FHzh==cl9T|tBqcU7?l{vfs4Y)M zj9HX{bt}EM4}A1pqXkxXbQ`9&Oe}YNy>4)^Fl5(}!{;G&e(zCUxhaV$0U$X}E`tS} zD{~;2`LyNQDK9yBf~Wk9rCYlzG+QQP6{0iSIVFqvBO5ZiR41&iStZT>p6TSNq;`(O z<-ZekhW}u9#p-({C?uu6y>l4b{rcH0$q`w~3G!Tc(o5HsAr&v6Gax=g1B>N`4+fwD zWTCVp3attAv88xzKR0Gl=p?X6f{R<;f0$Cy#ZGg7-S4MeDJfm4eDgmGSg$Wsv{1rDP{yV9Cul({Fyz1A7nksuP- zFyXr1H%>ln?y3y5Z3p0a7)P(>=bQ?(R~_cHdmln)vP8E>UtzanajI&xkT%*1k?E%A zc8e03B+!;_O?LKC0WBsDE~JtmyZnAXI4nI! z8@^ag1iR9POkn+6B2hamHtoDsgzYd?re|G=Jb8s#8hytgdw-zpGOq$6+13APAdwY2J$NcWtTmg0m5m$-65qbzK= zktG^%z~NkKBOi+|@hKKskn}V7im@2UB?|Nx*6+zE5k}4p6-zOz=t^HgXD=8%aY6WU z<_s{P&+v5JLJ4Vw*Olu6E>2xn%MbQxecQ=LTh3 znY1VPikTgYUxD{7DtUo5T;s&CUwNtHhzYNlT-J7ql398rkm+8=Gc3`St{bvgE~oY-zZAI1Q#6*+Zd zM4CGVsfkYrc8OA2u^uKj{y#-Cswe&=oIdHYvnB{S`Ib>>0Q`6Kx zCU8^z*uAHrp--3ll49`6pV*1KNPv2sFup1-;!~qhG3()Kb27h`k-(u(c_eZq|4(jS zb_}X&R~Z{gb)nU-UKl>P3Y~&vHKtk@scI~g#a>dRV-_AcQwcGv^cJ%oyO)X(R^B}! zgPnnb%%5-9JlCR6%Dt`F9_}}HC^@nIf|*KF!lc(CUW*(TCE%Z6xU7Ab8P=hULl2Rt zvp!_R7vWg2fGCc0a?kl46E2|7hS7gR+6AjQJX@? z1xUWpMrP8VB_E*eAZO}yj|D0%Tq#3pv5lHXLcj0lhu zJAJZ;^fnl|q!d|m^s{J0n2nAysac-%kj3tSS6JYbMLYbpK}bcUWoyJ)#*fdpjhDxB z#x3ab)95)*UUG9#dSyXx@yJ3Trv2FYQLcR|#u-LZhU{k3ao3eb@;me7IK4SZbq+mv zp={qHfU0KE1$r*yiPZ)%?G71Ve!n7Hq(8of-kTZqr1Sr<@u%`B1J>x)r%ybGEB3?^ zx^LMWF-ck??69cen{?pqc&l`yMFpI%X`Lm+v?umeQxkYqR!gL#4eIxyU(v*_B1Fmg zHkxo{G-6!HvDCEsI@4@poaRYSNCb3-33Qv-^X@u2FT$_BqbT5y{O&@SGx`P3F~kWN zHJzo8eRF!-Vc!h#o6j77fZ(|ctJ9;)ct1`PS(-0qErp(B^?s2%b39J@m1@jm<1@9S zhR<70{gkc01*T#Z$Y~gVhUigrHvN2+c!2Q6kj;ZEje6I{Ed?c`S8P`G6QJF9DZs>u z)5dJP{rk5+KWJ_P84)K{fFEg4`7>IW8NLGHp(F)kH6^?9GjB=2l}aLSn1Z2bb$KR? zii9z0{a8d2tj3)v^m!$gD9x)!7ZGKg(D(yY2oyX^KgJ>FUhM5f`*jW9DNA@56+`eC z;fXg9+&NR!%!90;SzvmEc_`npmKYb6wH`W*^{qE|PrqZ~c7w^E(4ySsg6!H{z&Wt* zvX1`8t;mD&%t5E*kF)+K3u0GLyLlf}_W$1_{>O`d?7sh7UVOQN_Sr2n6b0&O2c8m# z?XTFbK^*-C@tyIHeSN4M-Uc&kRlT#COV3Xd!dKFHn|qU%ghj`Id-cob_R-1d^vN{qx9wB<(_e%d<$MWqO}RHmA2ifD&S&Wt?Qat` z)UK^3u3iK%O)H7;Zhw-e-Esx9;8VB1O_=wt(=FQ@jW-}K=wNsb6s$Q5b zzd<~&jn^{N@*eC z;ejNmq&ebT9^-Pb)7Xweeb)Gr#sF8)d#eVTB)G=jYzZ5bY=W&)gtVx1;a^ge9 zwq~{+3X0F(Sk>Kh%TsRofM^MK*=j_f5H*eV=di*BOv?8zLCUr!>0%-XhMQPh2j#F9 z*O3DH08VW`>yxm$H3MoG6`FvKM@-umJIm%y0%tE?SL9!;<6N@$Y*llVmTCPGy{uep ztIUVOE|V90lza6p3C12Q4(3U+!7Xe0+;i0Daq7DtUzET-5vcJwb{BLS4~1MCq{1*3=1RHAd$Vt)fdB4ASVA zN$kh{m1WsK&-H4)!fFSVy5tcyvOCThO0U9G3;?h=5u@w|fOd2F4TW^1{7;!`sGxB65P_%tM@WjIKn6jr)Bc9|MeUIt2w^B z(;x<}+{_N(mQdyw(5gzMfd!?CFQsh*gmYSnP7lha&I zq;nV=E*9_a?M&GS4Sb@M=Ix=3Fb;R!Q|t3_%Gyj){;Zgtlx_BHKV`$EO(S?JjscFx zssjoF2A>uPo*Hx5?dNMS;nk*sIT`M5Q3oq*aRZM{Ql{%35hTjGdrO)icbN*7;FcAn95fwIf5^H=qV~p0hnAmZ^KRo5hELUt@1X1;tZZ+A7V zX)xt4@r?A*U^}^hdT;iHNf_u0h}Pj5*Ml96mX+X4C-x}2Zz2%j^z*bt;vod(#Sb=X z<7ak8MyOgZx$~)_T;0564x`X>a5oZ%JA42hII%2drbYU~u0|MzfOn}mN9uG3yFmSU z*){3?_Uu_eR0Jv)t zl1*<-$&0ketXk8Vda9VFiFrU6Wcthd>e2OUJHoH+S3mzuA8F2ezkDB^+6EMYB)^!kjG}b z(ZyY}!U@<6aP>Aq{lJS-EdV__lT}O7Y#(oOO>MO}r&C%iDNDO{vUMJnXtLYq3Ev`@ z3#8Kju$e^T>(R*d9B(93G1atNX$L>^)$+(IyFB45AGy{#JC<#^hadknvptt72H_kkg8Uke@yR)*$bBb}5`_FZI6vQ_qTEGLqX>`NnK-_mkq48y7HQeiBiG(<7Unq_b@<1nKs zO9o}CF(X-~vBX%POX@lLIp_KRdHwp=%-rtly07bdeV5Psdkd%GlUWCVYO$VE>vcX5 z)}xkJt9nkVke!*d2ZeB(fYWdz{c7-afo(Yrr`=Y&m%K9Kvp8~4XqZ>5^uniGx*q^# z(NJWmz2c-+>G2E}1bT20)pg&~YJ^Q6%f$Qy94@z~Q=|gjZt&#X^##;*SDC~EHe9o~ zM_H5<9SjLgd;PjRS$oy*7;}U#v2`r}wl`OLZ~!F-X}uS56O`t3GR27E_~z=W#({ME zRRv;IyjDgx5NW4Jg+|Tw*;8#R{&=A^6yVBkc1ab=flW%U?g0u!J7tN>Zc|I$kv&VA z9Q{Nc`tmH;G$V%2?4uCVj&&9z_DG>=*{xXaFCa$Zxi28b@hE_cbQ^6KL!$3o`B=hK zp9cc%(JanFv$ayrIz2m>R{wKEK2SSq5q}v7BbFetZeR~?`Z!4bOPl;sTMp@E?FE5P+M=d$SC0g@s z5`=iyh0VJOCZ{ym9;(fFft`eR99+EPGqxmZR7Pr9L3*YfjIq-hA=<#s$lP%G*~u8C z=Ir@-pm^1C0Fv01;KeoHVU*5!O(PScMI4TZQr-UP9#L!H9OVKynu>vQTiikPVK4oY zs@?qbkib*GWl$-cKi5)qgb^=-VU+Q3p%zYF?UTTahByUOV9!4;V`#Q-3d;!VP^b{4 zd?T2<5p^dLB-E*h6{P0j0MdEv;zIl0)>!9+w>VW{;Mzip+y= z$J&@TFZO+yR=%lChN+v7O`~dLu}`dQW49F-gLjOMI?IIcl83tI?>(J{cwjV^6rqA` zPa-O2?Ub4O5M6Z!Y&;e5zuzY{ya%OnyhR80ymjA5$)kpKWTdY#mDnM%8WR3om?(<4 z|68J}{@jv|3OU}z5MV!*?Exi7#y$n;-P_P}nybzsz|PR0^v8|ssnbZ7nN(?4~Z{EDx9)RFf>#4#I}i^jzptvNU;!OPsTAPSE=_YzNMLBfj`Oql2KyOiLX!w)(6VJ^#x@ETnQrz~_K zxt;3|8^vAcGGaJG^<(&Li(qcU+-IG*WE`erB}9?)Djxt~AfBtYGMhi@Xsi||K@?sJ zxy^PWbPDu`lvfSiI~m9N&OyJlEVe#0*ek*C6$k|e3nuEsoA0H{R%BbKHSC8rw25o; zv?Uk~cNRETF|DHN@3l^%n^&DyxlD6_%3+wJ|Jb4=N1vzZ8G>no$0@I7(|nU-G^8h< zHRVXkfV~=}L`5M_eeqt^1-G$bPI;^cj9o@4Q&Gt^wI9b?0)WR(GH@NSC*nynGMyzS zLPfoB-7XcguKwZTQOgyu2n+Fas{M>U+kOUS8F0zU%X`Qo((1X%`8Np6mo-H~tJPiL? z(z6kOZ4xWD|mqtSqSWN_gdAe7k|1dN-v^O zU-UU*@C6<$ZN!~e8S`EpP!CZGWZuA_M#oFK{#}d3voCl?M z&>T^ZbmUbxSF~kR``d!%*M*|;69bj@u?0r6mJ<=S!ldBR7qleLqvbcP^YxoVUJFxA z7r~Az?X<0bDw}GPmvZF}aB9LXw&TVDNNetPO$mC%$jgV~8c|A*DS8$SRwpABaU>Bnp#V zsQKkVdC+){tfxP~>2JO47gesRcR{&$pE|4gSYfIhe@-O#K`~mt)UVexjs#6fW|YKx zr9qAsJJ3pJ$w11Wz%fblovPs&^?ZCZLu~MGx<#!(2p^6$^qz?1VNI{O59;=5kdVt8 z6wSg*Qj_jE4XW?e8GReYrHu@lpYkW{+5u}yg55@H z8+r)=2$>_QKg|r0-EM2Iq_8$Q9Hu>fwwqXK4*1|iYO?qhpA+IPsaVxn|GHt0x?n5^IQQl#1KQ)OEHJBPr@^) z`iXx&?BHWMO~;K}qL9^l@$Y~X@U2DVAK9Jm$F$4H@kJOSqgIm5r{cPevhBY7+Q)vm zpfB||n(KY#EJZ>h_mx}3xp(Rp<6AlTvE!{F~r}LX>h0 zTX=SBuDxk0kIg!`B%!>TD za!TnSE8K-h`Y_&I0B6t13#Vl@E;~_+dP0G~2je_}KIE;|5^+(jkaA78t^uSF0088M z$F?611R0CpcnSnF0A-a8iDih)@VctqaL)oUc(<3KN_=Ni%)oPZixz4e(Kwbod1ajzgE z4-jMq+u5awR|QsU1eGxu5`}h0ZandpTH+Wmj-7}C!98d>?9EF6k3F$_VG>vXW(Lsg z>299|5$WvvN;NrpFt1UZk5!mLjBMJ0&%5g>DGld6lw!nRa(lL?s9-J^&M-NHmM6U1 z`CHLLIZBEK6cAS-FAW9GzYm}4Xe}kRQvogGhL7 z5!GL$Yu>Nu{!IGwRGecFPj88q<@n`$CG@a>{SqSeAlZ5KX+C_hCqF&Y_F;h4L>F&s z!-9@rKFU)2jq;jU5~{&mA@4v;0MH|PF;5fZnXB{j3Q+nZWDtg#aemZ&k4C zLw0s%w_nz=GREhav>esoo8ry8gAZbP?bJx%oi25aKEzOMmf2BpK&*o~}nTxbix6)9IA(;QBF|ZsL8^TXTYV zd_9E2!nR~qC^easgYQ|uI9yZ4aQD%IVNp~@H0!oRBFWh<3iC`A>ZUoIx?le~XzD^# z&r`$)Pe#_6Nfx2J)j^jAC^QEQ*~aRj%0-In#bi2;4b2tK*BAU zaryB(Hw_ewp)EVuyP)nC$V8oYx)M04GuYi!zNw~sDq;g(^CPSJebFci$)D<4J5uwi zF-5+x`j}s&UdAe57{{ko7yVsp7eCs1w8hyaQs0`=s4<}B%c+WvC7Qc1telwPzwi5c zr4P7}!*ctCQ8;0sxIGxcP?AI{%Dc<~4*Cn_}#ek-bPxrTadv_}Ww1wQXzg-JeV zfY0qHEU@LLU;T105W~mkpdY-5TXC(gl{XE*({w8*@7(0ce|JMI1VH2*R-b+1y`_%- z?R(ik744gW+fr=*R`KI1N8ZsL|oMzZd-z|?2QO^^nmMe(&mEG~TUc*NjaGUpg3%&Dk z#bR4^7QI=9TS+q+gq0lp#vu3)?9vYnyJ0$*17CWG)#K)57?g6A^2;2Nd(cYWGz|>iqv>V+54Ys z(&O5Wz3S!=g50`FsyKVUgH7^H-7h05*nzn0CgPlX=Ozc2qkflu|8j{L8pC$L^2pJz zl-svu0HhpKY$nnBaZpH-9L^6yfPN%dUeug_a4^SZV{!~_*%;%0xJ5#(BA2>u(VRRg zK&>{I^;S_q?iO*-2`hwxZTCpWt!d~Ky@~OQokg&nmKkV%{%k|xeP|b3#gvz(zx&Bw zUj}`**}shK0V3L~?!SZr1G4@h?XMWvw+*#vHTD_;Bk=KmLX5a+ -Nothing will break if you don't log LLM traces in the correct format - data will still be logged. However, the data will not be processed or rendered in a way that is specific to LLMs. - +LangSmith provides special rendering and processing for LLM traces. This includes pretty rendering for the list of messages, token counting (assuming token counts are not available from the model provider) and token-based cost calculation. + +In order to make the most of LangSmith's LLM trace processing, we recommend logging your LLM traces in a specified formats. If you don't log your LLM traces in the suggested formats, you will still be able to log the data to LangSmith, but it may not be processed or rendered in expected ways. -LangSmith provides special rendering and processing for LLM traces, including token counting (assuming token counts are not available from the model provider) and token-based cost calculation. In order to make the most of this feature, you must log your LLM traces in a specific format. The examples below uses the `traceable` decorator/wrapper to log the model run (which is the recommended approach for Python and JS/TS). However, the same idea applies if you are using the [RunTree](/langsmith/annotate-code#use-the-runtree-api) or [API](https://api.smith.langchain.com/redoc) directly. -## Chat-style models - -### Using LangChain OSS or LangSmith wrappers - -If you are using LangChain OSS or LangSmith wrappers, you don't need to do anything special. The wrappers will automatically log traces in the correct format. - -### Implementing your own custom chat-model +## Using LangChain OSS or LangSmith wrappers -If you are implementing your own custom chat-model, you need to ensure that your inputs contain a key `messages` with a list of dictionaries/objects. Each dictionary/object must contain the keys `role` and `content` with string values. The output must return an object that, when serialized, contains the key `choices` with a list of dictionaries/objects. Each must contain the key `message` with a dictionary/object that contains the keys `role` and `content` with string values. +If you are using [LangChain OSS to call language models](https://python.langchain.com/docs/tutorials/llm_chain/) or LangSmith wrappers ([OpenAI](/langsmith/trace-openai), [Anthropic](/langsmith/trace-anthropic)), then you're all set! These approaches will automatically log traces in the correct format. -To make your custom LLM traces appear well-formatted in the LangSmith UI, your trace inputs and outputs must conform to a format LangSmith recognizes: +## Tracing a Model with a Custom Input/Output Format -* A list of messages in [OpenAI](https://platform.openai.com/docs/api-reference/messages) or [Anthropic](https://docs.anthropic.com/en/api/messages) format, represented as Python dictionaries or TypeScript objects. +When a tracing custom model, LangSmith expects trace inputs and outputs to conform to a format in order to be rendered properly. In addition to the format, the messages key must be in the top level of the input/output object (with the exception of the `choices` key option for the output format). - * Each message must contain the key `role` and `content`. - * Messages with the `"assistant"` role may optionally contain `tool_calls`. These `tool_calls` may be in [OpenAI](https://platform.openai.com/docs/guides/function-calling?api-mode=chat) format or [LangChain's format](https://python.langchain.com/api_reference/core/messages/langchain_core.messages.tool.ToolCall.html#langchain_core.messages.tool.ToolCall). +### Input Format -* An dict/object containing `"messages"` key with a list of messages in the above format. - * LangSmith may use additional parameters in this input dict that match OpenAI's [chat completion endpoint](https://platform.openai.com/docs/guides/text?api-mode=chat) for rendering in the trace view, such as a list of available `tools` for the model to call. +A dict/object containing a `"messages"` key with a list of messages in [OpenAI](https://platform.openai.com/docs/api-reference/messages) or [Anthropic](https://docs.anthropic.com/en/api/messages) format. The list of messages should be in OpenAI or Anthropic format, represented as Python dictionaries or TypeScript objects. +* Each message must contain the key `"role"` and `"content"`. + * `"role"`: `"system" | "user" | "assistant" | "tool"` + * `"content"`: string +* Messages with the `"assistant"` role may contain `tool_calls`. These `tool_calls` may be in [OpenAI](https://platform.openai.com/docs/guides/function-calling?api-mode=chat) format or [LangChain's format](https://python.langchain.com/api_reference/core/messages/langchain_core.messages.tool.ToolCall.html#langchain_core.messages.tool.ToolCall). +* LangSmith may use additional parameters in this input dict that match OpenAI's [chat completion endpoint](https://platform.openai.com/docs/guides/text?api-mode=chat) for rendering in the trace view, such as a list of available `tools` for the model to call. Here are some examples: @@ -99,10 +95,13 @@ chat_model(inputs) +### Output Format + The output is accepted in any of the following formats: -* A dictionary/object that contains the key `choices` with a value that is a list of dictionaries/objects. Each dictionary/object must contain the key `message`, which maps to a message object with the keys `role` and `content`. + * A dictionary/object that contains the key `message` with a value that is a message object with the keys `role` and `content`. +* A dictionary/object that contains the key `choices` with a value that is a list of dictionaries/objects. Each dictionary/object must contain the key `message`, which maps to a message object with the keys `role` and `content`. * A tuple/array of two elements, where the first element is the role and the second element is the content. * A dictionary/object that contains the key `role` and `content`. @@ -110,21 +109,17 @@ Here are some examples: -```python Choices format +```python Message format from langsmith import traceable @traceable(run_type="llm") -def chat_model_choices(messages): +def chat_model_message(messages): # Your model logic here return { - "choices": [ - { - "message": { - "role": "assistant", - "content": "Sure, what time would you like to book the table for?" - } - } - ] + "message": { + "role": "assistant", + "content": "Sure, what time would you like to book the table for?" + } } # Usage @@ -132,20 +127,24 @@ inputs = [ {"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "I'd like to book a table for two."} ] -chat_model_choices(inputs) +chat_model_message(inputs) ``` -```python Message format +```python Choices format from langsmith import traceable @traceable(run_type="llm") -def chat_model_message(messages): +def chat_model_choices(messages): # Your model logic here return { - "message": { - "role": "assistant", - "content": "Sure, what time would you like to book the table for?" - } + "choices": [ + { + "message": { + "role": "assistant", + "content": "Sure, what time would you like to book the table for?" + } + } + ] } # Usage @@ -153,7 +152,7 @@ inputs = [ {"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "I'd like to book a table for two."} ] -chat_model_message(inputs) +chat_model_choices(inputs) ``` ```python Tuple format @@ -193,7 +192,9 @@ chat_model_direct(inputs) -You can also provide the following `metadata` fields to help LangSmith identify the model - which if recognized, LangSmith will use to automatically calculate costs. To learn more about how to use the `metadata` fields, see [this guide](/langsmith/add-metadata-tags). +### Metadata + +You can also provide the following `metadata` fields to help LangSmith identify the model. If the model is recognized, LangSmith will use to automatically use it to calculate costs. To view a list of recognized models, go to Settings > Model Pricing in the LangSmith UI. * `ls_provider`: The provider of the model, eg "openai", "anthropic", etc. * `ls_model_name`: The name of the model, eg "gpt-4o-mini", "claude-3-opus-20240307", etc. @@ -302,8 +303,19 @@ await chatModel({ messages }); The above code will log the following trace: -![](/langsmith/images/chat-model.png) - +

If you implement a custom streaming chat_model, you can "reduce" the outputs into the same format as the non-streaming version. This is currently only supported in Python. ```python @@ -347,6 +359,9 @@ If `ls_model_name` is not present in `extra.metadata`, other fields might be use 3. `inputs.model_name` +To learn more about how to use the `metadata` fields, see [this guide](/langsmith/add-metadata-tags). + + ## Provide token and cost information By default, LangSmith uses [tiktoken](https://github.com/openai/tiktoken) to count tokens, utilizing a best guess at the model's tokenizer based on the `ls_model_name` provided. It also calculates costs automatically by using the [model pricing table](https://smith.langchain.com/settings/workspaces/models). To learn how LangSmith calculates token-based costs, see [this guide](/langsmith/calculate-token-based-costs). @@ -630,56 +645,3 @@ await runTree.patchRun(); ``` - -## Instruct-style models - -For instruct-style models (string in, string out), your inputs must contain a key `prompt` with a string value. Other inputs are also permitted. The output must return an object that, when serialized, contains the key `choices` with a list of dictionaries/objects. Each must contain the key `text` with a string value. The same rules for `metadata` and `usage_metadata` apply as for chat-style models. - - - -```python Python -from langsmith import traceable - -@traceable( - run_type="llm", - metadata={"ls_provider": "my_provider", "ls_model_name": "my_model"} -) -def hello_llm(prompt: str): - return { - "choices": [ - {"text": "Hello, " + prompt} - ], - "usage_metadata": { - "input_tokens": 4, - "output_tokens": 5, - "total_tokens": 9, - }, - } - -hello_llm("polly the parrot\n") -``` - -```typescript TypeScript -import { traceable } from "langsmith/traceable"; - -const helloLLM = traceable(({ prompt }: { prompt: string }) => { - return { - choices: [ - { text: "Hello, " + prompt } - ], - usage_metadata: { - input_tokens: 4, - output_tokens: 5, - total_tokens: 9, - }, - }; -}, { run_type: "llm", name: "hello_llm", metadata: { ls_provider: "my_provider", ls_model_name: "my_model" } }); - -await helloLLM({ prompt: "polly the parrot\n" }); -``` - - - -The above code will log the following trace: - -![](/langsmith/images/hello-llm.png) From cd2f6842129845900fb30aa8aab7363413a2af6f Mon Sep 17 00:00:00 2001 From: Tanushree Sharma Date: Mon, 29 Sep 2025 18:07:37 -0700 Subject: [PATCH 2/4] updates --- src/langsmith/log-llm-trace.mdx | 146 +++++++++++++++++++++----------- 1 file changed, 98 insertions(+), 48 deletions(-) diff --git a/src/langsmith/log-llm-trace.mdx b/src/langsmith/log-llm-trace.mdx index a4b412d8b..3cacb8487 100644 --- a/src/langsmith/log-llm-trace.mdx +++ b/src/langsmith/log-llm-trace.mdx @@ -1,11 +1,14 @@ --- -title: Best Practices for logging LLM calls -sidebarTitle: Best Practices for logging LLM calls +title: Guidelines for for logging LLM calls +sidebarTitle: Guidelines for for logging LLM calls --- LangSmith provides special rendering and processing for LLM traces. This includes pretty rendering for the list of messages, token counting (assuming token counts are not available from the model provider) and token-based cost calculation. -In order to make the most of LangSmith's LLM trace processing, we recommend logging your LLM traces in a specified formats. If you don't log your LLM traces in the suggested formats, you will still be able to log the data to LangSmith, but it may not be processed or rendered in expected ways. +In order to make the most of LangSmith's LLM trace processing, **we recommend logging your LLM traces in a specified formats**. +If you don't log your LLM traces in the suggested formats, you will still be able to log the data to LangSmith, but it may not be processed or rendered in expected ways. + + @@ -18,51 +21,50 @@ If you are using [LangChain OSS to call language models](https://python.langchai ## Tracing a Model with a Custom Input/Output Format -When a tracing custom model, LangSmith expects trace inputs and outputs to conform to a format in order to be rendered properly. In addition to the format, the messages key must be in the top level of the input/output object (with the exception of the `choices` key option for the output format). +When a tracing custom model, follow the guidelines below to ensure your LLM traces are rendered properly and features such as token tracking and cost calculation work as expected. ### Input Format -A dict/object containing a `"messages"` key with a list of messages in [OpenAI](https://platform.openai.com/docs/api-reference/messages) or [Anthropic](https://docs.anthropic.com/en/api/messages) format. The list of messages should be in OpenAI or Anthropic format, represented as Python dictionaries or TypeScript objects. +A Python dictionary or TypeScript object containing a `"messages"` key with a list of messages in [LangChain](https://python.langchain.com/docs/concepts/messages), [OpenAI](https://platform.openai.com/docs/api-reference/messages) (chat completions) or [Anthropic](https://docs.anthropic.com/en/api/messages) format. The messages key must be in the top level of the input field. + * Each message must contain the key `"role"` and `"content"`. * `"role"`: `"system" | "user" | "assistant" | "tool"` * `"content"`: string -* Messages with the `"assistant"` role may contain `tool_calls`. These `tool_calls` may be in [OpenAI](https://platform.openai.com/docs/guides/function-calling?api-mode=chat) format or [LangChain's format](https://python.langchain.com/api_reference/core/messages/langchain_core.messages.tool.ToolCall.html#langchain_core.messages.tool.ToolCall). +* Messages with the `"assistant"` role may contain `"tool_calls"`. These `"tool_calls"` may be in [OpenAI](https://platform.openai.com/docs/guides/function-calling?api-mode=chat) format or [LangChain's format](https://python.langchain.com/api_reference/core/messages/langchain_core.messages.tool.ToolCall.html#langchain_core.messages.tool.ToolCall). * LangSmith may use additional parameters in this input dict that match OpenAI's [chat completion endpoint](https://platform.openai.com/docs/guides/text?api-mode=chat) for rendering in the trace view, such as a list of available `tools` for the model to call. Here are some examples: + -```python List of messages -# Format 1: List of messages +```python LangChain format: List of messages inputs = [ {"role": "system", "content": "You are a helpful assistant."}, - {"role": "user", "content": "What's the weather like?"}, + {"role": "user", "content": "What's the weather like in San Francisco?"}, { "role": "assistant", "content": "I need to check the weather for you.", "tool_calls": [ { - "id": "call_123", + "id": "call_XXX", "type": "function", "function": { "name": "get_weather", - "arguments": '{"location": "current"}' + "arguments": '{"location": "string"}' } } ] + }, + { + "role": "tool", + "tool_call_id": "call_XXXX", + "content": "." } ] - -@traceable(run_type="llm") -def chat_model(messages: list): - ... - -chat_model(inputs) ``` -```python Messages dict -# Format 2: Object with messages key +```python OpenAI completions format: Messages dict inputs = { "messages": [ {"role": "system", "content": "You are a helpful assistant."}, @@ -82,15 +84,35 @@ inputs = { } } } - ], - "temperature": 0.7 + ] } +``` -@traceable(run_type="llm") -def chat_model(messages: dict): - ... - -chat_model(inputs) +```python Anthropic format: Messages dict +inputs = { + "messages": [ + { + "role": "user", + "content": "What is the weather like in San Francisco?" + } + ], + "tools": [ + { + "name": "get_weather", + "description": "Get the current weather in a given location", + "input_schema": { + "type": "object", + "properties": { + "location": { + "type": "string", + "description": "The city and state, e.g. San Francisco, CA" + } + }, + "required": ["location"] + } + } + ] + } ``` @@ -99,11 +121,12 @@ chat_model(inputs) The output is accepted in any of the following formats: - * A dictionary/object that contains the key `message` with a value that is a message object with the keys `role` and `content`. * A dictionary/object that contains the key `choices` with a value that is a list of dictionaries/objects. Each dictionary/object must contain the key `message`, which maps to a message object with the keys `role` and `content`. * A tuple/array of two elements, where the first element is the role and the second element is the content. * A dictionary/object that contains the key `role` and `content`. +* Similar to the input format, outputs may contain `"tool_calls"`. These `"tool_calls"` may be in OpenAI format or LangChain’s format. + Here are some examples: @@ -130,7 +153,7 @@ inputs = [ chat_model_message(inputs) ``` -```python Choices format +```python OpenAI completions format: Choices from langsmith import traceable @traceable(run_type="llm") @@ -192,9 +215,51 @@ chat_model_direct(inputs) -### Metadata -You can also provide the following `metadata` fields to help LangSmith identify the model. If the model is recognized, LangSmith will use to automatically use it to calculate costs. To view a list of recognized models, go to Settings > Model Pricing in the LangSmith UI. +### Converting custom I/O formats into LangSmith compatible formats + +If you're using a custom input or output format, you can convert it to a LangSmith compatible format using `process_inputs` and `process_outputs` functions on the [`@traceable` decorator](https://docs.smith.langchain.com/reference/python/run_helpers/langsmith.run_helpers.traceable). Note that these parameters are only available in the Python SDK. + +`process_inputs` and `process_outputs` accept functions that allow you to transform the inputs and outputs of a specific trace before they are logged to LangSmith. They have access to the trace's inputs and outputs, and can return a new dictionary with the processed data. + +Here's an boilerplate example of how to use `process_inputs` and `process_outputs` to convert a custom I/O format into a LangSmith compatible format: + + + +```python Python +class OriginalInputs(BaseModel): + """Your app's custom request shape""" + +class OriginalOutputs(BaseModel): + """Your app's custom response shape.""" + +class LangSmithInputs(BaseModel): + """The input format LangSmith expects.""" + +class LangSmithOutputs(BaseModel): + """The output format LangSmith expects.""" + +def process_inputs(inputs: dict) -> dict: + """Dict -> OriginalInputs -> LangSmithInputs -> dict""" + +def process_outputs(output: Any) -> dict: + """OriginalOutputs -> LangSmithOutputs -> dict""" + + +@traceable(run_type="llm", process_inputs=process_inputs, process_outputs=process_outputs) +def chat_model(inputs: dict) -> dict: + """ + Your app's model call. Keeps your custom I/O shape. + The decorators call process_* to log LangSmith-compatible format. + """ + +``` + + + +### Identifying a custom model in traces + +When using a custom model, it is recommended to also provide the following `metadata` fields to identify the model when viewing traces and when filtering. * `ls_provider`: The provider of the model, eg "openai", "anthropic", etc. * `ls_model_name`: The name of the model, eg "gpt-4o-mini", "claude-3-opus-20240307", etc. @@ -219,21 +284,6 @@ output = { ] } -# Can also use one of: -# output = { -# "message": { -# "role": "assistant", -# "content": "Sure, what time would you like to book the table for?" -# } -# } -# -# output = { -# "role": "assistant", -# "content": "Sure, what time would you like to book the table for?" -# } -# -# output = ["assistant", "Sure, what time would you like to book the table for?"] - @traceable( run_type="llm", metadata={"ls_provider": "my_provider", "ls_model_name": "my_model"} @@ -362,7 +412,7 @@ If `ls_model_name` is not present in `extra.metadata`, other fields might be use To learn more about how to use the `metadata` fields, see [this guide](/langsmith/add-metadata-tags). -## Provide token and cost information +### Provide token and cost information By default, LangSmith uses [tiktoken](https://github.com/openai/tiktoken) to count tokens, utilizing a best guess at the model's tokenizer based on the `ls_model_name` provided. It also calculates costs automatically by using the [model pricing table](https://smith.langchain.com/settings/workspaces/models). To learn how LangSmith calculates token-based costs, see [this guide](/langsmith/calculate-token-based-costs). @@ -403,7 +453,7 @@ class UsageMetadata(TypedDict, total=False): Note that the usage data can also include cost information, in case you do not want to rely on LangSmith's token-based cost formula. This is useful for models with pricing that is not linear by token type. -### Setting run metadata +#### Setting run metadata You can [modify the current run's metadata](/langsmith/add-metadata-tags) with usage information within your traced function. The advantage of this approach is that you do not need to change your traced function's runtime outputs. Here's an example: @@ -502,7 +552,7 @@ await chatModel({ messages }); -### Setting run outputs +#### Setting run outputs You can add a `usage_metadata` key to the function's response to set manual token counts and costs. From 64b9eed27755c1c9513c3cd315e8f0e7fd6c6495 Mon Sep 17 00:00:00 2001 From: Tanushree <87711021+tanushree-sharma@users.noreply.github.com> Date: Mon, 29 Sep 2025 18:21:38 -0700 Subject: [PATCH 3/4] Update src/langsmith/log-llm-trace.mdx --- src/langsmith/log-llm-trace.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/langsmith/log-llm-trace.mdx b/src/langsmith/log-llm-trace.mdx index 3cacb8487..b71f43916 100644 --- a/src/langsmith/log-llm-trace.mdx +++ b/src/langsmith/log-llm-trace.mdx @@ -51,7 +51,7 @@ inputs = [ "type": "function", "function": { "name": "get_weather", - "arguments": '{"location": "string"}' + "arguments": '{"location": "San Francisco"}' } } ] From 63318b6d3874d621f9d1c85a43014219ca55c5b4 Mon Sep 17 00:00:00 2001 From: Tanushree Sharma Date: Mon, 29 Sep 2025 18:24:39 -0700 Subject: [PATCH 4/4] small fixes --- src/langsmith/log-llm-trace.mdx | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/langsmith/log-llm-trace.mdx b/src/langsmith/log-llm-trace.mdx index b71f43916..1e8e11fc1 100644 --- a/src/langsmith/log-llm-trace.mdx +++ b/src/langsmith/log-llm-trace.mdx @@ -1,18 +1,18 @@ --- -title: Guidelines for for logging LLM calls -sidebarTitle: Guidelines for for logging LLM calls +title: Guidelines for logging LLM calls +sidebarTitle: Guidelines for logging LLM calls --- LangSmith provides special rendering and processing for LLM traces. This includes pretty rendering for the list of messages, token counting (assuming token counts are not available from the model provider) and token-based cost calculation. -In order to make the most of LangSmith's LLM trace processing, **we recommend logging your LLM traces in a specified formats**. +In order to make the most of LangSmith's LLM trace processing, **we recommend logging your LLM traces in one of the specified formats**. If you don't log your LLM traces in the suggested formats, you will still be able to log the data to LangSmith, but it may not be processed or rendered in expected ways. -The examples below uses the `traceable` decorator/wrapper to log the model run (which is the recommended approach for Python and JS/TS). However, the same idea applies if you are using the [RunTree](/langsmith/annotate-code#use-the-runtree-api) or [API](https://api.smith.langchain.com/redoc) directly. +The examples below use the `traceable` decorator/wrapper to log the model run (which is the recommended approach for Python and JS/TS). However, the same idea applies if you are using the [RunTree](/langsmith/annotate-code#use-the-runtree-api) or [API](https://api.smith.langchain.com/redoc) directly. ## Using LangChain OSS or LangSmith wrappers @@ -21,7 +21,7 @@ If you are using [LangChain OSS to call language models](https://python.langchai ## Tracing a Model with a Custom Input/Output Format -When a tracing custom model, follow the guidelines below to ensure your LLM traces are rendered properly and features such as token tracking and cost calculation work as expected. +When tracing a custom model, follow the guidelines below to ensure your LLM traces are rendered properly and features such as token tracking and cost calculation work as expected. ### Input Format @@ -222,7 +222,7 @@ If you're using a custom input or output format, you can convert it to a LangSmi `process_inputs` and `process_outputs` accept functions that allow you to transform the inputs and outputs of a specific trace before they are logged to LangSmith. They have access to the trace's inputs and outputs, and can return a new dictionary with the processed data. -Here's an boilerplate example of how to use `process_inputs` and `process_outputs` to convert a custom I/O format into a LangSmith compatible format: +Here's a boilerplate example of how to use `process_inputs` and `process_outputs` to convert a custom I/O format into a LangSmith compatible format: