From 955d9ef90972811c874f91c96d91075c0dcfa1a6 Mon Sep 17 00:00:00 2001 From: Brock Wilcox Date: Thu, 19 Dec 2024 20:50:16 -0500 Subject: [PATCH] Add groq support kinda --- README.md | 12 +++++++++++- docs/claude-tic-tac-toe-1.png | Bin 0 -> 16433 bytes docs/claude-tic-tac-toe-2.png | Bin 0 -> 16389 bytes docs/claude-tic-tac-toe-3.png | Bin 0 -> 16374 bytes docs/groq-tic-tac-toe-1.png | Bin 0 -> 24027 bytes docs/groq-tic-tac-toe-2.png | Bin 0 -> 16472 bytes docs/groq-tic-tac-toe-3.png | Bin 0 -> 16340 bytes docs/groq-tic-tac-toe-4.png | Bin 0 -> 19877 bytes docs/groq-tic-tac-toe-5.png | Bin 0 -> 20228 bytes docs/groq-tic-tac-toe-6.png | Bin 0 -> 17135 bytes src/llm_engine/openai.rs | 3 ++- 11 files changed, 13 insertions(+), 2 deletions(-) create mode 100644 docs/claude-tic-tac-toe-1.png create mode 100644 docs/claude-tic-tac-toe-2.png create mode 100644 docs/claude-tic-tac-toe-3.png create mode 100644 docs/groq-tic-tac-toe-1.png create mode 100644 docs/groq-tic-tac-toe-2.png create mode 100644 docs/groq-tic-tac-toe-3.png create mode 100644 docs/groq-tic-tac-toe-4.png create mode 100644 docs/groq-tic-tac-toe-5.png create mode 100644 docs/groq-tic-tac-toe-6.png diff --git a/README.md b/README.md index 7292bd5..b86915e 100644 --- a/README.md +++ b/README.md @@ -100,6 +100,15 @@ Draw some stuff on your screen, and then trigger the assistant by *touching/tapp * So... I'm keeping an eye out for other reports of issues on the new version * Oh yes. Now you can take prompts/general.json, rename it to `james.json` and go in and add "Your name is James" into the prompt. Then copy that to your reMarkable * Now run `./remarkable --prompt james.json` and it has a locally modified prompt!
+* **2024-12-19** -- Not Quite Local + * On the internet they suggested a local-network VLM mode + * Ollama has that! So I tried... + * But it says that llama3.2-vision doesn't have tools :( + * But Groq llama-3.2 does! + * ... but it is not very good at tic-tac-toe (this is the 90b). Though it is very fast!
+ * Oops! I forgot to turn on segmentation. Here it is with that enabled which should give a better sense of space...
+ * Here are 3 runs from claude in contrast
+ * Well. The new ENV is `OPENAI_BASE_URL`, so `OPENAI_BASE_URL=https://api.groq.com/openai ./ghostwriter --engine openai --model llama-3.2-90b-vision-preview` for example ## Ideas * [DONE] Matt showed me his iOS super calc that just came out, take inspiration from that! @@ -146,6 +155,7 @@ Draw some stuff on your screen, and then trigger the assistant by *touching/tapp * Or could use the same color structure but a whole chain of messages? * Might be weird when we go to a new blank page though. It'd look like the new input erased everything * In general this would also make it easier to handle scrolling maybe +* Run off of a network-local vLLM (like ollama) ## References * Generally pulled resources from [Awesome reMarkable](https://github.com/reHackable/awesome-reMarkable) @@ -189,7 +199,7 @@ mv tmp/* evaluations/$evaluation_name ./target/release/ghostwriter --input-png evaluations/$evaluation_name/input.png --output-file tmp/result.out --model-output-file tmp/result.json --save-bitmap tmp/result.png --no-draw --no-draw-progress --no-loop claude-assist # Layer the input and output -magick \( evaluations/$evaluation_name/input.png -colorspace RGB \) \( tmp/result.png -type truecolormatte -transparent white -fill red -colorize 100 \) -compose Over -composite tmp/merged-output.png +convert \( evaluations/$evaluation_name/input.png -colorspace RGB \) \( tmp/result.png -type truecolormatte -transparent white -fill red -colorize 100 \) -compose Over -composite tmp/merged-output.png ``` Prompt / Tool ideas: diff --git a/docs/claude-tic-tac-toe-1.png b/docs/claude-tic-tac-toe-1.png new file mode 100644 index 0000000000000000000000000000000000000000..43600afada12a9961ad1761c1e6bea409e4f7e9d GIT binary patch literal 16433 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 AhyVZp literal 0 HcmV?d00001 diff --git a/docs/claude-tic-tac-toe-2.png b/docs/claude-tic-tac-toe-2.png new file mode 100644 index 0000000000000000000000000000000000000000..4edc3e34c68dc4dd97052d762aa89596b5623be5 GIT binary patch literal 16389 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℘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 lR4j=N1td3%`p49K?)GB>d{uEBWT{x244GIjs} literal 0 HcmV?d00001 diff --git a/docs/groq-tic-tac-toe-2.png b/docs/groq-tic-tac-toe-2.png new file mode 100644 index 0000000000000000000000000000000000000000..ca6064d0de62a3594302f188a376c74480181f8d GIT binary patch literal 16472 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 PA75p8b-B{lCLjMdK;0^g literal 0 HcmV?d00001 diff --git a/docs/groq-tic-tac-toe-3.png b/docs/groq-tic-tac-toe-3.png new file mode 100644 index 0000000000000000000000000000000000000000..fba855406181bbb7d39c0883ae349a936c082667 GIT binary patch literal 16340 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 YRx2-m3&T4>|1m&OR_#s2>$e~NFNFf>=l}o! literal 0 HcmV?d00001 diff --git a/docs/groq-tic-tac-toe-4.png b/docs/groq-tic-tac-toe-4.png new file mode 100644 index 0000000000000000000000000000000000000000..e4a9a6e0db71a0bd6a57138f8e58ef3eba549b08 GIT binary patch literal 19877 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 literal 0 HcmV?d00001 diff --git a/docs/groq-tic-tac-toe-5.png b/docs/groq-tic-tac-toe-5.png new file mode 100644 index 0000000000000000000000000000000000000000..2644616509b295708de2220b64faa5ed2e68d583 GIT binary patch literal 20228 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 literal 0 HcmV?d00001 diff --git a/docs/groq-tic-tac-toe-6.png b/docs/groq-tic-tac-toe-6.png new file mode 100644 index 0000000000000000000000000000000000000000..4cfe1b8c2cfe1d046ed12b4c098aad98120e791c GIT binary patch literal 17135 zcmdVBby!qk_cpp`Xpj&jBm||TyFo@#25IRIk?w973{dIr5RjDa7(lvH8iwwa9%{bv zeZSv1*SW6q_jj(tKbvQ-{lt2nwc)TU(oefB*ynfx+O14E-6; zhK7a`5fQPluzdRT$=TUCJ3AW>5AVT)2L=WPlarHbYHGy9#Ov$p*x1+s0RcQbJoxzd zy1KeaNlEGH>2h*%7#J814i3!B%o7t6GBPq;TwGmUT}(_&`T6;Id3oaE;tUK7o12?q zVPW+2^rWPum6eqxB_)!QlJ)iV2L}gbWo3PRebv>~P$<;G!eVS}3Z*)2Bj0 zLcf3i{`T$L>guY$zyH9%00#$$mzS5YurMVhB_}7RrKRQG-d=HW@v~>oczJov&CN$f zMyRN$*xA{$va)P!Y#JLIx3{;WqoXx7HEU~Ysi~<|RaIdySYcry4GoR7wDjxOuL%hW zX=!QY<>d_x4a>{RTUuIJSy|Q9)s>Z%dwP1>+S=Z~fA8+@uA`$97Z;bBn!3Ea?BnBu zi;Ei)5~84>ASxOkw zQks9u!kl>t=dqjk6?>XqHJB{$3_a=p{3z-~q@GD6_0sa}c*6cV#{^(NKGG%&itSwT zIwM`WlQ-!V4N4Wqs+cylqSicQtNLTBH1lI%6yM>$SNjFixnKIW_IZ%^iWO~j!*8ry zhj-5J8u?{LLPdax!F_S*+LAxR`t$Jw8mO{Z@G{m);K$s?`$bA@KIt3|%AKy5@26}S z4X@9~XQ;6cBnMaJB8{fRK*#%@b98R0fp<(Eilqjn+MNrlZsrLdT}_$pA8L2w`QR!` z_Iu)xak@t^$a+z+ufXhJnr&%(QtA+)^9D7X`vOo@hw~o364titQsXp8&Y$kN{RY=5 zj;kI%iULG47Dn^22rO7eFFiN9SunE{1PIm$Aq*lr*`nXSFoxc^%QxRp^B`n3Be{3N zfF#n&KaXzB2OKke21;0P8^}w_Qc}ra^BRtkmsRzZubc>j0&3fQA?C=`BFV2iv$PYB4nG5;mAdCY zRxg)DYw^8axvF$u%u4NyL!myxG%%e!Bkz|aS6?U{WC5mp{Z+g+^`hccTFVFP)^OHZ zp#DS=dIkb}Yt>QIr6Au+_1w-E$F5!5&?d*(astkZd|xx3;u@DMV(>~7yRH(pxo#GR z6;rrxAc^qWl4U}K{bz;QB)O;ZMY<_r=Xc?l%hXj8w3msLy#zch)jJynYY(wae4DV_ znx}Uf84-V_a-MK-(tedA*a zc+|K9wZcyUzH@eQR$ziai9yAPSRseh*eSBqC|*SwU@>S!TYHSZTJ zb+H%%^5VE)q$UR)FYvYO)e^Tgh>wDxAL$wxbN1Sase9v`_*MHcpHeP8edF7i??bpu zxVYWF?u^q`!RVRSxin6uqdX{vp&&8Bh#Z_ZJd*Lcs3W>fYik~lB8g-d08 zXJsi};(N>_S6vZa>6+UBb4r!#0R}R1*wz7PG?zadt~g+|2Z%boTa>9_Gs9EP<~h4K zbi8zbs_e5czJNN3GyRo5L|-U=|I6FfQAAJZE3QIRGL_LGgTufyZQM|EQ29bd_*%S0 zv44(@Hp4q1Qd61_h4;bT8%PsoJ`QtP4rySLS(sP?J4BO|vd;`qD(WEo9DPn_|xL zefA+#m4JSgV3H?i{7~NU%HZPD!5~gso$=|Hd9$Q-?I}$Bb;3IvyDu||9YxwgCpu*n z0&qJZSn12LWR-r^?T@D+PWpcSeo*1`VWShp5~bDD#ojAu9xHf)S9Ix7PfMRR{CueY zrTQj!ge!M}<#p~7(T(09qHEtsG5+p#3+4PVOLf+W0xP zdHh}pQT|+)q;%_Ewn*9#)J7E;oFf%rT%$b+%fyo z+c_t2P3ppQ+5)$Kj&5@cD@9^sM!?bKON8Saz)wu~c6G{#nb9BbLb2-=mPy8X*EU0d z*Kl9S#a_DUca%Jt=-AflDZA4Sk#}CoBE}bVfw|aasHv6Ad`q`}wL4^}=JZs3q@?v> zHsv3Ls}C~VBo(svU0U1x{zQGs;gfp@m_+CxeOq}G<iTAwxGs`4EApBv zV`28$^eoM=f!*Qp*rKpra+59Hsi0^XX0vjzd*6oB7H_eXNfHh6ct)@-^rQQPeM>b+g&Ys09zy>TJG)XKlLI zsaVw({R8RtM>kvHi8I#fvrU=5=pZT-BdLj@r@v~5)(2{e=H=@uSVJ^CQ=eJ&qaK?^ zyAEC^^BYemR=&`@51vEH zmwA7Zaj4t!{{G3N$Y$&H%x!^el#umMoYX#O(lNp28rys2(|xu7MrqIVpOU}uW3qSm zJslaZ=e29U9c=p@3PtPI-i8=!o^4g{kff3tC$$}6%4$TF_7)mx1s*kX@Iv0kLtJ<=8!zMPjoRYT+Jd=*9dClU=yBf%_u&{BQ1k zOyMsz#zoolhkbO@Dgz?K_LS>hjlV1^IcSqwI#eF(k9hbhBZPfBPb)*+_nKRr`t3#p zZ^S+}($C--^rNn>TncCDaDIwN{%ADFOW`@#Dz6l#xw`ZIG$2erDspjlpdzhZ+jUSn zk(jJIG-=C@!>@b(#p?ZLg`&>=DWN@C*eAz=;iOuRxx?~fG++?1)4!_1-}srIZ#&>e zR_^JV;%)L-OLe)?TH?WO-5hfL_9C_C(nGZ<{kZXEEHg_Tm&qXuN0F`Y5p zK1QdKcd?t-6BsZ>B)2_Gt|@OKZ?UQPwm?^qPJf<9VOHDQHn3iQaB2Eccr~}bO~K>~ zQDo#V#Itv-R|x%y*+JLD)|IWLf`hodct*k-F~w~K1XIA zlH_dt(7L2{#8&*i*Pu#ZO6vYo()9c8_?3C{B?P#(J1}>@ZOoT?SluZnqQqLK_%QRK z=4zeXxs-Ap9hnc@!kkw5HgN1P)c)^Cnus9(QU8@3#y%L@{D)_Baj>t@tQyY13yLT*doy)S8mr+hmNns(EmkjPTX@nD*F? zK9)(}k_+}Y;9BYbSZSVlQ29*ii#kOPO}in=UpmkMx}c`%c^Xj1 zrYAim`NGsvKgr=Rw)V>M0N40$6QLqt7iczqK)GpruOVyv{USXvctqQ$T+o1IbN)J< z!8hv1iDdLX=$HiIT_MwoeBCF-k^b60OuG*`;Hy%sN z0~(Y57gldIJ1i<@&+Xl0u4WBqO$P!^Q{qdCT6P8IEt>ohHJc$)q{DaF_*UXj3QJe! zC0`wof%-V<@gTzMw2+(<&cI)w9$X`Bmor~_;&ci#GGGOWQ#?>g$$o!{<$K<@N8#KPauw&u?WtEnf^tka}mLM|8)Cwfymfnj!2=`(5$wS8tjNPMn_N{ThlV z1{d{*cA~zsiEmP*o>%UzO`0Zl)^-eLEJ#Aj((_V_T&PA1Po5m4#cu0-&G0+F(wJh%B z?eXBQ^{;%VZWHM9=kZ(0ptDN58DhE--(*bef?pyMJi;H&HAQq{g+oI>{7!Pdm14gUt~v9J<}eXpVW!kPi|7r;$f z8Gq51hT_oA@6erW~~R<*a<1@K}D@I_8-U zf1e-~mnLQDys|27VTsyASg}S)IE_`qiKVWNI~-d^7at2e(Hjv;Uv5y?x?|-(`g#B3 z)Z~*8z2n@&gD{a`#%cOJZ}TrBRsIbHR(@(nzhZfTPwF8m0~PF!G>u-h+6T$l=OYin z$N3kD$|F@dkeiUHc-@C|O&PT|=dHxjx`7w&3z0 zTQ4v-r=4#0jon9NpzR%|jLaq}7DiPV8QNAB=fmWezl^BisrwkA3Z8#2zGVh-$FfOz zLZGY5VclbdSGN^x5;#CqIc3A33&NTg+wGmfg<;4XgSU<_BLb6%o zrXukqmB)8jYyzrN*p|qlDJ?v*9CC2`YAj#}uTT_0lR*=ea(8vP^?>fx{Mb`(*b zc)>(jieZ+4Buq^mv`=km@<`Q4J&ei(uGWJOD1&RYiHyVoo>7KM5XMsuXcLeheWbft z^5^ATEd0^(e#5Mz)ZDpZWUkBv!|C7(W4T{{ZbE9@VMqj&xj+tG%tzI$^qrn zA~NOA5vIY1kyZM8eBu#KhdL(`%W00i!xW^#bo^zco555QYVH+R#b$iSp}52?o2Gx0 zs7K}7og?xiB~g4@vL2oYP{W@2c*0(W*Xp;umhbloE_=j|qTy+9Qmp0Szc_7)O;BoV zp+J9Wbul76BQ@Hapu5#2n<@d;BE!#J#B~Fsn>03#LTb-)ZZOAMJvfUF(?c}u#?`g` zc6*PdP158W-z;!dx^^jRKIluQ9O*kU?X@C@o0A}KueQ2l%-QIIN3}`wumXff3em7B<9A-gpGjaL# zSrg_0dSAb0P8{h=&>~6&_&coWyfa-sXDxo=pb=_j(c{XHikZt$iedUZapDrXsq{Xy z8r~)x)a`$0Bd@iy;FX|~b|u+xw|+hy*!*&?COVk3)URxeEqZOaHzmM7V(o`F@_pv} z;WNzT-h(1km;jK`oYk28Ng6A{kTYRi`f1XuCSzk7OT&Y?y-%G!i)vYKB%O)Fqyf~V z_X97JSL}wVAHvjJR7%vHf;_guE}0xvh%C-5!7!qY0nIU_288uwLjVjLeglk-wX=*) zU;=dgu{Z+Pq991Vd|z05iaTWM?|S|25+}(QW%6Ey#z-K`4C!*Exe5M}Glm7hIZY68{j6ZV9hhro1A`Ydj6=o0z$MMTA^rHg$3_t-q|+I zI;XBL^)_O#+#XJ{@W`n5_ez|L6=ID+P;W!RS=wR=ee`KT#|QD$TMGuxUk4LI+#dQr zs7|;+e3Kx2wh5OiZv1i*ImRZKR3|wh!E1GXc`oTRX}*`OukJ8AX(zSAV{qIX-EeK%QlAXm zj+*pUC59nI5X{P8-{IS?_XDUmG1REjA05pu2k8Czc7{^f;vmeWuC9u4fRh!;SML2hAmw{>vo7Gl}5UQvJpyCyRkLdB&* zMEv1id~0$wAfTbek>{ZgYEe2pv2TXtL5uhwW&WnS48OOYxlrveadhmLG?oVd*^eD^ z8jR{##cq^G%+E!`Qdl$6r8d7()|WOZU05eJaB=#xs%4h$etSj|FFRdbJAur!2Lfnh zfJ2RR4H00Itrc;(c02Z9%lD+(J2g=4o)0^(t)Yt|ghxS8vS<(MrB40yf>>8v$v}3@ zVSl1H^U~n4qOH{$71(JSR|v-OGI25e^2MAN*kCs2`j;CkoQ?0P*v6XVY|ATM584r; zqGmCLR!+=iZ}_w8vFHO`e}Ah-1uH;v9;(oD8d5r(@}w^;?8VZtwLrvv|BQ1M!w%QC ziI;h0)i7~{kM55|Vyxv4XVZ`u(+yvq&3U172YDQOaep8PUc)2Jh#fXNJ5iv8lUK7_ z0uylVJxfSrf>!QC;>X%&OiSbICP@k&)&B+R`JpK8z<{MQDSY>+Syb@_XLU&Jb)Co@ zrppG$yhY0J>W{B7TEy{@EY}LTqIae_hnyc)@+z=QQVu!rU|W=pf3)O{gf~!ewDcPA zpDQQ(eFlpXx&kWv1Vnstlp&X)_*-<1F7>>qo_J&T-!tH2?WcgUD8|}C=*YF7_I>1d zj?}#3Vz$rbb85&)0pdK)Vu}O^OXZ>8PWaxg%{i9`b2rbSW{9$_cC-VD^58>6E3ONd zIv(CSc|>`CG%w2k&}f6|AZ#^-QWOnGb7-_?5q@@dHE#(ptYQ*dT~fPpR&AyA2f#by zgu-&Bf0t%bg?_d!-MXquo-X9wwwl^7C`r$H=@NY?+}(Q?dPd3uHeE3AR*anD4lrtI zIPAR+GZNbcL?a$p>=!3d)|-8?-m!JqL)lB{pR4%>Oh21E6-l99IqV82-u80wm7VVQ zA^Vg86DH{%h}Yi3$|@&~WGwuJ&?kj46JoU`?g=#wAx>+QYIkB0W`Qq$`INAoY!wBZ zWH&gESW&19Y6C&(1fCQaKd5*l#=YIvvE`^>((>SA>rWujJh9WIzGC~onI}>H`@#(> z=gQHHMesb!ySrC~qBQvk%(`Rz7~6x+r-7=j+?qglUwo|lHSlHwbS&Uw@dzVoyRhH))AQsSb+(Y~8?oaJN2G2#Frzr>Jri@uy zW!I^}?sEc&$wiBQIJuOu!|>TJLuW%0^1vQGbI-C}_f2x+f#5A>PCeE4flF;BsLL9O zx`;FDMv2=h%Mh7FcVA6Ju%RT_N>!x;RR4?~&_+yPQ)0V(P!ewHl>DGyca*!|5lO2G zABiaI|Iu@i&oQDfVaMXDJ|xo|K?hEW4K&xjD737?8kM-|E2TBYA|0?+g-(F9&-xh0b%{|R3#)lI(o%n3l+Q&O0VmXZD zeNx|pttElX&6~6ggVeENnj)~I_wU1LU#*O~vy$myW1GNX!?dNhz7Fxltlq2jH8ha< z_NQ5^hAJD199H^ojP}3XhO3mw_So_Qi;oR?MaT#x=O)#NM0C2-L|O;x9NNjaU8R5K zeptbi5UPHy>ZvoqEiW$kh`f8-;WSP>$6a4jC<~Xov5}+{zkMQ;^*%CZ@=c)VMW^=k9Q{W=`lgfhsNJ|q|0W)q1X_+G zfvd_1x1YqMfZ+2~sg2x^$2~*thZGc*?LoY=`N`_x#!MX}iPu?vvnB6bHVB#?z1Qu# z`0i-Gosf_4brdG({_!sP?qZ3x38i~it*qPVy5)K~t;71~GDP`jpy9x<>*HjpZi(Ua zN}f=+cN-+pTiT`ht8Xr`WH;+e*ZIqC&oBEIMpbW@zc3!o+w0!ebg7T|HS{+(U{lPw zFLd*m1}jt44$}`m!oRPazd(2{c}lqIm(f-Hc&~DPSK2jXXWYW)c!EWJ`Sp!gK(^=p zR{4JZmgL=>2okXojRSR9Xd2HKZ>n+S^PeqZaer{kh`j=a5C>YSynC$bZ!6Q3g4Jw4Cf%qqPff9$W{*{9o8Di2QRXa#Mc;ItX&e-z*UlUInu@j~trD2i6) zGiH{V_sNAb4LD22{0vMAQ{L#4o?{Fccf^qU%D59?1GsTQ`7zu+ja5kMmXy82%2IDQ z3E9C?$6|OG5ql=#w2}LS6_9&PL;J;Lqo5__stE!;S^u2rcA5$>uw^X#z<`n|!#MQM zyumO`FP964N&6Tp>9%;}wGaqGI@p4OvH5?~0%bIpjW90~$%LG2C@pdnzFv}HAQ0R+ zK!et=naQ!ohtr8IisSR3boQv$^ZO5E5FmAVu}LP%M2$Ut(bcT!25=KWpQjj0e&T|&MyGcact0XoE%dK zkd^Zga1%s7EsKWJxPUk{2m)mUwyn^pIvg-*cm8;lH%tO3zOG<~0VW@v*Zcg9?A{~* zChz~QKb@@M59Z&i*Btiu+}O>8g5JNm*_<)&~9HfSS9W4wGO-UQ1`2j9c8UR((9D2l|u-$~~ zE(xm;fa&Tw=~(ULm8@@9@j`fthlvlC3BDRCB2) zFs?0{K%nt6VDjqJy#E-jNZ0Qw$42;ok*{tdnY_PogJI4B8=j8lU@%g{JzApOZmdn? ziNr1~vsITbD?r7geoP$4+7?SNQS@7GjYAliAf@}l1blt@6x7un#__2rFhZx=9+QZZp`=>Eo2#k&)gL-(uwO+^@c(8Gn=H^6lvh&Q0cz>@U% z<5dLm@2kn*8W{9$$EY+h&FdRLJ#JRNG|QTo-oBYJt782*GV^ z(OxEN7qV!zRTIpsWQ8zl-{$NUVMQ9(c6s}1}l z%y>vfg1sF5dPEL=EKr7}1Z^P3Sg1l-n&Cm)BO5@`FCwkz7tkpjx{&TpN`jpg3Ye@C zjC_+0)OpK~6{viG$&3Ga;tQ**kh*!iiZ-Hjk(dDxRr)*u$=8-39xRz4Lwl%nRSOn< z=N^c(NIKrt07xlr(>2jl_u#?<4Et8%fMtR@ zoQv&rISn!7?oOOf!VkhL3&1iF4e&}?zwIacf}z`2M3S`ahy2k^q8k0SjXf5&#X*FN z>B0hPdrg^v=a+p?J%E;cEj20k*%ctZoZ)f+?~~GIAvG)$tjga^5Y|KwOk9Aa*@^UZ zUXX%R9K5IiY_L@x_7{`9%#BK*~@QdV!u&#Q!uq@pI{HRnl2#;L~Q(&7onTp zO|k+b4bP!F4(lyO41vj*2Gvg6zv-v}=&gyBXCO+QrpaSJslxrT8fj2w_wnzCPrG5k z3Q;_$>72RKv05wb>15FJS~mx2A?uaeX%rk9>fr*f#Oscq*Wj_gwI%qF_!h?f9CJA+ zLY%}R1vwTS<npC0afZcp zKSjs0iY?oZxvZc|A9pO@dFtX2RrXXRz|UV>MWtogQz^B{b1~g<$*G{+kcnLNo;3lY zc;nvne7?l!Fa7D&sYaq;>mm(d-Rq4emlxx(0K=Q006q%k-&RHwJS__%doQ;4cDeRX zDbH?Cug_)l`HtyE9!8E!k6~6CxL=mDIWRi=EpbTxcAI2Pp@x;?CN5TP4$0sUKUuh4 z_SZ)>ne{}V5vSAAA>8+1Bw9gQ{Kf<^JNe=)%7%-zX9!i{)KMEEeeK`#=F5e$ig?r6 zhC+@f#Rcwap+yuXG-AD4dh$xyImt=qOot4-{G}&8cT|)>nNDode_%I%#LH)LBJ$F9 z?a+6pL9;mHh1u4Tf}^qD>Q`rWt23@#<#d;_rRvk!-?!@K=arQxoSe2K2d#)l_GKto=>2nmf9ocuoW&1L>wif zHZHHcJrQod!$YLywp_?J8ZFP`j)?Z9%FoZCB1?P|;%?c-bu-X3QL05=*G)Rlq)g$o zinTTb+&ACvaxrdlz$Uo8xs8{+!rS>M$esQT^j?wm^WyzZ7Y&k~ml3y{8jwgJJGTwd zGr4?X=yKO*e)s9qK)=W3&9ujmq3@|-S+h&WP;9VNq;;1++x$nLyQJk!nn5$i`i-HV zaKq5XO)5s=^g(!I!h!ec_=wSf^cS}4GiMcoV@bMyJ{uFWnE75VziG=Y*;A3`hEOV|g8pqW&S zwxXr-vrxittTsG__o_YHXwRT+__FH0Lhzt#(1v zmNxxc&zgT%!r=!Q!&gpA$=az7))j-Z;O%L82WRt>UQoe>*xhx^{j*UuqkyxYKaLi8 ztSyp^t9*8PBfZ_080+rc{;uDRsVeG@wc77Ys5tseX1aYS@IKQ1rblS@0En^-F$t#b z(?`r-xeyvZscrFd)ZfWL)o+f3y=Yqf*dZhTr1I~`y@7aK36nZgLQhrYvOxKq@L&0NpZ=>bllZ?Y~N$} z!SQ$#jLD-OFQyh9d49<(CveEts4roSxcGT(>nXRDiTI zQZ-K!DDTMnWZscgauhTl98~LT-7MFoXKD_KVMmDrcq$0)sco{ef zfNCfseW8(C!PU)BS?gS#^up;D#ezpi&5Avn#65qhHXg=tYv+p(RItuztXKLcABx!y zT&ITXx3fbn+}+>67c;D<9T)6S)b$mL&Tq}n0#OR0z%&Va(fcfs zp*Dz0MGJKlh{w_vUo7N_qrjI%4duU%OS`=Y63B1e^Lkl-5x>^p5Z1*Ul_)d|_+=9m z0IKnP13u`*o>7*QMnl9Vfeu0tZ>U3G(RxXx%4-#9Z0c~@DUcQFSTIU(PNE) z6NV-L-_anP93x5SW{nD-dv41te( zUxS@$E;u)-r{um9LWEJS&p=7Pe8e;Xv^{DVl?I_HaC)UYo(f7Y5(MxxKn4sL|Cyo# zJUWMoUV1SnP*R3=G3K9h!8lnz|1C<(8_+ZQ=U6Cu55!_hA3!+%Q6o;{VRk}DaWUGN z4-F^e|8b_$6l7)kum47WUnNjokN>}YBEV49Th*V(u4L^*kJE#hmEBe+2n6{l15sJe zfp|^GfDs~AX12ZP5oAx37_vvYJdpK57KnN@k0V!!|6Df_*GdY#ffV6j=EQ%Sho(c- z+YlY^XjWjGY7#u!|8MdA*jdoD&LUV$mv_*V>xS9TLZ$&tFZQws7?wM;GkRTz`Ib4$ z&DkhxqaA4GaEJl*Mxd-=6?hm<#h4rBEj1vy$bap^C$K3rk79V&1u$v+bGt|x(EEq> zUK3(5B(wjspm|pb6JY+OMbn-E>VtMyodYN-0@FT5yNfP-%*+NJ6od7SuUjNlfT%QH zp!E+fgn)Fpe;R$Fco?c_5wq9qZOYw@fSh80xZ8al6WA#RU=Sn6D$o5>mq+*-9Wiqt zD<$%Oq0`uL#iADtPe< zh>D^fh^hXCf4pI212D1f07>j7(E;eQjnX4fuPMh*QUIc;(8s6cYTf?oH!C2T9!>?b zU`6lb+ZxJz`*-9JR;su1lE8)BLK7x{S6C(Ktw7oqZNkKk1a9d;5SLxUJVE1=R9b+g zAAOClQh6Wc>_3w>)P6OMrEtMbt@A6rIJU24H?RkCx z2J5vx+5Ep3_PY)2A$YWt9Sy>k$_-2N30US)WDvFK%&=K^9Ha;3JhWrd;}}Fn@B^KXr`@0cu8Z3 zVG=Inqq)Epzm>7{zwE@M4v=dNI^Mu5@qa}$`XT25WFHTA-L=FO-7@$B2+k3FMV&9H z!Ykn5ngz}x~?w>+wgUi2_FN+=T-7hW+)g!sN5n?-@p-FLA3_2<&q0 z6AE6|$$JDXt3{SfTW%1b?%!M*ks}gZhNNTzVqj0&taF|LC8c0Lv0pxR)gW927e)zF z)<6{=syS~O9$KFO)S=y`Xr1qxJFi6UfOK1PJdNZ@j^Eqa*%`4;v#?LE@#w#~Tta!Ay)t6Y zn#52)xkT?|1xp)Iey@6w;YFgodRhJ6e9&EJQQQI+e1qbQo8VmQ{wZq9Jo!$>bN@j9 z=9)avz`4sklL+p>eoV9bDhH$f#1H*%Mh#0;ZNIQ2jk(!GFV& zd5%Ru+>3F3Oe`0`%#Ov&`>o}BoVrXAd(R*1m+L;<(w8T<b$}h�jPNC@Z@bhg}N{?H&4T=oJZ|=Sm5YbTHBKs=Fr*Rc+`%a;f z&uDsy7Uhx9;&pA%LoxTxJ9mTvkGZ^pI}7O{VyWS3HI!Z#xfXdO>Ehe~MIiZ3hP_3S zSp2MK&qD{Sge84{Cx)K!ycP0tG@+Fgk$!A?>K!|s5H_}52~W{&JgW^{AX5pZelcpR zfKsLRejp=;F1TupeWxmzI?ET*G;5!@G!x4mHqJROXx{BUPrS&JX``}}ZV!CK4h!s0 zMt>$0(D(d#N}qFf#Xwc$-ON&^G^^9>8u8MJwdcx{R_nPs_+)dQA*nBwvBUDUmlZqD z!fEUA{jS(bg!KG$tMdRovi0Xen`<*f*{1Oq-%>lUfX>gleH^1z7A17O*f;k4d~;`T z(X$cKF8x_X@QXXdfDC4!%VuW^U~76l1O$U9mCQtI1@&%!ZKZoQb|@FCi^;C_n-|q3 zT)ftw!agw%I?TIe^cXvNMuR|d>>g+EIU4G0-`VUjdt+C9(H1UZ>UxAZWOtZsZs zM}%;16GFxFhx8t1IFSEoY>DTfJad=Icn#1dr%wgWt?u%QDv2u3wCP@2YFsC#Kj!{u zCeb8BzuIqBBuzx{A8<7g?@r9?5kV&GOmsI#&dptUQ$pX#-Ok${hG|@?eplE`Rm%>v z7CyOyA=w?dI!F`-bw4ROC?_wmb$@lfU~z6MZ!x@>ob=UX-M&4Jdw6MpCAQYV&`|&aQ$hA zp+}VVa+dTzaOb&_>d{VAY7p6^ryCE8mh?6lZU&(S#cmT?CjM$Le+N*`n*JOlj!ub(A7x- zcVvKDiq8szK8DpfASeLJFnqL)R%ECZF;FexF_i;e!k1tCybZ~$FtAS2b~V5-A3Z+J z@z_fNyy_rua;Xn%2uL+`K4tu2@1whx4f`y};pQr@6;A2?l!6`tjScnFf4|0M;^76= zH%+2x0)>Sen%$j%k!5V(xg0RWTz>4*f??}em73?Oq4SW4wDM1ov!G~EZI1#6D`%SC zSQ-tqcFM#P_4q>Gu*4p{i1b}?bccq@Iv*fK7Yp+wdp8x$CkV=>@1sSz{yk9UkWCyW zyxjLg9Au>iR&xoy4_Py@!pLaWdH^Xd0(zpYeP}=sn&Wl5$>dFGt_Lty&!SQmzzV|@ zQ2shG2T0~NCIaYs2+&n-x%g}3Qc66G7l`D0Ol{Awk1<&8yQYP`jHSs<^34OC&2G}d zY5OBSj|a>_s909EcS`kfb3lq?ptMBg#ky7$qXbYkPA| zAn?2-_Ah0sG(BCN=9kZzfWNqd2P2=GP1o?(a;W zj!#tw?W=KGqG$L5xzD-QHFa>|n1is`5)^<&SgaM})h95PI&_@P$uZQ$V`pL6Gk{^j ztNqAx3=&^7X&aSouem;A*Da{s`Hy8>2Ut}^6E_;?^*_geU=5m0STUk0_n9yW`sPzK z#Ww|v3LiiO(6k!e7iiYI(;AU z@Sj$YB{PW+IYm=uv^IH=tp}v&V_lt~W39<){dFkDa^GNDz)N71f;PFN1I+uYtw;PR zH*=FN1(tn#^kGIc28k_sTf2@GW6*7`Z84UK4mrs*N2TC1v~M@)3_#(3JRt4mA;e@D zMzgG}@IOS5s(&dD`&@J!&SF19`yvdu$`V1sH2?WnsE#36h^DZkvUUJPd^$0Swb8%x z4#zyH+a>NG8*Tot2kW$x%##?SY5#56!pijiJ5+=xfP;HmUSh9gZDkQS)!F zzsFAO;Q`_a+N{8k9C{}GLUNdeCMb;YcmWwi^Ecgj3 zUo`HQo_jNN3VNnwh4D=W37y9s!IhY^0#;ir*rRx-F-?-yU3FUYL_~M$9&}p5_s4YI zBL;+X2r;V(v}@0_^{I*rv$7#A>z9!#=NtA8xDNgu;Kqv zkNilS|0^{Mlm1s~-p0=Pf3XVALALGwBRyy3jA6gB{I3$79*+56 znY!`!|HGPdo0IeI_WzUmga4DY4*&m}YqT7N6KO%wL+OTf|8M1Q-zdK>eP#0Te*q{X B7_R^T literal 0 HcmV?d00001 diff --git a/src/llm_engine/openai.rs b/src/llm_engine/openai.rs index e9460e1..3dda0a1 100644 --- a/src/llm_engine/openai.rs +++ b/src/llm_engine/openai.rs @@ -89,7 +89,8 @@ impl LLMEngine for OpenAI { // print body for debugging println!("Request: {}", body); - let raw_response = ureq::post("https://api.openai.com/v1/chat/completions") + let api_base_url = std::env::var("OPENAI_BASE_URL").unwrap_or("https://api.openai.com".to_string()); + let raw_response = ureq::post(format!("{}/v1/chat/completions", api_base_url).as_str()) .set("Authorization", &format!("Bearer {}", self.api_key)) .set("Content-Type", "application/json") .send_json(&body);