@ax-llm/ax 9.0.21 → 9.0.22

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 (570) hide show
  1. package/ai/anthropic/api.d.ts +19 -0
  2. package/ai/anthropic/api.js +326 -0
  3. package/ai/anthropic/api.js.map +1 -0
  4. package/ai/anthropic/index.d.ts +2 -0
  5. package/ai/anthropic/index.js +3 -0
  6. package/ai/anthropic/index.js.map +1 -0
  7. package/ai/anthropic/info.d.ts +2 -0
  8. package/ai/anthropic/info.js +40 -0
  9. package/ai/anthropic/info.js.map +1 -0
  10. package/ai/anthropic/types.d.ts +171 -0
  11. package/ai/anthropic/types.js +10 -0
  12. package/ai/anthropic/types.js.map +1 -0
  13. package/ai/azure-openai/api.d.ts +19 -0
  14. package/ai/azure-openai/api.js +30 -0
  15. package/ai/azure-openai/api.js.map +1 -0
  16. package/ai/azure-openai/index.d.ts +1 -0
  17. package/ai/azure-openai/index.js +2 -0
  18. package/ai/azure-openai/index.js.map +1 -0
  19. package/ai/balance.d.ts +23 -0
  20. package/ai/balance.js +87 -0
  21. package/ai/balance.js.map +1 -0
  22. package/ai/base.d.ts +55 -0
  23. package/ai/base.js +343 -0
  24. package/ai/base.js.map +1 -0
  25. package/ai/cohere/api.d.ts +22 -0
  26. package/ai/cohere/api.js +264 -0
  27. package/ai/cohere/api.js.map +1 -0
  28. package/ai/cohere/index.d.ts +2 -0
  29. package/ai/cohere/index.js +3 -0
  30. package/ai/cohere/index.js.map +1 -0
  31. package/ai/cohere/info.d.ts +2 -0
  32. package/ai/cohere/info.js +52 -0
  33. package/ai/cohere/info.js.map +1 -0
  34. package/ai/cohere/types.d.ts +102 -0
  35. package/ai/cohere/types.js +23 -0
  36. package/ai/cohere/types.js.map +1 -0
  37. package/ai/deepseek/api.d.ts +16 -0
  38. package/ai/deepseek/api.js +32 -0
  39. package/ai/deepseek/api.js.map +1 -0
  40. package/ai/deepseek/index.d.ts +2 -0
  41. package/ai/deepseek/index.js +3 -0
  42. package/ai/deepseek/index.js.map +1 -0
  43. package/ai/deepseek/info.d.ts +2 -0
  44. package/ai/deepseek/info.js +16 -0
  45. package/ai/deepseek/info.js.map +1 -0
  46. package/ai/deepseek/types.d.ts +8 -0
  47. package/ai/deepseek/types.js +10 -0
  48. package/ai/deepseek/types.js.map +1 -0
  49. package/ai/google-gemini/api.d.ts +36 -0
  50. package/ai/google-gemini/api.js +299 -0
  51. package/ai/google-gemini/api.js.map +1 -0
  52. package/ai/google-gemini/index.d.ts +2 -0
  53. package/ai/google-gemini/index.js +3 -0
  54. package/ai/google-gemini/index.js.map +1 -0
  55. package/ai/google-gemini/info.d.ts +6 -0
  56. package/ai/google-gemini/info.js +29 -0
  57. package/ai/google-gemini/info.js.map +1 -0
  58. package/ai/google-gemini/types.d.ts +146 -0
  59. package/ai/google-gemini/types.js +27 -0
  60. package/ai/google-gemini/types.js.map +1 -0
  61. package/ai/groq/api.d.ts +18 -0
  62. package/ai/groq/api.js +52 -0
  63. package/ai/groq/api.js.map +1 -0
  64. package/ai/groq/index.d.ts +1 -0
  65. package/ai/groq/index.js +2 -0
  66. package/ai/groq/index.js.map +1 -0
  67. package/ai/groq/types.d.ts +6 -0
  68. package/ai/groq/types.js +8 -0
  69. package/ai/groq/types.js.map +1 -0
  70. package/ai/huggingface/api.d.ts +19 -0
  71. package/ai/huggingface/api.js +115 -0
  72. package/ai/huggingface/api.js.map +1 -0
  73. package/ai/huggingface/index.d.ts +2 -0
  74. package/ai/huggingface/index.js +3 -0
  75. package/ai/huggingface/index.js.map +1 -0
  76. package/ai/huggingface/info.d.ts +6 -0
  77. package/ai/huggingface/info.js +6 -0
  78. package/ai/huggingface/info.js.map +1 -0
  79. package/ai/huggingface/types.d.ts +34 -0
  80. package/ai/huggingface/types.js +5 -0
  81. package/ai/huggingface/types.js.map +1 -0
  82. package/ai/index.d.ts +16 -0
  83. package/ai/index.js +16 -0
  84. package/ai/index.js.map +1 -0
  85. package/ai/mistral/api.d.ts +16 -0
  86. package/ai/mistral/api.js +32 -0
  87. package/ai/mistral/api.js.map +1 -0
  88. package/ai/mistral/index.d.ts +2 -0
  89. package/ai/mistral/index.js +3 -0
  90. package/ai/mistral/index.js.map +1 -0
  91. package/ai/mistral/info.d.ts +2 -0
  92. package/ai/mistral/info.js +34 -0
  93. package/ai/mistral/info.js.map +1 -0
  94. package/ai/mistral/types.d.ts +10 -0
  95. package/ai/mistral/types.js +13 -0
  96. package/ai/mistral/types.js.map +1 -0
  97. package/ai/ollama/api.d.ts +22 -0
  98. package/ai/ollama/api.js +32 -0
  99. package/ai/ollama/api.js.map +1 -0
  100. package/ai/ollama/index.d.ts +1 -0
  101. package/ai/ollama/index.js +2 -0
  102. package/ai/ollama/index.js.map +1 -0
  103. package/ai/openai/api.d.ts +29 -0
  104. package/ai/openai/api.js +283 -0
  105. package/ai/openai/api.js.map +1 -0
  106. package/ai/openai/index.d.ts +2 -0
  107. package/ai/openai/index.js +3 -0
  108. package/ai/openai/index.js.map +1 -0
  109. package/ai/openai/info.d.ts +6 -0
  110. package/ai/openai/info.js +50 -0
  111. package/ai/openai/info.js.map +1 -0
  112. package/ai/openai/types.d.ts +165 -0
  113. package/ai/openai/types.js +18 -0
  114. package/ai/openai/types.js.map +1 -0
  115. package/ai/together/api.d.ts +15 -0
  116. package/ai/together/api.js +28 -0
  117. package/ai/together/api.js.map +1 -0
  118. package/ai/together/index.d.ts +1 -0
  119. package/ai/together/index.js +2 -0
  120. package/ai/together/index.js.map +1 -0
  121. package/ai/together/info.d.ts +2 -0
  122. package/ai/together/info.js +2 -0
  123. package/ai/together/info.js.map +1 -0
  124. package/ai/types.d.ts +159 -0
  125. package/ai/types.js +2 -0
  126. package/ai/types.js.map +1 -0
  127. package/ai/util.d.ts +12 -0
  128. package/ai/util.js +63 -0
  129. package/ai/util.js.map +1 -0
  130. package/ai/wrap.d.ts +47 -0
  131. package/ai/wrap.js +95 -0
  132. package/ai/wrap.js.map +1 -0
  133. package/cjs/ai/anthropic/api.d.ts +19 -0
  134. package/cjs/ai/anthropic/api.js +331 -0
  135. package/cjs/ai/anthropic/api.js.map +1 -0
  136. package/cjs/ai/anthropic/index.d.ts +2 -0
  137. package/cjs/ai/anthropic/index.js +19 -0
  138. package/cjs/ai/anthropic/index.js.map +1 -0
  139. package/cjs/ai/anthropic/info.d.ts +2 -0
  140. package/cjs/ai/anthropic/info.js +43 -0
  141. package/cjs/ai/anthropic/info.js.map +1 -0
  142. package/cjs/ai/anthropic/types.d.ts +171 -0
  143. package/cjs/ai/anthropic/types.js +13 -0
  144. package/cjs/ai/anthropic/types.js.map +1 -0
  145. package/cjs/ai/azure-openai/api.d.ts +19 -0
  146. package/cjs/ai/azure-openai/api.js +34 -0
  147. package/cjs/ai/azure-openai/api.js.map +1 -0
  148. package/cjs/ai/azure-openai/index.d.ts +1 -0
  149. package/cjs/ai/azure-openai/index.js +18 -0
  150. package/cjs/ai/azure-openai/index.js.map +1 -0
  151. package/cjs/ai/balance.d.ts +23 -0
  152. package/cjs/ai/balance.js +91 -0
  153. package/cjs/ai/balance.js.map +1 -0
  154. package/cjs/ai/base.d.ts +55 -0
  155. package/cjs/ai/base.js +349 -0
  156. package/cjs/ai/base.js.map +1 -0
  157. package/cjs/ai/cohere/api.d.ts +22 -0
  158. package/cjs/ai/cohere/api.js +270 -0
  159. package/cjs/ai/cohere/api.js.map +1 -0
  160. package/cjs/ai/cohere/index.d.ts +2 -0
  161. package/cjs/ai/cohere/index.js +19 -0
  162. package/cjs/ai/cohere/index.js.map +1 -0
  163. package/cjs/ai/cohere/info.d.ts +2 -0
  164. package/cjs/ai/cohere/info.js +55 -0
  165. package/cjs/ai/cohere/info.js.map +1 -0
  166. package/cjs/ai/cohere/types.d.ts +102 -0
  167. package/cjs/ai/cohere/types.js +26 -0
  168. package/cjs/ai/cohere/types.js.map +1 -0
  169. package/cjs/ai/deepseek/api.d.ts +16 -0
  170. package/cjs/ai/deepseek/api.js +38 -0
  171. package/cjs/ai/deepseek/api.js.map +1 -0
  172. package/cjs/ai/deepseek/index.d.ts +2 -0
  173. package/cjs/ai/deepseek/index.js +19 -0
  174. package/cjs/ai/deepseek/index.js.map +1 -0
  175. package/cjs/ai/deepseek/info.d.ts +2 -0
  176. package/cjs/ai/deepseek/info.js +19 -0
  177. package/cjs/ai/deepseek/info.js.map +1 -0
  178. package/cjs/ai/deepseek/types.d.ts +8 -0
  179. package/cjs/ai/deepseek/types.js +13 -0
  180. package/cjs/ai/deepseek/types.js.map +1 -0
  181. package/cjs/ai/google-gemini/api.d.ts +36 -0
  182. package/cjs/ai/google-gemini/api.js +305 -0
  183. package/cjs/ai/google-gemini/api.js.map +1 -0
  184. package/cjs/ai/google-gemini/index.d.ts +2 -0
  185. package/cjs/ai/google-gemini/index.js +19 -0
  186. package/cjs/ai/google-gemini/index.js.map +1 -0
  187. package/cjs/ai/google-gemini/info.d.ts +6 -0
  188. package/cjs/ai/google-gemini/info.js +32 -0
  189. package/cjs/ai/google-gemini/info.js.map +1 -0
  190. package/cjs/ai/google-gemini/types.d.ts +146 -0
  191. package/cjs/ai/google-gemini/types.js +30 -0
  192. package/cjs/ai/google-gemini/types.js.map +1 -0
  193. package/cjs/ai/groq/api.d.ts +18 -0
  194. package/cjs/ai/groq/api.js +56 -0
  195. package/cjs/ai/groq/api.js.map +1 -0
  196. package/cjs/ai/groq/index.d.ts +1 -0
  197. package/cjs/ai/groq/index.js +18 -0
  198. package/cjs/ai/groq/index.js.map +1 -0
  199. package/cjs/ai/groq/types.d.ts +6 -0
  200. package/cjs/ai/groq/types.js +11 -0
  201. package/cjs/ai/groq/types.js.map +1 -0
  202. package/cjs/ai/huggingface/api.d.ts +19 -0
  203. package/cjs/ai/huggingface/api.js +121 -0
  204. package/cjs/ai/huggingface/api.js.map +1 -0
  205. package/cjs/ai/huggingface/index.d.ts +2 -0
  206. package/cjs/ai/huggingface/index.js +19 -0
  207. package/cjs/ai/huggingface/index.js.map +1 -0
  208. package/cjs/ai/huggingface/info.d.ts +6 -0
  209. package/cjs/ai/huggingface/info.js +9 -0
  210. package/cjs/ai/huggingface/info.js.map +1 -0
  211. package/cjs/ai/huggingface/types.d.ts +34 -0
  212. package/cjs/ai/huggingface/types.js +8 -0
  213. package/cjs/ai/huggingface/types.js.map +1 -0
  214. package/cjs/ai/index.d.ts +16 -0
  215. package/cjs/ai/index.js +32 -0
  216. package/cjs/ai/index.js.map +1 -0
  217. package/cjs/ai/mistral/api.d.ts +16 -0
  218. package/cjs/ai/mistral/api.js +38 -0
  219. package/cjs/ai/mistral/api.js.map +1 -0
  220. package/cjs/ai/mistral/index.d.ts +2 -0
  221. package/cjs/ai/mistral/index.js +19 -0
  222. package/cjs/ai/mistral/index.js.map +1 -0
  223. package/cjs/ai/mistral/info.d.ts +2 -0
  224. package/cjs/ai/mistral/info.js +37 -0
  225. package/cjs/ai/mistral/info.js.map +1 -0
  226. package/cjs/ai/mistral/types.d.ts +10 -0
  227. package/cjs/ai/mistral/types.js +16 -0
  228. package/cjs/ai/mistral/types.js.map +1 -0
  229. package/cjs/ai/ollama/api.d.ts +22 -0
  230. package/cjs/ai/ollama/api.js +38 -0
  231. package/cjs/ai/ollama/api.js.map +1 -0
  232. package/cjs/ai/ollama/index.d.ts +1 -0
  233. package/cjs/ai/ollama/index.js +18 -0
  234. package/cjs/ai/ollama/index.js.map +1 -0
  235. package/cjs/ai/openai/api.d.ts +29 -0
  236. package/cjs/ai/openai/api.js +291 -0
  237. package/cjs/ai/openai/api.js.map +1 -0
  238. package/cjs/ai/openai/index.d.ts +2 -0
  239. package/cjs/ai/openai/index.js +19 -0
  240. package/cjs/ai/openai/index.js.map +1 -0
  241. package/cjs/ai/openai/info.d.ts +6 -0
  242. package/cjs/ai/openai/info.js +53 -0
  243. package/cjs/ai/openai/info.js.map +1 -0
  244. package/cjs/ai/openai/types.d.ts +165 -0
  245. package/cjs/ai/openai/types.js +21 -0
  246. package/cjs/ai/openai/types.js.map +1 -0
  247. package/cjs/ai/together/api.d.ts +15 -0
  248. package/cjs/ai/together/api.js +33 -0
  249. package/cjs/ai/together/api.js.map +1 -0
  250. package/cjs/ai/together/index.d.ts +1 -0
  251. package/cjs/ai/together/index.js +18 -0
  252. package/cjs/ai/together/index.js.map +1 -0
  253. package/cjs/ai/together/info.d.ts +2 -0
  254. package/cjs/ai/together/info.js +5 -0
  255. package/cjs/ai/together/info.js.map +1 -0
  256. package/cjs/ai/types.d.ts +159 -0
  257. package/cjs/ai/types.js +3 -0
  258. package/cjs/ai/types.js.map +1 -0
  259. package/cjs/ai/util.d.ts +12 -0
  260. package/cjs/ai/util.js +71 -0
  261. package/cjs/ai/util.js.map +1 -0
  262. package/cjs/ai/wrap.d.ts +47 -0
  263. package/cjs/ai/wrap.js +99 -0
  264. package/cjs/ai/wrap.js.map +1 -0
  265. package/cjs/db/base.d.ts +23 -0
  266. package/cjs/db/base.js +91 -0
  267. package/cjs/db/base.js.map +1 -0
  268. package/cjs/db/cloudflare.d.ts +21 -0
  269. package/cjs/db/cloudflare.js +102 -0
  270. package/cjs/db/cloudflare.js.map +1 -0
  271. package/cjs/db/index.d.ts +6 -0
  272. package/cjs/db/index.js +23 -0
  273. package/cjs/db/index.js.map +1 -0
  274. package/cjs/db/memory.d.ts +21 -0
  275. package/cjs/db/memory.js +103 -0
  276. package/cjs/db/memory.js.map +1 -0
  277. package/cjs/db/pinecone.d.ts +21 -0
  278. package/cjs/db/pinecone.js +75 -0
  279. package/cjs/db/pinecone.js.map +1 -0
  280. package/cjs/db/types.d.ts +35 -0
  281. package/cjs/db/types.js +4 -0
  282. package/cjs/db/types.js.map +1 -0
  283. package/cjs/db/weaviate.d.ts +21 -0
  284. package/cjs/db/weaviate.js +131 -0
  285. package/cjs/db/weaviate.js.map +1 -0
  286. package/cjs/db/wrap.d.ts +13 -0
  287. package/cjs/db/wrap.js +39 -0
  288. package/cjs/db/wrap.js.map +1 -0
  289. package/cjs/docs/index.d.ts +4 -0
  290. package/cjs/docs/index.js +21 -0
  291. package/cjs/docs/index.js.map +1 -0
  292. package/cjs/docs/manager.d.ts +45 -0
  293. package/cjs/docs/manager.js +162 -0
  294. package/cjs/docs/manager.js.map +1 -0
  295. package/cjs/docs/reranker.d.ts +7 -0
  296. package/cjs/docs/reranker.js +30 -0
  297. package/cjs/docs/reranker.js.map +1 -0
  298. package/cjs/docs/rewriter.d.ts +4 -0
  299. package/cjs/docs/rewriter.js +13 -0
  300. package/cjs/docs/rewriter.js.map +1 -0
  301. package/cjs/docs/tika.d.ts +18 -0
  302. package/cjs/docs/tika.js +50 -0
  303. package/cjs/docs/tika.js.map +1 -0
  304. package/cjs/dsp/asserts.d.ts +32 -0
  305. package/cjs/dsp/asserts.js +98 -0
  306. package/cjs/dsp/asserts.js.map +1 -0
  307. package/cjs/dsp/eval.d.ts +43 -0
  308. package/cjs/dsp/eval.js +128 -0
  309. package/cjs/dsp/eval.js.map +1 -0
  310. package/cjs/dsp/evaluate.d.ts +12 -0
  311. package/cjs/dsp/evaluate.js +36 -0
  312. package/cjs/dsp/evaluate.js.map +1 -0
  313. package/cjs/dsp/extract.d.ts +25 -0
  314. package/cjs/dsp/extract.js +164 -0
  315. package/cjs/dsp/extract.js.map +1 -0
  316. package/cjs/dsp/generate.d.ts +55 -0
  317. package/cjs/dsp/generate.js +314 -0
  318. package/cjs/dsp/generate.js.map +1 -0
  319. package/cjs/dsp/index.d.ts +15 -0
  320. package/cjs/dsp/index.js +27 -0
  321. package/cjs/dsp/index.js.map +1 -0
  322. package/cjs/dsp/loader.d.ts +30 -0
  323. package/cjs/dsp/loader.js +85 -0
  324. package/cjs/dsp/loader.js.map +1 -0
  325. package/cjs/dsp/optimize.d.ts +27 -0
  326. package/cjs/dsp/optimize.js +99 -0
  327. package/cjs/dsp/optimize.js.map +1 -0
  328. package/cjs/dsp/parser.d.ts +87 -0
  329. package/cjs/dsp/parser.js +1545 -0
  330. package/cjs/dsp/parser.js.map +1 -0
  331. package/cjs/dsp/program.d.ts +73 -0
  332. package/cjs/dsp/program.js +120 -0
  333. package/cjs/dsp/program.js.map +1 -0
  334. package/cjs/dsp/prompt.d.ts +48 -0
  335. package/cjs/dsp/prompt.js +263 -0
  336. package/cjs/dsp/prompt.js.map +1 -0
  337. package/cjs/dsp/registry.d.ts +6 -0
  338. package/cjs/dsp/registry.js +19 -0
  339. package/cjs/dsp/registry.js.map +1 -0
  340. package/cjs/dsp/router.d.ts +26 -0
  341. package/cjs/dsp/router.js +76 -0
  342. package/cjs/dsp/router.js.map +1 -0
  343. package/cjs/dsp/sig.d.ts +37 -0
  344. package/cjs/dsp/sig.js +197 -0
  345. package/cjs/dsp/sig.js.map +1 -0
  346. package/cjs/dsp/stopwords.d.ts +1 -0
  347. package/cjs/dsp/stopwords.js +1167 -0
  348. package/cjs/dsp/stopwords.js.map +1 -0
  349. package/cjs/dsp/strutil.d.ts +11 -0
  350. package/cjs/dsp/strutil.js +63 -0
  351. package/cjs/dsp/strutil.js.map +1 -0
  352. package/cjs/dsp/util.d.ts +5 -0
  353. package/cjs/dsp/util.js +82 -0
  354. package/cjs/dsp/util.js.map +1 -0
  355. package/cjs/funcs/code.d.ts +9 -0
  356. package/cjs/funcs/code.js +90 -0
  357. package/cjs/funcs/code.js.map +1 -0
  358. package/cjs/funcs/embed.d.ts +6 -0
  359. package/cjs/funcs/embed.js +33 -0
  360. package/cjs/funcs/embed.js.map +1 -0
  361. package/cjs/funcs/functions.d.ts +16 -0
  362. package/cjs/funcs/functions.js +62 -0
  363. package/cjs/funcs/functions.js.map +1 -0
  364. package/cjs/funcs/index.d.ts +3 -0
  365. package/cjs/funcs/index.js +20 -0
  366. package/cjs/funcs/index.js.map +1 -0
  367. package/cjs/funcs/jsonschema.d.ts +2 -0
  368. package/cjs/funcs/jsonschema.js +101 -0
  369. package/cjs/funcs/jsonschema.js.map +1 -0
  370. package/cjs/index.d.ts +9 -0
  371. package/cjs/index.js +34 -0
  372. package/cjs/index.js.map +1 -0
  373. package/cjs/mem/index.d.ts +2 -0
  374. package/cjs/mem/index.js +19 -0
  375. package/cjs/mem/index.js.map +1 -0
  376. package/cjs/mem/memory.d.ts +16 -0
  377. package/cjs/mem/memory.js +81 -0
  378. package/cjs/mem/memory.js.map +1 -0
  379. package/cjs/mem/types.d.ts +10 -0
  380. package/cjs/mem/types.js +3 -0
  381. package/cjs/mem/types.js.map +1 -0
  382. package/cjs/prompts/agent.d.ts +34 -0
  383. package/cjs/prompts/agent.js +110 -0
  384. package/cjs/prompts/agent.js.map +1 -0
  385. package/cjs/prompts/cot.d.ts +9 -0
  386. package/cjs/prompts/cot.js +21 -0
  387. package/cjs/prompts/cot.js.map +1 -0
  388. package/cjs/prompts/index.d.ts +4 -0
  389. package/cjs/prompts/index.js +21 -0
  390. package/cjs/prompts/index.js.map +1 -0
  391. package/cjs/prompts/rag.d.ts +23 -0
  392. package/cjs/prompts/rag.js +33 -0
  393. package/cjs/prompts/rag.js.map +1 -0
  394. package/cjs/prompts/react.d.ts +8 -0
  395. package/cjs/prompts/react.js +26 -0
  396. package/cjs/prompts/react.js.map +1 -0
  397. package/cjs/trace/index.d.ts +171 -0
  398. package/cjs/trace/index.js +70 -0
  399. package/cjs/trace/index.js.map +1 -0
  400. package/cjs/util/apicall.d.ts +18 -0
  401. package/cjs/util/apicall.js +57 -0
  402. package/cjs/util/apicall.js.map +1 -0
  403. package/cjs/util/log.d.ts +14 -0
  404. package/cjs/util/log.js +35 -0
  405. package/cjs/util/log.js.map +1 -0
  406. package/cjs/util/other.d.ts +1 -0
  407. package/cjs/util/other.js +8 -0
  408. package/cjs/util/other.js.map +1 -0
  409. package/cjs/util/rate-limit.d.ts +24 -0
  410. package/cjs/util/rate-limit.js +53 -0
  411. package/cjs/util/rate-limit.js.map +1 -0
  412. package/cjs/util/stream.d.ts +9 -0
  413. package/cjs/util/stream.js +33 -0
  414. package/cjs/util/stream.js.map +1 -0
  415. package/cjs/util/transform.d.ts +7 -0
  416. package/cjs/util/transform.js +64 -0
  417. package/cjs/util/transform.js.map +1 -0
  418. package/db/base.d.ts +23 -0
  419. package/db/base.js +87 -0
  420. package/db/base.js.map +1 -0
  421. package/db/cloudflare.d.ts +21 -0
  422. package/db/cloudflare.js +98 -0
  423. package/db/cloudflare.js.map +1 -0
  424. package/db/index.d.ts +6 -0
  425. package/db/index.js +7 -0
  426. package/db/index.js.map +1 -0
  427. package/db/memory.d.ts +21 -0
  428. package/db/memory.js +99 -0
  429. package/db/memory.js.map +1 -0
  430. package/db/pinecone.d.ts +21 -0
  431. package/db/pinecone.js +71 -0
  432. package/db/pinecone.js.map +1 -0
  433. package/db/types.d.ts +35 -0
  434. package/db/types.js +3 -0
  435. package/db/types.js.map +1 -0
  436. package/db/weaviate.d.ts +21 -0
  437. package/db/weaviate.js +127 -0
  438. package/db/weaviate.js.map +1 -0
  439. package/db/wrap.d.ts +13 -0
  440. package/db/wrap.js +35 -0
  441. package/db/wrap.js.map +1 -0
  442. package/docs/index.d.ts +4 -0
  443. package/docs/index.js +5 -0
  444. package/docs/index.js.map +1 -0
  445. package/docs/manager.d.ts +45 -0
  446. package/docs/manager.js +159 -0
  447. package/docs/manager.js.map +1 -0
  448. package/docs/reranker.d.ts +7 -0
  449. package/docs/reranker.js +26 -0
  450. package/docs/reranker.js.map +1 -0
  451. package/docs/rewriter.d.ts +4 -0
  452. package/docs/rewriter.js +9 -0
  453. package/docs/rewriter.js.map +1 -0
  454. package/docs/tika.d.ts +18 -0
  455. package/docs/tika.js +46 -0
  456. package/docs/tika.js.map +1 -0
  457. package/dsp/asserts.d.ts +32 -0
  458. package/dsp/asserts.js +91 -0
  459. package/dsp/asserts.js.map +1 -0
  460. package/dsp/eval.d.ts +43 -0
  461. package/dsp/eval.js +125 -0
  462. package/dsp/eval.js.map +1 -0
  463. package/dsp/evaluate.d.ts +12 -0
  464. package/dsp/evaluate.js +32 -0
  465. package/dsp/evaluate.js.map +1 -0
  466. package/dsp/extract.d.ts +25 -0
  467. package/dsp/extract.js +153 -0
  468. package/dsp/extract.js.map +1 -0
  469. package/dsp/generate.d.ts +55 -0
  470. package/dsp/generate.js +311 -0
  471. package/dsp/generate.js.map +1 -0
  472. package/dsp/index.d.ts +15 -0
  473. package/dsp/index.js +11 -0
  474. package/dsp/index.js.map +1 -0
  475. package/dsp/loader.d.ts +30 -0
  476. package/dsp/loader.js +81 -0
  477. package/dsp/loader.js.map +1 -0
  478. package/dsp/optimize.d.ts +27 -0
  479. package/dsp/optimize.js +95 -0
  480. package/dsp/optimize.js.map +1 -0
  481. package/dsp/parser.d.ts +87 -0
  482. package/dsp/parser.js +1542 -0
  483. package/dsp/parser.js.map +1 -0
  484. package/dsp/program.d.ts +73 -0
  485. package/dsp/program.js +116 -0
  486. package/dsp/program.js.map +1 -0
  487. package/dsp/prompt.d.ts +48 -0
  488. package/dsp/prompt.js +260 -0
  489. package/dsp/prompt.js.map +1 -0
  490. package/dsp/registry.d.ts +6 -0
  491. package/dsp/registry.js +15 -0
  492. package/dsp/registry.js.map +1 -0
  493. package/dsp/router.d.ts +26 -0
  494. package/dsp/router.js +71 -0
  495. package/dsp/router.js.map +1 -0
  496. package/dsp/sig.d.ts +37 -0
  497. package/dsp/sig.js +193 -0
  498. package/dsp/sig.js.map +1 -0
  499. package/dsp/stopwords.d.ts +1 -0
  500. package/dsp/stopwords.js +1164 -0
  501. package/dsp/stopwords.js.map +1 -0
  502. package/dsp/strutil.d.ts +11 -0
  503. package/dsp/strutil.js +60 -0
  504. package/dsp/strutil.js.map +1 -0
  505. package/dsp/util.d.ts +5 -0
  506. package/dsp/util.js +76 -0
  507. package/dsp/util.js.map +1 -0
  508. package/funcs/code.d.ts +9 -0
  509. package/funcs/code.js +63 -0
  510. package/funcs/code.js.map +1 -0
  511. package/funcs/embed.d.ts +6 -0
  512. package/funcs/embed.js +29 -0
  513. package/funcs/embed.js.map +1 -0
  514. package/funcs/functions.d.ts +16 -0
  515. package/funcs/functions.js +55 -0
  516. package/funcs/functions.js.map +1 -0
  517. package/funcs/index.d.ts +3 -0
  518. package/funcs/index.js +4 -0
  519. package/funcs/index.js.map +1 -0
  520. package/funcs/jsonschema.d.ts +2 -0
  521. package/funcs/jsonschema.js +97 -0
  522. package/funcs/jsonschema.js.map +1 -0
  523. package/index.d.ts +9 -0
  524. package/index.js.map +1 -0
  525. package/mem/index.d.ts +2 -0
  526. package/mem/index.js +3 -0
  527. package/mem/index.js.map +1 -0
  528. package/mem/memory.d.ts +16 -0
  529. package/mem/memory.js +77 -0
  530. package/mem/memory.js.map +1 -0
  531. package/mem/types.d.ts +10 -0
  532. package/mem/types.js +2 -0
  533. package/mem/types.js.map +1 -0
  534. package/package.json +4 -7
  535. package/prompts/agent.d.ts +34 -0
  536. package/prompts/agent.js +108 -0
  537. package/prompts/agent.js.map +1 -0
  538. package/prompts/cot.d.ts +9 -0
  539. package/prompts/cot.js +17 -0
  540. package/prompts/cot.js.map +1 -0
  541. package/prompts/index.d.ts +4 -0
  542. package/prompts/index.js +5 -0
  543. package/prompts/index.js.map +1 -0
  544. package/prompts/rag.d.ts +23 -0
  545. package/prompts/rag.js +30 -0
  546. package/prompts/rag.js.map +1 -0
  547. package/prompts/react.d.ts +8 -0
  548. package/prompts/react.js +22 -0
  549. package/prompts/react.js.map +1 -0
  550. package/trace/index.d.ts +171 -0
  551. package/trace/index.js +67 -0
  552. package/trace/index.js.map +1 -0
  553. package/util/apicall.d.ts +18 -0
  554. package/util/apicall.js +50 -0
  555. package/util/apicall.js.map +1 -0
  556. package/util/log.d.ts +14 -0
  557. package/util/log.js +31 -0
  558. package/util/log.js.map +1 -0
  559. package/util/other.d.ts +1 -0
  560. package/util/other.js +5 -0
  561. package/util/other.js.map +1 -0
  562. package/util/rate-limit.d.ts +24 -0
  563. package/util/rate-limit.js +49 -0
  564. package/util/rate-limit.js.map +1 -0
  565. package/util/stream.d.ts +9 -0
  566. package/util/stream.js +29 -0
  567. package/util/stream.js.map +1 -0
  568. package/util/transform.d.ts +7 -0
  569. package/util/transform.js +59 -0
  570. package/util/transform.js.map +1 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../dsp/parser.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,73 @@
