orkajs 1.0.0

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.
Files changed (896) hide show
  1. package/CHANGELOG.md +120 -0
  2. package/LICENSE +21 -0
  3. package/README.md +83 -0
  4. package/dist/adapters/anthropic.cjs +12 -0
  5. package/dist/adapters/anthropic.cjs.map +1 -0
  6. package/dist/adapters/anthropic.d.cts +22 -0
  7. package/dist/adapters/anthropic.d.ts +22 -0
  8. package/dist/adapters/anthropic.js +3 -0
  9. package/dist/adapters/anthropic.js.map +1 -0
  10. package/dist/adapters/chroma.cjs +12 -0
  11. package/dist/adapters/chroma.cjs.map +1 -0
  12. package/dist/adapters/chroma.d.cts +21 -0
  13. package/dist/adapters/chroma.d.ts +21 -0
  14. package/dist/adapters/chroma.js +3 -0
  15. package/dist/adapters/chroma.js.map +1 -0
  16. package/dist/adapters/memory.cjs +12 -0
  17. package/dist/adapters/memory.cjs.map +1 -0
  18. package/dist/adapters/memory.d.cts +21 -0
  19. package/dist/adapters/memory.d.ts +21 -0
  20. package/dist/adapters/memory.js +3 -0
  21. package/dist/adapters/memory.js.map +1 -0
  22. package/dist/adapters/mistral.cjs +12 -0
  23. package/dist/adapters/mistral.cjs.map +1 -0
  24. package/dist/adapters/mistral.d.cts +23 -0
  25. package/dist/adapters/mistral.d.ts +23 -0
  26. package/dist/adapters/mistral.js +3 -0
  27. package/dist/adapters/mistral.js.map +1 -0
  28. package/dist/adapters/ollama.cjs +12 -0
  29. package/dist/adapters/ollama.cjs.map +1 -0
  30. package/dist/adapters/ollama.d.cts +20 -0
  31. package/dist/adapters/ollama.d.ts +20 -0
  32. package/dist/adapters/ollama.js +3 -0
  33. package/dist/adapters/ollama.js.map +1 -0
  34. package/dist/adapters/openai.cjs +12 -0
  35. package/dist/adapters/openai.cjs.map +1 -0
  36. package/dist/adapters/openai.d.cts +24 -0
  37. package/dist/adapters/openai.d.ts +24 -0
  38. package/dist/adapters/openai.js +3 -0
  39. package/dist/adapters/openai.js.map +1 -0
  40. package/dist/adapters/pinecone.cjs +12 -0
  41. package/dist/adapters/pinecone.cjs.map +1 -0
  42. package/dist/adapters/pinecone.d.cts +20 -0
  43. package/dist/adapters/pinecone.d.ts +20 -0
  44. package/dist/adapters/pinecone.js +3 -0
  45. package/dist/adapters/pinecone.js.map +1 -0
  46. package/dist/adapters/qdrant.cjs +12 -0
  47. package/dist/adapters/qdrant.cjs.map +1 -0
  48. package/dist/adapters/qdrant.d.cts +20 -0
  49. package/dist/adapters/qdrant.d.ts +20 -0
  50. package/dist/adapters/qdrant.js +3 -0
  51. package/dist/adapters/qdrant.js.map +1 -0
  52. package/dist/agent/index.cjs +47 -0
  53. package/dist/agent/index.cjs.map +1 -0
  54. package/dist/agent/index.d.cts +12 -0
  55. package/dist/agent/index.d.ts +12 -0
  56. package/dist/agent/index.js +10 -0
  57. package/dist/agent/index.js.map +1 -0
  58. package/dist/agent/openai-functions.cjs +13 -0
  59. package/dist/agent/openai-functions.cjs.map +1 -0
  60. package/dist/agent/openai-functions.d.cts +17 -0
  61. package/dist/agent/openai-functions.d.ts +17 -0
  62. package/dist/agent/openai-functions.js +4 -0
  63. package/dist/agent/openai-functions.js.map +1 -0
  64. package/dist/agent/plan-and-execute.cjs +12 -0
  65. package/dist/agent/plan-and-execute.cjs.map +1 -0
  66. package/dist/agent/plan-and-execute.d.cts +20 -0
  67. package/dist/agent/plan-and-execute.d.ts +20 -0
  68. package/dist/agent/plan-and-execute.js +3 -0
  69. package/dist/agent/plan-and-execute.js.map +1 -0
  70. package/dist/agent/react.cjs +13 -0
  71. package/dist/agent/react.cjs.map +1 -0
  72. package/dist/agent/react.d.cts +16 -0
  73. package/dist/agent/react.d.ts +16 -0
  74. package/dist/agent/react.js +4 -0
  75. package/dist/agent/react.js.map +1 -0
  76. package/dist/agent/structured-chat.cjs +13 -0
  77. package/dist/agent/structured-chat.cjs.map +1 -0
  78. package/dist/agent/structured-chat.d.cts +16 -0
  79. package/dist/agent/structured-chat.d.ts +16 -0
  80. package/dist/agent/structured-chat.js +4 -0
  81. package/dist/agent/structured-chat.js.map +1 -0
  82. package/dist/agent/toolkits/csv.cjs +12 -0
  83. package/dist/agent/toolkits/csv.cjs.map +1 -0
  84. package/dist/agent/toolkits/csv.d.cts +22 -0
  85. package/dist/agent/toolkits/csv.d.ts +22 -0
  86. package/dist/agent/toolkits/csv.js +3 -0
  87. package/dist/agent/toolkits/csv.js.map +1 -0
  88. package/dist/agent/toolkits/sql.cjs +12 -0
  89. package/dist/agent/toolkits/sql.cjs.map +1 -0
  90. package/dist/agent/toolkits/sql.d.cts +23 -0
  91. package/dist/agent/toolkits/sql.d.ts +23 -0
  92. package/dist/agent/toolkits/sql.js +3 -0
  93. package/dist/agent/toolkits/sql.js.map +1 -0
  94. package/dist/agent-CEhm_T9r.d.cts +21 -0
  95. package/dist/agent-w0NX6-Li.d.ts +21 -0
  96. package/dist/base-agent-BlAOno3g.d.cts +52 -0
  97. package/dist/base-agent-T9yoshsJ.d.ts +52 -0
  98. package/dist/cache/cached-embeddings.cjs +12 -0
  99. package/dist/cache/cached-embeddings.cjs.map +1 -0
  100. package/dist/cache/cached-embeddings.d.cts +15 -0
  101. package/dist/cache/cached-embeddings.d.ts +15 -0
  102. package/dist/cache/cached-embeddings.js +3 -0
  103. package/dist/cache/cached-embeddings.js.map +1 -0
  104. package/dist/cache/cached-llm.cjs +12 -0
  105. package/dist/cache/cached-llm.cjs.map +1 -0
  106. package/dist/cache/cached-llm.d.cts +18 -0
  107. package/dist/cache/cached-llm.d.ts +18 -0
  108. package/dist/cache/cached-llm.js +3 -0
  109. package/dist/cache/cached-llm.js.map +1 -0
  110. package/dist/cache/index.cjs +27 -0
  111. package/dist/cache/index.cjs.map +1 -0
  112. package/dist/cache/index.d.cts +6 -0
  113. package/dist/cache/index.d.ts +6 -0
  114. package/dist/cache/index.js +6 -0
  115. package/dist/cache/index.js.map +1 -0
  116. package/dist/cache/memory-cache.cjs +12 -0
  117. package/dist/cache/memory-cache.cjs.map +1 -0
  118. package/dist/cache/memory-cache.d.cts +21 -0
  119. package/dist/cache/memory-cache.d.ts +21 -0
  120. package/dist/cache/memory-cache.js +3 -0
  121. package/dist/cache/memory-cache.js.map +1 -0
  122. package/dist/cache/redis-cache.cjs +12 -0
  123. package/dist/cache/redis-cache.cjs.map +1 -0
  124. package/dist/cache/redis-cache.d.cts +24 -0
  125. package/dist/cache/redis-cache.d.ts +24 -0
  126. package/dist/cache/redis-cache.js +3 -0
  127. package/dist/cache/redis-cache.js.map +1 -0
  128. package/dist/chains/conversational-retrieval.cjs +12 -0
  129. package/dist/chains/conversational-retrieval.cjs.map +1 -0
  130. package/dist/chains/conversational-retrieval.d.cts +21 -0
  131. package/dist/chains/conversational-retrieval.d.ts +21 -0
  132. package/dist/chains/conversational-retrieval.js +3 -0
  133. package/dist/chains/conversational-retrieval.js.map +1 -0
  134. package/dist/chains/index.cjs +27 -0
  135. package/dist/chains/index.cjs.map +1 -0
  136. package/dist/chains/index.d.cts +7 -0
  137. package/dist/chains/index.d.ts +7 -0
  138. package/dist/chains/index.js +6 -0
  139. package/dist/chains/index.js.map +1 -0
  140. package/dist/chains/qa.cjs +12 -0
  141. package/dist/chains/qa.cjs.map +1 -0
  142. package/dist/chains/qa.d.cts +20 -0
  143. package/dist/chains/qa.d.ts +20 -0
  144. package/dist/chains/qa.js +3 -0
  145. package/dist/chains/qa.js.map +1 -0
  146. package/dist/chains/retrieval-qa.cjs +12 -0
  147. package/dist/chains/retrieval-qa.cjs.map +1 -0
  148. package/dist/chains/retrieval-qa.d.cts +16 -0
  149. package/dist/chains/retrieval-qa.d.ts +16 -0
  150. package/dist/chains/retrieval-qa.js +3 -0
  151. package/dist/chains/retrieval-qa.js.map +1 -0
  152. package/dist/chains/summarization.cjs +12 -0
  153. package/dist/chains/summarization.cjs.map +1 -0
  154. package/dist/chains/summarization.d.cts +20 -0
  155. package/dist/chains/summarization.d.ts +20 -0
  156. package/dist/chains/summarization.js +3 -0
  157. package/dist/chains/summarization.js.map +1 -0
  158. package/dist/chunk-2UTLSB2D.cjs +84 -0
  159. package/dist/chunk-2UTLSB2D.cjs.map +1 -0
  160. package/dist/chunk-2UTXL4UI.cjs +134 -0
  161. package/dist/chunk-2UTXL4UI.cjs.map +1 -0
  162. package/dist/chunk-37ZKQRCK.js +184 -0
  163. package/dist/chunk-37ZKQRCK.js.map +1 -0
  164. package/dist/chunk-3A7BCCAI.cjs +129 -0
  165. package/dist/chunk-3A7BCCAI.cjs.map +1 -0
  166. package/dist/chunk-3FCEQZKB.cjs +76 -0
  167. package/dist/chunk-3FCEQZKB.cjs.map +1 -0
  168. package/dist/chunk-3NN43ENJ.cjs +65 -0
  169. package/dist/chunk-3NN43ENJ.cjs.map +1 -0
  170. package/dist/chunk-3XELDGJA.js +137 -0
  171. package/dist/chunk-3XELDGJA.js.map +1 -0
  172. package/dist/chunk-4CLTJN6H.js +90 -0
  173. package/dist/chunk-4CLTJN6H.js.map +1 -0
  174. package/dist/chunk-4EBSDFBS.js +65 -0
  175. package/dist/chunk-4EBSDFBS.js.map +1 -0
  176. package/dist/chunk-4IT37CSA.js +54 -0
  177. package/dist/chunk-4IT37CSA.js.map +1 -0
  178. package/dist/chunk-4NMX7YMQ.cjs +185 -0
  179. package/dist/chunk-4NMX7YMQ.cjs.map +1 -0
  180. package/dist/chunk-4SX4Q35P.js +106 -0
  181. package/dist/chunk-4SX4Q35P.js.map +1 -0
  182. package/dist/chunk-4VMVFWFG.js +158 -0
  183. package/dist/chunk-4VMVFWFG.js.map +1 -0
  184. package/dist/chunk-5DZJHA4Q.cjs +139 -0
  185. package/dist/chunk-5DZJHA4Q.cjs.map +1 -0
  186. package/dist/chunk-5ETYLWDI.js +96 -0
  187. package/dist/chunk-5ETYLWDI.js.map +1 -0
  188. package/dist/chunk-5GUZ2DXX.cjs +77 -0
  189. package/dist/chunk-5GUZ2DXX.cjs.map +1 -0
  190. package/dist/chunk-5HKDN5OM.js +114 -0
  191. package/dist/chunk-5HKDN5OM.js.map +1 -0
  192. package/dist/chunk-5KZT57M6.js +61 -0
  193. package/dist/chunk-5KZT57M6.js.map +1 -0
  194. package/dist/chunk-5PY2DAI6.cjs +199 -0
  195. package/dist/chunk-5PY2DAI6.cjs.map +1 -0
  196. package/dist/chunk-63MDLTE6.cjs +53 -0
  197. package/dist/chunk-63MDLTE6.cjs.map +1 -0
  198. package/dist/chunk-6N2TFYDF.cjs +143 -0
  199. package/dist/chunk-6N2TFYDF.cjs.map +1 -0
  200. package/dist/chunk-6OFW3LCS.js +124 -0
  201. package/dist/chunk-6OFW3LCS.js.map +1 -0
  202. package/dist/chunk-7ADDQ53B.js +88 -0
  203. package/dist/chunk-7ADDQ53B.js.map +1 -0
  204. package/dist/chunk-7CS4NTB4.cjs +118 -0
  205. package/dist/chunk-7CS4NTB4.cjs.map +1 -0
  206. package/dist/chunk-7MCLKMJP.cjs +57 -0
  207. package/dist/chunk-7MCLKMJP.cjs.map +1 -0
  208. package/dist/chunk-7NVGLURS.js +141 -0
  209. package/dist/chunk-7NVGLURS.js.map +1 -0
  210. package/dist/chunk-AD2GLQK7.js +34 -0
  211. package/dist/chunk-AD2GLQK7.js.map +1 -0
  212. package/dist/chunk-BBUZ6P5S.cjs +16 -0
  213. package/dist/chunk-BBUZ6P5S.cjs.map +1 -0
  214. package/dist/chunk-BDIK4SAE.cjs +65 -0
  215. package/dist/chunk-BDIK4SAE.cjs.map +1 -0
  216. package/dist/chunk-BFEKP6EW.js +104 -0
  217. package/dist/chunk-BFEKP6EW.js.map +1 -0
  218. package/dist/chunk-BSMRVGTA.js +110 -0
  219. package/dist/chunk-BSMRVGTA.js.map +1 -0
  220. package/dist/chunk-BYWWYIMI.js +132 -0
  221. package/dist/chunk-BYWWYIMI.js.map +1 -0
  222. package/dist/chunk-CFJ5UTGH.js +147 -0
  223. package/dist/chunk-CFJ5UTGH.js.map +1 -0
  224. package/dist/chunk-DDLPO4YY.cjs +30 -0
  225. package/dist/chunk-DDLPO4YY.cjs.map +1 -0
  226. package/dist/chunk-DI2UCZBJ.js +195 -0
  227. package/dist/chunk-DI2UCZBJ.js.map +1 -0
  228. package/dist/chunk-DQKAPJQH.cjs +57 -0
  229. package/dist/chunk-DQKAPJQH.cjs.map +1 -0
  230. package/dist/chunk-DSOJ45F4.js +53 -0
  231. package/dist/chunk-DSOJ45F4.js.map +1 -0
  232. package/dist/chunk-DUN3CUY5.cjs +105 -0
  233. package/dist/chunk-DUN3CUY5.cjs.map +1 -0
  234. package/dist/chunk-DWFNM3KU.js +204 -0
  235. package/dist/chunk-DWFNM3KU.js.map +1 -0
  236. package/dist/chunk-DXJ5DNZP.cjs +58 -0
  237. package/dist/chunk-DXJ5DNZP.cjs.map +1 -0
  238. package/dist/chunk-E4VE4C7Q.js +63 -0
  239. package/dist/chunk-E4VE4C7Q.js.map +1 -0
  240. package/dist/chunk-EAMPIWJ6.js +122 -0
  241. package/dist/chunk-EAMPIWJ6.js.map +1 -0
  242. package/dist/chunk-EDDKTQDL.js +56 -0
  243. package/dist/chunk-EDDKTQDL.js.map +1 -0
  244. package/dist/chunk-EEZO2BKZ.cjs +29 -0
  245. package/dist/chunk-EEZO2BKZ.cjs.map +1 -0
  246. package/dist/chunk-EHRXFND7.js +146 -0
  247. package/dist/chunk-EHRXFND7.js.map +1 -0
  248. package/dist/chunk-EIOBOUO4.js +33 -0
  249. package/dist/chunk-EIOBOUO4.js.map +1 -0
  250. package/dist/chunk-ELOJDXHJ.js +210 -0
  251. package/dist/chunk-ELOJDXHJ.js.map +1 -0
  252. package/dist/chunk-EMZEOYAV.js +93 -0
  253. package/dist/chunk-EMZEOYAV.js.map +1 -0
  254. package/dist/chunk-EP2AK6AD.cjs +61 -0
  255. package/dist/chunk-EP2AK6AD.cjs.map +1 -0
  256. package/dist/chunk-ETDWZZ63.cjs +72 -0
  257. package/dist/chunk-ETDWZZ63.cjs.map +1 -0
  258. package/dist/chunk-EUBPWXYT.cjs +35 -0
  259. package/dist/chunk-EUBPWXYT.cjs.map +1 -0
  260. package/dist/chunk-EZPMQMSN.js +67 -0
  261. package/dist/chunk-EZPMQMSN.js.map +1 -0
  262. package/dist/chunk-F2MR5MS7.cjs +63 -0
  263. package/dist/chunk-F2MR5MS7.cjs.map +1 -0
  264. package/dist/chunk-FLXIGY5M.cjs +91 -0
  265. package/dist/chunk-FLXIGY5M.cjs.map +1 -0
  266. package/dist/chunk-G5C7KNJX.cjs +108 -0
  267. package/dist/chunk-G5C7KNJX.cjs.map +1 -0
  268. package/dist/chunk-GBHG2LY2.js +139 -0
  269. package/dist/chunk-GBHG2LY2.js.map +1 -0
  270. package/dist/chunk-GDCFS2XB.js +75 -0
  271. package/dist/chunk-GDCFS2XB.js.map +1 -0
  272. package/dist/chunk-GGEFJM2I.cjs +75 -0
  273. package/dist/chunk-GGEFJM2I.cjs.map +1 -0
  274. package/dist/chunk-GQ362USF.js +103 -0
  275. package/dist/chunk-GQ362USF.js.map +1 -0
  276. package/dist/chunk-GR7SLZJJ.cjs +59 -0
  277. package/dist/chunk-GR7SLZJJ.cjs.map +1 -0
  278. package/dist/chunk-GZQAPKRD.js +105 -0
  279. package/dist/chunk-GZQAPKRD.js.map +1 -0
  280. package/dist/chunk-H7RWKHQR.js +70 -0
  281. package/dist/chunk-H7RWKHQR.js.map +1 -0
  282. package/dist/chunk-HDOI5I46.cjs +107 -0
  283. package/dist/chunk-HDOI5I46.cjs.map +1 -0
  284. package/dist/chunk-HK6VWJ6T.js +109 -0
  285. package/dist/chunk-HK6VWJ6T.js.map +1 -0
  286. package/dist/chunk-HW4O3SWN.cjs +124 -0
  287. package/dist/chunk-HW4O3SWN.cjs.map +1 -0
  288. package/dist/chunk-ICGZILUW.js +24 -0
  289. package/dist/chunk-ICGZILUW.js.map +1 -0
  290. package/dist/chunk-IFWFYVCZ.js +63 -0
  291. package/dist/chunk-IFWFYVCZ.js.map +1 -0
  292. package/dist/chunk-IKNCIY5E.js +70 -0
  293. package/dist/chunk-IKNCIY5E.js.map +1 -0
  294. package/dist/chunk-JCUAZYXS.cjs +111 -0
  295. package/dist/chunk-JCUAZYXS.cjs.map +1 -0
  296. package/dist/chunk-JOLXQZLP.cjs +64 -0
  297. package/dist/chunk-JOLXQZLP.cjs.map +1 -0
  298. package/dist/chunk-JRNGDZZB.js +117 -0
  299. package/dist/chunk-JRNGDZZB.js.map +1 -0
  300. package/dist/chunk-K54JGTPQ.js +86 -0
  301. package/dist/chunk-K54JGTPQ.js.map +1 -0
  302. package/dist/chunk-K56H7CX7.js +199 -0
  303. package/dist/chunk-K56H7CX7.js.map +1 -0
  304. package/dist/chunk-KEUY45KU.cjs +225 -0
  305. package/dist/chunk-KEUY45KU.cjs.map +1 -0
  306. package/dist/chunk-KFPQL35S.cjs +211 -0
  307. package/dist/chunk-KFPQL35S.cjs.map +1 -0
  308. package/dist/chunk-KJCF6HNO.js +83 -0
  309. package/dist/chunk-KJCF6HNO.js.map +1 -0
  310. package/dist/chunk-KXVNH7ZX.cjs +149 -0
  311. package/dist/chunk-KXVNH7ZX.cjs.map +1 -0
  312. package/dist/chunk-L2VBPZTO.js +58 -0
  313. package/dist/chunk-L2VBPZTO.js.map +1 -0
  314. package/dist/chunk-LBU7ZGOB.cjs +160 -0
  315. package/dist/chunk-LBU7ZGOB.cjs.map +1 -0
  316. package/dist/chunk-LDF6ZMRA.js +72 -0
  317. package/dist/chunk-LDF6ZMRA.js.map +1 -0
  318. package/dist/chunk-LGJVBZ7V.js +59 -0
  319. package/dist/chunk-LGJVBZ7V.js.map +1 -0
  320. package/dist/chunk-M7MVFPKB.cjs +201 -0
  321. package/dist/chunk-M7MVFPKB.cjs.map +1 -0
  322. package/dist/chunk-MEX4HRX3.js +183 -0
  323. package/dist/chunk-MEX4HRX3.js.map +1 -0
  324. package/dist/chunk-MNBS3X7K.js +33 -0
  325. package/dist/chunk-MNBS3X7K.js.map +1 -0
  326. package/dist/chunk-MO6VDGU4.js +55 -0
  327. package/dist/chunk-MO6VDGU4.js.map +1 -0
  328. package/dist/chunk-MTKBI5ZE.js +130 -0
  329. package/dist/chunk-MTKBI5ZE.js.map +1 -0
  330. package/dist/chunk-MZOKIILC.cjs +98 -0
  331. package/dist/chunk-MZOKIILC.cjs.map +1 -0
  332. package/dist/chunk-N5YD7SQI.cjs +60 -0
  333. package/dist/chunk-N5YD7SQI.cjs.map +1 -0
  334. package/dist/chunk-NDVI6RHN.js +44 -0
  335. package/dist/chunk-NDVI6RHN.js.map +1 -0
  336. package/dist/chunk-NGNRG7HH.js +74 -0
  337. package/dist/chunk-NGNRG7HH.js.map +1 -0
  338. package/dist/chunk-NWRGL5BX.cjs +105 -0
  339. package/dist/chunk-NWRGL5BX.cjs.map +1 -0
  340. package/dist/chunk-NWWV35EG.cjs +74 -0
  341. package/dist/chunk-NWWV35EG.cjs.map +1 -0
  342. package/dist/chunk-NXJHLGFP.js +103 -0
  343. package/dist/chunk-NXJHLGFP.js.map +1 -0
  344. package/dist/chunk-O6HAPSSM.cjs +182 -0
  345. package/dist/chunk-O6HAPSSM.cjs.map +1 -0
  346. package/dist/chunk-OBO2U2ZZ.js +180 -0
  347. package/dist/chunk-OBO2U2ZZ.js.map +1 -0
  348. package/dist/chunk-P5TZEGVM.js +51 -0
  349. package/dist/chunk-P5TZEGVM.js.map +1 -0
  350. package/dist/chunk-PACJCRH6.cjs +36 -0
  351. package/dist/chunk-PACJCRH6.cjs.map +1 -0
  352. package/dist/chunk-Q4UAHOZ4.cjs +94 -0
  353. package/dist/chunk-Q4UAHOZ4.cjs.map +1 -0
  354. package/dist/chunk-QBAICRFT.cjs +69 -0
  355. package/dist/chunk-QBAICRFT.cjs.map +1 -0
  356. package/dist/chunk-QKPJHKLW.cjs +106 -0
  357. package/dist/chunk-QKPJHKLW.cjs.map +1 -0
  358. package/dist/chunk-QPL7SRL7.js +55 -0
  359. package/dist/chunk-QPL7SRL7.js.map +1 -0
  360. package/dist/chunk-QQAP3IF5.js +122 -0
  361. package/dist/chunk-QQAP3IF5.js.map +1 -0
  362. package/dist/chunk-RDA76ELY.cjs +116 -0
  363. package/dist/chunk-RDA76ELY.cjs.map +1 -0
  364. package/dist/chunk-RUBOHBL2.cjs +55 -0
  365. package/dist/chunk-RUBOHBL2.cjs.map +1 -0
  366. package/dist/chunk-RY7UFBIL.js +89 -0
  367. package/dist/chunk-RY7UFBIL.js.map +1 -0
  368. package/dist/chunk-S5BTSY2T.cjs +132 -0
  369. package/dist/chunk-S5BTSY2T.cjs.map +1 -0
  370. package/dist/chunk-SNXMGG75.cjs +124 -0
  371. package/dist/chunk-SNXMGG75.cjs.map +1 -0
  372. package/dist/chunk-STW4N4DQ.cjs +73 -0
  373. package/dist/chunk-STW4N4DQ.cjs.map +1 -0
  374. package/dist/chunk-T3WBONBO.js +14 -0
  375. package/dist/chunk-T3WBONBO.js.map +1 -0
  376. package/dist/chunk-TKZY4TPA.js +77 -0
  377. package/dist/chunk-TKZY4TPA.js.map +1 -0
  378. package/dist/chunk-TLJKOZ4E.cjs +127 -0
  379. package/dist/chunk-TLJKOZ4E.cjs.map +1 -0
  380. package/dist/chunk-TMWVWAPX.js +83 -0
  381. package/dist/chunk-TMWVWAPX.js.map +1 -0
  382. package/dist/chunk-TR3GHYQX.js +129 -0
  383. package/dist/chunk-TR3GHYQX.js.map +1 -0
  384. package/dist/chunk-UD4MKZJV.cjs +95 -0
  385. package/dist/chunk-UD4MKZJV.cjs.map +1 -0
  386. package/dist/chunk-UFPB3XV6.cjs +46 -0
  387. package/dist/chunk-UFPB3XV6.cjs.map +1 -0
  388. package/dist/chunk-UIYOWY5S.js +222 -0
  389. package/dist/chunk-UIYOWY5S.js.map +1 -0
  390. package/dist/chunk-UJLSWZZJ.js +127 -0
  391. package/dist/chunk-UJLSWZZJ.js.map +1 -0
  392. package/dist/chunk-UM2SW3BM.js +73 -0
  393. package/dist/chunk-UM2SW3BM.js.map +1 -0
  394. package/dist/chunk-UVMJ5QSD.js +125 -0
  395. package/dist/chunk-UVMJ5QSD.js.map +1 -0
  396. package/dist/chunk-VN37YLPA.cjs +112 -0
  397. package/dist/chunk-VN37YLPA.cjs.map +1 -0
  398. package/dist/chunk-WBY26NUR.js +57 -0
  399. package/dist/chunk-WBY26NUR.js.map +1 -0
  400. package/dist/chunk-WCA6OGSB.cjs +133 -0
  401. package/dist/chunk-WCA6OGSB.cjs.map +1 -0
  402. package/dist/chunk-WJKJ3FQH.cjs +26 -0
  403. package/dist/chunk-WJKJ3FQH.cjs.map +1 -0
  404. package/dist/chunk-WS6ZI7WT.cjs +119 -0
  405. package/dist/chunk-WS6ZI7WT.cjs.map +1 -0
  406. package/dist/chunk-WU7PHQZ2.cjs +90 -0
  407. package/dist/chunk-WU7PHQZ2.cjs.map +1 -0
  408. package/dist/chunk-XAKPLGNG.cjs +197 -0
  409. package/dist/chunk-XAKPLGNG.cjs.map +1 -0
  410. package/dist/chunk-XD4CTIN2.cjs +131 -0
  411. package/dist/chunk-XD4CTIN2.cjs.map +1 -0
  412. package/dist/chunk-XENO7X2J.js +197 -0
  413. package/dist/chunk-XENO7X2J.js.map +1 -0
  414. package/dist/chunk-XJBJFFY4.js +79 -0
  415. package/dist/chunk-XJBJFFY4.js.map +1 -0
  416. package/dist/chunk-XN4NV5XR.cjs +79 -0
  417. package/dist/chunk-XN4NV5XR.cjs.map +1 -0
  418. package/dist/chunk-XPMSMFRX.cjs +74 -0
  419. package/dist/chunk-XPMSMFRX.cjs.map +1 -0
  420. package/dist/chunk-XRVLGLR3.cjs +148 -0
  421. package/dist/chunk-XRVLGLR3.cjs.map +1 -0
  422. package/dist/chunk-XZEBNX2T.cjs +88 -0
  423. package/dist/chunk-XZEBNX2T.cjs.map +1 -0
  424. package/dist/chunk-XZHU4DL6.js +28 -0
  425. package/dist/chunk-XZHU4DL6.js.map +1 -0
  426. package/dist/chunk-Y2Z5KXY4.cjs +85 -0
  427. package/dist/chunk-Y2Z5KXY4.cjs.map +1 -0
  428. package/dist/chunk-Y5EM3P55.cjs +148 -0
  429. package/dist/chunk-Y5EM3P55.cjs.map +1 -0
  430. package/dist/chunk-Y5EZRC45.js +82 -0
  431. package/dist/chunk-Y5EZRC45.js.map +1 -0
  432. package/dist/chunk-YHPGD3QE.cjs +141 -0
  433. package/dist/chunk-YHPGD3QE.cjs.map +1 -0
  434. package/dist/chunk-YHXXZIW5.js +62 -0
  435. package/dist/chunk-YHXXZIW5.js.map +1 -0
  436. package/dist/chunk-YK33JS36.cjs +56 -0
  437. package/dist/chunk-YK33JS36.cjs.map +1 -0
  438. package/dist/chunk-YORGHHHZ.cjs +85 -0
  439. package/dist/chunk-YORGHHHZ.cjs.map +1 -0
  440. package/dist/chunk-YQZXK74D.js +27 -0
  441. package/dist/chunk-YQZXK74D.js.map +1 -0
  442. package/dist/chunk-YTFRKPLP.cjs +186 -0
  443. package/dist/chunk-YTFRKPLP.cjs.map +1 -0
  444. package/dist/chunk-Z3PDDIE6.cjs +81 -0
  445. package/dist/chunk-Z3PDDIE6.cjs.map +1 -0
  446. package/dist/chunk-Z67QS23K.js +116 -0
  447. package/dist/chunk-Z67QS23K.js.map +1 -0
  448. package/dist/chunk-ZB3MX53N.js +146 -0
  449. package/dist/chunk-ZB3MX53N.js.map +1 -0
  450. package/dist/chunk-ZBKMTCXW.js +57 -0
  451. package/dist/chunk-ZBKMTCXW.js.map +1 -0
  452. package/dist/chunk-ZCYDKKG3.js +43 -0
  453. package/dist/chunk-ZCYDKKG3.js.map +1 -0
  454. package/dist/chunk-ZEVZV5JA.cjs +212 -0
  455. package/dist/chunk-ZEVZV5JA.cjs.map +1 -0
  456. package/dist/chunk-ZPGQ5AP3.cjs +35 -0
  457. package/dist/chunk-ZPGQ5AP3.cjs.map +1 -0
  458. package/dist/chunk-ZSLSLTIG.cjs +59 -0
  459. package/dist/chunk-ZSLSLTIG.cjs.map +1 -0
  460. package/dist/chunk-ZTWDX2E4.cjs +45 -0
  461. package/dist/chunk-ZTWDX2E4.cjs.map +1 -0
  462. package/dist/core/chunker.cjs +16 -0
  463. package/dist/core/chunker.cjs.map +1 -0
  464. package/dist/core/chunker.d.cts +11 -0
  465. package/dist/core/chunker.d.ts +11 -0
  466. package/dist/core/chunker.js +3 -0
  467. package/dist/core/chunker.js.map +1 -0
  468. package/dist/core/knowledge.cjs +14 -0
  469. package/dist/core/knowledge.cjs.map +1 -0
  470. package/dist/core/knowledge.d.cts +30 -0
  471. package/dist/core/knowledge.d.ts +30 -0
  472. package/dist/core/knowledge.js +5 -0
  473. package/dist/core/knowledge.js.map +1 -0
  474. package/dist/core/orka.cjs +30 -0
  475. package/dist/core/orka.cjs.map +1 -0
  476. package/dist/core/orka.d.cts +17 -0
  477. package/dist/core/orka.d.ts +17 -0
  478. package/dist/core/orka.js +17 -0
  479. package/dist/core/orka.js.map +1 -0
  480. package/dist/errors/index.cjs +75 -0
  481. package/dist/errors/index.cjs.map +1 -0
  482. package/dist/errors/index.d.cts +38 -0
  483. package/dist/errors/index.d.ts +38 -0
  484. package/dist/errors/index.js +72 -0
  485. package/dist/errors/index.js.map +1 -0
  486. package/dist/evaluation/assertions.cjs +40 -0
  487. package/dist/evaluation/assertions.cjs.map +1 -0
  488. package/dist/evaluation/assertions.d.cts +29 -0
  489. package/dist/evaluation/assertions.d.ts +29 -0
  490. package/dist/evaluation/assertions.js +3 -0
  491. package/dist/evaluation/assertions.js.map +1 -0
  492. package/dist/evaluation/evaluator.cjs +13 -0
  493. package/dist/evaluation/evaluator.cjs.map +1 -0
  494. package/dist/evaluation/evaluator.d.cts +17 -0
  495. package/dist/evaluation/evaluator.d.ts +17 -0
  496. package/dist/evaluation/evaluator.js +4 -0
  497. package/dist/evaluation/evaluator.js.map +1 -0
  498. package/dist/evaluation/index.cjs +17 -0
  499. package/dist/evaluation/index.cjs.map +1 -0
  500. package/dist/evaluation/index.d.cts +17 -0
  501. package/dist/evaluation/index.d.ts +17 -0
  502. package/dist/evaluation/index.js +4 -0
  503. package/dist/evaluation/index.js.map +1 -0
  504. package/dist/evaluation/metrics.cjs +12 -0
  505. package/dist/evaluation/metrics.cjs.map +1 -0
  506. package/dist/evaluation/metrics.d.cts +47 -0
  507. package/dist/evaluation/metrics.d.ts +47 -0
  508. package/dist/evaluation/metrics.js +3 -0
  509. package/dist/evaluation/metrics.js.map +1 -0
  510. package/dist/evaluation/reporters.cjs +20 -0
  511. package/dist/evaluation/reporters.cjs.map +1 -0
  512. package/dist/evaluation/reporters.d.cts +50 -0
  513. package/dist/evaluation/reporters.d.ts +50 -0
  514. package/dist/evaluation/reporters.js +3 -0
  515. package/dist/evaluation/reporters.js.map +1 -0
  516. package/dist/evaluation/test-runner.cjs +14 -0
  517. package/dist/evaluation/test-runner.cjs.map +1 -0
  518. package/dist/evaluation/test-runner.d.cts +17 -0
  519. package/dist/evaluation/test-runner.d.ts +17 -0
  520. package/dist/evaluation/test-runner.js +5 -0
  521. package/dist/evaluation/test-runner.js.map +1 -0
  522. package/dist/graph/graph-workflow.cjs +12 -0
  523. package/dist/graph/graph-workflow.cjs.map +1 -0
  524. package/dist/graph/graph-workflow.d.cts +29 -0
  525. package/dist/graph/graph-workflow.d.ts +29 -0
  526. package/dist/graph/graph-workflow.js +3 -0
  527. package/dist/graph/graph-workflow.js.map +1 -0
  528. package/dist/graph/helpers.cjs +40 -0
  529. package/dist/graph/helpers.cjs.map +1 -0
  530. package/dist/graph/helpers.d.cts +26 -0
  531. package/dist/graph/helpers.d.ts +26 -0
  532. package/dist/graph/helpers.js +3 -0
  533. package/dist/graph/helpers.js.map +1 -0
  534. package/dist/graph/index.cjs +45 -0
  535. package/dist/graph/index.cjs.map +1 -0
  536. package/dist/graph/index.d.cts +5 -0
  537. package/dist/graph/index.d.ts +5 -0
  538. package/dist/graph/index.js +4 -0
  539. package/dist/graph/index.js.map +1 -0
  540. package/dist/index-8bLog_oR.d.ts +167 -0
  541. package/dist/index-HyHJwtzW.d.cts +167 -0
  542. package/dist/index.cjs +458 -0
  543. package/dist/index.cjs.map +1 -0
  544. package/dist/index.d.cts +84 -0
  545. package/dist/index.d.ts +84 -0
  546. package/dist/index.js +77 -0
  547. package/dist/index.js.map +1 -0
  548. package/dist/loaders/csv-loader.cjs +13 -0
  549. package/dist/loaders/csv-loader.cjs.map +1 -0
  550. package/dist/loaders/csv-loader.d.cts +12 -0
  551. package/dist/loaders/csv-loader.d.ts +12 -0
  552. package/dist/loaders/csv-loader.js +4 -0
  553. package/dist/loaders/csv-loader.js.map +1 -0
  554. package/dist/loaders/directory-loader.cjs +17 -0
  555. package/dist/loaders/directory-loader.cjs.map +1 -0
  556. package/dist/loaders/directory-loader.d.cts +13 -0
  557. package/dist/loaders/directory-loader.d.ts +13 -0
  558. package/dist/loaders/directory-loader.js +8 -0
  559. package/dist/loaders/directory-loader.js.map +1 -0
  560. package/dist/loaders/index.cjs +38 -0
  561. package/dist/loaders/index.cjs.map +1 -0
  562. package/dist/loaders/index.d.cts +8 -0
  563. package/dist/loaders/index.d.ts +8 -0
  564. package/dist/loaders/index.js +9 -0
  565. package/dist/loaders/index.js.map +1 -0
  566. package/dist/loaders/json-loader.cjs +13 -0
  567. package/dist/loaders/json-loader.cjs.map +1 -0
  568. package/dist/loaders/json-loader.d.cts +12 -0
  569. package/dist/loaders/json-loader.d.ts +12 -0
  570. package/dist/loaders/json-loader.js +4 -0
  571. package/dist/loaders/json-loader.js.map +1 -0
  572. package/dist/loaders/markdown-loader.cjs +13 -0
  573. package/dist/loaders/markdown-loader.cjs.map +1 -0
  574. package/dist/loaders/markdown-loader.d.cts +16 -0
  575. package/dist/loaders/markdown-loader.d.ts +16 -0
  576. package/dist/loaders/markdown-loader.js +4 -0
  577. package/dist/loaders/markdown-loader.js.map +1 -0
  578. package/dist/loaders/pdf-loader.cjs +13 -0
  579. package/dist/loaders/pdf-loader.cjs.map +1 -0
  580. package/dist/loaders/pdf-loader.d.cts +11 -0
  581. package/dist/loaders/pdf-loader.d.ts +11 -0
  582. package/dist/loaders/pdf-loader.js +4 -0
  583. package/dist/loaders/pdf-loader.js.map +1 -0
  584. package/dist/loaders/text-loader.cjs +13 -0
  585. package/dist/loaders/text-loader.cjs.map +1 -0
  586. package/dist/loaders/text-loader.d.cts +11 -0
  587. package/dist/loaders/text-loader.d.ts +11 -0
  588. package/dist/loaders/text-loader.js +4 -0
  589. package/dist/loaders/text-loader.js.map +1 -0
  590. package/dist/memory/index.cjs +17 -0
  591. package/dist/memory/index.cjs.map +1 -0
  592. package/dist/memory/index.d.cts +2 -0
  593. package/dist/memory/index.d.ts +2 -0
  594. package/dist/memory/index.js +4 -0
  595. package/dist/memory/index.js.map +1 -0
  596. package/dist/memory/memory.cjs +12 -0
  597. package/dist/memory/memory.cjs.map +1 -0
  598. package/dist/memory/memory.d.cts +31 -0
  599. package/dist/memory/memory.d.ts +31 -0
  600. package/dist/memory/memory.js +3 -0
  601. package/dist/memory/memory.js.map +1 -0
  602. package/dist/memory/session-memory.cjs +13 -0
  603. package/dist/memory/session-memory.cjs.map +1 -0
  604. package/dist/memory/session-memory.d.cts +19 -0
  605. package/dist/memory/session-memory.d.ts +19 -0
  606. package/dist/memory/session-memory.js +4 -0
  607. package/dist/memory/session-memory.js.map +1 -0
  608. package/dist/observability/index.cjs +13 -0
  609. package/dist/observability/index.cjs.map +1 -0
  610. package/dist/observability/index.d.cts +63 -0
  611. package/dist/observability/index.d.ts +63 -0
  612. package/dist/observability/index.js +4 -0
  613. package/dist/observability/index.js.map +1 -0
  614. package/dist/observability/tracer.cjs +13 -0
  615. package/dist/observability/tracer.cjs.map +1 -0
  616. package/dist/observability/tracer.d.cts +1 -0
  617. package/dist/observability/tracer.d.ts +1 -0
  618. package/dist/observability/tracer.js +4 -0
  619. package/dist/observability/tracer.js.map +1 -0
  620. package/dist/orchestration/consensus.cjs +12 -0
  621. package/dist/orchestration/consensus.cjs.map +1 -0
  622. package/dist/orchestration/consensus.d.cts +18 -0
  623. package/dist/orchestration/consensus.d.ts +18 -0
  624. package/dist/orchestration/consensus.js +3 -0
  625. package/dist/orchestration/consensus.js.map +1 -0
  626. package/dist/orchestration/index.cjs +27 -0
  627. package/dist/orchestration/index.cjs.map +1 -0
  628. package/dist/orchestration/index.d.cts +6 -0
  629. package/dist/orchestration/index.d.ts +6 -0
  630. package/dist/orchestration/index.js +6 -0
  631. package/dist/orchestration/index.js.map +1 -0
  632. package/dist/orchestration/load-balancer.cjs +12 -0
  633. package/dist/orchestration/load-balancer.cjs.map +1 -0
  634. package/dist/orchestration/load-balancer.d.cts +21 -0
  635. package/dist/orchestration/load-balancer.d.ts +21 -0
  636. package/dist/orchestration/load-balancer.js +3 -0
  637. package/dist/orchestration/load-balancer.js.map +1 -0
  638. package/dist/orchestration/race.cjs +12 -0
  639. package/dist/orchestration/race.cjs.map +1 -0
  640. package/dist/orchestration/race.d.cts +13 -0
  641. package/dist/orchestration/race.d.ts +13 -0
  642. package/dist/orchestration/race.js +3 -0
  643. package/dist/orchestration/race.js.map +1 -0
  644. package/dist/orchestration/router.cjs +12 -0
  645. package/dist/orchestration/router.cjs.map +1 -0
  646. package/dist/orchestration/router.d.cts +14 -0
  647. package/dist/orchestration/router.d.ts +14 -0
  648. package/dist/orchestration/router.js +3 -0
  649. package/dist/orchestration/router.js.map +1 -0
  650. package/dist/parsers/auto-fix-parser.cjs +12 -0
  651. package/dist/parsers/auto-fix-parser.cjs.map +1 -0
  652. package/dist/parsers/auto-fix-parser.d.cts +14 -0
  653. package/dist/parsers/auto-fix-parser.d.ts +14 -0
  654. package/dist/parsers/auto-fix-parser.js +3 -0
  655. package/dist/parsers/auto-fix-parser.js.map +1 -0
  656. package/dist/parsers/comma-separated-list-parser.cjs +12 -0
  657. package/dist/parsers/comma-separated-list-parser.cjs.map +1 -0
  658. package/dist/parsers/comma-separated-list-parser.d.cts +15 -0
  659. package/dist/parsers/comma-separated-list-parser.d.ts +15 -0
  660. package/dist/parsers/comma-separated-list-parser.js +3 -0
  661. package/dist/parsers/comma-separated-list-parser.js.map +1 -0
  662. package/dist/parsers/csv-parser.cjs +12 -0
  663. package/dist/parsers/csv-parser.cjs.map +1 -0
  664. package/dist/parsers/csv-parser.d.cts +19 -0
  665. package/dist/parsers/csv-parser.d.ts +19 -0
  666. package/dist/parsers/csv-parser.js +3 -0
  667. package/dist/parsers/csv-parser.js.map +1 -0
  668. package/dist/parsers/index.cjs +42 -0
  669. package/dist/parsers/index.cjs.map +1 -0
  670. package/dist/parsers/index.d.cts +8 -0
  671. package/dist/parsers/index.d.ts +8 -0
  672. package/dist/parsers/index.js +9 -0
  673. package/dist/parsers/index.js.map +1 -0
  674. package/dist/parsers/json-parser.cjs +12 -0
  675. package/dist/parsers/json-parser.cjs.map +1 -0
  676. package/dist/parsers/json-parser.d.cts +11 -0
  677. package/dist/parsers/json-parser.d.ts +11 -0
  678. package/dist/parsers/json-parser.js +3 -0
  679. package/dist/parsers/json-parser.js.map +1 -0
  680. package/dist/parsers/list-parser.cjs +12 -0
  681. package/dist/parsers/list-parser.cjs.map +1 -0
  682. package/dist/parsers/list-parser.d.cts +11 -0
  683. package/dist/parsers/list-parser.d.ts +11 -0
  684. package/dist/parsers/list-parser.js +3 -0
  685. package/dist/parsers/list-parser.js.map +1 -0
  686. package/dist/parsers/structured-output-parser.cjs +12 -0
  687. package/dist/parsers/structured-output-parser.cjs.map +1 -0
  688. package/dist/parsers/structured-output-parser.d.cts +16 -0
  689. package/dist/parsers/structured-output-parser.d.ts +16 -0
  690. package/dist/parsers/structured-output-parser.js +3 -0
  691. package/dist/parsers/structured-output-parser.js.map +1 -0
  692. package/dist/parsers/xml-parser.cjs +12 -0
  693. package/dist/parsers/xml-parser.cjs.map +1 -0
  694. package/dist/parsers/xml-parser.d.cts +16 -0
  695. package/dist/parsers/xml-parser.d.ts +16 -0
  696. package/dist/parsers/xml-parser.js +3 -0
  697. package/dist/parsers/xml-parser.js.map +1 -0
  698. package/dist/prompts/file-persistence.cjs +12 -0
  699. package/dist/prompts/file-persistence.cjs.map +1 -0
  700. package/dist/prompts/file-persistence.d.cts +10 -0
  701. package/dist/prompts/file-persistence.d.ts +10 -0
  702. package/dist/prompts/file-persistence.js +3 -0
  703. package/dist/prompts/file-persistence.js.map +1 -0
  704. package/dist/prompts/index.cjs +18 -0
  705. package/dist/prompts/index.cjs.map +1 -0
  706. package/dist/prompts/index.d.cts +3 -0
  707. package/dist/prompts/index.d.ts +3 -0
  708. package/dist/prompts/index.js +5 -0
  709. package/dist/prompts/index.js.map +1 -0
  710. package/dist/prompts/registry.cjs +13 -0
  711. package/dist/prompts/registry.cjs.map +1 -0
  712. package/dist/prompts/registry.d.cts +22 -0
  713. package/dist/prompts/registry.d.ts +22 -0
  714. package/dist/prompts/registry.js +4 -0
  715. package/dist/prompts/registry.js.map +1 -0
  716. package/dist/resilience/fallback.cjs +12 -0
  717. package/dist/resilience/fallback.cjs.map +1 -0
  718. package/dist/resilience/fallback.d.cts +16 -0
  719. package/dist/resilience/fallback.d.ts +16 -0
  720. package/dist/resilience/fallback.js +3 -0
  721. package/dist/resilience/fallback.js.map +1 -0
  722. package/dist/resilience/index.cjs +22 -0
  723. package/dist/resilience/index.cjs.map +1 -0
  724. package/dist/resilience/index.d.cts +4 -0
  725. package/dist/resilience/index.d.ts +4 -0
  726. package/dist/resilience/index.js +5 -0
  727. package/dist/resilience/index.js.map +1 -0
  728. package/dist/resilience/resilient-llm.cjs +13 -0
  729. package/dist/resilience/resilient-llm.cjs.map +1 -0
  730. package/dist/resilience/resilient-llm.d.cts +19 -0
  731. package/dist/resilience/resilient-llm.d.ts +19 -0
  732. package/dist/resilience/resilient-llm.js +4 -0
  733. package/dist/resilience/resilient-llm.js.map +1 -0
  734. package/dist/resilience/retry.cjs +12 -0
  735. package/dist/resilience/retry.cjs.map +1 -0
  736. package/dist/resilience/retry.d.cts +11 -0
  737. package/dist/resilience/retry.d.ts +11 -0
  738. package/dist/resilience/retry.js +3 -0
  739. package/dist/resilience/retry.js.map +1 -0
  740. package/dist/retrievers/bm25-retriever.cjs +12 -0
  741. package/dist/retrievers/bm25-retriever.cjs.map +1 -0
  742. package/dist/retrievers/bm25-retriever.d.cts +30 -0
  743. package/dist/retrievers/bm25-retriever.d.ts +30 -0
  744. package/dist/retrievers/bm25-retriever.js +3 -0
  745. package/dist/retrievers/bm25-retriever.js.map +1 -0
  746. package/dist/retrievers/contextual-compression-retriever.cjs +12 -0
  747. package/dist/retrievers/contextual-compression-retriever.cjs.map +1 -0
  748. package/dist/retrievers/contextual-compression-retriever.d.cts +11 -0
  749. package/dist/retrievers/contextual-compression-retriever.d.ts +11 -0
  750. package/dist/retrievers/contextual-compression-retriever.js +3 -0
  751. package/dist/retrievers/contextual-compression-retriever.js.map +1 -0
  752. package/dist/retrievers/ensemble-retriever.cjs +12 -0
  753. package/dist/retrievers/ensemble-retriever.cjs.map +1 -0
  754. package/dist/retrievers/ensemble-retriever.d.cts +12 -0
  755. package/dist/retrievers/ensemble-retriever.d.ts +12 -0
  756. package/dist/retrievers/ensemble-retriever.js +3 -0
  757. package/dist/retrievers/ensemble-retriever.js.map +1 -0
  758. package/dist/retrievers/index.cjs +42 -0
  759. package/dist/retrievers/index.cjs.map +1 -0
  760. package/dist/retrievers/index.d.cts +9 -0
  761. package/dist/retrievers/index.d.ts +9 -0
  762. package/dist/retrievers/index.js +9 -0
  763. package/dist/retrievers/index.js.map +1 -0
  764. package/dist/retrievers/multi-query-retriever.cjs +12 -0
  765. package/dist/retrievers/multi-query-retriever.cjs.map +1 -0
  766. package/dist/retrievers/multi-query-retriever.d.cts +12 -0
  767. package/dist/retrievers/multi-query-retriever.d.ts +12 -0
  768. package/dist/retrievers/multi-query-retriever.js +3 -0
  769. package/dist/retrievers/multi-query-retriever.js.map +1 -0
  770. package/dist/retrievers/parent-document-retriever.cjs +12 -0
  771. package/dist/retrievers/parent-document-retriever.cjs.map +1 -0
  772. package/dist/retrievers/parent-document-retriever.d.cts +14 -0
  773. package/dist/retrievers/parent-document-retriever.d.ts +14 -0
  774. package/dist/retrievers/parent-document-retriever.js +3 -0
  775. package/dist/retrievers/parent-document-retriever.js.map +1 -0
  776. package/dist/retrievers/self-query-retriever.cjs +12 -0
  777. package/dist/retrievers/self-query-retriever.cjs.map +1 -0
  778. package/dist/retrievers/self-query-retriever.d.cts +29 -0
  779. package/dist/retrievers/self-query-retriever.d.ts +29 -0
  780. package/dist/retrievers/self-query-retriever.js +3 -0
  781. package/dist/retrievers/self-query-retriever.js.map +1 -0
  782. package/dist/retrievers/vector-retriever.cjs +12 -0
  783. package/dist/retrievers/vector-retriever.cjs.map +1 -0
  784. package/dist/retrievers/vector-retriever.d.cts +19 -0
  785. package/dist/retrievers/vector-retriever.d.ts +19 -0
  786. package/dist/retrievers/vector-retriever.js +3 -0
  787. package/dist/retrievers/vector-retriever.js.map +1 -0
  788. package/dist/splitters/code-text-splitter.cjs +13 -0
  789. package/dist/splitters/code-text-splitter.cjs.map +1 -0
  790. package/dist/splitters/code-text-splitter.d.cts +11 -0
  791. package/dist/splitters/code-text-splitter.d.ts +11 -0
  792. package/dist/splitters/code-text-splitter.js +4 -0
  793. package/dist/splitters/code-text-splitter.js.map +1 -0
  794. package/dist/splitters/index.cjs +27 -0
  795. package/dist/splitters/index.cjs.map +1 -0
  796. package/dist/splitters/index.d.cts +6 -0
  797. package/dist/splitters/index.d.ts +6 -0
  798. package/dist/splitters/index.js +6 -0
  799. package/dist/splitters/index.js.map +1 -0
  800. package/dist/splitters/markdown-text-splitter.cjs +13 -0
  801. package/dist/splitters/markdown-text-splitter.cjs.map +1 -0
  802. package/dist/splitters/markdown-text-splitter.d.cts +11 -0
  803. package/dist/splitters/markdown-text-splitter.d.ts +11 -0
  804. package/dist/splitters/markdown-text-splitter.js +4 -0
  805. package/dist/splitters/markdown-text-splitter.js.map +1 -0
  806. package/dist/splitters/recursive-character-text-splitter.cjs +12 -0
  807. package/dist/splitters/recursive-character-text-splitter.cjs.map +1 -0
  808. package/dist/splitters/recursive-character-text-splitter.d.cts +18 -0
  809. package/dist/splitters/recursive-character-text-splitter.d.ts +18 -0
  810. package/dist/splitters/recursive-character-text-splitter.js +3 -0
  811. package/dist/splitters/recursive-character-text-splitter.js.map +1 -0
  812. package/dist/splitters/token-text-splitter.cjs +12 -0
  813. package/dist/splitters/token-text-splitter.cjs.map +1 -0
  814. package/dist/splitters/token-text-splitter.d.cts +13 -0
  815. package/dist/splitters/token-text-splitter.d.ts +13 -0
  816. package/dist/splitters/token-text-splitter.js +3 -0
  817. package/dist/splitters/token-text-splitter.js.map +1 -0
  818. package/dist/templates/chat-prompt-template.cjs +13 -0
  819. package/dist/templates/chat-prompt-template.cjs.map +1 -0
  820. package/dist/templates/chat-prompt-template.d.cts +17 -0
  821. package/dist/templates/chat-prompt-template.d.ts +17 -0
  822. package/dist/templates/chat-prompt-template.js +4 -0
  823. package/dist/templates/chat-prompt-template.js.map +1 -0
  824. package/dist/templates/few-shot-prompt-template.cjs +13 -0
  825. package/dist/templates/few-shot-prompt-template.cjs.map +1 -0
  826. package/dist/templates/few-shot-prompt-template.d.cts +21 -0
  827. package/dist/templates/few-shot-prompt-template.d.ts +21 -0
  828. package/dist/templates/few-shot-prompt-template.js +4 -0
  829. package/dist/templates/few-shot-prompt-template.js.map +1 -0
  830. package/dist/templates/index.cjs +22 -0
  831. package/dist/templates/index.cjs.map +1 -0
  832. package/dist/templates/index.d.cts +5 -0
  833. package/dist/templates/index.d.ts +5 -0
  834. package/dist/templates/index.js +5 -0
  835. package/dist/templates/index.js.map +1 -0
  836. package/dist/templates/prompt-template.cjs +12 -0
  837. package/dist/templates/prompt-template.cjs.map +1 -0
  838. package/dist/templates/prompt-template.d.cts +18 -0
  839. package/dist/templates/prompt-template.d.ts +18 -0
  840. package/dist/templates/prompt-template.js +3 -0
  841. package/dist/templates/prompt-template.js.map +1 -0
  842. package/dist/types/index.cjs +4 -0
  843. package/dist/types/index.cjs.map +1 -0
  844. package/dist/types/index.d.cts +149 -0
  845. package/dist/types/index.d.ts +149 -0
  846. package/dist/types/index.js +3 -0
  847. package/dist/types/index.js.map +1 -0
  848. package/dist/types-0sTm-82H.d.cts +34 -0
  849. package/dist/types-0sTm-82H.d.ts +34 -0
  850. package/dist/types-8NBD4dQH.d.cts +62 -0
  851. package/dist/types-8NBD4dQH.d.ts +62 -0
  852. package/dist/types-B4UAH86O.d.cts +52 -0
  853. package/dist/types-BAR-Rjlg.d.cts +39 -0
  854. package/dist/types-BLcg9dP2.d.ts +47 -0
  855. package/dist/types-BOtPFeGu.d.cts +31 -0
  856. package/dist/types-Bpr6Mq8H.d.ts +60 -0
  857. package/dist/types-C6ECq49L.d.ts +37 -0
  858. package/dist/types-CE-enj7A.d.cts +47 -0
  859. package/dist/types-CJFtM2H2.d.cts +36 -0
  860. package/dist/types-CJFtM2H2.d.ts +36 -0
  861. package/dist/types-D1nxKbZC.d.cts +60 -0
  862. package/dist/types-D_0MABWj.d.cts +46 -0
  863. package/dist/types-DlK2Z6wF.d.ts +31 -0
  864. package/dist/types-DsOo4p3H.d.ts +52 -0
  865. package/dist/types-DxUxY78w.d.ts +46 -0
  866. package/dist/types-ZpM642VC.d.cts +148 -0
  867. package/dist/types-hvrMBxDL.d.cts +37 -0
  868. package/dist/types-khmzyluO.d.ts +39 -0
  869. package/dist/types-q1PSyGEh.d.ts +148 -0
  870. package/dist/types-q3EkxHXf.d.cts +38 -0
  871. package/dist/types-q3EkxHXf.d.ts +38 -0
  872. package/dist/utils/id.cjs +12 -0
  873. package/dist/utils/id.cjs.map +1 -0
  874. package/dist/utils/id.d.cts +3 -0
  875. package/dist/utils/id.d.ts +3 -0
  876. package/dist/utils/id.js +3 -0
  877. package/dist/utils/id.js.map +1 -0
  878. package/dist/workflow/index.cjs +37 -0
  879. package/dist/workflow/index.cjs.map +1 -0
  880. package/dist/workflow/index.d.cts +5 -0
  881. package/dist/workflow/index.d.ts +5 -0
  882. package/dist/workflow/index.js +4 -0
  883. package/dist/workflow/index.js.map +1 -0
  884. package/dist/workflow/steps.cjs +32 -0
  885. package/dist/workflow/steps.cjs.map +1 -0
  886. package/dist/workflow/steps.d.cts +25 -0
  887. package/dist/workflow/steps.d.ts +25 -0
  888. package/dist/workflow/steps.js +3 -0
  889. package/dist/workflow/steps.js.map +1 -0
  890. package/dist/workflow/workflow.cjs +12 -0
  891. package/dist/workflow/workflow.cjs.map +1 -0
  892. package/dist/workflow/workflow.d.cts +17 -0
  893. package/dist/workflow/workflow.d.ts +17 -0
  894. package/dist/workflow/workflow.js +3 -0
  895. package/dist/workflow/workflow.js.map +1 -0
  896. package/package.json +550 -0
