From 619cdee6362d4b303159690e8762d4ada4312e86 Mon Sep 17 00:00:00 2001 From: cannorin Date: Thu, 5 Mar 2026 09:01:56 +0900 Subject: [PATCH] Refactor (7) --- bun.lockb | Bin 72536 -> 57576 bytes index.ts | 18 +++++++++--------- package.json | 2 +- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/bun.lockb b/bun.lockb index 790b4af2b5223d369133ea594aa56692a7546a40..505aed1692a26c4a2eab5b710a55c991770dc438 100755 GIT binary patch delta 8175 zcmeHMdst1`-`{)JNhgvn>Xhy`l_`oYh|`6nBgx2N5J`n}S0bE}DA#HYxr|F@47qd0 z{TegIm>DF4GRQPxGz??L41;+;-`zRYJkLDyyubH-p5I@ydOquWTWjs_W$k_1Yu`Mi z`>Q-if8q!3c&w_!gR&<(ZH> zGc&FpSD^{hv(i!%r_D&X4Le<69j;~pYNff5v5Xzlb@liKI`VH?QfgXe0>>q!=6L4B zWpYgfrGp}|`C~v4M}Clo zx`R@1rl97aZ?GQGj=4pJcbt2w{q=$cb+NQmhc{-?#{O)CVHXXzrj=`G<=i@Jt?8}Y z5iM74q&0@Oa;2@@%~sC7i+0>pk$Ywr(4_;%MZqf_F*O_~`l9~5%UmPLAgJ}(z20&m z+=4}Tgh}TjoG=>8cq_SZ)`Hc0gh?hM<{*~RBUD&r$)@)RlRQT?lT42p_fw)iy_RK~uJqalUl9Uh|9D>frVq07pgAMwhQ!L=k7 zF-x{XdWSs@2$lW}Zn)?Jr7_4A5kTTtwS`=m@5&wpgc%=#(hEx5;9}EZ!Cn1@?_JrP zzG2dLy08Tw1Jp&bORK>JE^7E*t9 zJ1|tJ_F(maVG^qz92Y|hNgB9lkvjt}O5}{*(Q>iiB1PR!a0-!oq2c~sLL3Ir5_pV>?VqTC5zzoGH4>nCF&cR^C^eC?wv{GAOnG4K>3!st-A|7@+o_)0PU0 z6Un0zahVoMo-WbI?J4P(YV?0cDWfYicA~UyDM0he0BWsNbNx0&i(QmyLb*o%CrTGw z1Tuj!qqn>|CnAkksUEDEu-(5@x$Mlb+DPZe7w;a~mbBYBxpqK?&63qVKSq=%nxC99 zVwz>)#KY$4Dc8Q+VfX05wT-v^*PeWmQod*S0Q`{P0jZx4H|UA2ZMwF~!sW#!%TB%e zX84iZ>46h|y4E=N${*IfeVv~Eu*uKa`GKup-oXopEpOLVx|E%(s7;=l=FmTO)W&^J z3+8@)_JPhUHgA|r_1t58iLcZ3l%Tkc_Q?f%AkNd*3zd z;U53IvA*fP^Su{!O2=jK;U^Z_et+(vkmxo7u4%pNpmhyY*J@ti;XN+j#+~t7)T>|m z^I=Ao+pZ|5ICqcCxbD<_z}AgbrM+_B=~!nurLe)OiCNlj+3Mb}U(b8fkH;?hG-S#A zuNE=SNSSK9x5@SUO$!5`zPjjlEWp3&MDUgmR(4u@Q#k!V?sn!!#cAu3lv|IsH-Eij z`YMYox0t4=US+>6i!kkYsU$t=YhQoSJ6$n%^z)}}x_pl`lUqMj8wlp7wq}Kv<~PgV z#Fy8m1#)*sNA|5uD@dr6y|#U}(bA(zVSICh-c?=2nTn4aZrGf^Id|NV(+x`ey9@8W zJ=wkMnB!OFrR?CXpEuP6ziW0S@ehUDXW5oX z?+AL$!F_7t*S=>p)G8p)@>*Msxe^5HU7@7Nxj zlRCsjSNk`MOZ`((slV4h=;iv2g`fU2%J|dnebtrNutH; z70(lvemBy%op(m9z9DySS6`>@mD^b37Mg6PN5EFSEb4vuamV z{uD{2{*(Ut(juTV$v0S zB&$qU^26Cn^ieE2L&=X|Rp_G`pQ+?Wva#sjW&6>OV$v)nAH(9ZluUoBA^R*#!7G{Z zOeH%4DSM`ZAIqvCO`T@QT(TAXIF^yEWU}do>>EfEm_v?|U4T@Squ?j98c4axhRk=C zf{$Ybvy{wjh9PT$6wkbKmFy;@Rk;d2f!%{toMOlZ&sOkBtZcTD1*96XUm;Cn!E==C zA*8Ky6nrv!25C(i;>uI-DXcP2$->hOnPjelPh-(@m3%s@LZ89-c}hN$jYXfu_M@N4 zr1O=0Hj6`_!;Ye##f(*mD+_U{6#Q&f4Qc93#Fek$^H@ec;>t!`kmfOm0>lNWs6fH1 zSPi7y9K^Li!56TC1&C`F;(}DjybBQ*q*a9qzKGp}RGe$5s(sY7JL1yrKD)|Yn=j=2 z6cTi4tVz1dy0sNn*VN;VY<^_AS~YM?QT4z{UiuSW4xN;9c~Qc*Q2~Av&s}-@x_0(= z1>(-3ACI=z8rnd*2QN<4cb_w1dcO}`lD2-9{F%{7zA$^qhx(TcuDTcUZ+`#s;Dn7A zB!esq_jw1cU$FDdu_2W|xX<_~IIq0l-WT7PTc z6)E{;Z0I5-znoQ~U%_6YU&*2uEBR7Zg}#jO#Y(=MjYZGY`-?5~Sb8U2gVeaxv}sdt z7+|5EUuK{q8RCRPT2@fj%`iSCE;+$-de(7ha73|uC5=~yuL|cSM{#-}g{qc~Fm+R3 zSsKLu*E)7(>0E>DnpdJOYnkj=pdEgw|7>ZL6|#(DrmBVD>E9rNm8fs2 z4UME{H_q+ER*ar>^eb%-P@^|X(&+)t05y86Bpv-;(!W^5FV#?b#hDGz+vBnpol1Oj z!+Dw5mZK-50pJJF!YcuCj($Xv0BYKWJAn@Z=;x0CG?yOda)5N&H^|Q5wI>+#7D?+- z8v4;}y4YHPJf&w^C_od|0kj}JMMJ zkPM^(X+S!V1Iz+)fjK||Fdm2n;(*D(d%##=B=9Z}MenO4z=Q)sfG~jS;S1pGjLucX z<0^m9eLxIQ1#APh13Q4tKqasR_z?IApxiG2@_|BNAy5D;0*U}SC7{icL|i}+5*kOxcv#sCojZ4xRd?ZhB}3XkJJI^q@2yr#92>4+-?p!x;_B#UFI zz$7%RM~C+5Mk=ZyWt$u%hZi!N(-s3L4Dyb`qI6L>SwIRf1DFg<1gI{<0P;owP*f4> z?9+JYQedv=jsvJ<6tEH)4Ri-w07@8DV-!H8q>@GhR85qX z4sW?0fEPd|$5v2@C5?kHNdqb|WuG#Y0nk3u?x{@hy#R_SAIJk}Yfv?20*-(QKzog< zlMB%PqkTv`K?TeQ<^gl5rW7gFUjP;Z#Q>F$HaeA>ZiG@`C9ndZ%}$&C_l@Y#&hA$y zp1UltsPpr5e7t;^cbyq)JipP#-^&|!4py~>vzLBR7rAeEGDMf}?d1&%+xWRfvN+;0 zM%ZG+#>#DxJu;i$Xh(3|V^|zv39TF${nR7jUYo^8hvV#FIbgW;z@s&xliDmjVX=e7 zEBjT4&h`gAv=(N6!NOm>UIIo~V#I#Em*>m+UpuWGfvmt{0ZWx(ul(B;Go7>+ma3h* zUvu5(_ZpW(-!{tEj^MZ&SSX6&F5RTpXX|HbE$R~&zLE&PSg`kRX1>r}#tz){5&UHAK1hg+S=A+4YrjV3FI^gcab(S0T|Ty# zm$#R~!*`1!OHc9HhG=C+c@39fN&Lj>Np#lV@mF|Rv5*4l55c|Rt7U2M|qDDd81 z*l4&{n%vmjJ2GqSM@VT};Q2?<>yBe>?1liO{*61^cSq)@{kpiT-rTqP#qb(ktkBns zZZ7TjN2BKztL+9}-rQyh@?dW4n5pKSE60evgUk(e5k)8(Tj8bgoHK-W&u?JS_!#yfaU|W1Ud<*5zw(f zO@aCW?F3W-7_6uTtU<#r0Y&{DpqPIZP_Q*;hnd9C8Nfr)93I>{0$tY?%Xb2cA%PiR z0YwAIS(d5zyM@GTODjot*+8M9oJU|1(o;aOwaq}WwRu2|fhGcl9_9=K3JvBAU`Z-{ z4fUa$%z@_sO%|l433-WWjUY#B5=2=OBNz-uTDmYv#9;U`Zh%4q6knJU8kNQqPD)P| z%(s;kh)WYCMa3ov>p_oJ`}dG^@0_%u6BcBff|boiV9~zV=p<39kiifpW%4owsf?>o zOcmt%JtftPdXmoyV;n6UB!iI}3AVts#8JZM0>$i!u}QIsv1#c*DE%&bGLvm3KItqO zGkXxCF~fUFdbu1Z7OMk_y#!0Bv4)OOK^5pKvCai3dd&zZ2A?8O9Fi6n3B3VS7x)uE zajdsVsp_QJx%Vu3R#+?gu*4Dlhs_(?lz062>cuZ|?nV{fo4#}yXZ@`&q759U{1BLzvQS8?Kz|O-b=#wHP$J2w{<$S!nLl{NW5RsMB|*Wc(uzvo9en9tugu%)8*QTF&D1d zOzh^{+uVQNK+!+;>u)?O4oH|6{#1E!c>}QssPFUUX#MS{jGXg27Pq)L33=wM!HJF! zH55bFB%c{-G(WSi{?W^i^EO=mIyGRMo$k&~eko6Ewy)fgGi!G2`J7Km0l~v7Vmjn0 zFg1x!XIEmcswquPlBG__Qpz1^?Fda=o@ER{#6DsHJy z)lh_S%TXjL8eSY@7~g)tsS_<7FU~690)bN^%QU?>O~3^J*MU@b@!~i`M0f(HN$KVQ zHv~8Xin|J27;qgirZMmJwA6Ns@9pzk2B=ZHW$7^G~f z#>2pQ1E)et?7g%cVAUD~oPxB3BG$;64AL(oECp@?S*+=+#WrIw#(})8r$RwG zoX)Lv2DnkcwP{a_+m*o>3evXyjsmG0NHxh7124{Q;C!$oHTIp%8H};OvB-?hURrU$ z;b_wy??6(tTsfOT+Mg=n(9MhW!JHHt`*CbxZNsi9kOo~ZR*D6&G4WGWhlSUhRGIj) z`dg7o5Nv>zI|2oYY->6d1*vdKb_P0iP}U~^ z*AJTI;P@!+0+q zaU2y}3CE&Fe*|#upi?DU)?S=^;JkrjQMJ?ohwUj*UQ~niAN?koLE*s3B2@7JaQ%pp zmM`Zcq&y&(3f91K;*lvAZMGve-TYX8*^$(4ew^;`G{LU0sPLQ$96CzkkYm6}+=C8Lf=2~9 zghjc)O~%25Qp^O-jdJNROhGO-W$t@>ve(9s;|k9x$vT2-MIvyLYGE{3r4D3)tskcz zglMCrWi4n(;$Y~sA|JROqz})RQv#`Blnpp2FM;a|9D|hTc(Hg+q&Lq`O9*a&{^l^H zo=_lW+O90(M9%a4ICnvbhA^oa&1)GxN40BQSYCnoV6gu-g1dgCoioA;BX$%v$PYg^sKHfq|n|^Q3R%W z5T1iCE6J7EIQS|42@lmE6et=(6@gSL5mLjc)KOVV6#{N3B^wK=04lXnn(`o*Ic&1W zo=sw$48;(D=w|Bre?hUI5WUm|v=g0>Q3b+t*6ogi1-_>)d5TL4#3KVKEW!*XNp$Wh zh6FD03@qi33|vUr09eSV+#`VE^>35~`jG&v2bM*u985uq=L5w{o?^bS3(n=_>BL<_iJn zj|~94kYfJL$iRgZ%WVZH0(JsWUoPbj07dhv09emy0A6xbGEi~?S%%J#x(&dB4V3hM zM$ynm(t40$2OmoV1rm}ADJmMJ{O>3_{;5=t6f159V7X@iy#5o4`JYSr4+*N+?N%P55l)skBk#Yc^r94tazz->p6!S}N7(o;#5nz%DHylGnsr-LJ(QsvHJxDRh zkx~^29mP;ZDO~at$6Q+~|KF!1*vaOWRzmezbM}mhiZXb7#@1_2NtCzGko|MCqM1{_Z{1evtb+ z;h=8jlgncjpL8x6WA%phXmVNO^M|?l%a5I? zdHCi^WRo)q_0khhx%2S2%bOl`f~cTwdxDNyc75mGZCCdW-^xz9rr!*k<(2-Ty7{nD zwN?3%{4ArM8;n!`c{6zJQw7E*r)4d<@R3em?2xnpzP-%DAG9o6b+$Nn zyiaiTzVK=NmyX(O+m%uIrtI_CvaOnh_5yCx?Q&sk;*-CVx^=kr{L=9|pHHwSPWs^E ztxVLs^~6f{ebqbU9&FM&JxZt9yF^r17nXFr@p$^;LB%b_&ztgF+?wi|p2rWlRB-LK z!Qk~>UAjc2-qeY_)NuPRwV}mt%%#@hy8^z#(igkPFZ<#8^!&kQy0wl2kM$A^zP{b7 zS);*Ux0kkYAH`Fej%%&@E&0mhUi5B>dncSbW$pd0r+#>sxJ+~Y*4h2Rta)ol6gclc6rXxFKZTmjxueqv^jX{sHM>Ff`IXjQ+-j{ z)loA)WJi5vN3*QzT~;`X+YVJ4o+KRIzR47>P61b=QHL!ydG;f^Y<*aK zBy~rHf9-%9LySi-lAjC1{`tOj!vMXT>7ABO%m|8kb3e0V>ZbT3GZpT!@Amxor^SFQ zp-JA6vlse5kh4xh-a7Y8lQ;V(toPjQ`owl>nWye$>wk9ndFTvsI#o0pu5?lY7oT;hKkuqeBQ@1(Rf{Nx}#!9ZI`W4`|wVc=TAt?FCw zZBvG>^~21rj{UBc-Ba49ukr2lo8blD!6)*Ur*8bb*HP()pE)mv3|>BN zPgsf7*r7XCn*61kMs@MK#&@6r@?EqamsXQ=j<0bh<>1@Vyg;7O=YD0{yn$cdzp3*` z{(ffqvn$FDMZv1vDAo8{y}V9)%yoR%nryjK5wXsDZR+mNg`uPhtn2oN^7LH^Zl5Rm z%-I++)q0No%&X_pl&=@{$nImg;-{C?M+}Y0)vnr6<9W#70k?5h#IT`< zFI{7qd&yacpOxv0y=U98_fpLAKOiyU4L>Q zXo4$*rR8peIFk8 za2a~6^UFi;`>v1YyEo2B%6P5xdFK2vZvy)9-sUwOwsKn$qO^YO&YkA5+Ikx@BWf<{ z$<;fY{_u^pvx99bWkX)gLGKN9PtFDk(^!Uhnp zz-b+IZg06&^R2c+%j*c0Nvk>x)wgfjAy+Z|K1a4w&u6{h6{K+jsl{!rm_Nf&1E#%0IF47&4J_rtx+ zd|yK!?#I`s#|K=vIkRt}NQHW$h#8W|!Z&XEVh@Y`gW=tSoj=a$6{BOn=eEa63#J;1 z?_RWd^!C-tMi2fokCT7Rv5mj-HrVy%bk^t_bcZbIj%Z+`ee$Jex;gVK=xbw5V zBL5H_4OW-E-@6|wowiKiE?4nrx>lgt?y!a)?Cy)cvR-O$`wYRC!bll$v$k*Sw*+T0J(~TkAbLXEvpe-etRN@^hDC0q^|%V+5w3|K>bh_hWCfO0@s?Eys$E+?cs-k>f!vgX-M0 zV-?0b-&%xa&3;UH!FuATH}xq?H9p?A;;_-2Vn;4M`X68Y+?Wu{^7!jw%V$uTEr56Db7w$zoahd<< z^WmJQduJQxbc*#4@jLl!T7`~jXTIgij8X2r%L0Ema_>7_Z^~IFXWayO>y{*&S9xem zDOwS8p(=Z~AlzW}>jOubJ?XzFgSp%(#i0Ji?uDyJ@`ayV~O>))=_1~Lwrl58u1`kXBj3Qft(6*mYGyr+ zh^fuE*HP3|*2RP+ws%} zJ*9;|hHVJy-`ptpYjLi6T=R8<4trN0T>J7y=$OCLBg#CQE*?*RA!l8zymcAp)=ajk z$#8$ZDCYW9PMou2{9K)fHTF&)=536>ZvT2d_r|k*Sq)pc(VlZZ7JS<`)8=Tre#XF8 zxh)4sLGHF4P9mZv&>Qky)bUHW|Hwj4CZof8(VCbZ%;C=_+z!6u|A{#>RPWm0dBOL3 zbu89;Y+}7PDIT3d}cD44EGdr1@5V&`&d3Rjm&_1I=Kz^4B{}3&&(wA;hser#_`Ehp&A(w z9Kf7RmId?4swg$`4{+JUXFQ(_idG|~;{%w}$ZOy}0v8k#z!Z~`5I)%&qec`%1DG>N zU?`uAja4K2fy*V#Fg{U^QzOE#0Oo8`4%{K&bS4Ba=MupLK8cA}Bd39zPqf1ML@z;& zWP}GW7n165K64S_3i!;$Bn9qE$T_$#C1w$PW*(Ug_hsY?+?SK?k$fg0GvL00+=hET zahS+w7LfUHUr8F^zKXaD`OMX18Qcp=6WrGjpC~@Fh^&VDTJjq1>xh3epIJ;w;J%)G zf_n)GjNvmkkTSS$B+OVoa}yZ{_fk?0_sxV8$7gOKf;hf-t9*=fSI@p_sp?)ge_r+X z{| zSE`18DLOg4L+GX?6IM%V>N4x{P9+Phgr`;(PcVSd)~b=~CL9Ny>_G_OLq$Bui0JVLEvbQ!xsDyySrBT7`GEg&|ZnQ%Pk+ zrKHn`j*z64p5pI6Bo_)x0niEDFhyN7kKX~}uQPbzPeAw`D#8GO7rGJ4;a3B&>w>zr z!5wAzC6E~uX?2roa`xyLD1PkHsN=Wf%folLXU>5*o_{|9XU`t)Q z;f^{LfGYqiE(f4-_#H(I0Iz)jEZY&_1Hd}=16cS~Fn(R&4M5>R0A^GNcmeP_1i%W> zD;@xB><9q!;Ya5F0L*_BfX3iQ=zai{9Rpy#r&s{4$0&eH#WTanv9GDKDY>*pn|Q9a zu+fBUY5;XWCjkCBq6N?ZbOhkfDfkkr$RtZvJ2D+f)#@}cIuU0seqNfPnxUNQhC~oPj^nQ$K^d0mUDS#sH;W z?jX$qumSk%))&B6z&9Mc?~r&2_zQ3cP!G5VxC?jyxDUV|6(0i*0C0ez7$XNT1279P z8&C*X16T(r2CN4VKsF!?Fd2Z+G!ZZi-~~8|6`cai0n7(10F(n_0r7wV06zeRbuHi; zpbiiQz}Nf$fGgk?;1R$F;0^Eu^Z|GP;^g?gkoE=i2VjKhqkztgY0cwsgDd0|Iku*& z8cw4ffUSVdq-Bk+Pbs9(%1r zknorZE0;G4V}@=Fy@j4agU~ayG4c)KaAWvj{fhuNSU6A^Uh@ER0dt^z*+_XoItPHV zX@IGKDF6)ENdRkrB|rqgK+XhY0MY?zfK)&V0H?Mszz%>xKOKNGF&8jX3gl-4#0%ku zvtv0R53mfd0$>lo@Yw)Z3vdRk1QY8P?0r-mVuZ zEXh%DuyY_r8}>Mb~0nl(kc&%Lg^&Z=Em!(JF0Q@=9Zyj7DA8tlcogn7-}>j8IK zHRYf|OWrm-S`b*Tkwa_9tBtw}&|Zbgri+SVdUH3uH5U8@PH+GR(fictUA~}k1y8!b zLI4uKvBW%jFF(B#8dYE&m_YB| zr}sXym=2EM9_Ud!4S|L}5kT*!hT5cF_{9VtpbULR0LnmQiLubn4M|jXy%-Gohzxze05rJLfxGELH1rV!(4Z5bAq7+F zgFy~`NP#K?v&GHnH-jgZMtA!S{okE>KTlV&w6FgfCiHp$=7?@SQq{JPRf&RH>XB&SsT zQYd%h6Seh*;R5biaziI8b>=vJ9~JUYd`2VT98|1Iff@JsBa8% zZm7E_bo_cvjFZkJb&sPV zeex~)dGw`uot|}t7c4s`JMaQyc`tHekDd#C6pkbEJkuOlc!b5A?rP@%%P@mJ)YkaP zDgLp!0*ehr-RlUFJ75)+#TbWtr|sF5>l>b zNFS`L+A+w>kndL9n!&}Dp7M?_2@v`!fI(;M-ERY_K>bR?XtlrbVfMtTfS zUY(qf5gnVvOBTRgkS^p!rwWo|QW9h(e%6aqg=y(OYf;7%CQVEh#U`cm5{2n8qKRq0 zW=c<;{If7UCRLQ4o)DW9Ez_h5Q!=RfQd32#GHLqcWFc0mMjZ(5nI(*f5sBhS`7OgR zSstk{4SYiekgtbb_6;MibFd95`O^s^UVJRi>>2+@@ApcU#w4pBv`Aho4v-+Z&*X!pzu6GUG2Jr{7daDRG^oY>`wckx51! z=N9ib<=`>jwh#zfXJcy#NjA_)zKs0UMkt3P=+~wVx!SQ_H~KM~E)q=SMG7Kggsn?y zG^|@05%}K0i_0P@M-5%u(cvs=PX!BrBfe-Ew6*}bTNzmFT=6MIj^9?QxOFa9i|I~6 h@AhN5SCrgMW~=Uz{(F%_`b=_sjTwBoOgta#_+Q6oU7-K~ diff --git a/index.ts b/index.ts index 04bca99..580c742 100644 --- a/index.ts +++ b/index.ts @@ -54,14 +54,14 @@ const replyJobPrompt = getSystemPrompt( "ユーザがあなたへのメッセージを送ってきています。あるびのちゃんとして、発言に返信してください。", ); -await using rephraseSession = new LlmSession( - model, - getSystemPrompt( - "user が与えたテキストを『ですます調』(丁寧な文体)で言い換えたものを、そのまま出力してください。", - ), -); -await rephraseSession.init(); async function rephrase(text: string) { + await using rephraseSession = new LlmSession( + model, + getSystemPrompt( + "user が与えたテキストを『ですます調』(丁寧な文体)で言い換えたものを、そのまま出力してください。", + ), + ); + await rephraseSession.init(); const res = parseResponse( grammar, await rephraseSession.prompt(JSON.stringify({ text }), { @@ -94,9 +94,9 @@ type Job = history: Note[]; }; -await using postJobSession = new LlmSession(model, postJobPrompt); -await postJobSession.init(); async function processPostJob() { + await using postJobSession = new LlmSession(model, postJobPrompt); + await postJobSession.init(); const notes = await getNotes(10, 0, 5); const input = notes.map(formatNote).join("\n"); const text = parseResponse( diff --git a/package.json b/package.json index ac464d6..7addf26 100644 --- a/package.json +++ b/package.json @@ -17,7 +17,7 @@ }, "dependencies": { "misskey-js": "^2025.12.2", - "node-llama-cpp": "^3.16.2", + "node-llama-cpp": "^3.17.1", "openai": "5.0.0-alpha.0", "reconnecting-websocket": "^4.4.0" },