1
+ import type { AxAIService, AxChatResponse, AxModelConfig, AxRateLimiterFunction } from '../ai/types.js';
2
+ import type { AxAIMemory } from '../mem/types.js';
3
+ import type { AxTracer } from '../trace/index.js';
4
+ import { AxSignature } from './sig.js';
5
+ export type AxFieldValue = string | string[] | number | boolean | object | {
6
+ mimeType: string;
7
+ data: string;
8
+ };
9
+ export type AxGenIn = Record<string, AxFieldValue>;
10
+ export type AxGenOut = Record<string, AxFieldValue>;
11
+ export type AxProgramTrace = {
12
+ trace: Record<string, AxFieldValue>;
13
+ programId: string;
14
+ };
15
+ export type AxProgramDemos = {
16
+ traces: Record<string, AxFieldValue>[];
17
+ programId: string;
18
+ };
19
+ export type AxProgramExamples = AxProgramDemos | AxProgramDemos['traces'];
20
+ export type AxProgramForwardOptions = {
21
+ maxCompletions?: number;
22
+ maxRetries?: number;
23
+ maxSteps?: number;
24
+ mem?: AxAIMemory;
25
+ ai?: AxAIService;
26
+ modelConfig?: AxModelConfig;
27
+ model?: string;
28
+ sessionId?: string;
29
+ traceId?: string | undefined;
30
+ tracer?: AxTracer;
31
+ rateLimiter?: AxRateLimiterFunction;
32
+ stream?: boolean;
33
+ debug?: boolean;
34
+ };
35
+ export interface AxTunable {
36
+ setExamples: (examples: Readonly<AxProgramExamples>) => void;
37
+ setId: (id: string) => void;
38
+ setParentId: (parentId: string) => void;
39
+ getTraces: () => AxProgramTrace[];
40
+ getSignature: () => AxSignature;
41
+ setDemos: (demos: readonly AxProgramDemos[]) => void;
42
+ }
43
+ export interface AxUsable {
44
+ getUsage: () => AxProgramUsage[];
45
+ resetUsage: () => void;
46
+ }
47
+ export type AxProgramUsage = AxChatResponse['modelUsage'] & {
48
+ ai: string;
49
+ model: string;
50
+ };
51
+ export declare class AxProgram<IN extends AxGenIn, OUT extends AxGenOut> implements AxTunable, AxUsable {
52
+ protected signature: AxSignature;
53
+ protected sigHash: string;
54
+ protected ai: AxAIService;
55
+ protected examples?: Record<string, AxFieldValue>[];
56
+ protected demos?: Record<string, AxFieldValue>[];
57
+ protected trace?: Record<string, AxFieldValue>;
58
+ protected usage: AxProgramUsage[];
59
+ private key;
60
+ private children;
61
+ constructor(ai: AxAIService, signature: Readonly<AxSignature | string>);
62
+ getSignature(): AxSignature;
63
+ register(prog: Readonly<AxTunable & AxUsable>): void;
64
+ forward(_arg0: IN, _options?: Readonly<AxProgramForwardOptions>): Promise<OUT>;
65
+ setId(id: string): void;
66
+ setParentId(parentId: string): void;
67
+ setExamples(examples: Readonly<AxProgramExamples>): void;
68
+ private _setExamples;
69
+ getTraces(): AxProgramTrace[];
70
+ getUsage(): AxProgramUsage[];
71
+ resetUsage(): void;
72
+ setDemos(demos: readonly AxProgramDemos[]): void;
73
+ }
package/dsp/program.js ADDED
@@ -0,0 +1,116 @@
1
+ import { AxInstanceRegistry } from './registry.js';
2
+ import { AxSignature } from './sig.js';
3
+ import { mergeProgramUsage, validateValue } from './util.js';
4
+ export class AxProgram {
5
+ signature;
6
+ sigHash;
7
+ ai;
8
+ examples;
9
+ demos;
10
+ trace;
11
+ usage = [];
12
+ key;
13
+ children;
14
+ constructor(ai, signature) {
15
+ this.ai = ai;
16
+ this.signature = new AxSignature(signature);
17
+ this.sigHash = this.signature.hash();
18
+ this.children = new AxInstanceRegistry();
19
+ this.key = { id: this.constructor.name };
20
+ }
21
+ getSignature() {
22
+ return this.signature;
23
+ }
24
+ register(prog) {
25
+ if (this.key) {
26
+ prog.setParentId(this.key.id);
27
+ }
28
+ this.children.register(prog);
29
+ }
30
+ async forward(
31
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
32
+ _arg0,
33
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
34
+ _options) {
35
+ throw new Error('forward() not implemented');
36
+ }
37
+ setId(id) {
38
+ this.key = { id, custom: true };
39
+ for (const child of this.children) {
40
+ child.setParentId(id);
41
+ }
42
+ }
43
+ setParentId(parentId) {
44
+ if (!this.key.custom) {
45
+ this.key.id = [parentId, this.key.id].join('/');
46
+ }
47
+ }
48
+ setExamples(examples) {
49
+ this._setExamples(examples);
50
+ if (!('programId' in examples)) {
51
+ return;
52
+ }
53
+ for (const child of this.children) {
54
+ child.setExamples(examples);
55
+ }
56
+ }
57
+ _setExamples(examples) {
58
+ let traces = [];
59
+ if ('programId' in examples && examples.programId === this.key.id) {
60
+ traces = examples.traces;
61
+ }
62
+ if (Array.isArray(examples)) {
63
+ traces = examples;
64
+ }
65
+ if (traces) {
66
+ const sig = this.signature;
67
+ const fields = [...sig.getInputFields(), ...sig.getOutputFields()];
68
+ this.examples = traces.map((e) => {
69
+ const res = {};
70
+ for (const f of fields) {
71
+ const value = e[f.name];
72
+ if (value) {
73
+ validateValue(f, value);
74
+ res[f.name] = value;
75
+ }
76
+ }
77
+ return res;
78
+ });
79
+ }
80
+ }
81
+ getTraces() {
82
+ let traces = [];
83
+ if (this.trace) {
84
+ traces.push({ trace: this.trace, programId: this.key.id });
85
+ }
86
+ for (const child of this.children) {
87
+ const _traces = child.getTraces();
88
+ traces = [...traces, ..._traces];
89
+ }
90
+ return traces;
91
+ }
92
+ getUsage() {
93
+ let usage = [...(this.usage ?? [])];
94
+ for (const child of this.children) {
95
+ const cu = child.getUsage();
96
+ usage = [...usage, ...cu];
97
+ }
98
+ return mergeProgramUsage(usage);
99
+ }
100
+ resetUsage() {
101
+ this.usage = [];
102
+ for (const child of this.children) {
103
+ child.resetUsage();
104
+ }
105
+ }
106
+ setDemos(demos) {
107
+ this.demos = demos
108
+ .filter((v) => v.programId === this.key.id)
109
+ .map((v) => v.traces)
110
+ .flat();
111
+ for (const child of this.children) {
112
+ child.setDemos(demos);
113
+ }
114
+ }
115
+ }
116
+ //# sourceMappingURL=program.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"program.js","sourceRoot":"","sources":["../../dsp/program.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,48 @@
1
+ import type { AxChatRequest } from '../ai/types.js';
2
+ import { type AxFieldValue } from './program.js';
3
+ import type { AxField, AxIField, AxSignature } from './sig.js';
4
+ type Writeable<T> = {
5
+ -readonly [P in keyof T]: T[P];
6
+ };
7
+ type AxChatRequestChatPrompt = Writeable<AxChatRequest['chatPrompt'][0]>;
8
+ type ChatRequestUserMessage = Exclude<Extract<AxChatRequestChatPrompt, {
9
+ role: 'user';
10
+ }>['content'], string>;
11
+ export type AxFieldTemplateFn = (field: Readonly<AxField>, value: Readonly<AxFieldValue>) => ChatRequestUserMessage;
12
+ export declare class AxPromptTemplate {
13
+ private sig;
14
+ private fieldTemplates?;
15
+ private task;
16
+ private outputFormat;
17
+ constructor(sig: Readonly<AxSignature>, fieldTemplates?: Record<string, AxFieldTemplateFn>);
18
+ render: <T extends Record<string, AxFieldValue>>(values: T, { examples, demos }: Readonly<{
19
+ skipSystemPrompt?: boolean;
20
+ examples?: Record<string, AxFieldValue>[];
21
+ demos?: Record<string, AxFieldValue>[];
22
+ }>) => string | ({
23
+ type: "text";
24
+ text: string;
25
+ } | {
26
+ type: "image";
27
+ mimeType: string;
28
+ image: string;
29
+ details?: "high" | "low" | "auto";
30
+ })[];
31
+ renderExtraFields: (extraFields: readonly AxIField[]) => string | ({
32
+ type: "text";
33
+ text: string;
34
+ } | {
35
+ type: "image";
36
+ mimeType: string;
37
+ image: string;
38
+ details?: "high" | "low" | "auto";
39
+ })[];
40
+ private renderExamples;
41
+ private renderDemos;
42
+ private renderInputFields;
43
+ private renderInField;
44
+ private defaultRenderInField;
45
+ private renderDescFields;
46
+ private renderOutFields;
47
+ }
48
+ export {};
package/dsp/prompt.js ADDED
@@ -0,0 +1,260 @@
1
+ import {} from './program.js';
2
+ import { validateValue } from './util.js';
3
+ export class AxPromptTemplate {
4
+ sig;
5
+ fieldTemplates;
6
+ task;
7
+ outputFormat;
8
+ constructor(sig, fieldTemplates) {
9
+ this.sig = sig;
10
+ this.fieldTemplates = fieldTemplates;
11
+ const inArgs = this.renderDescFields(this.sig.getInputFields());
12
+ const outArgs = this.renderDescFields(this.sig.getOutputFields());
13
+ const task = [`Given the fields ${inArgs}, produce the fields ${outArgs}.`];
14
+ const desc = this.sig.getDescription();
15
+ if (desc) {
16
+ task.push(desc);
17
+ }
18
+ this.task = {
19
+ type: 'text',
20
+ text: task.join('\n')
21
+ };
22
+ this.outputFormat = {
23
+ type: 'text',
24
+ text: [
25
+ 'Follow the following format.',
26
+ ...this.renderOutFields(this.sig.getOutputFields()),
27
+ '---\n\n'
28
+ ].join('\n\n')
29
+ };
30
+ }
31
+ render = (values, { examples, demos }) => {
32
+ const renderedExamples = examples
33
+ ? [
34
+ { type: 'text', text: 'Examples:\n' },
35
+ ...this.renderExamples(examples)
36
+ ]
37
+ : [];
38
+ const renderedDemos = demos ? this.renderDemos(demos) : [];
39
+ const completion = this.renderInputFields(values);
40
+ const promptList = [
41
+ this.task,
42
+ ...renderedExamples,
43
+ this.outputFormat,
44
+ ...renderedDemos,
45
+ ...completion
46
+ ];
47
+ const prompt = promptList.filter((v) => v !== undefined);
48
+ if (prompt.every((v) => v.type === 'text')) {
49
+ return prompt.map((v) => v.text).join('\n');
50
+ }
51
+ return prompt.reduce(combineConsecutiveStrings('\n'), []);
52
+ };
53
+ renderExtraFields = (extraFields) => {
54
+ const prompt = [];
55
+ if (extraFields && extraFields.length > 0) {
56
+ extraFields.forEach((field) => {
57
+ const fn = this.fieldTemplates?.[field.name] ?? this.defaultRenderInField;
58
+ if (!field.description || field.description.length === 0) {
59
+ throw new Error(`Description for field '${field.name}' is required`);
60
+ }
61
+ prompt.push(...fn(field, field.description));
62
+ });
63
+ }
64
+ if (prompt.every((v) => v.type === 'text')) {
65
+ return prompt.map((v) => v.text).join('\n\n');
66
+ }
67
+ return prompt.reduce(combineConsecutiveStrings('\n'), []);
68
+ };
69
+ renderExamples = (data) => {
70
+ const list = [];
71
+ for (const item of data) {
72
+ const renderedInputItem = this.sig
73
+ .getInputFields()
74
+ .map((field) => this.renderInField(field, item, true))
75
+ .filter((v) => v !== undefined)
76
+ .flat();
77
+ const renderedOutputItem = this.sig
78
+ .getOutputFields()
79
+ .map((field) => this.renderInField(field, item, true))
80
+ .filter((v) => v !== undefined)
81
+ .flat();
82
+ if (renderedOutputItem.length === 0) {
83
+ throw new Error('Output fields are required for examples.');
84
+ }
85
+ const renderedItem = [...renderedInputItem, ...renderedOutputItem];
86
+ renderedItem.forEach((v) => {
87
+ if ('text' in v) {
88
+ v.text = v.text + '\n';
89
+ }
90
+ if ('image' in v) {
91
+ v.image = v.image + '\n';
92
+ }
93
+ list.push(v);
94
+ });
95
+ if (renderedItem.length > 0) {
96
+ list.push({ type: 'text', text: '\n' });
97
+ }
98
+ }
99
+ return list;
100
+ };
101
+ renderDemos = (data) => {
102
+ const list = [];
103
+ const fields = [
104
+ ...this.sig.getInputFields(),
105
+ ...this.sig.getOutputFields()
106
+ ];
107
+ for (const item of data) {
108
+ const renderedItem = fields
109
+ .map((field) => this.renderInField(field, item, true))
110
+ .filter((v) => v !== undefined)
111
+ .flat();
112
+ renderedItem.slice(0, -1).forEach((v) => {
113
+ if ('text' in v) {
114
+ v.text = v.text + '\n';
115
+ }
116
+ if ('image' in v) {
117
+ v.image = v.image + '\n';
118
+ }
119
+ list.push(v);
120
+ });
121
+ if (renderedItem.length > 0) {
122
+ list.push({ type: 'text', text: '\n\n---\n\n' });
123
+ }
124
+ }
125
+ return list;
126
+ };
127
+ renderInputFields = (values) => {
128
+ const renderedItems = this.sig
129
+ .getInputFields()
130
+ .map((field) => this.renderInField(field, values))
131
+ .filter((v) => v !== undefined)
132
+ .flat();
133
+ renderedItems
134
+ .filter((v) => v.type === 'text')
135
+ .forEach((v) => {
136
+ v.text = v.text + '\n\n';
137
+ });
138
+ return renderedItems;
139
+ };
140
+ renderInField = (field, values, skipMissing) => {
141
+ const textFieldFn = this.fieldTemplates?.[field.name] ?? this.defaultRenderInField;
142
+ const value = values[field.name];
143
+ if (skipMissing && !value) {
144
+ return;
145
+ }
146
+ if (!value ||
147
+ ((Array.isArray(value) || typeof value === 'string') &&
148
+ value.length === 0)) {
149
+ if (field.isOptional) {
150
+ return;
151
+ }
152
+ throw new Error(`Value for input field '${field.name}' is required.`);
153
+ }
154
+ if (field.type) {
155
+ validateValue(field, value);
156
+ }
157
+ const processedValue = processValue(field, value);
158
+ return textFieldFn(field, processedValue);
159
+ };
160
+ defaultRenderInField = (field, value) => {
161
+ if (field.type?.name === 'image') {
162
+ if (typeof value !== 'object') {
163
+ throw new Error('Image field value must be an object.');
164
+ }
165
+ if (!('mimeType' in value)) {
166
+ throw new Error('Image field must have a mimeType');
167
+ }
168
+ return [
169
+ { type: 'text', text: `${field.title}: ` },
170
+ { type: 'image', mimeType: value.mimeType, image: value.data }
171
+ ];
172
+ }
173
+ const text = [field.title, ': '];
174
+ if (Array.isArray(value)) {
175
+ text.push('\n');
176
+ text.push(value.map((v, i) => `[${i + 1}] ${v}`).join('\n'));
177
+ }
178
+ else {
179
+ text.push(value);
180
+ }
181
+ return [{ type: 'text', text: text.join('') }];
182
+ };
183
+ renderDescFields = (list) => list.map((v) => `\`${v.title}\``).join(', ');
184
+ // private renderInFields = (list: readonly Field[]) =>
185
+ // list.map((v) => v.title + ': ' + (v.description ?? toVar(v.name)));
186
+ renderOutFields = (list) => list.map((v) => {
187
+ return [
188
+ v.title + ':',
189
+ v.description ?? toVarDesc(v.type),
190
+ v.isOptional ? '[if available]' : undefined
191
+ ]
192
+ .filter(Boolean)
193
+ .join(' ');
194
+ });
195
+ }
196
+ const processValue = (field, value) => {
197
+ if (field.type?.name === 'image' && typeof value === 'object') {
198
+ return value;
199
+ }
200
+ if (typeof value === 'string') {
201
+ return value;
202
+ }
203
+ if (Array.isArray(value)) {
204
+ return value;
205
+ }
206
+ return JSON.stringify(value);
207
+ };
208
+ // const toVar = (name: string, type?: Readonly<Field['type']>) => {
209
+ // const fmt = type ? type.name + (type.isArray ? '[]' : '') : undefined;
210
+ // return '${' + name + (fmt ? `:${fmt}` : '') + '}';
211
+ // };
212
+ const toVarDesc = (type) => {
213
+ if (type) {
214
+ let description;
215
+ switch (type.name) {
216
+ case 'string':
217
+ description = 'a string';
218
+ break;
219
+ case 'number':
220
+ description = 'a number';
221
+ break;
222
+ case 'boolean':
223
+ description = 'a boolean';
224
+ break;
225
+ case 'json':
226
+ description = 'a JSON object';
227
+ break;
228
+ default:
229
+ description = 'an unknown type';
230
+ break;
231
+ }
232
+ return `${description}${type.isArray ? ' array in json notation' : ''}`;
233
+ }
234
+ return '';
235
+ };
236
+ function combineConsecutiveStrings(separator) {
237
+ return (
238
+ // eslint-disable-next-line functional/prefer-immutable-types
239
+ acc,
240
+ // eslint-disable-next-line functional/prefer-immutable-types
241
+ current) => {
242
+ if (current.type === 'text') {
243
+ const previous = acc.length > 0 ? acc[acc.length - 1] : null;
244
+ if (previous && previous.type === 'text') {
245
+ // If the last item in the accumulator is a string, append the current string to it with the separator
246
+ previous.text += separator + current.text;
247
+ }
248
+ else {
249
+ // Otherwise, push the current string into the accumulator
250
+ acc.push(current);
251
+ }
252
+ }
253
+ else {
254
+ // If current is not of type 'text', just add it to the accumulator
255
+ acc.push(current);
256
+ }
257
+ return acc;
258
+ };
259
+ }
260
+ //# sourceMappingURL=prompt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../dsp/prompt.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ export declare class AxInstanceRegistry<T> {
2
+ private reg;
3
+ constructor();
4
+ register(instance: T): void;
5
+ [Symbol.iterator](): Generator<T, void, unknown>;
6
+ }
@@ -0,0 +1,15 @@
1
+ export class AxInstanceRegistry {
2
+ reg; // To track keys for iteration
3
+ constructor() {
4
+ this.reg = new Set();
5
+ }
6
+ register(instance) {
7
+ this.reg.add(instance);
8
+ }
9
+ *[Symbol.iterator]() {
10
+ for (const key of this.reg) {
11
+ yield key;
12
+ }
13
+ }
14
+ }
15
+ //# sourceMappingURL=registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../dsp/registry.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,kBAAkB;IACrB,GAAG,CAAS,CAAC,8BAA8B;IAEnD;QACE,IAAI,CAAC,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;IACvB,CAAC;IAED,QAAQ,CAAC,QAAW;QAClB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACzB,CAAC;IAED,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;QAChB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;YAC3B,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,26 @@
1
+ import type { AxAIService } from '../ai/types.js';
2
+ import { type AxDBState } from '../db/memory.js';
3
+ export interface AxRouterForwardOptions {
4
+ cutoff?: number;
5
+ }
6
+ export declare class AxRoute {
7
+ private readonly name;
8
+ private readonly context;
9
+ constructor(name: string, context: readonly string[]);
10
+ getName(): string;
11
+ getContext(): readonly string[];
12
+ }
13
+ export declare class AxRouter {
14
+ private readonly ai;
15
+ private routes;
16
+ private db;
17
+ private debug?;
18
+ constructor(ai: AxAIService);
19
+ getState(): AxDBState | undefined;
20
+ setState(state: AxDBState): void;
21
+ setRoutes: (routes: readonly AxRoute[]) => Promise<void>;
22
+ forward(text: string, options?: Readonly<AxRouterForwardOptions>): Promise<string>;
23
+ setOptions(options: Readonly<{
24
+ debug?: boolean;
25
+ }>): void;
26
+ }