@@ -0,0 +1,129 @@
1
+ 'use strict';
2
+
3
+ // src/adapters/anthropic/index.ts
4
+ var AnthropicAdapter = class {
5
+ name = "anthropic";
6
+ apiKey;
7
+ model;
8
+ baseURL;
9
+ timeoutMs;
10
+ constructor(config) {
11
+ this.apiKey = config.apiKey;
12
+ this.model = config.model ?? "claude-3-5-sonnet-20241022";
13
+ this.baseURL = config.baseURL ?? "https://api.anthropic.com";
14
+ this.timeoutMs = config.timeoutMs ?? 6e4;
15
+ }
16
+ async generate(prompt, options = {}) {
17
+ let messages;
18
+ let system = options.systemPrompt;
19
+ if (options.messages) {
20
+ messages = [];
21
+ for (const msg of options.messages) {
22
+ if (msg.role === "system") {
23
+ system = typeof msg.content === "string" ? msg.content : msg.content[0].text;
24
+ continue;
25
+ }
26
+ messages.push({
27
+ role: msg.role,
28
+ content: typeof msg.content === "string" ? msg.content : this.mapContentParts(msg.content)
29
+ });
30
+ }
31
+ } else {
32
+ messages = [{ role: "user", content: prompt }];
33
+ }
34
+ const controller = new AbortController();
35
+ const timeout = setTimeout(() => controller.abort(), this.timeoutMs);
36
+ let response;
37
+ try {
38
+ response = await fetch(`${this.baseURL}/messages`, {
39
+ method: "POST",
40
+ signal: controller.signal,
41
+ headers: {
42
+ "Content-Type": "application/json",
43
+ "x-api-key": this.apiKey,
44
+ "anthropic-version": "2023-06-01"
45
+ },
46
+ body: JSON.stringify({
47
+ model: this.model,
48
+ max_tokens: options.maxTokens ?? 1024,
49
+ system,
50
+ messages,
51
+ temperature: options.temperature ?? 0.7,
52
+ stop_sequences: options.stopSequences
53
+ })
54
+ });
55
+ } catch (error) {
56
+ clearTimeout(timeout);
57
+ if (error.name === "AbortError") {
58
+ throw new Error(`Anthropic API request timed out after ${this.timeoutMs}ms`);
59
+ }
60
+ throw error;
61
+ } finally {
62
+ clearTimeout(timeout);
63
+ }
64
+ if (!response.ok) {
65
+ const error = await response.text();
66
+ throw new Error(`Anthropic API error: ${response.status} - ${error}`);
67
+ }
68
+ const data = await response.json();
69
+ const textContent = data.content.find((c) => c.type === "text");
70
+ return {
71
+ content: textContent?.text ?? "",
72
+ usage: {
73
+ promptTokens: data.usage.input_tokens,
74
+ completionTokens: data.usage.output_tokens,
75
+ totalTokens: data.usage.input_tokens + data.usage.output_tokens
76
+ },
77
+ model: data.model,
78
+ finishReason: this.mapStopReason(data.stop_reason)
79
+ };
80
+ }
81
+ async embed(_texts) {
82
+ throw new Error("Anthropic does not provide embedding models. Use OpenAI or another provider for embeddings.");
83
+ }
84
+ mapContentParts(parts) {
85
+ return parts.map((part) => {
86
+ switch (part.type) {
87
+ case "text":
88
+ return { type: "text", text: part.text };
89
+ case "image_url":
90
+ return {
91
+ type: "image",
92
+ source: { type: "url", url: part.image_url.url }
93
+ };
94
+ case "image_base64":
95
+ return {
96
+ type: "image",
97
+ source: {
98
+ type: "base64",
99
+ media_type: part.mimeType,
100
+ data: part.data
101
+ }
102
+ };
103
+ case "audio":
104
+ return {
105
+ type: "input_audio",
106
+ source: { data: part.data, format: part.format }
107
+ };
108
+ default:
109
+ return { type: "text", text: JSON.stringify(part) };
110
+ }
111
+ });
112
+ }
113
+ mapStopReason(reason) {
114
+ switch (reason) {
115
+ case "end_turn":
116
+ return "stop";
117
+ case "max_tokens":
118
+ return "length";
119
+ case "tool_use":
120
+ return "tool_calls";
121
+ default:
122
+ return "stop";
123
+ }
124
+ }
125
+ };
126
+
127
+ exports.AnthropicAdapter = AnthropicAdapter;
128
+ //# sourceMappingURL=chunk-3A7BCCAI.cjs.map
129
+ //# sourceMappingURL=chunk-3A7BCCAI.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/adapters/anthropic/index.ts"],"names":[],"mappings":";;;AASO,IAAM,mBAAN,MAA6C;AAAA,EACzC,IAAA,GAAO,WAAA;AAAA,EACR,MAAA;AAAA,EACA,KAAA;AAAA,EACA,OAAA;AAAA,EACA,SAAA;AAAA,EAER,YAAY,MAAA,EAAgC;AAC1C,IAAA,IAAA,CAAK,SAAS,MAAA,CAAO,MAAA;AACrB,IAAA,IAAA,CAAK,KAAA,GAAQ,OAAO,KAAA,IAAS,4BAAA;AAC7B,IAAA,IAAA,CAAK,OAAA,GAAU,OAAO,OAAA,IAAW,2BAAA;AACjC,IAAA,IAAA,CAAK,SAAA,GAAY,OAAO,SAAA,IAAa,GAAA;AAAA,EACvC;AAAA,EAEA,MAAM,QAAA,CAAS,MAAA,EAAgB,OAAA,GAA8B,EAAC,EAAuB;AACnF,IAAA,IAAI,QAAA;AACJ,IAAA,IAAI,SAAS,OAAA,CAAQ,YAAA;AAErB,IAAA,IAAI,QAAQ,QAAA,EAAU;AACpB,MAAA,QAAA,GAAW,EAAC;AACZ,MAAA,KAAA,MAAW,GAAA,IAAO,QAAQ,QAAA,EAAU;AAClC,QAAA,IAAI,GAAA,CAAI,SAAS,QAAA,EAAU;AACzB,UAAA,MAAA,GAAS,OAAO,IAAI,OAAA,KAAY,QAAA,GAAW,IAAI,OAAA,GAAW,GAAA,CAAI,OAAA,CAAQ,CAAC,CAAA,CAAuB,IAAA;AAC9F,UAAA;AAAA,QACF;AACA,QAAA,QAAA,CAAS,IAAA,CAAK;AAAA,UACZ,MAAM,GAAA,CAAI,IAAA;AAAA,UACV,OAAA,EAAS,OAAO,GAAA,CAAI,OAAA,KAAY,QAAA,GAC5B,IAAI,OAAA,GACJ,IAAA,CAAK,eAAA,CAAgB,GAAA,CAAI,OAAO;AAAA,SACrC,CAAA;AAAA,MACH;AAAA,IACF,CAAA,MAAO;AACL,MAAA,QAAA,GAAW,CAAC,EAAE,IAAA,EAAM,MAAA,EAAQ,OAAA,EAAS,QAAQ,CAAA;AAAA,IAC/C;AAEA,IAAA,MAAM,UAAA,GAAa,IAAI,eAAA,EAAgB;AACvC,IAAA,MAAM,UAAU,UAAA,CAAW,MAAM,WAAW,KAAA,EAAM,EAAG,KAAK,SAAS,CAAA;AAEnE,IAAA,IAAI,QAAA;AACJ,IAAA,IAAI;AACF,MAAA,QAAA,GAAW,MAAM,KAAA,CAAM,CAAA,EAAG,IAAA,CAAK,OAAO,CAAA,SAAA,CAAA,EAAa;AAAA,QACjD,MAAA,EAAQ,MAAA;AAAA,QACR,QAAQ,UAAA,CAAW,MAAA;AAAA,QACnB,OAAA,EAAS;AAAA,UACP,cAAA,EAAgB,kBAAA;AAAA,UAChB,aAAa,IAAA,CAAK,MAAA;AAAA,UAClB,mBAAA,EAAqB;AAAA,SACvB;AAAA,QACA,IAAA,EAAM,KAAK,SAAA,CAAU;AAAA,UACnB,OAAO,IAAA,CAAK,KAAA;AAAA,UACZ,UAAA,EAAY,QAAQ,SAAA,IAAa,IAAA;AAAA,UACjC,MAAA;AAAA,UACA,QAAA;AAAA,UACA,WAAA,EAAa,QAAQ,WAAA,IAAe,GAAA;AAAA,UACpC,gBAAgB,OAAA,CAAQ;AAAA,SACzB;AAAA,OACF,CAAA;AAAA,IACH,SAAS,KAAA,EAAO;AACd,MAAA,YAAA,CAAa,OAAO,CAAA;AACpB,MAAA,IAAK,KAAA,CAAgB,SAAS,YAAA,EAAc;AAC1C,QAAA,MAAM,IAAI,KAAA,CAAM,CAAA,sCAAA,EAAyC,IAAA,CAAK,SAAS,CAAA,EAAA,CAAI,CAAA;AAAA,MAC7E;AACA,MAAA,MAAM,KAAA;AAAA,IACR,CAAA,SAAE;AACA,MAAA,YAAA,CAAa,OAAO,CAAA;AAAA,IACtB;AAEA,IAAA,IAAI,CAAC,SAAS,EAAA,EAAI;AAChB,MAAA,MAAM,KAAA,GAAQ,MAAM,QAAA,CAAS,IAAA,EAAK;AAClC,MAAA,MAAM,IAAI,KAAA,CAAM,CAAA,qBAAA,EAAwB,SAAS,MAAM,CAAA,GAAA,EAAM,KAAK,CAAA,CAAE,CAAA;AAAA,IACtE;AAEA,IAAA,MAAM,IAAA,GAAO,MAAM,QAAA,CAAS,IAAA,EAAK;AAOjC,IAAA,MAAM,cAAc,IAAA,CAAK,OAAA,CAAQ,KAAK,CAAA,CAAA,KAAK,CAAA,CAAE,SAAS,MAAM,CAAA;AAE5D,IAAA,OAAO;AAAA,MACL,OAAA,EAAS,aAAa,IAAA,IAAQ,EAAA;AAAA,MAC9B,KAAA,EAAO;AAAA,QACL,YAAA,EAAc,KAAK,KAAA,CAAM,YAAA;AAAA,QACzB,gBAAA,EAAkB,KAAK,KAAA,CAAM,aAAA;AAAA,QAC7B,WAAA,EAAa,IAAA,CAAK,KAAA,CAAM,YAAA,GAAe,KAAK,KAAA,CAAM;AAAA,OACpD;AAAA,MACA,OAAO,IAAA,CAAK,KAAA;AAAA,MACZ,YAAA,EAAc,IAAA,CAAK,aAAA,CAAc,IAAA,CAAK,WAAW;AAAA,KACnD;AAAA,EACF;AAAA,EAEA,MAAM,MAAM,MAAA,EAAgD;AAC1D,IAAA,MAAM,IAAI,MAAM,6FAA6F,CAAA;AAAA,EAC/G;AAAA,EAEQ,gBAAgB,KAAA,EAAiC;AACvD,IAAA,OAAO,KAAA,CAAM,IAAI,CAAA,IAAA,KAAQ;AACvB,MAAA,QAAQ,KAAK,IAAA;AAAM,QACjB,KAAK,MAAA;AACH,UAAA,OAAO,EAAE,IAAA,EAAM,MAAA,EAAQ,IAAA,EAAM,KAAK,IAAA,EAAK;AAAA,QACzC,KAAK,WAAA;AACH,UAAA,OAAO;AAAA,YACL,IAAA,EAAM,OAAA;AAAA,YACN,QAAQ,EAAE,IAAA,EAAM,OAAO,GAAA,EAAK,IAAA,CAAK,UAAU,GAAA;AAAI,WACjD;AAAA,QACF,KAAK,cAAA;AACH,UAAA,OAAO;AAAA,YACL,IAAA,EAAM,OAAA;AAAA,YACN,MAAA,EAAQ;AAAA,cACN,IAAA,EAAM,QAAA;AAAA,cACN,YAAY,IAAA,CAAK,QAAA;AAAA,cACjB,MAAM,IAAA,CAAK;AAAA;AACb,WACF;AAAA,QACF,KAAK,OAAA;AACH,UAAA,OAAO;AAAA,YACL,IAAA,EAAM,aAAA;AAAA,YACN,QAAQ,EAAE,IAAA,EAAM,KAAK,IAAA,EAAM,MAAA,EAAQ,KAAK,MAAA;AAAO,WACjD;AAAA,QACF;AACE,UAAA,OAAO,EAAE,IAAA,EAAM,MAAA,EAAQ,MAAM,IAAA,CAAK,SAAA,CAAU,IAAI,CAAA,EAAE;AAAA;AACtD,IACF,CAAC,CAAA;AAAA,EACH;AAAA,EAEQ,cAAc,MAAA,EAA2C;AAC/D,IAAA,QAAQ,MAAA;AAAQ,MACd,KAAK,UAAA;AAAY,QAAA,OAAO,MAAA;AAAA,MACxB,KAAK,YAAA;AAAc,QAAA,OAAO,QAAA;AAAA,MAC1B,KAAK,UAAA;AAAY,QAAA,OAAO,YAAA;AAAA,MACxB;AAAS,QAAA,OAAO,MAAA;AAAA;AAClB,EACF;AACF","file":"chunk-3A7BCCAI.cjs","sourcesContent":["import type { LLMAdapter, LLMGenerateOptions, LLMResult, ContentPart } from '../../types/index.js';\n\nexport interface AnthropicAdapterConfig {\n apiKey: string;\n model?: string;\n baseURL?: string;\n timeoutMs?: number;\n}\n\nexport class AnthropicAdapter implements LLMAdapter {\n readonly name = 'anthropic';\n private apiKey: string;\n private model: string;\n private baseURL: string;\n private timeoutMs: number;\n\n constructor(config: AnthropicAdapterConfig) {\n this.apiKey = config.apiKey;\n this.model = config.model ?? 'claude-3-5-sonnet-20241022';\n this.baseURL = config.baseURL ?? 'https://api.anthropic.com';\n this.timeoutMs = config.timeoutMs ?? 60_000;\n }\n\n async generate(prompt: string, options: LLMGenerateOptions = {}): Promise<LLMResult> {\n let messages: Array<{ role: string; content: string | unknown[] }>;\n let system = options.systemPrompt;\n\n if (options.messages) {\n messages = [];\n for (const msg of options.messages) {\n if (msg.role === 'system') {\n system = typeof msg.content === 'string' ? msg.content : (msg.content[0] as { text: string }).text;\n continue;\n }\n messages.push({\n role: msg.role,\n content: typeof msg.content === 'string'\n ? msg.content\n : this.mapContentParts(msg.content),\n });\n }\n } else {\n messages = [{ role: 'user', content: prompt }];\n }\n\n const controller = new AbortController();\n const timeout = setTimeout(() => controller.abort(), this.timeoutMs);\n\n let response: Response;\n try {\n response = await fetch(`${this.baseURL}/messages`, {\n method: 'POST',\n signal: controller.signal,\n headers: {\n 'Content-Type': 'application/json',\n 'x-api-key': this.apiKey,\n 'anthropic-version': '2023-06-01',\n },\n body: JSON.stringify({\n model: this.model,\n max_tokens: options.maxTokens ?? 1024,\n system,\n messages,\n temperature: options.temperature ?? 0.7,\n stop_sequences: options.stopSequences,\n }),\n });\n } catch (error) {\n clearTimeout(timeout);\n if ((error as Error).name === 'AbortError') {\n throw new Error(`Anthropic API request timed out after ${this.timeoutMs}ms`);\n }\n throw error;\n } finally {\n clearTimeout(timeout);\n }\n\n if (!response.ok) {\n const error = await response.text();\n throw new Error(`Anthropic API error: ${response.status} - ${error}`);\n }\n\n const data = await response.json() as {\n content: Array<{ type: string; text: string }>;\n usage: { input_tokens: number; output_tokens: number };\n model: string;\n stop_reason: string;\n };\n\n const textContent = data.content.find(c => c.type === 'text');\n\n return {\n content: textContent?.text ?? '',\n usage: {\n promptTokens: data.usage.input_tokens,\n completionTokens: data.usage.output_tokens,\n totalTokens: data.usage.input_tokens + data.usage.output_tokens,\n },\n model: data.model,\n finishReason: this.mapStopReason(data.stop_reason),\n };\n }\n\n async embed(_texts: string | string[]): Promise<number[][]> {\n throw new Error('Anthropic does not provide embedding models. Use OpenAI or another provider for embeddings.');\n }\n\n private mapContentParts(parts: ContentPart[]): unknown[] {\n return parts.map(part => {\n switch (part.type) {\n case 'text':\n return { type: 'text', text: part.text };\n case 'image_url':\n return {\n type: 'image',\n source: { type: 'url', url: part.image_url.url },\n };\n case 'image_base64':\n return {\n type: 'image',\n source: {\n type: 'base64',\n media_type: part.mimeType,\n data: part.data,\n },\n };\n case 'audio':\n return {\n type: 'input_audio',\n source: { data: part.data, format: part.format },\n };\n default:\n return { type: 'text', text: JSON.stringify(part) };\n }\n });\n }\n\n private mapStopReason(reason: string): LLMResult['finishReason'] {\n switch (reason) {\n case 'end_turn': return 'stop';\n case 'max_tokens': return 'length';\n case 'tool_use': return 'tool_calls';\n default: return 'stop';\n }\n }\n}\n"]}
@@ -0,0 +1,76 @@
1
+ 'use strict';
2
+
3
+ var chunkYORGHHHZ_cjs = require('./chunk-YORGHHHZ.cjs');
4
+
5
+ // src/templates/chat-prompt-template.ts
6
+ var ChatPromptTemplate = class _ChatPromptTemplate {
7
+ messageTemplates;
8
+ inputVariables;
9
+ partialVariables;
10
+ constructor(options) {
11
+ this.messageTemplates = options.messages;
12
+ this.partialVariables = options.partialVariables ?? {};
13
+ if (options.inputVariables) {
14
+ this.inputVariables = options.inputVariables;
15
+ } else {
16
+ const allVars = /* @__PURE__ */ new Set();
17
+ for (const msg of this.messageTemplates) {
18
+ for (const v of chunkYORGHHHZ_cjs.PromptTemplate.extractVariables(msg.template)) {
19
+ allVars.add(v);
20
+ }
21
+ }
22
+ for (const key of Object.keys(this.partialVariables)) {
23
+ allVars.delete(key);
24
+ }
25
+ this.inputVariables = [...allVars];
26
+ }
27
+ }
28
+ static fromMessages(messages, partialVariables) {
29
+ return new _ChatPromptTemplate({
30
+ messages: messages.map(([role, template]) => ({ role, template })),
31
+ partialVariables
32
+ });
33
+ }
34
+ format(variables) {
35
+ const allVars = { ...this.resolvePartials(), ...variables };
36
+ const missing = this.inputVariables.filter((v) => !(v in allVars));
37
+ if (missing.length > 0) {
38
+ throw new Error(`Missing variables: ${missing.join(", ")}`);
39
+ }
40
+ return this.messageTemplates.map((msg) => {
41
+ let content = msg.template;
42
+ for (const [key, value] of Object.entries(allVars)) {
43
+ content = content.replace(new RegExp(`\\{\\{\\s*${key}\\s*\\}\\}`, "g"), value);
44
+ }
45
+ return { role: msg.role, content };
46
+ });
47
+ }
48
+ formatAsString(variables) {
49
+ const messages = this.format(variables);
50
+ return messages.map((m) => `[${m.role}]: ${m.content}`).join("\n\n");
51
+ }
52
+ partial(variables) {
53
+ const newPartials = { ...this.partialVariables, ...variables };
54
+ const partialKeys = Object.keys(newPartials);
55
+ const remaining = this.inputVariables.filter((v) => !partialKeys.includes(v));
56
+ return new _ChatPromptTemplate({
57
+ messages: this.messageTemplates,
58
+ inputVariables: remaining,
59
+ partialVariables: newPartials
60
+ });
61
+ }
62
+ getInputVariables() {
63
+ return [...this.inputVariables];
64
+ }
65
+ resolvePartials() {
66
+ const resolved = {};
67
+ for (const [key, value] of Object.entries(this.partialVariables)) {
68
+ resolved[key] = typeof value === "function" ? value() : value;
69
+ }
70
+ return resolved;
71
+ }
72
+ };
73
+
74
+ exports.ChatPromptTemplate = ChatPromptTemplate;
75
+ //# sourceMappingURL=chunk-3FCEQZKB.cjs.map
76
+ //# sourceMappingURL=chunk-3FCEQZKB.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/templates/chat-prompt-template.ts"],"names":["PromptTemplate"],"mappings":"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","file":"chunk-3FCEQZKB.cjs","sourcesContent":["import type { ChatMessage } from '../types/index.js';\nimport type { ChatPromptTemplateOptions, ChatMessageTemplate } from './types.js';\nimport { PromptTemplate } from './prompt-template.js';\n\nexport class ChatPromptTemplate {\n private messageTemplates: ChatMessageTemplate[];\n private inputVariables: string[];\n private partialVariables: Record<string, string | (() => string)>;\n\n constructor(options: ChatPromptTemplateOptions) {\n this.messageTemplates = options.messages;\n this.partialVariables = options.partialVariables ?? {};\n\n if (options.inputVariables) {\n this.inputVariables = options.inputVariables;\n } else {\n const allVars = new Set<string>();\n for (const msg of this.messageTemplates) {\n for (const v of PromptTemplate.extractVariables(msg.template)) {\n allVars.add(v);\n }\n }\n for (const key of Object.keys(this.partialVariables)) {\n allVars.delete(key);\n }\n this.inputVariables = [...allVars];\n }\n }\n\n static fromMessages(\n messages: Array<[role: 'system' | 'user' | 'assistant', template: string]>,\n partialVariables?: Record<string, string | (() => string)>\n ): ChatPromptTemplate {\n return new ChatPromptTemplate({\n messages: messages.map(([role, template]) => ({ role, template })),\n partialVariables,\n });\n }\n\n format(variables: Record<string, string>): ChatMessage[] {\n const allVars = { ...this.resolvePartials(), ...variables };\n\n const missing = this.inputVariables.filter(v => !(v in allVars));\n if (missing.length > 0) {\n throw new Error(`Missing variables: ${missing.join(', ')}`);\n }\n\n return this.messageTemplates.map(msg => {\n let content = msg.template;\n for (const [key, value] of Object.entries(allVars)) {\n content = content.replace(new RegExp(`\\\\{\\\\{\\\\s*${key}\\\\s*\\\\}\\\\}`, 'g'), value);\n }\n return { role: msg.role, content };\n });\n }\n\n formatAsString(variables: Record<string, string>): string {\n const messages = this.format(variables);\n return messages\n .map(m => `[${m.role}]: ${m.content}`)\n .join('\\n\\n');\n }\n\n partial(variables: Record<string, string | (() => string)>): ChatPromptTemplate {\n const newPartials = { ...this.partialVariables, ...variables };\n const partialKeys = Object.keys(newPartials);\n const remaining = this.inputVariables.filter(v => !partialKeys.includes(v));\n\n return new ChatPromptTemplate({\n messages: this.messageTemplates,\n inputVariables: remaining,\n partialVariables: newPartials,\n });\n }\n\n getInputVariables(): string[] {\n return [...this.inputVariables];\n }\n\n private resolvePartials(): Record<string, string> {\n const resolved: Record<string, string> = {};\n for (const [key, value] of Object.entries(this.partialVariables)) {\n resolved[key] = typeof value === 'function' ? value() : value;\n }\n return resolved;\n }\n}\n"]}
@@ -0,0 +1,65 @@
1
+ 'use strict';
2
+
3
+ var chunkBBUZ6P5S_cjs = require('./chunk-BBUZ6P5S.cjs');
4
+
5
+ // src/loaders/pdf-loader.ts
6
+ var PDFLoader = class {
7
+ path;
8
+ options;
9
+ constructor(path, options = {}) {
10
+ this.path = path;
11
+ this.options = options;
12
+ }
13
+ async load() {
14
+ let pdfParse;
15
+ try {
16
+ const mod = await import('pdf-parse');
17
+ pdfParse = mod.default ?? mod;
18
+ } catch {
19
+ throw new Error(
20
+ 'PDFLoader requires the "pdf-parse" package. Install it with: npm install pdf-parse'
21
+ );
22
+ }
23
+ const fs = await import('fs/promises');
24
+ const buffer = await fs.readFile(this.path);
25
+ const data = await pdfParse(buffer);
26
+ const pages = data.text.split(/\f/);
27
+ const maxPages = this.options.maxPages ?? pages.length;
28
+ const selectedPages = this.options.pages;
29
+ const documents = [];
30
+ for (let i = 0; i < Math.min(pages.length, maxPages); i++) {
31
+ if (selectedPages && !selectedPages.includes(i + 1)) continue;
32
+ const content = pages[i].trim();
33
+ if (!content) continue;
34
+ documents.push({
35
+ id: chunkBBUZ6P5S_cjs.generateId(),
36
+ content,
37
+ metadata: {
38
+ ...this.options.metadata,
39
+ source: this.path,
40
+ loader: "PDFLoader",
41
+ page: i + 1,
42
+ totalPages: pages.length,
43
+ ...data.info ? { pdfInfo: data.info } : {}
44
+ }
45
+ });
46
+ }
47
+ if (documents.length === 0 && data.text.trim()) {
48
+ documents.push({
49
+ id: chunkBBUZ6P5S_cjs.generateId(),
50
+ content: data.text.trim(),
51
+ metadata: {
52
+ ...this.options.metadata,
53
+ source: this.path,
54
+ loader: "PDFLoader",
55
+ totalPages: data.numpages
56
+ }
57
+ });
58
+ }
59
+ return documents;
60
+ }
61
+ };
62
+
63
+ exports.PDFLoader = PDFLoader;
64
+ //# sourceMappingURL=chunk-3NN43ENJ.cjs.map
65
+ //# sourceMappingURL=chunk-3NN43ENJ.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/loaders/pdf-loader.ts"],"names":["generateId"],"mappings":";;;;;AAIO,IAAM,YAAN,MAA0C;AAAA,EACvC,IAAA;AAAA,EACA,OAAA;AAAA,EAER,WAAA,CAAY,IAAA,EAAc,OAAA,GAA4B,EAAC,EAAG;AACxD,IAAA,IAAA,CAAK,IAAA,GAAO,IAAA;AACZ,IAAA,IAAA,CAAK,OAAA,GAAU,OAAA;AAAA,EACjB;AAAA,EAEA,MAAM,IAAA,GAA4B;AAChC,IAAA,IAAI,QAAA;AAEJ,IAAA,IAAI;AACF,MAAA,MAAM,GAAA,GAAM,MAAM,OAAO,WAAW,CAAA;AACpC,MAAA,QAAA,GAAY,IAAI,OAAA,IAAW,GAAA;AAAA,IAC7B,CAAA,CAAA,MAAQ;AACN,MAAA,MAAM,IAAI,KAAA;AAAA,QACR;AAAA,OACF;AAAA,IACF;AAEA,IAAA,MAAM,EAAA,GAAK,MAAM,OAAO,aAAa,CAAA;AACrC,IAAA,MAAM,MAAA,GAAS,MAAM,EAAA,CAAG,QAAA,CAAS,KAAK,IAAI,CAAA;AAC1C,IAAA,MAAM,IAAA,GAAO,MAAM,QAAA,CAAS,MAA2B,CAAA;AAEvD,IAAA,MAAM,KAAA,GAAQ,IAAA,CAAK,IAAA,CAAK,KAAA,CAAM,IAAI,CAAA;AAClC,IAAA,MAAM,QAAA,GAAW,IAAA,CAAK,OAAA,CAAQ,QAAA,IAAY,KAAA,CAAM,MAAA;AAChD,IAAA,MAAM,aAAA,GAAgB,KAAK,OAAA,CAAQ,KAAA;AAEnC,IAAA,MAAM,YAAwB,EAAC;AAE/B,IAAA,KAAA,IAAS,CAAA,GAAI,GAAG,CAAA,GAAI,IAAA,CAAK,IAAI,KAAA,CAAM,MAAA,EAAQ,QAAQ,CAAA,EAAG,CAAA,EAAA,EAAK;AACzD,MAAA,IAAI,iBAAiB,CAAC,aAAA,CAAc,QAAA,CAAS,CAAA,GAAI,CAAC,CAAA,EAAG;AAErD,MAAA,MAAM,OAAA,GAAU,KAAA,CAAM,CAAC,CAAA,CAAE,IAAA,EAAK;AAC9B,MAAA,IAAI,CAAC,OAAA,EAAS;AAEd,MAAA,SAAA,CAAU,IAAA,CAAK;AAAA,QACb,IAAIA,4BAAA,EAAW;AAAA,QACf,OAAA;AAAA,QACA,QAAA,EAAU;AAAA,UACR,GAAG,KAAK,OAAA,CAAQ,QAAA;AAAA,UAChB,QAAQ,IAAA,CAAK,IAAA;AAAA,UACb,MAAA,EAAQ,WAAA;AAAA,UACR,MAAM,CAAA,GAAI,CAAA;AAAA,UACV,YAAY,KAAA,CAAM,MAAA;AAAA,UAClB,GAAI,KAAK,IAAA,GAAO,EAAE,SAAS,IAAA,CAAK,IAAA,KAAS;AAAC;AAC5C,OACD,CAAA;AAAA,IACH;AAEA,IAAA,IAAI,UAAU,MAAA,KAAW,CAAA,IAAK,IAAA,CAAK,IAAA,CAAK,MAAK,EAAG;AAC9C,MAAA,SAAA,CAAU,IAAA,CAAK;AAAA,QACb,IAAIA,4BAAA,EAAW;AAAA,QACf,OAAA,EAAS,IAAA,CAAK,IAAA,CAAK,IAAA,EAAK;AAAA,QACxB,QAAA,EAAU;AAAA,UACR,GAAG,KAAK,OAAA,CAAQ,QAAA;AAAA,UAChB,QAAQ,IAAA,CAAK,IAAA;AAAA,UACb,MAAA,EAAQ,WAAA;AAAA,UACR,YAAY,IAAA,CAAK;AAAA;AACnB,OACD,CAAA;AAAA,IACH;AAEA,IAAA,OAAO,SAAA;AAAA,EACT;AACF","file":"chunk-3NN43ENJ.cjs","sourcesContent":["import type { Document } from '../types/index.js';\nimport type { DocumentLoader, PDFLoaderOptions } from './types.js';\nimport { generateId } from '../utils/id.js';\n\nexport class PDFLoader implements DocumentLoader {\n private path: string;\n private options: PDFLoaderOptions;\n\n constructor(path: string, options: PDFLoaderOptions = {}) {\n this.path = path;\n this.options = options;\n }\n\n async load(): Promise<Document[]> {\n let pdfParse: (buffer: Buffer) => Promise<{ numpages: number; text: string; info: Record<string, unknown> }>;\n\n try {\n const mod = await import('pdf-parse');\n pdfParse = (mod.default ?? mod) as typeof pdfParse;\n } catch {\n throw new Error(\n 'PDFLoader requires the \"pdf-parse\" package. Install it with: npm install pdf-parse'\n );\n }\n\n const fs = await import('fs/promises');\n const buffer = await fs.readFile(this.path);\n const data = await pdfParse(buffer as unknown as Buffer);\n\n const pages = data.text.split(/\\f/);\n const maxPages = this.options.maxPages ?? pages.length;\n const selectedPages = this.options.pages;\n\n const documents: Document[] = [];\n\n for (let i = 0; i < Math.min(pages.length, maxPages); i++) {\n if (selectedPages && !selectedPages.includes(i + 1)) continue;\n\n const content = pages[i].trim();\n if (!content) continue;\n\n documents.push({\n id: generateId(),\n content,\n metadata: {\n ...this.options.metadata,\n source: this.path,\n loader: 'PDFLoader',\n page: i + 1,\n totalPages: pages.length,\n ...(data.info ? { pdfInfo: data.info } : {}),\n },\n });\n }\n\n if (documents.length === 0 && data.text.trim()) {\n documents.push({\n id: generateId(),\n content: data.text.trim(),\n metadata: {\n ...this.options.metadata,\n source: this.path,\n loader: 'PDFLoader',\n totalPages: data.numpages,\n },\n });\n }\n\n return documents;\n }\n}\n"]}
@@ -0,0 +1,137 @@
1
+ import { ConsoleReporter } from './chunk-4CLTJN6H.js';
2
+ import { builtinMetrics } from './chunk-GZQAPKRD.js';
3
+
4
+ // src/evaluation/test-runner.ts
5
+ var TestRunner = class {
6
+ orka;
7
+ constructor(orka) {
8
+ this.orka = orka;
9
+ }
10
+ async run(config) {
11
+ const startTime = Date.now();
12
+ const {
13
+ name,
14
+ dataset,
15
+ metrics = ["relevance", "faithfulness"],
16
+ assertions = [],
17
+ reporters = [new ConsoleReporter()],
18
+ concurrency = 1,
19
+ bail = false
20
+ } = config;
21
+ const resolvedMetrics = this.resolveMetrics(metrics);
22
+ const cases = [];
23
+ const batches = this.chunk(dataset, concurrency);
24
+ for (const batch of batches) {
25
+ const batchResults = await Promise.all(
26
+ batch.map(async (evalCase) => this.runCase(evalCase, resolvedMetrics, assertions))
27
+ );
28
+ for (const result of batchResults) {
29
+ cases.push(result);
30
+ if (bail && !result.passed) {
31
+ break;
32
+ }
33
+ }
34
+ if (bail && cases.some((c) => !c.passed)) {
35
+ break;
36
+ }
37
+ }
38
+ const report = this.buildReport(name, cases, Date.now() - startTime);
39
+ for (const reporter of reporters) {
40
+ await reporter.report(report);
41
+ }
42
+ return report;
43
+ }
44
+ async runCase(evalCase, metrics, assertions) {
45
+ const askResult = await this.orka.ask({
46
+ knowledge: evalCase.knowledge,
47
+ question: evalCase.input,
48
+ includeContext: true
49
+ });
50
+ const contextTexts = askResult.context?.map((c) => c.content) ?? evalCase.context ?? [];
51
+ const llm = this.orka.getLLM();
52
+ const metricResults = {};
53
+ for (const metricFn of metrics) {
54
+ const result = await metricFn({
55
+ input: evalCase.input,
56
+ output: askResult.answer,
57
+ expectedOutput: evalCase.expectedOutput,
58
+ context: contextTexts,
59
+ llm
60
+ });
61
+ metricResults[result.name] = result.score;
62
+ }
63
+ const assertionResults = assertions.map(
64
+ (assertion) => assertion.check({
65
+ input: evalCase.input,
66
+ output: askResult.answer,
67
+ expectedOutput: evalCase.expectedOutput,
68
+ metrics: metricResults,
69
+ latencyMs: askResult.latencyMs,
70
+ totalTokens: askResult.usage.totalTokens
71
+ })
72
+ );
73
+ const allPassed = assertionResults.length === 0 || assertionResults.every((a) => a.passed);
74
+ return {
75
+ input: evalCase.input,
76
+ output: askResult.answer,
77
+ passed: allPassed,
78
+ assertions: assertionResults,
79
+ metrics: metricResults,
80
+ latencyMs: askResult.latencyMs,
81
+ totalTokens: askResult.usage.totalTokens
82
+ };
83
+ }
84
+ buildReport(name, cases, duration) {
85
+ const passed = cases.filter((c) => c.passed).length;
86
+ const failed = cases.length - passed;
87
+ const metricsMap = {};
88
+ for (const c of cases) {
89
+ for (const [metricName, score] of Object.entries(c.metrics)) {
90
+ if (!metricsMap[metricName]) metricsMap[metricName] = [];
91
+ metricsMap[metricName].push(score);
92
+ }
93
+ }
94
+ const metricsSummary = {};
95
+ for (const [metricName, scores] of Object.entries(metricsMap)) {
96
+ metricsSummary[metricName] = {
97
+ average: scores.reduce((a, b) => a + b, 0) / scores.length,
98
+ min: Math.min(...scores),
99
+ max: Math.max(...scores)
100
+ };
101
+ }
102
+ return {
103
+ name,
104
+ timestamp: (/* @__PURE__ */ new Date()).toISOString(),
105
+ duration,
106
+ totalCases: cases.length,
107
+ passed,
108
+ failed,
109
+ passRate: cases.length > 0 ? passed / cases.length : 0,
110
+ cases,
111
+ summary: {
112
+ averageLatencyMs: cases.reduce((a, b) => a + b.latencyMs, 0) / (cases.length || 1),
113
+ totalTokens: cases.reduce((a, b) => a + b.totalTokens, 0),
114
+ metrics: metricsSummary
115
+ }
116
+ };
117
+ }
118
+ resolveMetrics(metrics) {
119
+ return metrics.map((m) => {
120
+ if (typeof m === "function") return m;
121
+ const builtin = builtinMetrics[m];
122
+ if (!builtin) throw new Error(`Unknown metric: "${m}"`);
123
+ return builtin;
124
+ });
125
+ }
126
+ chunk(arr, size) {
127
+ const chunks = [];
128
+ for (let i = 0; i < arr.length; i += size) {
129
+ chunks.push(arr.slice(i, i + size));
130
+ }
131
+ return chunks;
132
+ }
133
+ };
134
+
135
+ export { TestRunner };
136
+ //# sourceMappingURL=chunk-3XELDGJA.js.map
137
+ //# sourceMappingURL=chunk-3XELDGJA.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/evaluation/test-runner.ts"],"names":[],"mappings":"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","file":"chunk-3XELDGJA.js","sourcesContent":["import type { Orka } from '../core/orka.js';\nimport type { EvalCase, MetricFn } from './metrics.js';\nimport type { Assertion, AssertionResult } from './assertions.js';\nimport type { Reporter, TestCaseReport, TestSuiteReport } from './reporters.js';\nimport { builtinMetrics } from './metrics.js';\nimport { ConsoleReporter } from './reporters.js';\n\nexport interface TestSuiteConfig {\n name: string;\n dataset: EvalCase[];\n metrics?: (string | MetricFn)[];\n assertions?: Assertion[];\n reporters?: Reporter[];\n concurrency?: number;\n bail?: boolean;\n}\n\nexport class TestRunner {\n private orka: Orka;\n\n constructor(orka: Orka) {\n this.orka = orka;\n }\n\n async run(config: TestSuiteConfig): Promise<TestSuiteReport> {\n const startTime = Date.now();\n const {\n name,\n dataset,\n metrics = ['relevance', 'faithfulness'],\n assertions = [],\n reporters = [new ConsoleReporter()],\n concurrency = 1,\n bail = false,\n } = config;\n\n const resolvedMetrics = this.resolveMetrics(metrics);\n const cases: TestCaseReport[] = [];\n\n const batches = this.chunk(dataset, concurrency);\n\n for (const batch of batches) {\n const batchResults = await Promise.all(\n batch.map(async (evalCase) => this.runCase(evalCase, resolvedMetrics, assertions))\n );\n\n for (const result of batchResults) {\n cases.push(result);\n if (bail && !result.passed) {\n break;\n }\n }\n\n if (bail && cases.some(c => !c.passed)) {\n break;\n }\n }\n\n const report = this.buildReport(name, cases, Date.now() - startTime);\n\n for (const reporter of reporters) {\n await reporter.report(report);\n }\n\n return report;\n }\n\n private async runCase(\n evalCase: EvalCase,\n metrics: MetricFn[],\n assertions: Assertion[],\n ): Promise<TestCaseReport> {\n const askResult = await this.orka.ask({\n knowledge: evalCase.knowledge,\n question: evalCase.input,\n includeContext: true,\n });\n\n const contextTexts = askResult.context?.map(c => c.content) ?? evalCase.context ?? [];\n const llm = this.orka.getLLM();\n\n const metricResults: Record<string, number> = {};\n for (const metricFn of metrics) {\n const result = await metricFn({\n input: evalCase.input,\n output: askResult.answer,\n expectedOutput: evalCase.expectedOutput,\n context: contextTexts,\n llm,\n });\n metricResults[result.name] = result.score;\n }\n\n const assertionResults: AssertionResult[] = assertions.map(assertion =>\n assertion.check({\n input: evalCase.input,\n output: askResult.answer,\n expectedOutput: evalCase.expectedOutput,\n metrics: metricResults,\n latencyMs: askResult.latencyMs,\n totalTokens: askResult.usage.totalTokens,\n })\n );\n\n const allPassed = assertionResults.length === 0 || assertionResults.every(a => a.passed);\n\n return {\n input: evalCase.input,\n output: askResult.answer,\n passed: allPassed,\n assertions: assertionResults,\n metrics: metricResults,\n latencyMs: askResult.latencyMs,\n totalTokens: askResult.usage.totalTokens,\n };\n }\n\n private buildReport(name: string, cases: TestCaseReport[], duration: number): TestSuiteReport {\n const passed = cases.filter(c => c.passed).length;\n const failed = cases.length - passed;\n\n const metricsMap: Record<string, number[]> = {};\n for (const c of cases) {\n for (const [metricName, score] of Object.entries(c.metrics)) {\n if (!metricsMap[metricName]) metricsMap[metricName] = [];\n metricsMap[metricName].push(score);\n }\n }\n\n const metricsSummary: Record<string, { average: number; min: number; max: number }> = {};\n for (const [metricName, scores] of Object.entries(metricsMap)) {\n metricsSummary[metricName] = {\n average: scores.reduce((a, b) => a + b, 0) / scores.length,\n min: Math.min(...scores),\n max: Math.max(...scores),\n };\n }\n\n return {\n name,\n timestamp: new Date().toISOString(),\n duration,\n totalCases: cases.length,\n passed,\n failed,\n passRate: cases.length > 0 ? passed / cases.length : 0,\n cases,\n summary: {\n averageLatencyMs: cases.reduce((a, b) => a + b.latencyMs, 0) / (cases.length || 1),\n totalTokens: cases.reduce((a, b) => a + b.totalTokens, 0),\n metrics: metricsSummary,\n },\n };\n }\n\n private resolveMetrics(metrics: (string | MetricFn)[]): MetricFn[] {\n return metrics.map(m => {\n if (typeof m === 'function') return m;\n const builtin = builtinMetrics[m];\n if (!builtin) throw new Error(`Unknown metric: \"${m}\"`);\n return builtin;\n });\n }\n\n private chunk<T>(arr: T[], size: number): T[][] {\n const chunks: T[][] = [];\n for (let i = 0; i < arr.length; i += size) {\n chunks.push(arr.slice(i, i + size));\n }\n return chunks;\n }\n}\n"]}
@@ -0,0 +1,90 @@
1
+ // src/evaluation/reporters.ts
2
+ var ConsoleReporter = class {
3
+ report(suite) {
4
+ const statusIcon = suite.failed === 0 ? "\u2705" : "\u274C";
5
+ console.log(`
6
+ ${statusIcon} Test Suite: ${suite.name}`);
7
+ console.log(` ${suite.passed}/${suite.totalCases} passed (${(suite.passRate * 100).toFixed(1)}%)`);
8
+ console.log(` Duration: ${suite.duration}ms | Tokens: ${suite.summary.totalTokens}`);
9
+ console.log("");
10
+ for (const testCase of suite.cases) {
11
+ const icon = testCase.passed ? " \u2705" : " \u274C";
12
+ console.log(`${icon} "${testCase.input.slice(0, 60)}${testCase.input.length > 60 ? "..." : ""}"`);
13
+ for (const assertion of testCase.assertions) {
14
+ const aIcon = assertion.passed ? " \u2713" : " \u2717";
15
+ console.log(`${aIcon} ${assertion.message}`);
16
+ }
17
+ }
18
+ if (Object.keys(suite.summary.metrics).length > 0) {
19
+ console.log("\n Metrics:");
20
+ for (const [name, stats] of Object.entries(suite.summary.metrics)) {
21
+ console.log(` ${name}: avg=${stats.average.toFixed(3)} min=${stats.min.toFixed(3)} max=${stats.max.toFixed(3)}`);
22
+ }
23
+ }
24
+ console.log("");
25
+ }
26
+ };
27
+ var JsonReporter = class {
28
+ outputPath;
29
+ constructor(outputPath) {
30
+ this.outputPath = outputPath;
31
+ }
32
+ async report(suite) {
33
+ const json = JSON.stringify(suite, null, 2);
34
+ if (this.outputPath) {
35
+ const fs = await import('fs/promises');
36
+ await fs.writeFile(this.outputPath, json, "utf-8");
37
+ console.log(`Report written to ${this.outputPath}`);
38
+ } else {
39
+ console.log(json);
40
+ }
41
+ }
42
+ };
43
+ var JUnitReporter = class {
44
+ outputPath;
45
+ constructor(outputPath) {
46
+ this.outputPath = outputPath;
47
+ }
48
+ async report(suite) {
49
+ const xml = this.toXml(suite);
50
+ const fs = await import('fs/promises');
51
+ await fs.writeFile(this.outputPath, xml, "utf-8");
52
+ console.log(`JUnit report written to ${this.outputPath}`);
53
+ }
54
+ toXml(suite) {
55
+ const failures = suite.cases.filter((c) => !c.passed);
56
+ let xml = `<?xml version="1.0" encoding="UTF-8"?>
57
+ `;
58
+ xml += `<testsuite name="${this.escapeXml(suite.name)}" tests="${suite.totalCases}" failures="${failures.length}" time="${(suite.duration / 1e3).toFixed(3)}" timestamp="${suite.timestamp}">
59
+ `;
60
+ for (const testCase of suite.cases) {
61
+ xml += ` <testcase name="${this.escapeXml(testCase.input)}" time="${(testCase.latencyMs / 1e3).toFixed(3)}">
62
+ `;
63
+ const failedAssertions = testCase.assertions.filter((a) => !a.passed);
64
+ if (failedAssertions.length > 0) {
65
+ for (const assertion of failedAssertions) {
66
+ xml += ` <failure message="${this.escapeXml(assertion.message)}" type="${this.escapeXml(assertion.name)}">
67
+ `;
68
+ xml += ` Expected: ${assertion.expected ?? "N/A"}
69
+ `;
70
+ xml += ` Actual: ${assertion.actual ?? "N/A"}
71
+ `;
72
+ xml += ` </failure>
73
+ `;
74
+ }
75
+ }
76
+ xml += ` </testcase>
77
+ `;
78
+ }
79
+ xml += `</testsuite>
80
+ `;
81
+ return xml;
82
+ }
83
+ escapeXml(str) {
84
+ return str.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&apos;");
85
+ }
86
+ };
87
+
88
+ export { ConsoleReporter, JUnitReporter, JsonReporter };
89
+ //# sourceMappingURL=chunk-4CLTJN6H.js.map
90
+ //# sourceMappingURL=chunk-4CLTJN6H.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/evaluation/reporters.ts"],"names":[],"mappings":";AAgCO,IAAM,kBAAN,MAA0C;AAAA,EAC/C,OAAO,KAAA,EAA8B;AACnC,IAAA,MAAM,UAAA,GAAa,KAAA,CAAM,MAAA,KAAW,CAAA,GAAI,QAAA,GAAM,QAAA;AAC9C,IAAA,OAAA,CAAQ,GAAA,CAAI;AAAA,EAAK,UAAU,CAAA,aAAA,EAAgB,KAAA,CAAM,IAAI,CAAA,CAAE,CAAA;AACvD,IAAA,OAAA,CAAQ,GAAA,CAAI,CAAA,GAAA,EAAM,KAAA,CAAM,MAAM,IAAI,KAAA,CAAM,UAAU,CAAA,SAAA,EAAA,CAAa,KAAA,CAAM,QAAA,GAAW,GAAA,EAAK,OAAA,CAAQ,CAAC,CAAC,CAAA,EAAA,CAAI,CAAA;AACnG,IAAA,OAAA,CAAQ,GAAA,CAAI,gBAAgB,KAAA,CAAM,QAAQ,gBAAgB,KAAA,CAAM,OAAA,CAAQ,WAAW,CAAA,CAAE,CAAA;AACrF,IAAA,OAAA,CAAQ,IAAI,EAAE,CAAA;AAEd,IAAA,KAAA,MAAW,QAAA,IAAY,MAAM,KAAA,EAAO;AAClC,MAAA,MAAM,IAAA,GAAO,QAAA,CAAS,MAAA,GAAS,UAAA,GAAQ,UAAA;AACvC,MAAA,OAAA,CAAQ,IAAI,CAAA,EAAG,IAAI,CAAA,EAAA,EAAK,QAAA,CAAS,MAAM,KAAA,CAAM,CAAA,EAAG,EAAE,CAAC,GAAG,QAAA,CAAS,KAAA,CAAM,SAAS,EAAA,GAAK,KAAA,GAAQ,EAAE,CAAA,CAAA,CAAG,CAAA;AAEhG,MAAA,KAAA,MAAW,SAAA,IAAa,SAAS,UAAA,EAAY;AAC3C,QAAA,MAAM,KAAA,GAAQ,SAAA,CAAU,MAAA,GAAS,YAAA,GAAU,YAAA;AAC3C,QAAA,OAAA,CAAQ,IAAI,CAAA,EAAG,KAAK,CAAA,CAAA,EAAI,SAAA,CAAU,OAAO,CAAA,CAAE,CAAA;AAAA,MAC7C;AAAA,IACF;AAEA,IAAA,IAAI,OAAO,IAAA,CAAK,KAAA,CAAM,QAAQ,OAAO,CAAA,CAAE,SAAS,CAAA,EAAG;AACjD,MAAA,OAAA,CAAQ,IAAI,eAAe,CAAA;AAC3B,MAAA,KAAA,MAAW,CAAC,MAAM,KAAK,CAAA,IAAK,OAAO,OAAA,CAAQ,KAAA,CAAM,OAAA,CAAQ,OAAO,CAAA,EAAG;AACjE,QAAA,OAAA,CAAQ,GAAA,CAAI,QAAQ,IAAI,CAAA,MAAA,EAAS,MAAM,OAAA,CAAQ,OAAA,CAAQ,CAAC,CAAC,CAAA,KAAA,EAAQ,MAAM,GAAA,CAAI,OAAA,CAAQ,CAAC,CAAC,CAAA,KAAA,EAAQ,MAAM,GAAA,CAAI,OAAA,CAAQ,CAAC,CAAC,CAAA,CAAE,CAAA;AAAA,MACrH;AAAA,IACF;AAEA,IAAA,OAAA,CAAQ,IAAI,EAAE,CAAA;AAAA,EAChB;AACF;AAEO,IAAM,eAAN,MAAuC;AAAA,EACpC,UAAA;AAAA,EAER,YAAY,UAAA,EAAqB;AAC/B,IAAA,IAAA,CAAK,UAAA,GAAa,UAAA;AAAA,EACpB;AAAA,EAEA,MAAM,OAAO,KAAA,EAAuC;AAClD,IAAA,MAAM,IAAA,GAAO,IAAA,CAAK,SAAA,CAAU,KAAA,EAAO,MAAM,CAAC,CAAA;AAE1C,IAAA,IAAI,KAAK,UAAA,EAAY;AACnB,MAAA,MAAM,EAAA,GAAK,MAAM,OAAO,aAAa,CAAA;AACrC,MAAA,MAAM,EAAA,CAAG,SAAA,CAAU,IAAA,CAAK,UAAA,EAAY,MAAM,OAAO,CAAA;AACjD,MAAA,OAAA,CAAQ,GAAA,CAAI,CAAA,kBAAA,EAAqB,IAAA,CAAK,UAAU,CAAA,CAAE,CAAA;AAAA,IACpD,CAAA,MAAO;AACL,MAAA,OAAA,CAAQ,IAAI,IAAI,CAAA;AAAA,IAClB;AAAA,EACF;AACF;AAEO,IAAM,gBAAN,MAAwC;AAAA,EACrC,UAAA;AAAA,EAER,YAAY,UAAA,EAAoB;AAC9B,IAAA,IAAA,CAAK,UAAA,GAAa,UAAA;AAAA,EACpB;AAAA,EAEA,MAAM,OAAO,KAAA,EAAuC;AAClD,IAAA,MAAM,GAAA,GAAM,IAAA,CAAK,KAAA,CAAM,KAAK,CAAA;AAC5B,IAAA,MAAM,EAAA,GAAK,MAAM,OAAO,aAAa,CAAA;AACrC,IAAA,MAAM,EAAA,CAAG,SAAA,CAAU,IAAA,CAAK,UAAA,EAAY,KAAK,OAAO,CAAA;AAChD,IAAA,OAAA,CAAQ,GAAA,CAAI,CAAA,wBAAA,EAA2B,IAAA,CAAK,UAAU,CAAA,CAAE,CAAA;AAAA,EAC1D;AAAA,EAEQ,MAAM,KAAA,EAAgC;AAC5C,IAAA,MAAM,WAAW,KAAA,CAAM,KAAA,CAAM,OAAO,CAAA,CAAA,KAAK,CAAC,EAAE,MAAM,CAAA;AAClD,IAAA,IAAI,GAAA,GAAM,CAAA;AAAA,CAAA;AACV,IAAA,GAAA,IAAO,CAAA,iBAAA,EAAoB,KAAK,SAAA,CAAU,KAAA,CAAM,IAAI,CAAC,CAAA,SAAA,EAAY,MAAM,UAAU,CAAA,YAAA,EAAe,SAAS,MAAM,CAAA,QAAA,EAAA,CAAY,MAAM,QAAA,GAAW,GAAA,EAAM,QAAQ,CAAC,CAAC,CAAA,aAAA,EAAgB,KAAA,CAAM,SAAS,CAAA;AAAA,CAAA;AAE3L,IAAA,KAAA,MAAW,QAAA,IAAY,MAAM,KAAA,EAAO;AAClC,MAAA,GAAA,IAAO,CAAA,kBAAA,EAAqB,IAAA,CAAK,SAAA,CAAU,QAAA,CAAS,KAAK,CAAC,CAAA,QAAA,EAAA,CAAY,QAAA,CAAS,SAAA,GAAY,GAAA,EAAM,OAAA,CAAQ,CAAC,CAAC,CAAA;AAAA,CAAA;AAE3G,MAAA,MAAM,mBAAmB,QAAA,CAAS,UAAA,CAAW,OAAO,CAAA,CAAA,KAAK,CAAC,EAAE,MAAM,CAAA;AAClE,MAAA,IAAI,gBAAA,CAAiB,SAAS,CAAA,EAAG;AAC/B,QAAA,KAAA,MAAW,aAAa,gBAAA,EAAkB;AACxC,UAAA,GAAA,IAAO,CAAA,sBAAA,EAAyB,IAAA,CAAK,SAAA,CAAU,SAAA,CAAU,OAAO,CAAC,CAAA,QAAA,EAAW,IAAA,CAAK,SAAA,CAAU,SAAA,CAAU,IAAI,CAAC,CAAA;AAAA,CAAA;AAC1G,UAAA,GAAA,IAAO,CAAA,gBAAA,EAAmB,SAAA,CAAU,QAAA,IAAY,KAAK;AAAA,CAAA;AACrD,UAAA,GAAA,IAAO,CAAA,cAAA,EAAiB,SAAA,CAAU,MAAA,IAAU,KAAK;AAAA,CAAA;AACjD,UAAA,GAAA,IAAO,CAAA;AAAA,CAAA;AAAA,QACT;AAAA,MACF;AAEA,MAAA,GAAA,IAAO,CAAA;AAAA,CAAA;AAAA,IACT;AAEA,IAAA,GAAA,IAAO,CAAA;AAAA,CAAA;AACP,IAAA,OAAO,GAAA;AAAA,EACT;AAAA,EAEQ,UAAU,GAAA,EAAqB;AACrC,IAAA,OAAO,IACJ,OAAA,CAAQ,IAAA,EAAM,OAAO,CAAA,CACrB,OAAA,CAAQ,MAAM,MAAM,CAAA,CACpB,QAAQ,IAAA,EAAM,MAAM,EACpB,OAAA,CAAQ,IAAA,EAAM,QAAQ,CAAA,CACtB,OAAA,CAAQ,MAAM,QAAQ,CAAA;AAAA,EAC3B;AACF","file":"chunk-4CLTJN6H.js","sourcesContent":["import type { AssertionResult } from './assertions.js';\n\nexport interface TestCaseReport {\n input: string;\n output: string;\n passed: boolean;\n assertions: AssertionResult[];\n metrics: Record<string, number>;\n latencyMs: number;\n totalTokens: number;\n}\n\nexport interface TestSuiteReport {\n name: string;\n timestamp: string;\n duration: number;\n totalCases: number;\n passed: number;\n failed: number;\n passRate: number;\n cases: TestCaseReport[];\n summary: {\n averageLatencyMs: number;\n totalTokens: number;\n metrics: Record<string, { average: number; min: number; max: number }>;\n };\n}\n\nexport interface Reporter {\n report(suite: TestSuiteReport): void | Promise<void>;\n}\n\nexport class ConsoleReporter implements Reporter {\n report(suite: TestSuiteReport): void {\n const statusIcon = suite.failed === 0 ? '✅' : '❌';\n console.log(`\\n${statusIcon} Test Suite: ${suite.name}`);\n console.log(` ${suite.passed}/${suite.totalCases} passed (${(suite.passRate * 100).toFixed(1)}%)`);\n console.log(` Duration: ${suite.duration}ms | Tokens: ${suite.summary.totalTokens}`);\n console.log('');\n\n for (const testCase of suite.cases) {\n const icon = testCase.passed ? ' ✅' : ' ❌';\n console.log(`${icon} \"${testCase.input.slice(0, 60)}${testCase.input.length > 60 ? '...' : ''}\"`);\n\n for (const assertion of testCase.assertions) {\n const aIcon = assertion.passed ? ' ✓' : ' ✗';\n console.log(`${aIcon} ${assertion.message}`);\n }\n }\n\n if (Object.keys(suite.summary.metrics).length > 0) {\n console.log('\\n Metrics:');\n for (const [name, stats] of Object.entries(suite.summary.metrics)) {\n console.log(` ${name}: avg=${stats.average.toFixed(3)} min=${stats.min.toFixed(3)} max=${stats.max.toFixed(3)}`);\n }\n }\n\n console.log('');\n }\n}\n\nexport class JsonReporter implements Reporter {\n private outputPath?: string;\n\n constructor(outputPath?: string) {\n this.outputPath = outputPath;\n }\n\n async report(suite: TestSuiteReport): Promise<void> {\n const json = JSON.stringify(suite, null, 2);\n\n if (this.outputPath) {\n const fs = await import('fs/promises');\n await fs.writeFile(this.outputPath, json, 'utf-8');\n console.log(`Report written to ${this.outputPath}`);\n } else {\n console.log(json);\n }\n }\n}\n\nexport class JUnitReporter implements Reporter {\n private outputPath: string;\n\n constructor(outputPath: string) {\n this.outputPath = outputPath;\n }\n\n async report(suite: TestSuiteReport): Promise<void> {\n const xml = this.toXml(suite);\n const fs = await import('fs/promises');\n await fs.writeFile(this.outputPath, xml, 'utf-8');\n console.log(`JUnit report written to ${this.outputPath}`);\n }\n\n private toXml(suite: TestSuiteReport): string {\n const failures = suite.cases.filter(c => !c.passed);\n let xml = `<?xml version=\"1.0\" encoding=\"UTF-8\"?>\\n`;\n xml += `<testsuite name=\"${this.escapeXml(suite.name)}\" tests=\"${suite.totalCases}\" failures=\"${failures.length}\" time=\"${(suite.duration / 1000).toFixed(3)}\" timestamp=\"${suite.timestamp}\">\\n`;\n\n for (const testCase of suite.cases) {\n xml += ` <testcase name=\"${this.escapeXml(testCase.input)}\" time=\"${(testCase.latencyMs / 1000).toFixed(3)}\">\\n`;\n\n const failedAssertions = testCase.assertions.filter(a => !a.passed);\n if (failedAssertions.length > 0) {\n for (const assertion of failedAssertions) {\n xml += ` <failure message=\"${this.escapeXml(assertion.message)}\" type=\"${this.escapeXml(assertion.name)}\">\\n`;\n xml += ` Expected: ${assertion.expected ?? 'N/A'}\\n`;\n xml += ` Actual: ${assertion.actual ?? 'N/A'}\\n`;\n xml += ` </failure>\\n`;\n }\n }\n\n xml += ` </testcase>\\n`;\n }\n\n xml += `</testsuite>\\n`;\n return xml;\n }\n\n private escapeXml(str: string): string {\n return str\n .replace(/&/g, '&amp;')\n .replace(/</g, '&lt;')\n .replace(/>/g, '&gt;')\n .replace(/\"/g, '&quot;')\n .replace(/'/g, '&apos;');\n }\n}\n"]}
@@ -0,0 +1,65 @@
1
+ // src/graph/helpers.ts
2
+ function actionNode(id, fn) {
3
+ return { id, type: "action", execute: fn };
4
+ }
5
+ function conditionNode(id, fn) {
6
+ return { id, type: "condition", condition: fn };
7
+ }
8
+ function parallelNode(id, nodeIds) {
9
+ return { id, type: "parallel", parallelNodes: nodeIds };
10
+ }
11
+ function startNode(id = "start") {
12
+ return { id, type: "start" };
13
+ }
14
+ function endNode(id = "end") {
15
+ return { id, type: "end" };
16
+ }
17
+ function llmNode(id, options = {}) {
18
+ return {
19
+ id,
20
+ type: "action",
21
+ async execute(ctx) {
22
+ let prompt = ctx.output || ctx.input;
23
+ if (options.promptTemplate) {
24
+ prompt = options.promptTemplate.replace("{{input}}", ctx.input).replace("{{output}}", ctx.output).replace("{{context}}", ctx.context.map((c) => c.content).join("\n---\n"));
25
+ }
26
+ const result = await ctx.llm.generate(prompt, {
27
+ systemPrompt: options.systemPrompt,
28
+ temperature: options.temperature ?? 0.7,
29
+ maxTokens: options.maxTokens ?? 1024
30
+ });
31
+ ctx.output = result.content;
32
+ return ctx;
33
+ }
34
+ };
35
+ }
36
+ function retrieveNode(id, knowledgeName, options = {}) {
37
+ return {
38
+ id,
39
+ type: "action",
40
+ async execute(ctx) {
41
+ if (!ctx.knowledge) {
42
+ throw new Error("Knowledge module not available");
43
+ }
44
+ const query = ctx.output || ctx.input;
45
+ const results = await ctx.knowledge.search(knowledgeName, query, {
46
+ topK: options.topK ?? 5,
47
+ minScore: options.minScore
48
+ });
49
+ ctx.context = results.map((r) => ({
50
+ content: r.content ?? "",
51
+ score: r.score,
52
+ metadata: r.metadata
53
+ }));
54
+ ctx.output = ctx.context.map((c) => c.content).join("\n---\n");
55
+ return ctx;
56
+ }
57
+ };
58
+ }
59
+ function edge(from, to, label) {
60
+ return { from, to, label };
61
+ }
62
+
63
+ export { actionNode, conditionNode, edge, endNode, llmNode, parallelNode, retrieveNode, startNode };
64
+ //# sourceMappingURL=chunk-4EBSDFBS.js.map
65
+ //# sourceMappingURL=chunk-4EBSDFBS.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/graph/helpers.ts"],"names":[],"mappings":"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","file":"chunk-4EBSDFBS.js","sourcesContent":["import type { GraphNode, GraphContext } from './types.js';\n\nexport function actionNode(\n id: string, \n fn: (ctx: GraphContext) => Promise<GraphContext>\n): GraphNode {\n return { id, type: 'action', execute: fn };\n}\n\nexport function conditionNode(\n id: string, \n fn: (ctx: GraphContext) => string\n): GraphNode {\n return { id, type: 'condition', condition: fn };\n}\n\nexport function parallelNode(id: string, nodeIds: string[]): GraphNode {\n return { id, type: 'parallel', parallelNodes: nodeIds };\n}\n\nexport function startNode(id = 'start'): GraphNode {\n return { id, type: 'start' };\n}\n\nexport function endNode(id = 'end'): GraphNode {\n return { id, type: 'end' };\n}\n\nexport function llmNode(id: string, options: {\n systemPrompt?: string;\n temperature?: number;\n maxTokens?: number;\n promptTemplate?: string;\n} = {}): GraphNode {\n return {\n id,\n type: 'action',\n async execute(ctx: GraphContext): Promise<GraphContext> {\n let prompt = ctx.output || ctx.input;\n if (options.promptTemplate) {\n prompt = options.promptTemplate\n .replace('{{input}}', ctx.input)\n .replace('{{output}}', ctx.output)\n .replace('{{context}}', ctx.context.map(c => c.content).join('\\n---\\n'));\n }\n\n const result = await ctx.llm.generate(prompt, {\n systemPrompt: options.systemPrompt,\n temperature: options.temperature ?? 0.7,\n maxTokens: options.maxTokens ?? 1024,\n });\n\n ctx.output = result.content;\n return ctx;\n },\n };\n}\n\nexport function retrieveNode(id: string, knowledgeName: string, options: {\n topK?: number;\n minScore?: number;\n} = {}): GraphNode {\n return {\n id,\n type: 'action',\n async execute(ctx: GraphContext): Promise<GraphContext> {\n if (!ctx.knowledge) {\n throw new Error('Knowledge module not available');\n }\n\n const query = ctx.output || ctx.input;\n const results = await ctx.knowledge.search(knowledgeName, query, {\n topK: options.topK ?? 5,\n minScore: options.minScore,\n });\n\n ctx.context = results.map(r => ({\n content: r.content ?? '',\n score: r.score,\n metadata: r.metadata,\n }));\n\n ctx.output = ctx.context.map(c => c.content).join('\\n---\\n');\n return ctx;\n },\n };\n}\n\nexport function edge(from: string, to: string, label?: string) {\n return { from, to, label };\n}\n"]}