@langchain/core 1.2.0-dev-1765937705265 → 1.2.0-dev-1775763803878

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 (1447) hide show
  1. package/CHANGELOG.md +309 -0
  2. package/README.md +1 -1
  3. package/dist/_virtual/{rolldown_runtime.cjs → _rolldown/runtime.cjs} +7 -6
  4. package/dist/_virtual/_rolldown/runtime.js +13 -0
  5. package/dist/agents.cjs +8 -8
  6. package/dist/agents.cjs.map +1 -1
  7. package/dist/agents.d.cts.map +1 -1
  8. package/dist/agents.d.ts.map +1 -1
  9. package/dist/agents.js +3 -2
  10. package/dist/agents.js.map +1 -1
  11. package/dist/caches/index.cjs +12 -13
  12. package/dist/caches/index.cjs.map +1 -1
  13. package/dist/caches/index.d.cts.map +1 -1
  14. package/dist/caches/index.d.ts.map +1 -1
  15. package/dist/caches/index.js +4 -6
  16. package/dist/caches/index.js.map +1 -1
  17. package/dist/callbacks/base.cjs +17 -25
  18. package/dist/callbacks/base.cjs.map +1 -1
  19. package/dist/callbacks/base.d.cts +80 -38
  20. package/dist/callbacks/base.d.cts.map +1 -1
  21. package/dist/callbacks/base.d.ts +80 -38
  22. package/dist/callbacks/base.d.ts.map +1 -1
  23. package/dist/callbacks/base.js +7 -17
  24. package/dist/callbacks/base.js.map +1 -1
  25. package/dist/callbacks/dispatch/index.cjs +11 -12
  26. package/dist/callbacks/dispatch/index.cjs.map +1 -1
  27. package/dist/callbacks/dispatch/index.d.cts +0 -2
  28. package/dist/callbacks/dispatch/index.d.cts.map +1 -1
  29. package/dist/callbacks/dispatch/index.d.ts +0 -3
  30. package/dist/callbacks/dispatch/index.d.ts.map +1 -1
  31. package/dist/callbacks/dispatch/index.js +5 -7
  32. package/dist/callbacks/dispatch/index.js.map +1 -1
  33. package/dist/callbacks/dispatch/web.cjs +3 -3
  34. package/dist/callbacks/dispatch/web.cjs.map +1 -1
  35. package/dist/callbacks/dispatch/web.d.cts +0 -2
  36. package/dist/callbacks/dispatch/web.d.cts.map +1 -1
  37. package/dist/callbacks/dispatch/web.d.ts +0 -3
  38. package/dist/callbacks/dispatch/web.d.ts.map +1 -1
  39. package/dist/callbacks/dispatch/web.js +1 -2
  40. package/dist/callbacks/dispatch/web.js.map +1 -1
  41. package/dist/callbacks/manager.cjs +68 -76
  42. package/dist/callbacks/manager.cjs.map +1 -1
  43. package/dist/callbacks/manager.d.cts +3 -2
  44. package/dist/callbacks/manager.d.cts.map +1 -1
  45. package/dist/callbacks/manager.d.ts +3 -2
  46. package/dist/callbacks/manager.d.ts.map +1 -1
  47. package/dist/callbacks/manager.js +51 -60
  48. package/dist/callbacks/manager.js.map +1 -1
  49. package/dist/callbacks/promises.cjs +10 -11
  50. package/dist/callbacks/promises.js +3 -5
  51. package/dist/chat_history.cjs +13 -14
  52. package/dist/chat_history.cjs.map +1 -1
  53. package/dist/chat_history.d.cts +0 -2
  54. package/dist/chat_history.d.cts.map +1 -1
  55. package/dist/chat_history.d.ts +0 -3
  56. package/dist/chat_history.d.ts.map +1 -1
  57. package/dist/chat_history.js +4 -6
  58. package/dist/chat_history.js.map +1 -1
  59. package/dist/context.cjs +14 -7
  60. package/dist/context.cjs.map +1 -1
  61. package/dist/context.d.cts.map +1 -1
  62. package/dist/context.d.ts.map +1 -1
  63. package/dist/context.js +8 -2
  64. package/dist/context.js.map +1 -1
  65. package/dist/document_loaders/base.cjs +8 -10
  66. package/dist/document_loaders/base.cjs.map +1 -1
  67. package/dist/document_loaders/base.d.cts +0 -1
  68. package/dist/document_loaders/base.d.cts.map +1 -1
  69. package/dist/document_loaders/base.d.ts +0 -1
  70. package/dist/document_loaders/base.d.ts.map +1 -1
  71. package/dist/document_loaders/base.js +3 -5
  72. package/dist/document_loaders/base.js.map +1 -1
  73. package/dist/document_loaders/langsmith.cjs +11 -12
  74. package/dist/document_loaders/langsmith.cjs.map +1 -1
  75. package/dist/document_loaders/langsmith.d.cts.map +1 -1
  76. package/dist/document_loaders/langsmith.d.ts.map +1 -1
  77. package/dist/document_loaders/langsmith.js +3 -5
  78. package/dist/document_loaders/langsmith.js.map +1 -1
  79. package/dist/documents/document.cjs +1 -2
  80. package/dist/documents/document.cjs.map +1 -1
  81. package/dist/documents/document.d.cts.map +1 -1
  82. package/dist/documents/document.d.ts.map +1 -1
  83. package/dist/documents/document.js +1 -1
  84. package/dist/documents/document.js.map +1 -1
  85. package/dist/documents/index.cjs +11 -12
  86. package/dist/documents/index.js +3 -5
  87. package/dist/documents/transformers.cjs +2 -3
  88. package/dist/documents/transformers.cjs.map +1 -1
  89. package/dist/documents/transformers.d.cts +0 -1
  90. package/dist/documents/transformers.d.cts.map +1 -1
  91. package/dist/documents/transformers.d.ts +0 -1
  92. package/dist/documents/transformers.d.ts.map +1 -1
  93. package/dist/documents/transformers.js +1 -2
  94. package/dist/documents/transformers.js.map +1 -1
  95. package/dist/embeddings.cjs +10 -11
  96. package/dist/embeddings.cjs.map +1 -1
  97. package/dist/embeddings.d.cts +0 -1
  98. package/dist/embeddings.d.cts.map +1 -1
  99. package/dist/embeddings.d.ts +0 -1
  100. package/dist/embeddings.d.ts.map +1 -1
  101. package/dist/embeddings.js +3 -5
  102. package/dist/embeddings.js.map +1 -1
  103. package/dist/errors/index.cjs +165 -2
  104. package/dist/errors/index.cjs.map +1 -1
  105. package/dist/errors/index.d.cts +150 -0
  106. package/dist/errors/index.d.cts.map +1 -0
  107. package/dist/errors/index.d.ts +150 -0
  108. package/dist/errors/index.d.ts.map +1 -0
  109. package/dist/errors/index.js +155 -2
  110. package/dist/errors/index.js.map +1 -1
  111. package/dist/example_selectors/base.cjs +2 -3
  112. package/dist/example_selectors/base.cjs.map +1 -1
  113. package/dist/example_selectors/base.d.cts +0 -1
  114. package/dist/example_selectors/base.d.cts.map +1 -1
  115. package/dist/example_selectors/base.d.ts +0 -1
  116. package/dist/example_selectors/base.d.ts.map +1 -1
  117. package/dist/example_selectors/base.js +1 -2
  118. package/dist/example_selectors/base.js.map +1 -1
  119. package/dist/example_selectors/conditional.cjs +2 -4
  120. package/dist/example_selectors/conditional.cjs.map +1 -1
  121. package/dist/example_selectors/conditional.d.cts.map +1 -1
  122. package/dist/example_selectors/conditional.d.ts.map +1 -1
  123. package/dist/example_selectors/conditional.js +2 -3
  124. package/dist/example_selectors/conditional.js.map +1 -1
  125. package/dist/example_selectors/index.cjs +13 -14
  126. package/dist/example_selectors/index.js +3 -5
  127. package/dist/example_selectors/length_based.cjs +3 -5
  128. package/dist/example_selectors/length_based.cjs.map +1 -1
  129. package/dist/example_selectors/length_based.d.cts +0 -1
  130. package/dist/example_selectors/length_based.d.cts.map +1 -1
  131. package/dist/example_selectors/length_based.d.ts +0 -1
  132. package/dist/example_selectors/length_based.d.ts.map +1 -1
  133. package/dist/example_selectors/length_based.js +2 -4
  134. package/dist/example_selectors/length_based.js.map +1 -1
  135. package/dist/example_selectors/semantic_similarity.cjs +7 -12
  136. package/dist/example_selectors/semantic_similarity.cjs.map +1 -1
  137. package/dist/example_selectors/semantic_similarity.d.cts +0 -1
  138. package/dist/example_selectors/semantic_similarity.d.cts.map +1 -1
  139. package/dist/example_selectors/semantic_similarity.d.ts +0 -1
  140. package/dist/example_selectors/semantic_similarity.d.ts.map +1 -1
  141. package/dist/example_selectors/semantic_similarity.js +5 -10
  142. package/dist/example_selectors/semantic_similarity.js.map +1 -1
  143. package/dist/index.cjs +8 -8
  144. package/dist/index.js +3 -2
  145. package/dist/indexing/base.cjs +12 -17
  146. package/dist/indexing/base.cjs.map +1 -1
  147. package/dist/indexing/base.d.cts.map +1 -1
  148. package/dist/indexing/base.d.ts.map +1 -1
  149. package/dist/indexing/base.js +6 -11
  150. package/dist/indexing/base.js.map +1 -1
  151. package/dist/indexing/index.cjs +11 -12
  152. package/dist/indexing/index.js +3 -5
  153. package/dist/indexing/record_manager.cjs +2 -3
  154. package/dist/indexing/record_manager.cjs.map +1 -1
  155. package/dist/indexing/record_manager.d.cts.map +1 -1
  156. package/dist/indexing/record_manager.d.ts.map +1 -1
  157. package/dist/indexing/record_manager.js +1 -2
  158. package/dist/indexing/record_manager.js.map +1 -1
  159. package/dist/language_models/base.cjs +32 -26
  160. package/dist/language_models/base.cjs.map +1 -1
  161. package/dist/language_models/base.d.cts +17 -14
  162. package/dist/language_models/base.d.cts.map +1 -1
  163. package/dist/language_models/base.d.ts +17 -16
  164. package/dist/language_models/base.d.ts.map +1 -1
  165. package/dist/language_models/base.js +21 -16
  166. package/dist/language_models/base.js.map +1 -1
  167. package/dist/language_models/chat_models.cjs +130 -70
  168. package/dist/language_models/chat_models.cjs.map +1 -1
  169. package/dist/language_models/chat_models.d.cts +76 -10
  170. package/dist/language_models/chat_models.d.cts.map +1 -1
  171. package/dist/language_models/chat_models.d.ts +76 -13
  172. package/dist/language_models/chat_models.d.ts.map +1 -1
  173. package/dist/language_models/chat_models.js +111 -52
  174. package/dist/language_models/chat_models.js.map +1 -1
  175. package/dist/language_models/compat.cjs +235 -0
  176. package/dist/language_models/compat.cjs.map +1 -0
  177. package/dist/language_models/compat.d.cts +34 -0
  178. package/dist/language_models/compat.d.cts.map +1 -0
  179. package/dist/language_models/compat.d.ts +34 -0
  180. package/dist/language_models/compat.d.ts.map +1 -0
  181. package/dist/language_models/compat.js +226 -0
  182. package/dist/language_models/compat.js.map +1 -0
  183. package/dist/language_models/event.cjs +12 -0
  184. package/dist/language_models/event.cjs.map +1 -0
  185. package/dist/language_models/event.d.cts +193 -0
  186. package/dist/language_models/event.d.cts.map +1 -0
  187. package/dist/language_models/event.d.ts +193 -0
  188. package/dist/language_models/event.d.ts.map +1 -0
  189. package/dist/language_models/event.js +7 -0
  190. package/dist/language_models/event.js.map +1 -0
  191. package/dist/language_models/llms.cjs +23 -27
  192. package/dist/language_models/llms.cjs.map +1 -1
  193. package/dist/language_models/llms.d.cts +4 -4
  194. package/dist/language_models/llms.d.cts.map +1 -1
  195. package/dist/language_models/llms.d.ts +4 -5
  196. package/dist/language_models/llms.d.ts.map +1 -1
  197. package/dist/language_models/llms.js +12 -17
  198. package/dist/language_models/llms.js.map +1 -1
  199. package/dist/language_models/profile.cjs +8 -8
  200. package/dist/language_models/profile.d.cts.map +1 -1
  201. package/dist/language_models/profile.d.ts.map +1 -1
  202. package/dist/language_models/profile.js +3 -2
  203. package/dist/language_models/stream.cjs +376 -0
  204. package/dist/language_models/stream.cjs.map +1 -0
  205. package/dist/language_models/stream.d.cts +129 -0
  206. package/dist/language_models/stream.d.cts.map +1 -0
  207. package/dist/language_models/stream.d.ts +129 -0
  208. package/dist/language_models/stream.d.ts.map +1 -0
  209. package/dist/language_models/stream.js +365 -0
  210. package/dist/language_models/stream.js.map +1 -0
  211. package/dist/language_models/structured_output.cjs +87 -0
  212. package/dist/language_models/structured_output.cjs.map +1 -0
  213. package/dist/language_models/structured_output.d.cts +45 -0
  214. package/dist/language_models/structured_output.d.cts.map +1 -0
  215. package/dist/language_models/structured_output.d.ts +45 -0
  216. package/dist/language_models/structured_output.d.ts.map +1 -0
  217. package/dist/language_models/structured_output.js +78 -0
  218. package/dist/language_models/structured_output.js.map +1 -0
  219. package/dist/language_models/utils.cjs +1 -2
  220. package/dist/language_models/utils.cjs.map +1 -1
  221. package/dist/language_models/utils.js +1 -1
  222. package/dist/language_models/utils.js.map +1 -1
  223. package/dist/load/import_constants.cjs +1 -2
  224. package/dist/load/import_constants.cjs.map +1 -1
  225. package/dist/load/import_constants.js +1 -1
  226. package/dist/load/import_constants.js.map +1 -1
  227. package/dist/load/import_map.cjs +82 -66
  228. package/dist/load/import_map.cjs.map +1 -1
  229. package/dist/load/import_map.js +45 -29
  230. package/dist/load/import_map.js.map +1 -1
  231. package/dist/load/import_type.d.cts.map +1 -1
  232. package/dist/load/import_type.d.ts.map +1 -1
  233. package/dist/load/index.cjs +160 -41
  234. package/dist/load/index.cjs.map +1 -1
  235. package/dist/load/index.d.cts +122 -3
  236. package/dist/load/index.d.cts.map +1 -1
  237. package/dist/load/index.d.ts +122 -3
  238. package/dist/load/index.d.ts.map +1 -1
  239. package/dist/load/index.js +149 -31
  240. package/dist/load/index.js.map +1 -1
  241. package/dist/load/map_keys.cjs +6 -5
  242. package/dist/load/map_keys.cjs.map +1 -1
  243. package/dist/load/map_keys.d.cts.map +1 -1
  244. package/dist/load/map_keys.d.ts.map +1 -1
  245. package/dist/load/map_keys.js +1 -2
  246. package/dist/load/map_keys.js.map +1 -1
  247. package/dist/load/serializable.cjs +22 -26
  248. package/dist/load/serializable.cjs.map +1 -1
  249. package/dist/load/serializable.d.cts +15 -1
  250. package/dist/load/serializable.d.cts.map +1 -1
  251. package/dist/load/serializable.d.ts +15 -1
  252. package/dist/load/serializable.d.ts.map +1 -1
  253. package/dist/load/serializable.js +15 -20
  254. package/dist/load/serializable.js.map +1 -1
  255. package/dist/load/validation.cjs +120 -0
  256. package/dist/load/validation.cjs.map +1 -0
  257. package/dist/load/validation.js +118 -0
  258. package/dist/load/validation.js.map +1 -0
  259. package/dist/memory.cjs +10 -18
  260. package/dist/memory.cjs.map +1 -1
  261. package/dist/memory.d.cts +2 -2
  262. package/dist/memory.d.cts.map +1 -1
  263. package/dist/memory.d.ts +2 -2
  264. package/dist/memory.d.ts.map +1 -1
  265. package/dist/memory.js +5 -13
  266. package/dist/memory.js.map +1 -1
  267. package/dist/messages/ai.cjs +15 -9
  268. package/dist/messages/ai.cjs.map +1 -1
  269. package/dist/messages/ai.d.cts +2 -2
  270. package/dist/messages/ai.d.cts.map +1 -1
  271. package/dist/messages/ai.d.ts +2 -2
  272. package/dist/messages/ai.d.ts.map +1 -1
  273. package/dist/messages/ai.js +10 -4
  274. package/dist/messages/ai.js.map +1 -1
  275. package/dist/messages/base.cjs +111 -44
  276. package/dist/messages/base.cjs.map +1 -1
  277. package/dist/messages/base.d.cts +49 -12
  278. package/dist/messages/base.d.cts.map +1 -1
  279. package/dist/messages/base.d.ts +49 -12
  280. package/dist/messages/base.d.ts.map +1 -1
  281. package/dist/messages/base.js +104 -38
  282. package/dist/messages/base.js.map +1 -1
  283. package/dist/messages/block_translators/anthropic.cjs +32 -38
  284. package/dist/messages/block_translators/anthropic.cjs.map +1 -1
  285. package/dist/messages/block_translators/anthropic.js +31 -37
  286. package/dist/messages/block_translators/anthropic.js.map +1 -1
  287. package/dist/messages/block_translators/bedrock_converse.cjs +40 -49
  288. package/dist/messages/block_translators/bedrock_converse.cjs.map +1 -1
  289. package/dist/messages/block_translators/bedrock_converse.js +39 -48
  290. package/dist/messages/block_translators/bedrock_converse.js.map +1 -1
  291. package/dist/messages/block_translators/data.cjs +3 -4
  292. package/dist/messages/block_translators/data.cjs.map +1 -1
  293. package/dist/messages/block_translators/data.js +1 -2
  294. package/dist/messages/block_translators/data.js.map +1 -1
  295. package/dist/messages/block_translators/deepseek.cjs +58 -0
  296. package/dist/messages/block_translators/deepseek.cjs.map +1 -0
  297. package/dist/messages/block_translators/deepseek.js +58 -0
  298. package/dist/messages/block_translators/deepseek.js.map +1 -0
  299. package/dist/messages/block_translators/google.cjs +97 -0
  300. package/dist/messages/block_translators/google.cjs.map +1 -0
  301. package/dist/messages/block_translators/google.js +97 -0
  302. package/dist/messages/block_translators/google.js.map +1 -0
  303. package/dist/messages/block_translators/google_genai.cjs +9 -3
  304. package/dist/messages/block_translators/google_genai.cjs.map +1 -1
  305. package/dist/messages/block_translators/google_genai.js +8 -2
  306. package/dist/messages/block_translators/google_genai.js.map +1 -1
  307. package/dist/messages/block_translators/google_vertexai.cjs +10 -6
  308. package/dist/messages/block_translators/google_vertexai.cjs.map +1 -1
  309. package/dist/messages/block_translators/google_vertexai.js +9 -5
  310. package/dist/messages/block_translators/google_vertexai.js.map +1 -1
  311. package/dist/messages/block_translators/groq.cjs +96 -0
  312. package/dist/messages/block_translators/groq.cjs.map +1 -0
  313. package/dist/messages/block_translators/groq.js +96 -0
  314. package/dist/messages/block_translators/groq.js.map +1 -0
  315. package/dist/messages/block_translators/index.cjs +17 -8
  316. package/dist/messages/block_translators/index.cjs.map +1 -1
  317. package/dist/messages/block_translators/index.js +12 -3
  318. package/dist/messages/block_translators/index.js.map +1 -1
  319. package/dist/messages/block_translators/ollama.cjs +58 -0
  320. package/dist/messages/block_translators/ollama.cjs.map +1 -0
  321. package/dist/messages/block_translators/ollama.js +58 -0
  322. package/dist/messages/block_translators/ollama.js.map +1 -0
  323. package/dist/messages/block_translators/openai.cjs +85 -26
  324. package/dist/messages/block_translators/openai.cjs.map +1 -1
  325. package/dist/messages/block_translators/openai.js +83 -24
  326. package/dist/messages/block_translators/openai.js.map +1 -1
  327. package/dist/messages/block_translators/utils.cjs +2 -3
  328. package/dist/messages/block_translators/utils.cjs.map +1 -1
  329. package/dist/messages/block_translators/utils.js +2 -2
  330. package/dist/messages/block_translators/utils.js.map +1 -1
  331. package/dist/messages/block_translators/xai.cjs +94 -0
  332. package/dist/messages/block_translators/xai.cjs.map +1 -0
  333. package/dist/messages/block_translators/xai.js +94 -0
  334. package/dist/messages/block_translators/xai.js.map +1 -0
  335. package/dist/messages/chat.cjs +2 -3
  336. package/dist/messages/chat.cjs.map +1 -1
  337. package/dist/messages/chat.d.cts.map +1 -1
  338. package/dist/messages/chat.d.ts.map +1 -1
  339. package/dist/messages/chat.js +1 -2
  340. package/dist/messages/chat.js.map +1 -1
  341. package/dist/messages/content/base.d.cts.map +1 -1
  342. package/dist/messages/content/base.d.ts.map +1 -1
  343. package/dist/messages/content/data.cjs +2 -5
  344. package/dist/messages/content/data.cjs.map +1 -1
  345. package/dist/messages/content/data.d.cts +0 -1
  346. package/dist/messages/content/data.d.cts.map +1 -1
  347. package/dist/messages/content/data.d.ts +0 -1
  348. package/dist/messages/content/data.d.ts.map +1 -1
  349. package/dist/messages/content/data.js +2 -4
  350. package/dist/messages/content/data.js.map +1 -1
  351. package/dist/messages/content/index.cjs +5 -6
  352. package/dist/messages/content/index.cjs.map +1 -1
  353. package/dist/messages/content/index.d.cts +7 -3
  354. package/dist/messages/content/index.d.cts.map +1 -1
  355. package/dist/messages/content/index.d.ts +7 -3
  356. package/dist/messages/content/index.d.ts.map +1 -1
  357. package/dist/messages/content/index.js +7 -8
  358. package/dist/messages/content/index.js.map +1 -1
  359. package/dist/messages/content/multimodal.cjs +1 -2
  360. package/dist/messages/content/multimodal.cjs.map +1 -1
  361. package/dist/messages/content/multimodal.d.cts +4 -8
  362. package/dist/messages/content/multimodal.d.cts.map +1 -1
  363. package/dist/messages/content/multimodal.d.ts +4 -8
  364. package/dist/messages/content/multimodal.d.ts.map +1 -1
  365. package/dist/messages/content/multimodal.js +1 -1
  366. package/dist/messages/content/multimodal.js.map +1 -1
  367. package/dist/messages/content/tools.cjs +1 -2
  368. package/dist/messages/content/tools.cjs.map +1 -1
  369. package/dist/messages/content/tools.d.cts +1 -1
  370. package/dist/messages/content/tools.d.cts.map +1 -1
  371. package/dist/messages/content/tools.d.ts +1 -1
  372. package/dist/messages/content/tools.d.ts.map +1 -1
  373. package/dist/messages/content/tools.js +1 -1
  374. package/dist/messages/content/tools.js.map +1 -1
  375. package/dist/messages/format.cjs +1 -2
  376. package/dist/messages/format.cjs.map +1 -1
  377. package/dist/messages/format.d.cts.map +1 -1
  378. package/dist/messages/format.d.ts.map +1 -1
  379. package/dist/messages/format.js +1 -1
  380. package/dist/messages/format.js.map +1 -1
  381. package/dist/messages/function.cjs +2 -3
  382. package/dist/messages/function.cjs.map +1 -1
  383. package/dist/messages/function.d.cts.map +1 -1
  384. package/dist/messages/function.d.ts.map +1 -1
  385. package/dist/messages/function.js +1 -2
  386. package/dist/messages/function.js.map +1 -1
  387. package/dist/messages/human.cjs +2 -3
  388. package/dist/messages/human.cjs.map +1 -1
  389. package/dist/messages/human.d.cts.map +1 -1
  390. package/dist/messages/human.d.ts.map +1 -1
  391. package/dist/messages/human.js +1 -2
  392. package/dist/messages/human.js.map +1 -1
  393. package/dist/messages/index.cjs +25 -24
  394. package/dist/messages/index.d.cts +3 -3
  395. package/dist/messages/index.d.ts +3 -3
  396. package/dist/messages/index.js +7 -8
  397. package/dist/messages/message.cjs +1 -2
  398. package/dist/messages/message.cjs.map +1 -1
  399. package/dist/messages/message.d.cts +50 -27
  400. package/dist/messages/message.d.cts.map +1 -1
  401. package/dist/messages/message.d.ts +50 -27
  402. package/dist/messages/message.d.ts.map +1 -1
  403. package/dist/messages/message.js +1 -1
  404. package/dist/messages/message.js.map +1 -1
  405. package/dist/messages/metadata.cjs +3 -5
  406. package/dist/messages/metadata.cjs.map +1 -1
  407. package/dist/messages/metadata.d.cts.map +1 -1
  408. package/dist/messages/metadata.d.ts.map +1 -1
  409. package/dist/messages/metadata.js +2 -4
  410. package/dist/messages/metadata.js.map +1 -1
  411. package/dist/messages/modifier.cjs +2 -3
  412. package/dist/messages/modifier.cjs.map +1 -1
  413. package/dist/messages/modifier.d.cts.map +1 -1
  414. package/dist/messages/modifier.d.ts.map +1 -1
  415. package/dist/messages/modifier.js +1 -2
  416. package/dist/messages/modifier.js.map +1 -1
  417. package/dist/messages/system.cjs +10 -7
  418. package/dist/messages/system.cjs.map +1 -1
  419. package/dist/messages/system.d.cts.map +1 -1
  420. package/dist/messages/system.d.ts.map +1 -1
  421. package/dist/messages/system.js +9 -6
  422. package/dist/messages/system.js.map +1 -1
  423. package/dist/messages/tool.cjs +10 -11
  424. package/dist/messages/tool.cjs.map +1 -1
  425. package/dist/messages/tool.d.cts +1 -1
  426. package/dist/messages/tool.d.cts.map +1 -1
  427. package/dist/messages/tool.d.ts +1 -1
  428. package/dist/messages/tool.d.ts.map +1 -1
  429. package/dist/messages/tool.js +3 -5
  430. package/dist/messages/tool.js.map +1 -1
  431. package/dist/messages/transformers.cjs +18 -25
  432. package/dist/messages/transformers.cjs.map +1 -1
  433. package/dist/messages/transformers.d.cts.map +1 -1
  434. package/dist/messages/transformers.d.ts.map +1 -1
  435. package/dist/messages/transformers.js +9 -16
  436. package/dist/messages/transformers.js.map +1 -1
  437. package/dist/messages/utils.cjs +71 -32
  438. package/dist/messages/utils.cjs.map +1 -1
  439. package/dist/messages/utils.d.cts +16 -7
  440. package/dist/messages/utils.d.cts.map +1 -1
  441. package/dist/messages/utils.d.ts +16 -7
  442. package/dist/messages/utils.d.ts.map +1 -1
  443. package/dist/messages/utils.js +63 -24
  444. package/dist/messages/utils.js.map +1 -1
  445. package/dist/output_parsers/base.cjs +10 -11
  446. package/dist/output_parsers/base.cjs.map +1 -1
  447. package/dist/output_parsers/base.d.cts +0 -1
  448. package/dist/output_parsers/base.d.cts.map +1 -1
  449. package/dist/output_parsers/base.d.ts +0 -4
  450. package/dist/output_parsers/base.d.ts.map +1 -1
  451. package/dist/output_parsers/base.js +6 -7
  452. package/dist/output_parsers/base.js.map +1 -1
  453. package/dist/output_parsers/bytes.cjs +2 -3
  454. package/dist/output_parsers/bytes.cjs.map +1 -1
  455. package/dist/output_parsers/bytes.d.cts +0 -1
  456. package/dist/output_parsers/bytes.d.cts.map +1 -1
  457. package/dist/output_parsers/bytes.d.ts +0 -1
  458. package/dist/output_parsers/bytes.d.ts.map +1 -1
  459. package/dist/output_parsers/bytes.js +1 -2
  460. package/dist/output_parsers/bytes.js.map +1 -1
  461. package/dist/output_parsers/index.cjs +21 -19
  462. package/dist/output_parsers/index.cjs.map +1 -1
  463. package/dist/output_parsers/index.d.cts +2 -1
  464. package/dist/output_parsers/index.d.ts +2 -1
  465. package/dist/output_parsers/index.js +7 -7
  466. package/dist/output_parsers/index.js.map +1 -1
  467. package/dist/output_parsers/json.cjs +16 -7
  468. package/dist/output_parsers/json.cjs.map +1 -1
  469. package/dist/output_parsers/json.d.cts +9 -1
  470. package/dist/output_parsers/json.d.cts.map +1 -1
  471. package/dist/output_parsers/json.d.ts +9 -1
  472. package/dist/output_parsers/json.d.ts.map +1 -1
  473. package/dist/output_parsers/json.js +13 -4
  474. package/dist/output_parsers/json.js.map +1 -1
  475. package/dist/output_parsers/list.cjs +3 -4
  476. package/dist/output_parsers/list.cjs.map +1 -1
  477. package/dist/output_parsers/list.d.cts +0 -1
  478. package/dist/output_parsers/list.d.cts.map +1 -1
  479. package/dist/output_parsers/list.d.ts +0 -2
  480. package/dist/output_parsers/list.d.ts.map +1 -1
  481. package/dist/output_parsers/list.js +1 -2
  482. package/dist/output_parsers/list.js.map +1 -1
  483. package/dist/output_parsers/openai_functions/index.cjs +10 -11
  484. package/dist/output_parsers/openai_functions/index.js +3 -5
  485. package/dist/output_parsers/openai_functions/json_output_functions_parsers.cjs +13 -17
  486. package/dist/output_parsers/openai_functions/json_output_functions_parsers.cjs.map +1 -1
  487. package/dist/output_parsers/openai_functions/json_output_functions_parsers.d.cts +1 -2
  488. package/dist/output_parsers/openai_functions/json_output_functions_parsers.d.cts.map +1 -1
  489. package/dist/output_parsers/openai_functions/json_output_functions_parsers.d.ts +1 -2
  490. package/dist/output_parsers/openai_functions/json_output_functions_parsers.d.ts.map +1 -1
  491. package/dist/output_parsers/openai_functions/json_output_functions_parsers.js +7 -11
  492. package/dist/output_parsers/openai_functions/json_output_functions_parsers.js.map +1 -1
  493. package/dist/output_parsers/openai_tools/index.cjs +10 -11
  494. package/dist/output_parsers/openai_tools/index.d.cts +2 -2
  495. package/dist/output_parsers/openai_tools/index.d.ts +2 -2
  496. package/dist/output_parsers/openai_tools/index.js +3 -5
  497. package/dist/output_parsers/openai_tools/json_output_tools_parsers.cjs +29 -30
  498. package/dist/output_parsers/openai_tools/json_output_tools_parsers.cjs.map +1 -1
  499. package/dist/output_parsers/openai_tools/json_output_tools_parsers.d.cts +10 -8
  500. package/dist/output_parsers/openai_tools/json_output_tools_parsers.d.cts.map +1 -1
  501. package/dist/output_parsers/openai_tools/json_output_tools_parsers.d.ts +10 -8
  502. package/dist/output_parsers/openai_tools/json_output_tools_parsers.d.ts.map +1 -1
  503. package/dist/output_parsers/openai_tools/json_output_tools_parsers.js +23 -24
  504. package/dist/output_parsers/openai_tools/json_output_tools_parsers.js.map +1 -1
  505. package/dist/output_parsers/standard_schema.cjs +39 -0
  506. package/dist/output_parsers/standard_schema.cjs.map +1 -0
  507. package/dist/output_parsers/standard_schema.d.cts +16 -0
  508. package/dist/output_parsers/standard_schema.d.cts.map +1 -0
  509. package/dist/output_parsers/standard_schema.d.ts +16 -0
  510. package/dist/output_parsers/standard_schema.d.ts.map +1 -0
  511. package/dist/output_parsers/standard_schema.js +39 -0
  512. package/dist/output_parsers/standard_schema.js.map +1 -0
  513. package/dist/output_parsers/string.cjs +5 -3
  514. package/dist/output_parsers/string.cjs.map +1 -1
  515. package/dist/output_parsers/string.d.cts +0 -1
  516. package/dist/output_parsers/string.d.cts.map +1 -1
  517. package/dist/output_parsers/string.d.ts +0 -2
  518. package/dist/output_parsers/string.d.ts.map +1 -1
  519. package/dist/output_parsers/string.js +4 -2
  520. package/dist/output_parsers/string.js.map +1 -1
  521. package/dist/output_parsers/structured.cjs +14 -18
  522. package/dist/output_parsers/structured.cjs.map +1 -1
  523. package/dist/output_parsers/structured.d.cts.map +1 -1
  524. package/dist/output_parsers/structured.d.ts.map +1 -1
  525. package/dist/output_parsers/structured.js +9 -13
  526. package/dist/output_parsers/structured.js.map +1 -1
  527. package/dist/output_parsers/transform.cjs +8 -9
  528. package/dist/output_parsers/transform.cjs.map +1 -1
  529. package/dist/output_parsers/transform.d.cts +0 -1
  530. package/dist/output_parsers/transform.d.cts.map +1 -1
  531. package/dist/output_parsers/transform.d.ts +0 -1
  532. package/dist/output_parsers/transform.d.ts.map +1 -1
  533. package/dist/output_parsers/transform.js +1 -2
  534. package/dist/output_parsers/transform.js.map +1 -1
  535. package/dist/output_parsers/xml.cjs +11 -15
  536. package/dist/output_parsers/xml.cjs.map +1 -1
  537. package/dist/output_parsers/xml.d.cts +1 -1
  538. package/dist/output_parsers/xml.d.cts.map +1 -1
  539. package/dist/output_parsers/xml.d.ts +1 -1
  540. package/dist/output_parsers/xml.d.ts.map +1 -1
  541. package/dist/output_parsers/xml.js +7 -11
  542. package/dist/output_parsers/xml.js.map +1 -1
  543. package/dist/outputs.cjs +8 -10
  544. package/dist/outputs.cjs.map +1 -1
  545. package/dist/outputs.d.cts.map +1 -1
  546. package/dist/outputs.d.ts.map +1 -1
  547. package/dist/outputs.js +3 -5
  548. package/dist/outputs.js.map +1 -1
  549. package/dist/prompt_values.cjs +12 -13
  550. package/dist/prompt_values.cjs.map +1 -1
  551. package/dist/prompt_values.d.cts +1 -3
  552. package/dist/prompt_values.d.cts.map +1 -1
  553. package/dist/prompt_values.d.ts +1 -3
  554. package/dist/prompt_values.d.ts.map +1 -1
  555. package/dist/prompt_values.js +3 -5
  556. package/dist/prompt_values.js.map +1 -1
  557. package/dist/prompts/base.cjs +4 -6
  558. package/dist/prompts/base.cjs.map +1 -1
  559. package/dist/prompts/base.d.cts +0 -1
  560. package/dist/prompts/base.d.cts.map +1 -1
  561. package/dist/prompts/base.d.ts +0 -2
  562. package/dist/prompts/base.d.ts.map +1 -1
  563. package/dist/prompts/base.js +3 -5
  564. package/dist/prompts/base.js.map +1 -1
  565. package/dist/prompts/chat.cjs +37 -53
  566. package/dist/prompts/chat.cjs.map +1 -1
  567. package/dist/prompts/chat.d.cts +1 -0
  568. package/dist/prompts/chat.d.cts.map +1 -1
  569. package/dist/prompts/chat.d.ts +1 -1
  570. package/dist/prompts/chat.d.ts.map +1 -1
  571. package/dist/prompts/chat.js +23 -39
  572. package/dist/prompts/chat.js.map +1 -1
  573. package/dist/prompts/dict.cjs +3 -4
  574. package/dist/prompts/dict.cjs.map +1 -1
  575. package/dist/prompts/dict.d.cts.map +1 -1
  576. package/dist/prompts/dict.d.ts.map +1 -1
  577. package/dist/prompts/dict.js +1 -2
  578. package/dist/prompts/dict.js.map +1 -1
  579. package/dist/prompts/few_shot.cjs +14 -20
  580. package/dist/prompts/few_shot.cjs.map +1 -1
  581. package/dist/prompts/few_shot.d.cts.map +1 -1
  582. package/dist/prompts/few_shot.d.ts +0 -1
  583. package/dist/prompts/few_shot.d.ts.map +1 -1
  584. package/dist/prompts/few_shot.js +10 -16
  585. package/dist/prompts/few_shot.js.map +1 -1
  586. package/dist/prompts/image.cjs +7 -10
  587. package/dist/prompts/image.cjs.map +1 -1
  588. package/dist/prompts/image.d.cts +0 -1
  589. package/dist/prompts/image.d.cts.map +1 -1
  590. package/dist/prompts/image.d.ts +0 -2
  591. package/dist/prompts/image.d.ts.map +1 -1
  592. package/dist/prompts/image.js +4 -7
  593. package/dist/prompts/image.js.map +1 -1
  594. package/dist/prompts/index.cjs +19 -20
  595. package/dist/prompts/index.js +3 -5
  596. package/dist/prompts/pipeline.cjs +3 -4
  597. package/dist/prompts/pipeline.cjs.map +1 -1
  598. package/dist/prompts/pipeline.d.cts +0 -1
  599. package/dist/prompts/pipeline.d.cts.map +1 -1
  600. package/dist/prompts/pipeline.d.ts +0 -1
  601. package/dist/prompts/pipeline.d.ts.map +1 -1
  602. package/dist/prompts/pipeline.js +1 -2
  603. package/dist/prompts/pipeline.js.map +1 -1
  604. package/dist/prompts/prompt.cjs +12 -16
  605. package/dist/prompts/prompt.cjs.map +1 -1
  606. package/dist/prompts/prompt.d.cts +0 -1
  607. package/dist/prompts/prompt.d.cts.map +1 -1
  608. package/dist/prompts/prompt.d.ts +0 -1
  609. package/dist/prompts/prompt.d.ts.map +1 -1
  610. package/dist/prompts/prompt.js +10 -14
  611. package/dist/prompts/prompt.js.map +1 -1
  612. package/dist/prompts/serde.d.cts +0 -1
  613. package/dist/prompts/serde.d.cts.map +1 -1
  614. package/dist/prompts/serde.d.ts +0 -2
  615. package/dist/prompts/serde.d.ts.map +1 -1
  616. package/dist/prompts/string.cjs +4 -6
  617. package/dist/prompts/string.cjs.map +1 -1
  618. package/dist/prompts/string.d.cts +0 -1
  619. package/dist/prompts/string.d.cts.map +1 -1
  620. package/dist/prompts/string.d.ts +0 -1
  621. package/dist/prompts/string.d.ts.map +1 -1
  622. package/dist/prompts/string.js +2 -4
  623. package/dist/prompts/string.js.map +1 -1
  624. package/dist/prompts/structured.cjs +3 -4
  625. package/dist/prompts/structured.cjs.map +1 -1
  626. package/dist/prompts/structured.d.cts +0 -1
  627. package/dist/prompts/structured.d.cts.map +1 -1
  628. package/dist/prompts/structured.d.ts +0 -1
  629. package/dist/prompts/structured.d.ts.map +1 -1
  630. package/dist/prompts/structured.js +1 -2
  631. package/dist/prompts/structured.js.map +1 -1
  632. package/dist/prompts/template.cjs +12 -23
  633. package/dist/prompts/template.cjs.map +1 -1
  634. package/dist/prompts/template.d.cts +0 -2
  635. package/dist/prompts/template.d.cts.map +1 -1
  636. package/dist/prompts/template.d.ts +0 -2
  637. package/dist/prompts/template.d.ts.map +1 -1
  638. package/dist/prompts/template.js +8 -20
  639. package/dist/prompts/template.js.map +1 -1
  640. package/dist/retrievers/document_compressors/index.cjs +8 -10
  641. package/dist/retrievers/document_compressors/index.cjs.map +1 -1
  642. package/dist/retrievers/document_compressors/index.d.cts +0 -1
  643. package/dist/retrievers/document_compressors/index.d.cts.map +1 -1
  644. package/dist/retrievers/document_compressors/index.d.ts +0 -1
  645. package/dist/retrievers/document_compressors/index.d.ts.map +1 -1
  646. package/dist/retrievers/document_compressors/index.js +3 -5
  647. package/dist/retrievers/document_compressors/index.js.map +1 -1
  648. package/dist/retrievers/index.cjs +13 -15
  649. package/dist/retrievers/index.cjs.map +1 -1
  650. package/dist/retrievers/index.d.cts +0 -1
  651. package/dist/retrievers/index.d.cts.map +1 -1
  652. package/dist/retrievers/index.d.ts +0 -2
  653. package/dist/retrievers/index.d.ts.map +1 -1
  654. package/dist/retrievers/index.js +4 -7
  655. package/dist/retrievers/index.js.map +1 -1
  656. package/dist/runnables/base.cjs +73 -100
  657. package/dist/runnables/base.cjs.map +1 -1
  658. package/dist/runnables/base.d.cts +3 -4
  659. package/dist/runnables/base.d.cts.map +1 -1
  660. package/dist/runnables/base.d.ts +3 -4
  661. package/dist/runnables/base.d.ts.map +1 -1
  662. package/dist/runnables/base.js +55 -82
  663. package/dist/runnables/base.js.map +1 -1
  664. package/dist/runnables/branch.cjs +8 -13
  665. package/dist/runnables/branch.cjs.map +1 -1
  666. package/dist/runnables/branch.d.cts +0 -1
  667. package/dist/runnables/branch.d.cts.map +1 -1
  668. package/dist/runnables/branch.d.ts +0 -2
  669. package/dist/runnables/branch.d.ts.map +1 -1
  670. package/dist/runnables/branch.js +5 -10
  671. package/dist/runnables/branch.js.map +1 -1
  672. package/dist/runnables/config.cjs +5 -8
  673. package/dist/runnables/config.cjs.map +1 -1
  674. package/dist/runnables/config.d.cts.map +1 -1
  675. package/dist/runnables/config.d.ts.map +1 -1
  676. package/dist/runnables/config.js +3 -5
  677. package/dist/runnables/config.js.map +1 -1
  678. package/dist/runnables/graph.cjs +15 -18
  679. package/dist/runnables/graph.cjs.map +1 -1
  680. package/dist/runnables/graph.d.cts.map +1 -1
  681. package/dist/runnables/graph.d.ts.map +1 -1
  682. package/dist/runnables/graph.js +5 -9
  683. package/dist/runnables/graph.js.map +1 -1
  684. package/dist/runnables/graph_mermaid.cjs +8 -12
  685. package/dist/runnables/graph_mermaid.cjs.map +1 -1
  686. package/dist/runnables/graph_mermaid.js +7 -11
  687. package/dist/runnables/graph_mermaid.js.map +1 -1
  688. package/dist/runnables/history.cjs +12 -17
  689. package/dist/runnables/history.cjs.map +1 -1
  690. package/dist/runnables/history.d.cts +2 -4
  691. package/dist/runnables/history.d.cts.map +1 -1
  692. package/dist/runnables/history.d.ts +2 -6
  693. package/dist/runnables/history.d.ts.map +1 -1
  694. package/dist/runnables/history.js +7 -12
  695. package/dist/runnables/history.js.map +1 -1
  696. package/dist/runnables/index.cjs +16 -17
  697. package/dist/runnables/index.js +3 -5
  698. package/dist/runnables/iter.cjs +21 -5
  699. package/dist/runnables/iter.cjs.map +1 -1
  700. package/dist/runnables/iter.js +17 -3
  701. package/dist/runnables/iter.js.map +1 -1
  702. package/dist/runnables/passthrough.cjs +5 -6
  703. package/dist/runnables/passthrough.cjs.map +1 -1
  704. package/dist/runnables/passthrough.d.cts.map +1 -1
  705. package/dist/runnables/passthrough.d.ts +0 -1
  706. package/dist/runnables/passthrough.d.ts.map +1 -1
  707. package/dist/runnables/passthrough.js +2 -3
  708. package/dist/runnables/passthrough.js.map +1 -1
  709. package/dist/runnables/router.cjs +5 -7
  710. package/dist/runnables/router.cjs.map +1 -1
  711. package/dist/runnables/router.d.cts.map +1 -1
  712. package/dist/runnables/router.d.ts +0 -1
  713. package/dist/runnables/router.d.ts.map +1 -1
  714. package/dist/runnables/router.js +3 -5
  715. package/dist/runnables/router.js.map +1 -1
  716. package/dist/runnables/types.d.cts +1 -2
  717. package/dist/runnables/types.d.cts.map +1 -1
  718. package/dist/runnables/types.d.ts +1 -2
  719. package/dist/runnables/types.d.ts.map +1 -1
  720. package/dist/runnables/utils.cjs +2 -4
  721. package/dist/runnables/utils.cjs.map +1 -1
  722. package/dist/runnables/utils.js +2 -3
  723. package/dist/runnables/utils.js.map +1 -1
  724. package/dist/runnables/wrappers.cjs +2 -3
  725. package/dist/runnables/wrappers.cjs.map +1 -1
  726. package/dist/runnables/wrappers.js +1 -2
  727. package/dist/runnables/wrappers.js.map +1 -1
  728. package/dist/singletons/async_local_storage/context.cjs +6 -8
  729. package/dist/singletons/async_local_storage/context.cjs.map +1 -1
  730. package/dist/singletons/async_local_storage/context.d.cts +0 -1
  731. package/dist/singletons/async_local_storage/context.d.cts.map +1 -1
  732. package/dist/singletons/async_local_storage/context.d.ts +0 -1
  733. package/dist/singletons/async_local_storage/context.d.ts.map +1 -1
  734. package/dist/singletons/async_local_storage/context.js +3 -5
  735. package/dist/singletons/async_local_storage/context.js.map +1 -1
  736. package/dist/singletons/async_local_storage/globals.cjs +1 -2
  737. package/dist/singletons/async_local_storage/globals.cjs.map +1 -1
  738. package/dist/singletons/async_local_storage/globals.d.cts.map +1 -1
  739. package/dist/singletons/async_local_storage/globals.d.ts.map +1 -1
  740. package/dist/singletons/async_local_storage/globals.js +1 -1
  741. package/dist/singletons/async_local_storage/globals.js.map +1 -1
  742. package/dist/singletons/async_local_storage/index.cjs +8 -14
  743. package/dist/singletons/async_local_storage/index.cjs.map +1 -1
  744. package/dist/singletons/async_local_storage/index.d.cts.map +1 -1
  745. package/dist/singletons/async_local_storage/index.d.ts.map +1 -1
  746. package/dist/singletons/async_local_storage/index.js +4 -10
  747. package/dist/singletons/async_local_storage/index.js.map +1 -1
  748. package/dist/singletons/callbacks.cjs +7 -8
  749. package/dist/singletons/callbacks.cjs.map +1 -1
  750. package/dist/singletons/callbacks.d.cts +0 -1
  751. package/dist/singletons/callbacks.d.cts.map +1 -1
  752. package/dist/singletons/callbacks.d.ts +0 -1
  753. package/dist/singletons/callbacks.d.ts.map +1 -1
  754. package/dist/singletons/callbacks.js +2 -4
  755. package/dist/singletons/callbacks.js.map +1 -1
  756. package/dist/singletons/index.cjs +11 -12
  757. package/dist/singletons/index.js +3 -5
  758. package/dist/singletons/tracer.cjs +5 -9
  759. package/dist/singletons/tracer.cjs.map +1 -1
  760. package/dist/singletons/tracer.js +2 -6
  761. package/dist/singletons/tracer.js.map +1 -1
  762. package/dist/stores.cjs +10 -11
  763. package/dist/stores.cjs.map +1 -1
  764. package/dist/stores.d.cts +0 -1
  765. package/dist/stores.d.cts.map +1 -1
  766. package/dist/stores.d.ts +0 -1
  767. package/dist/stores.d.ts.map +1 -1
  768. package/dist/stores.js +3 -5
  769. package/dist/stores.js.map +1 -1
  770. package/dist/structured_query/base.cjs +6 -7
  771. package/dist/structured_query/base.cjs.map +1 -1
  772. package/dist/structured_query/base.d.cts +0 -1
  773. package/dist/structured_query/base.d.cts.map +1 -1
  774. package/dist/structured_query/base.d.ts +0 -1
  775. package/dist/structured_query/base.d.ts.map +1 -1
  776. package/dist/structured_query/base.js +4 -5
  777. package/dist/structured_query/base.js.map +1 -1
  778. package/dist/structured_query/functional.cjs +7 -8
  779. package/dist/structured_query/functional.cjs.map +1 -1
  780. package/dist/structured_query/functional.d.cts +0 -1
  781. package/dist/structured_query/functional.d.cts.map +1 -1
  782. package/dist/structured_query/functional.d.ts +0 -1
  783. package/dist/structured_query/functional.d.ts.map +1 -1
  784. package/dist/structured_query/functional.js +4 -5
  785. package/dist/structured_query/functional.js.map +1 -1
  786. package/dist/structured_query/index.cjs +13 -14
  787. package/dist/structured_query/index.js +3 -5
  788. package/dist/structured_query/ir.cjs +1 -2
  789. package/dist/structured_query/ir.cjs.map +1 -1
  790. package/dist/structured_query/ir.d.cts +0 -1
  791. package/dist/structured_query/ir.d.cts.map +1 -1
  792. package/dist/structured_query/ir.d.ts +0 -1
  793. package/dist/structured_query/ir.d.ts.map +1 -1
  794. package/dist/structured_query/ir.js +1 -1
  795. package/dist/structured_query/ir.js.map +1 -1
  796. package/dist/structured_query/utils.cjs +1 -2
  797. package/dist/structured_query/utils.cjs.map +1 -1
  798. package/dist/structured_query/utils.d.cts.map +1 -1
  799. package/dist/structured_query/utils.d.ts.map +1 -1
  800. package/dist/structured_query/utils.js +1 -1
  801. package/dist/structured_query/utils.js.map +1 -1
  802. package/dist/testing/fake_model_builder.cjs +225 -0
  803. package/dist/testing/fake_model_builder.cjs.map +1 -0
  804. package/dist/testing/fake_model_builder.d.cts +138 -0
  805. package/dist/testing/fake_model_builder.d.cts.map +1 -0
  806. package/dist/testing/fake_model_builder.d.ts +138 -0
  807. package/dist/testing/fake_model_builder.d.ts.map +1 -0
  808. package/dist/testing/fake_model_builder.js +224 -0
  809. package/dist/testing/fake_model_builder.js.map +1 -0
  810. package/dist/testing/index.cjs +42 -0
  811. package/dist/testing/index.cjs.map +1 -0
  812. package/dist/testing/index.d.cts +3 -0
  813. package/dist/testing/index.d.ts +3 -0
  814. package/dist/testing/index.js +23 -0
  815. package/dist/testing/index.js.map +1 -0
  816. package/dist/testing/matchers.cjs +212 -0
  817. package/dist/testing/matchers.cjs.map +1 -0
  818. package/dist/testing/matchers.d.cts +94 -0
  819. package/dist/testing/matchers.d.cts.map +1 -0
  820. package/dist/testing/matchers.d.ts +94 -0
  821. package/dist/testing/matchers.d.ts.map +1 -0
  822. package/dist/testing/matchers.js +202 -0
  823. package/dist/testing/matchers.js.map +1 -0
  824. package/dist/tools/index.cjs +51 -36
  825. package/dist/tools/index.cjs.map +1 -1
  826. package/dist/tools/index.d.cts +31 -24
  827. package/dist/tools/index.d.cts.map +1 -1
  828. package/dist/tools/index.d.ts +31 -26
  829. package/dist/tools/index.d.ts.map +1 -1
  830. package/dist/tools/index.js +32 -18
  831. package/dist/tools/index.js.map +1 -1
  832. package/dist/tools/types.cjs +3 -4
  833. package/dist/tools/types.cjs.map +1 -1
  834. package/dist/tools/types.d.cts +26 -11
  835. package/dist/tools/types.d.cts.map +1 -1
  836. package/dist/tools/types.d.ts +26 -13
  837. package/dist/tools/types.d.ts.map +1 -1
  838. package/dist/tools/types.js +1 -2
  839. package/dist/tools/types.js.map +1 -1
  840. package/dist/tools/utils.cjs +1 -2
  841. package/dist/tools/utils.cjs.map +1 -1
  842. package/dist/tools/utils.d.cts +0 -1
  843. package/dist/tools/utils.d.cts.map +1 -1
  844. package/dist/tools/utils.d.ts +0 -1
  845. package/dist/tools/utils.d.ts.map +1 -1
  846. package/dist/tools/utils.js +1 -1
  847. package/dist/tools/utils.js.map +1 -1
  848. package/dist/tracers/base.cjs +20 -18
  849. package/dist/tracers/base.cjs.map +1 -1
  850. package/dist/tracers/base.d.cts +92 -98
  851. package/dist/tracers/base.d.cts.map +1 -1
  852. package/dist/tracers/base.d.ts +92 -98
  853. package/dist/tracers/base.d.ts.map +1 -1
  854. package/dist/tracers/base.js +11 -10
  855. package/dist/tracers/base.js.map +1 -1
  856. package/dist/tracers/console.cjs +16 -17
  857. package/dist/tracers/console.cjs.map +1 -1
  858. package/dist/tracers/console.d.cts +0 -1
  859. package/dist/tracers/console.d.cts.map +1 -1
  860. package/dist/tracers/console.d.ts +0 -1
  861. package/dist/tracers/console.d.ts.map +1 -1
  862. package/dist/tracers/console.js +7 -10
  863. package/dist/tracers/console.js.map +1 -1
  864. package/dist/tracers/event_stream.cjs +24 -10
  865. package/dist/tracers/event_stream.cjs.map +1 -1
  866. package/dist/tracers/event_stream.d.cts +7 -6
  867. package/dist/tracers/event_stream.d.cts.map +1 -1
  868. package/dist/tracers/event_stream.d.ts +7 -7
  869. package/dist/tracers/event_stream.d.ts.map +1 -1
  870. package/dist/tracers/event_stream.js +20 -6
  871. package/dist/tracers/event_stream.js.map +1 -1
  872. package/dist/tracers/log_stream.cjs +15 -16
  873. package/dist/tracers/log_stream.cjs.map +1 -1
  874. package/dist/tracers/log_stream.d.cts +14 -31
  875. package/dist/tracers/log_stream.d.cts.map +1 -1
  876. package/dist/tracers/log_stream.d.ts +14 -31
  877. package/dist/tracers/log_stream.d.ts.map +1 -1
  878. package/dist/tracers/log_stream.js +5 -7
  879. package/dist/tracers/log_stream.js.map +1 -1
  880. package/dist/tracers/root_listener.cjs +2 -3
  881. package/dist/tracers/root_listener.cjs.map +1 -1
  882. package/dist/tracers/root_listener.js +1 -2
  883. package/dist/tracers/root_listener.js.map +1 -1
  884. package/dist/tracers/run_collector.cjs +10 -11
  885. package/dist/tracers/run_collector.cjs.map +1 -1
  886. package/dist/tracers/run_collector.d.cts +0 -1
  887. package/dist/tracers/run_collector.d.cts.map +1 -1
  888. package/dist/tracers/run_collector.d.ts +0 -1
  889. package/dist/tracers/run_collector.d.ts.map +1 -1
  890. package/dist/tracers/run_collector.js +3 -5
  891. package/dist/tracers/run_collector.js.map +1 -1
  892. package/dist/tracers/tracer_langchain.cjs +43 -19
  893. package/dist/tracers/tracer_langchain.cjs.map +1 -1
  894. package/dist/tracers/tracer_langchain.d.cts +2 -1
  895. package/dist/tracers/tracer_langchain.d.cts.map +1 -1
  896. package/dist/tracers/tracer_langchain.d.ts +2 -1
  897. package/dist/tracers/tracer_langchain.d.ts.map +1 -1
  898. package/dist/tracers/tracer_langchain.js +33 -10
  899. package/dist/tracers/tracer_langchain.js.map +1 -1
  900. package/dist/types/_internal.d.cts.map +1 -1
  901. package/dist/types/_internal.d.ts.map +1 -1
  902. package/dist/types/stream.cjs +8 -8
  903. package/dist/types/stream.js +3 -2
  904. package/dist/types/type-utils.d.cts +2 -1
  905. package/dist/types/type-utils.d.cts.map +1 -1
  906. package/dist/types/type-utils.d.ts +2 -1
  907. package/dist/types/type-utils.d.ts.map +1 -1
  908. package/dist/utils/async_caller.cjs +29 -22
  909. package/dist/utils/async_caller.cjs.map +1 -1
  910. package/dist/utils/async_caller.d.cts.map +1 -1
  911. package/dist/utils/async_caller.d.ts.map +1 -1
  912. package/dist/utils/async_caller.js +19 -14
  913. package/dist/utils/async_caller.js.map +1 -1
  914. package/dist/utils/callbacks.cjs +4 -6
  915. package/dist/utils/callbacks.cjs.map +1 -1
  916. package/dist/utils/callbacks.js +3 -5
  917. package/dist/utils/callbacks.js.map +1 -1
  918. package/dist/utils/chunk_array.cjs +9 -12
  919. package/dist/utils/chunk_array.cjs.map +1 -1
  920. package/dist/utils/chunk_array.d.cts.map +1 -1
  921. package/dist/utils/chunk_array.d.ts.map +1 -1
  922. package/dist/utils/chunk_array.js +4 -7
  923. package/dist/utils/chunk_array.js.map +1 -1
  924. package/dist/utils/context.cjs +104 -0
  925. package/dist/utils/context.cjs.map +1 -0
  926. package/dist/utils/context.d.cts +44 -0
  927. package/dist/utils/context.d.cts.map +1 -0
  928. package/dist/utils/context.d.ts +44 -0
  929. package/dist/utils/context.d.ts.map +1 -0
  930. package/dist/utils/context.js +98 -0
  931. package/dist/utils/context.js.map +1 -0
  932. package/dist/utils/env.cjs +14 -19
  933. package/dist/utils/env.cjs.map +1 -1
  934. package/dist/utils/env.d.cts.map +1 -1
  935. package/dist/utils/env.d.ts.map +1 -1
  936. package/dist/utils/env.js +9 -14
  937. package/dist/utils/env.js.map +1 -1
  938. package/dist/utils/event_source_parse.cjs +16 -17
  939. package/dist/utils/event_source_parse.cjs.map +1 -1
  940. package/dist/utils/event_source_parse.d.cts +2 -2
  941. package/dist/utils/event_source_parse.d.cts.map +1 -1
  942. package/dist/utils/event_source_parse.d.ts +2 -2
  943. package/dist/utils/event_source_parse.d.ts.map +1 -1
  944. package/dist/utils/event_source_parse.js +9 -11
  945. package/dist/utils/event_source_parse.js.map +1 -1
  946. package/dist/utils/fast-json-patch/index.cjs +5 -13
  947. package/dist/utils/fast-json-patch/index.cjs.map +1 -1
  948. package/dist/utils/fast-json-patch/index.js +6 -13
  949. package/dist/utils/fast-json-patch/index.js.map +1 -1
  950. package/dist/utils/fast-json-patch/src/core.cjs +16 -28
  951. package/dist/utils/fast-json-patch/src/core.cjs.map +1 -1
  952. package/dist/utils/fast-json-patch/src/core.d.cts +0 -1
  953. package/dist/utils/fast-json-patch/src/core.d.cts.map +1 -1
  954. package/dist/utils/fast-json-patch/src/core.d.ts +0 -1
  955. package/dist/utils/fast-json-patch/src/core.d.ts.map +1 -1
  956. package/dist/utils/fast-json-patch/src/core.js +10 -22
  957. package/dist/utils/fast-json-patch/src/core.js.map +1 -1
  958. package/dist/utils/fast-json-patch/src/duplex.cjs +8 -7
  959. package/dist/utils/fast-json-patch/src/duplex.cjs.map +1 -1
  960. package/dist/utils/fast-json-patch/src/duplex.d.cts +0 -1
  961. package/dist/utils/fast-json-patch/src/duplex.d.cts.map +1 -1
  962. package/dist/utils/fast-json-patch/src/duplex.d.ts +0 -1
  963. package/dist/utils/fast-json-patch/src/duplex.d.ts.map +1 -1
  964. package/dist/utils/fast-json-patch/src/duplex.js +6 -5
  965. package/dist/utils/fast-json-patch/src/duplex.js.map +1 -1
  966. package/dist/utils/fast-json-patch/src/helpers.cjs +5 -6
  967. package/dist/utils/fast-json-patch/src/helpers.cjs.map +1 -1
  968. package/dist/utils/fast-json-patch/src/helpers.js +5 -5
  969. package/dist/utils/fast-json-patch/src/helpers.js.map +1 -1
  970. package/dist/utils/format.cjs +8 -8
  971. package/dist/utils/format.d.cts.map +1 -1
  972. package/dist/utils/format.d.ts.map +1 -1
  973. package/dist/utils/format.js +3 -2
  974. package/dist/utils/function_calling.cjs +11 -12
  975. package/dist/utils/function_calling.cjs.map +1 -1
  976. package/dist/utils/function_calling.d.cts +0 -1
  977. package/dist/utils/function_calling.d.cts.map +1 -1
  978. package/dist/utils/function_calling.d.ts +0 -1
  979. package/dist/utils/function_calling.d.ts.map +1 -1
  980. package/dist/utils/function_calling.js +3 -5
  981. package/dist/utils/function_calling.js.map +1 -1
  982. package/dist/utils/hash.cjs +10 -11
  983. package/dist/utils/hash.d.cts +0 -1
  984. package/dist/utils/hash.d.cts.map +1 -1
  985. package/dist/utils/hash.d.ts +0 -1
  986. package/dist/utils/hash.d.ts.map +1 -1
  987. package/dist/utils/hash.js +3 -5
  988. package/dist/utils/is-network-error/index.cjs +3 -5
  989. package/dist/utils/is-network-error/index.cjs.map +1 -1
  990. package/dist/utils/is-network-error/index.js +3 -4
  991. package/dist/utils/is-network-error/index.js.map +1 -1
  992. package/dist/utils/js-sha256/hash.cjs +42 -37
  993. package/dist/utils/js-sha256/hash.cjs.map +1 -1
  994. package/dist/utils/js-sha256/hash.d.cts.map +1 -1
  995. package/dist/utils/js-sha256/hash.d.ts.map +1 -1
  996. package/dist/utils/js-sha256/hash.js +42 -36
  997. package/dist/utils/js-sha256/hash.js.map +1 -1
  998. package/dist/utils/json.cjs +1 -2
  999. package/dist/utils/json.cjs.map +1 -1
  1000. package/dist/utils/json.d.cts.map +1 -1
  1001. package/dist/utils/json.d.ts.map +1 -1
  1002. package/dist/utils/json.js +1 -1
  1003. package/dist/utils/json.js.map +1 -1
  1004. package/dist/utils/json_patch.cjs +12 -13
  1005. package/dist/utils/json_patch.js +3 -5
  1006. package/dist/utils/json_schema.cjs +60 -37
  1007. package/dist/utils/json_schema.cjs.map +1 -1
  1008. package/dist/utils/json_schema.d.cts +4 -2
  1009. package/dist/utils/json_schema.d.cts.map +1 -1
  1010. package/dist/utils/json_schema.d.ts +4 -3
  1011. package/dist/utils/json_schema.d.ts.map +1 -1
  1012. package/dist/utils/json_schema.js +36 -14
  1013. package/dist/utils/json_schema.js.map +1 -1
  1014. package/dist/utils/math.cjs +16 -18
  1015. package/dist/utils/math.cjs.map +1 -1
  1016. package/dist/utils/math.d.cts.map +1 -1
  1017. package/dist/utils/math.d.ts.map +1 -1
  1018. package/dist/utils/math.js +9 -12
  1019. package/dist/utils/math.js.map +1 -1
  1020. package/dist/utils/ml-distance/distances.cjs +1 -2
  1021. package/dist/utils/ml-distance/distances.cjs.map +1 -1
  1022. package/dist/utils/ml-distance/distances.js +1 -1
  1023. package/dist/utils/ml-distance/distances.js.map +1 -1
  1024. package/dist/utils/ml-distance/similarities.cjs +1 -2
  1025. package/dist/utils/ml-distance/similarities.cjs.map +1 -1
  1026. package/dist/utils/ml-distance/similarities.d.cts.map +1 -1
  1027. package/dist/utils/ml-distance/similarities.d.ts.map +1 -1
  1028. package/dist/utils/ml-distance/similarities.js +1 -1
  1029. package/dist/utils/ml-distance/similarities.js.map +1 -1
  1030. package/dist/utils/ml-distance-euclidean/euclidean.cjs +1 -2
  1031. package/dist/utils/ml-distance-euclidean/euclidean.cjs.map +1 -1
  1032. package/dist/utils/ml-distance-euclidean/euclidean.js +1 -1
  1033. package/dist/utils/ml-distance-euclidean/euclidean.js.map +1 -1
  1034. package/dist/utils/namespace.cjs +62 -0
  1035. package/dist/utils/namespace.cjs.map +1 -0
  1036. package/dist/utils/namespace.d.cts +73 -0
  1037. package/dist/utils/namespace.d.cts.map +1 -0
  1038. package/dist/utils/namespace.d.ts +73 -0
  1039. package/dist/utils/namespace.d.ts.map +1 -0
  1040. package/dist/utils/namespace.js +62 -0
  1041. package/dist/utils/namespace.js.map +1 -0
  1042. package/dist/utils/p-retry/index.cjs +4 -5
  1043. package/dist/utils/p-retry/index.cjs.map +1 -1
  1044. package/dist/utils/p-retry/index.js +3 -4
  1045. package/dist/utils/p-retry/index.js.map +1 -1
  1046. package/dist/utils/sax-js/sax.cjs +29 -36
  1047. package/dist/utils/sax-js/sax.cjs.map +1 -1
  1048. package/dist/utils/sax-js/sax.js +29 -35
  1049. package/dist/utils/sax-js/sax.js.map +1 -1
  1050. package/dist/utils/signal.cjs +3 -4
  1051. package/dist/utils/signal.cjs.map +1 -1
  1052. package/dist/utils/signal.d.cts.map +1 -1
  1053. package/dist/utils/signal.d.ts.map +1 -1
  1054. package/dist/utils/signal.js +3 -3
  1055. package/dist/utils/signal.js.map +1 -1
  1056. package/dist/utils/ssrf.cjs +267 -0
  1057. package/dist/utils/ssrf.cjs.map +1 -0
  1058. package/dist/utils/ssrf.d.cts +52 -0
  1059. package/dist/utils/ssrf.d.cts.map +1 -0
  1060. package/dist/utils/ssrf.d.ts +52 -0
  1061. package/dist/utils/ssrf.d.ts.map +1 -0
  1062. package/dist/utils/ssrf.js +256 -0
  1063. package/dist/utils/ssrf.js.map +1 -0
  1064. package/dist/utils/standard_schema.cjs +41 -0
  1065. package/dist/utils/standard_schema.cjs.map +1 -0
  1066. package/dist/utils/standard_schema.d.cts +27 -0
  1067. package/dist/utils/standard_schema.d.cts.map +1 -0
  1068. package/dist/utils/standard_schema.d.ts +27 -0
  1069. package/dist/utils/standard_schema.d.ts.map +1 -0
  1070. package/dist/utils/standard_schema.js +33 -0
  1071. package/dist/utils/standard_schema.js.map +1 -0
  1072. package/dist/utils/stream.cjs +15 -16
  1073. package/dist/utils/stream.cjs.map +1 -1
  1074. package/dist/utils/stream.d.cts +2 -2
  1075. package/dist/utils/stream.d.cts.map +1 -1
  1076. package/dist/utils/stream.d.ts +2 -2
  1077. package/dist/utils/stream.d.ts.map +1 -1
  1078. package/dist/utils/stream.js +5 -7
  1079. package/dist/utils/stream.js.map +1 -1
  1080. package/dist/utils/testing/chat_models.cjs +10 -13
  1081. package/dist/utils/testing/chat_models.cjs.map +1 -1
  1082. package/dist/utils/testing/chat_models.d.cts.map +1 -1
  1083. package/dist/utils/testing/chat_models.d.ts +0 -1
  1084. package/dist/utils/testing/chat_models.d.ts.map +1 -1
  1085. package/dist/utils/testing/chat_models.js +4 -7
  1086. package/dist/utils/testing/chat_models.js.map +1 -1
  1087. package/dist/utils/testing/embeddings.cjs +4 -7
  1088. package/dist/utils/testing/embeddings.cjs.map +1 -1
  1089. package/dist/utils/testing/embeddings.d.cts +0 -1
  1090. package/dist/utils/testing/embeddings.d.cts.map +1 -1
  1091. package/dist/utils/testing/embeddings.d.ts +0 -1
  1092. package/dist/utils/testing/embeddings.d.ts.map +1 -1
  1093. package/dist/utils/testing/embeddings.js +3 -6
  1094. package/dist/utils/testing/embeddings.js.map +1 -1
  1095. package/dist/utils/testing/index.cjs +19 -20
  1096. package/dist/utils/testing/index.js +3 -5
  1097. package/dist/utils/testing/llms.cjs +2 -3
  1098. package/dist/utils/testing/llms.cjs.map +1 -1
  1099. package/dist/utils/testing/llms.d.cts.map +1 -1
  1100. package/dist/utils/testing/llms.d.ts.map +1 -1
  1101. package/dist/utils/testing/llms.js +1 -2
  1102. package/dist/utils/testing/llms.js.map +1 -1
  1103. package/dist/utils/testing/message_history.cjs +6 -7
  1104. package/dist/utils/testing/message_history.cjs.map +1 -1
  1105. package/dist/utils/testing/message_history.d.cts.map +1 -1
  1106. package/dist/utils/testing/message_history.d.ts +0 -1
  1107. package/dist/utils/testing/message_history.d.ts.map +1 -1
  1108. package/dist/utils/testing/message_history.js +2 -3
  1109. package/dist/utils/testing/message_history.js.map +1 -1
  1110. package/dist/utils/testing/output_parsers.cjs +2 -3
  1111. package/dist/utils/testing/output_parsers.cjs.map +1 -1
  1112. package/dist/utils/testing/output_parsers.d.cts +0 -1
  1113. package/dist/utils/testing/output_parsers.d.cts.map +1 -1
  1114. package/dist/utils/testing/output_parsers.d.ts +0 -1
  1115. package/dist/utils/testing/output_parsers.d.ts.map +1 -1
  1116. package/dist/utils/testing/output_parsers.js +1 -2
  1117. package/dist/utils/testing/output_parsers.js.map +1 -1
  1118. package/dist/utils/testing/retrievers.cjs +3 -4
  1119. package/dist/utils/testing/retrievers.cjs.map +1 -1
  1120. package/dist/utils/testing/retrievers.d.cts.map +1 -1
  1121. package/dist/utils/testing/retrievers.d.ts.map +1 -1
  1122. package/dist/utils/testing/retrievers.js +2 -3
  1123. package/dist/utils/testing/retrievers.js.map +1 -1
  1124. package/dist/utils/testing/runnables.cjs +2 -3
  1125. package/dist/utils/testing/runnables.cjs.map +1 -1
  1126. package/dist/utils/testing/runnables.d.cts.map +1 -1
  1127. package/dist/utils/testing/runnables.d.ts.map +1 -1
  1128. package/dist/utils/testing/runnables.js +1 -2
  1129. package/dist/utils/testing/runnables.js.map +1 -1
  1130. package/dist/utils/testing/tools.cjs +2 -3
  1131. package/dist/utils/testing/tools.cjs.map +1 -1
  1132. package/dist/utils/testing/tools.d.cts.map +1 -1
  1133. package/dist/utils/testing/tools.d.ts.map +1 -1
  1134. package/dist/utils/testing/tools.js +1 -2
  1135. package/dist/utils/testing/tools.js.map +1 -1
  1136. package/dist/utils/testing/tracers.cjs +2 -3
  1137. package/dist/utils/testing/tracers.cjs.map +1 -1
  1138. package/dist/utils/testing/tracers.d.cts.map +1 -1
  1139. package/dist/utils/testing/tracers.d.ts.map +1 -1
  1140. package/dist/utils/testing/tracers.js +1 -2
  1141. package/dist/utils/testing/tracers.js.map +1 -1
  1142. package/dist/utils/testing/vectorstores.cjs +10 -15
  1143. package/dist/utils/testing/vectorstores.cjs.map +1 -1
  1144. package/dist/utils/testing/vectorstores.d.cts +0 -1
  1145. package/dist/utils/testing/vectorstores.d.cts.map +1 -1
  1146. package/dist/utils/testing/vectorstores.d.ts +0 -1
  1147. package/dist/utils/testing/vectorstores.d.ts.map +1 -1
  1148. package/dist/utils/testing/vectorstores.js +8 -13
  1149. package/dist/utils/testing/vectorstores.js.map +1 -1
  1150. package/dist/utils/tiktoken.cjs +11 -12
  1151. package/dist/utils/tiktoken.cjs.map +1 -1
  1152. package/dist/utils/tiktoken.d.cts.map +1 -1
  1153. package/dist/utils/tiktoken.d.ts.map +1 -1
  1154. package/dist/utils/tiktoken.js +3 -5
  1155. package/dist/utils/tiktoken.js.map +1 -1
  1156. package/dist/utils/types/index.cjs +10 -11
  1157. package/dist/utils/types/index.cjs.map +1 -1
  1158. package/dist/utils/types/index.d.cts +2 -3
  1159. package/dist/utils/types/index.d.cts.map +1 -1
  1160. package/dist/utils/types/index.d.ts +2 -3
  1161. package/dist/utils/types/index.d.ts.map +1 -1
  1162. package/dist/utils/types/index.js +3 -5
  1163. package/dist/utils/types/index.js.map +1 -1
  1164. package/dist/utils/types/zod.cjs +20 -36
  1165. package/dist/utils/types/zod.cjs.map +1 -1
  1166. package/dist/utils/types/zod.d.cts +144 -33
  1167. package/dist/utils/types/zod.d.cts.map +1 -1
  1168. package/dist/utils/types/zod.d.ts +144 -33
  1169. package/dist/utils/types/zod.d.ts.map +1 -1
  1170. package/dist/utils/types/zod.js +18 -34
  1171. package/dist/utils/types/zod.js.map +1 -1
  1172. package/dist/utils/zod-to-json-schema/Options.cjs +1 -2
  1173. package/dist/utils/zod-to-json-schema/Options.cjs.map +1 -1
  1174. package/dist/utils/zod-to-json-schema/Options.d.cts +1 -0
  1175. package/dist/utils/zod-to-json-schema/Options.d.ts +1 -3
  1176. package/dist/utils/zod-to-json-schema/Options.js +1 -1
  1177. package/dist/utils/zod-to-json-schema/Options.js.map +1 -1
  1178. package/dist/utils/zod-to-json-schema/Refs.cjs +2 -3
  1179. package/dist/utils/zod-to-json-schema/Refs.cjs.map +1 -1
  1180. package/dist/utils/zod-to-json-schema/Refs.d.cts +1 -0
  1181. package/dist/utils/zod-to-json-schema/Refs.d.ts +1 -3
  1182. package/dist/utils/zod-to-json-schema/Refs.js +1 -2
  1183. package/dist/utils/zod-to-json-schema/Refs.js.map +1 -1
  1184. package/dist/utils/zod-to-json-schema/errorMessages.cjs +1 -2
  1185. package/dist/utils/zod-to-json-schema/errorMessages.cjs.map +1 -1
  1186. package/dist/utils/zod-to-json-schema/errorMessages.d.cts +0 -1
  1187. package/dist/utils/zod-to-json-schema/errorMessages.d.cts.map +1 -1
  1188. package/dist/utils/zod-to-json-schema/errorMessages.d.ts +0 -2
  1189. package/dist/utils/zod-to-json-schema/errorMessages.d.ts.map +1 -1
  1190. package/dist/utils/zod-to-json-schema/errorMessages.js +1 -1
  1191. package/dist/utils/zod-to-json-schema/errorMessages.js.map +1 -1
  1192. package/dist/utils/zod-to-json-schema/getRelativePath.cjs +1 -2
  1193. package/dist/utils/zod-to-json-schema/getRelativePath.cjs.map +1 -1
  1194. package/dist/utils/zod-to-json-schema/getRelativePath.js +1 -1
  1195. package/dist/utils/zod-to-json-schema/getRelativePath.js.map +1 -1
  1196. package/dist/utils/zod-to-json-schema/index.cjs +37 -37
  1197. package/dist/utils/zod-to-json-schema/index.d.cts +24 -0
  1198. package/dist/utils/zod-to-json-schema/index.d.ts +1 -14
  1199. package/dist/utils/zod-to-json-schema/index.js +38 -37
  1200. package/dist/utils/zod-to-json-schema/parseDef.cjs +5 -6
  1201. package/dist/utils/zod-to-json-schema/parseDef.cjs.map +1 -1
  1202. package/dist/utils/zod-to-json-schema/parseDef.d.cts +1 -0
  1203. package/dist/utils/zod-to-json-schema/parseDef.d.ts +1 -3
  1204. package/dist/utils/zod-to-json-schema/parseDef.js +1 -2
  1205. package/dist/utils/zod-to-json-schema/parseDef.js.map +1 -1
  1206. package/dist/utils/zod-to-json-schema/parseTypes.d.cts.map +1 -1
  1207. package/dist/utils/zod-to-json-schema/parseTypes.d.ts.map +1 -1
  1208. package/dist/utils/zod-to-json-schema/parsers/any.cjs +2 -3
  1209. package/dist/utils/zod-to-json-schema/parsers/any.cjs.map +1 -1
  1210. package/dist/utils/zod-to-json-schema/parsers/any.d.cts.map +1 -1
  1211. package/dist/utils/zod-to-json-schema/parsers/any.d.ts +0 -2
  1212. package/dist/utils/zod-to-json-schema/parsers/any.d.ts.map +1 -1
  1213. package/dist/utils/zod-to-json-schema/parsers/any.js +1 -2
  1214. package/dist/utils/zod-to-json-schema/parsers/any.js.map +1 -1
  1215. package/dist/utils/zod-to-json-schema/parsers/array.cjs +5 -6
  1216. package/dist/utils/zod-to-json-schema/parsers/array.cjs.map +1 -1
  1217. package/dist/utils/zod-to-json-schema/parsers/array.d.cts +0 -1
  1218. package/dist/utils/zod-to-json-schema/parsers/array.d.cts.map +1 -1
  1219. package/dist/utils/zod-to-json-schema/parsers/array.d.ts +0 -3
  1220. package/dist/utils/zod-to-json-schema/parsers/array.d.ts.map +1 -1
  1221. package/dist/utils/zod-to-json-schema/parsers/array.js +1 -2
  1222. package/dist/utils/zod-to-json-schema/parsers/array.js.map +1 -1
  1223. package/dist/utils/zod-to-json-schema/parsers/bigint.cjs +2 -3
  1224. package/dist/utils/zod-to-json-schema/parsers/bigint.cjs.map +1 -1
  1225. package/dist/utils/zod-to-json-schema/parsers/bigint.d.cts +0 -1
  1226. package/dist/utils/zod-to-json-schema/parsers/bigint.d.cts.map +1 -1
  1227. package/dist/utils/zod-to-json-schema/parsers/bigint.d.ts +0 -3
  1228. package/dist/utils/zod-to-json-schema/parsers/bigint.d.ts.map +1 -1
  1229. package/dist/utils/zod-to-json-schema/parsers/bigint.js +1 -2
  1230. package/dist/utils/zod-to-json-schema/parsers/bigint.js.map +1 -1
  1231. package/dist/utils/zod-to-json-schema/parsers/boolean.cjs +1 -2
  1232. package/dist/utils/zod-to-json-schema/parsers/boolean.cjs.map +1 -1
  1233. package/dist/utils/zod-to-json-schema/parsers/boolean.d.cts.map +1 -1
  1234. package/dist/utils/zod-to-json-schema/parsers/boolean.d.ts.map +1 -1
  1235. package/dist/utils/zod-to-json-schema/parsers/boolean.js +1 -1
  1236. package/dist/utils/zod-to-json-schema/parsers/boolean.js.map +1 -1
  1237. package/dist/utils/zod-to-json-schema/parsers/branded.cjs +2 -3
  1238. package/dist/utils/zod-to-json-schema/parsers/branded.cjs.map +1 -1
  1239. package/dist/utils/zod-to-json-schema/parsers/branded.d.cts +1 -0
  1240. package/dist/utils/zod-to-json-schema/parsers/branded.d.ts +1 -3
  1241. package/dist/utils/zod-to-json-schema/parsers/branded.js +1 -2
  1242. package/dist/utils/zod-to-json-schema/parsers/branded.js.map +1 -1
  1243. package/dist/utils/zod-to-json-schema/parsers/catch.cjs +2 -3
  1244. package/dist/utils/zod-to-json-schema/parsers/catch.cjs.map +1 -1
  1245. package/dist/utils/zod-to-json-schema/parsers/catch.d.cts +1 -0
  1246. package/dist/utils/zod-to-json-schema/parsers/catch.d.ts +1 -3
  1247. package/dist/utils/zod-to-json-schema/parsers/catch.js +1 -2
  1248. package/dist/utils/zod-to-json-schema/parsers/catch.js.map +1 -1
  1249. package/dist/utils/zod-to-json-schema/parsers/date.cjs +2 -3
  1250. package/dist/utils/zod-to-json-schema/parsers/date.cjs.map +1 -1
  1251. package/dist/utils/zod-to-json-schema/parsers/date.d.cts +0 -2
  1252. package/dist/utils/zod-to-json-schema/parsers/date.d.cts.map +1 -1
  1253. package/dist/utils/zod-to-json-schema/parsers/date.d.ts +0 -4
  1254. package/dist/utils/zod-to-json-schema/parsers/date.d.ts.map +1 -1
  1255. package/dist/utils/zod-to-json-schema/parsers/date.js +1 -2
  1256. package/dist/utils/zod-to-json-schema/parsers/date.js.map +1 -1
  1257. package/dist/utils/zod-to-json-schema/parsers/default.cjs +2 -3
  1258. package/dist/utils/zod-to-json-schema/parsers/default.cjs.map +1 -1
  1259. package/dist/utils/zod-to-json-schema/parsers/default.d.cts +1 -0
  1260. package/dist/utils/zod-to-json-schema/parsers/default.d.ts +1 -3
  1261. package/dist/utils/zod-to-json-schema/parsers/default.js +1 -2
  1262. package/dist/utils/zod-to-json-schema/parsers/default.js.map +1 -1
  1263. package/dist/utils/zod-to-json-schema/parsers/effects.cjs +3 -4
  1264. package/dist/utils/zod-to-json-schema/parsers/effects.cjs.map +1 -1
  1265. package/dist/utils/zod-to-json-schema/parsers/effects.d.cts +1 -0
  1266. package/dist/utils/zod-to-json-schema/parsers/effects.d.ts +1 -3
  1267. package/dist/utils/zod-to-json-schema/parsers/effects.js +1 -2
  1268. package/dist/utils/zod-to-json-schema/parsers/effects.js.map +1 -1
  1269. package/dist/utils/zod-to-json-schema/parsers/enum.cjs +1 -2
  1270. package/dist/utils/zod-to-json-schema/parsers/enum.cjs.map +1 -1
  1271. package/dist/utils/zod-to-json-schema/parsers/enum.d.cts.map +1 -1
  1272. package/dist/utils/zod-to-json-schema/parsers/enum.d.ts +0 -2
  1273. package/dist/utils/zod-to-json-schema/parsers/enum.d.ts.map +1 -1
  1274. package/dist/utils/zod-to-json-schema/parsers/enum.js +1 -1
  1275. package/dist/utils/zod-to-json-schema/parsers/enum.js.map +1 -1
  1276. package/dist/utils/zod-to-json-schema/parsers/intersection.cjs +3 -4
  1277. package/dist/utils/zod-to-json-schema/parsers/intersection.cjs.map +1 -1
  1278. package/dist/utils/zod-to-json-schema/parsers/intersection.d.cts +0 -1
  1279. package/dist/utils/zod-to-json-schema/parsers/intersection.d.cts.map +1 -1
  1280. package/dist/utils/zod-to-json-schema/parsers/intersection.d.ts +0 -3
  1281. package/dist/utils/zod-to-json-schema/parsers/intersection.d.ts.map +1 -1
  1282. package/dist/utils/zod-to-json-schema/parsers/intersection.js +2 -3
  1283. package/dist/utils/zod-to-json-schema/parsers/intersection.js.map +1 -1
  1284. package/dist/utils/zod-to-json-schema/parsers/literal.cjs +1 -2
  1285. package/dist/utils/zod-to-json-schema/parsers/literal.cjs.map +1 -1
  1286. package/dist/utils/zod-to-json-schema/parsers/literal.d.cts +0 -1
  1287. package/dist/utils/zod-to-json-schema/parsers/literal.d.cts.map +1 -1
  1288. package/dist/utils/zod-to-json-schema/parsers/literal.d.ts +0 -3
  1289. package/dist/utils/zod-to-json-schema/parsers/literal.d.ts.map +1 -1
  1290. package/dist/utils/zod-to-json-schema/parsers/literal.js +1 -1
  1291. package/dist/utils/zod-to-json-schema/parsers/literal.js.map +1 -1
  1292. package/dist/utils/zod-to-json-schema/parsers/map.cjs +21 -24
  1293. package/dist/utils/zod-to-json-schema/parsers/map.cjs.map +1 -1
  1294. package/dist/utils/zod-to-json-schema/parsers/map.d.cts +0 -2
  1295. package/dist/utils/zod-to-json-schema/parsers/map.d.cts.map +1 -1
  1296. package/dist/utils/zod-to-json-schema/parsers/map.d.ts +0 -4
  1297. package/dist/utils/zod-to-json-schema/parsers/map.d.ts.map +1 -1
  1298. package/dist/utils/zod-to-json-schema/parsers/map.js +18 -21
  1299. package/dist/utils/zod-to-json-schema/parsers/map.js.map +1 -1
  1300. package/dist/utils/zod-to-json-schema/parsers/nativeEnum.cjs +3 -5
  1301. package/dist/utils/zod-to-json-schema/parsers/nativeEnum.cjs.map +1 -1
  1302. package/dist/utils/zod-to-json-schema/parsers/nativeEnum.d.cts.map +1 -1
  1303. package/dist/utils/zod-to-json-schema/parsers/nativeEnum.d.ts +0 -2
  1304. package/dist/utils/zod-to-json-schema/parsers/nativeEnum.d.ts.map +1 -1
  1305. package/dist/utils/zod-to-json-schema/parsers/nativeEnum.js +3 -4
  1306. package/dist/utils/zod-to-json-schema/parsers/nativeEnum.js.map +1 -1
  1307. package/dist/utils/zod-to-json-schema/parsers/never.cjs +2 -3
  1308. package/dist/utils/zod-to-json-schema/parsers/never.cjs.map +1 -1
  1309. package/dist/utils/zod-to-json-schema/parsers/never.d.cts +0 -1
  1310. package/dist/utils/zod-to-json-schema/parsers/never.d.cts.map +1 -1
  1311. package/dist/utils/zod-to-json-schema/parsers/never.d.ts +0 -2
  1312. package/dist/utils/zod-to-json-schema/parsers/never.d.ts.map +1 -1
  1313. package/dist/utils/zod-to-json-schema/parsers/never.js +1 -2
  1314. package/dist/utils/zod-to-json-schema/parsers/never.js.map +1 -1
  1315. package/dist/utils/zod-to-json-schema/parsers/null.cjs +1 -2
  1316. package/dist/utils/zod-to-json-schema/parsers/null.cjs.map +1 -1
  1317. package/dist/utils/zod-to-json-schema/parsers/null.d.cts.map +1 -1
  1318. package/dist/utils/zod-to-json-schema/parsers/null.d.ts +0 -2
  1319. package/dist/utils/zod-to-json-schema/parsers/null.d.ts.map +1 -1
  1320. package/dist/utils/zod-to-json-schema/parsers/null.js +1 -1
  1321. package/dist/utils/zod-to-json-schema/parsers/null.js.map +1 -1
  1322. package/dist/utils/zod-to-json-schema/parsers/nullable.cjs +8 -9
  1323. package/dist/utils/zod-to-json-schema/parsers/nullable.cjs.map +1 -1
  1324. package/dist/utils/zod-to-json-schema/parsers/nullable.d.cts +0 -1
  1325. package/dist/utils/zod-to-json-schema/parsers/nullable.d.cts.map +1 -1
  1326. package/dist/utils/zod-to-json-schema/parsers/nullable.d.ts +0 -3
  1327. package/dist/utils/zod-to-json-schema/parsers/nullable.d.ts.map +1 -1
  1328. package/dist/utils/zod-to-json-schema/parsers/nullable.js +6 -7
  1329. package/dist/utils/zod-to-json-schema/parsers/nullable.js.map +1 -1
  1330. package/dist/utils/zod-to-json-schema/parsers/number.cjs +2 -3
  1331. package/dist/utils/zod-to-json-schema/parsers/number.cjs.map +1 -1
  1332. package/dist/utils/zod-to-json-schema/parsers/number.d.cts +0 -1
  1333. package/dist/utils/zod-to-json-schema/parsers/number.d.cts.map +1 -1
  1334. package/dist/utils/zod-to-json-schema/parsers/number.d.ts +0 -3
  1335. package/dist/utils/zod-to-json-schema/parsers/number.d.ts.map +1 -1
  1336. package/dist/utils/zod-to-json-schema/parsers/number.js +1 -2
  1337. package/dist/utils/zod-to-json-schema/parsers/number.js.map +1 -1
  1338. package/dist/utils/zod-to-json-schema/parsers/object.cjs +2 -3
  1339. package/dist/utils/zod-to-json-schema/parsers/object.cjs.map +1 -1
  1340. package/dist/utils/zod-to-json-schema/parsers/object.d.cts +0 -1
  1341. package/dist/utils/zod-to-json-schema/parsers/object.d.cts.map +1 -1
  1342. package/dist/utils/zod-to-json-schema/parsers/object.d.ts +0 -3
  1343. package/dist/utils/zod-to-json-schema/parsers/object.d.ts.map +1 -1
  1344. package/dist/utils/zod-to-json-schema/parsers/object.js +1 -2
  1345. package/dist/utils/zod-to-json-schema/parsers/object.js.map +1 -1
  1346. package/dist/utils/zod-to-json-schema/parsers/optional.cjs +3 -4
  1347. package/dist/utils/zod-to-json-schema/parsers/optional.cjs.map +1 -1
  1348. package/dist/utils/zod-to-json-schema/parsers/optional.d.cts +1 -0
  1349. package/dist/utils/zod-to-json-schema/parsers/optional.d.ts +1 -3
  1350. package/dist/utils/zod-to-json-schema/parsers/optional.js +1 -2
  1351. package/dist/utils/zod-to-json-schema/parsers/optional.js.map +1 -1
  1352. package/dist/utils/zod-to-json-schema/parsers/pipeline.cjs +4 -6
  1353. package/dist/utils/zod-to-json-schema/parsers/pipeline.cjs.map +1 -1
  1354. package/dist/utils/zod-to-json-schema/parsers/pipeline.d.cts +1 -0
  1355. package/dist/utils/zod-to-json-schema/parsers/pipeline.d.ts +1 -4
  1356. package/dist/utils/zod-to-json-schema/parsers/pipeline.js +3 -5
  1357. package/dist/utils/zod-to-json-schema/parsers/pipeline.js.map +1 -1
  1358. package/dist/utils/zod-to-json-schema/parsers/promise.cjs +2 -3
  1359. package/dist/utils/zod-to-json-schema/parsers/promise.cjs.map +1 -1
  1360. package/dist/utils/zod-to-json-schema/parsers/promise.d.cts +1 -0
  1361. package/dist/utils/zod-to-json-schema/parsers/promise.d.ts +1 -3
  1362. package/dist/utils/zod-to-json-schema/parsers/promise.js +1 -2
  1363. package/dist/utils/zod-to-json-schema/parsers/promise.js.map +1 -1
  1364. package/dist/utils/zod-to-json-schema/parsers/readonly.cjs +2 -3
  1365. package/dist/utils/zod-to-json-schema/parsers/readonly.cjs.map +1 -1
  1366. package/dist/utils/zod-to-json-schema/parsers/readonly.d.cts +1 -0
  1367. package/dist/utils/zod-to-json-schema/parsers/readonly.d.ts +1 -3
  1368. package/dist/utils/zod-to-json-schema/parsers/readonly.js +1 -2
  1369. package/dist/utils/zod-to-json-schema/parsers/readonly.js.map +1 -1
  1370. package/dist/utils/zod-to-json-schema/parsers/record.cjs +9 -10
  1371. package/dist/utils/zod-to-json-schema/parsers/record.cjs.map +1 -1
  1372. package/dist/utils/zod-to-json-schema/parsers/record.d.cts +0 -1
  1373. package/dist/utils/zod-to-json-schema/parsers/record.d.cts.map +1 -1
  1374. package/dist/utils/zod-to-json-schema/parsers/record.d.ts +0 -3
  1375. package/dist/utils/zod-to-json-schema/parsers/record.d.ts.map +1 -1
  1376. package/dist/utils/zod-to-json-schema/parsers/record.js +3 -4
  1377. package/dist/utils/zod-to-json-schema/parsers/record.js.map +1 -1
  1378. package/dist/utils/zod-to-json-schema/parsers/set.cjs +7 -9
  1379. package/dist/utils/zod-to-json-schema/parsers/set.cjs.map +1 -1
  1380. package/dist/utils/zod-to-json-schema/parsers/set.d.cts +0 -1
  1381. package/dist/utils/zod-to-json-schema/parsers/set.d.cts.map +1 -1
  1382. package/dist/utils/zod-to-json-schema/parsers/set.d.ts +0 -3
  1383. package/dist/utils/zod-to-json-schema/parsers/set.d.ts.map +1 -1
  1384. package/dist/utils/zod-to-json-schema/parsers/set.js +5 -7
  1385. package/dist/utils/zod-to-json-schema/parsers/set.js.map +1 -1
  1386. package/dist/utils/zod-to-json-schema/parsers/string.cjs +2 -3
  1387. package/dist/utils/zod-to-json-schema/parsers/string.cjs.map +1 -1
  1388. package/dist/utils/zod-to-json-schema/parsers/string.d.cts +0 -2
  1389. package/dist/utils/zod-to-json-schema/parsers/string.d.cts.map +1 -1
  1390. package/dist/utils/zod-to-json-schema/parsers/string.d.ts +0 -4
  1391. package/dist/utils/zod-to-json-schema/parsers/string.d.ts.map +1 -1
  1392. package/dist/utils/zod-to-json-schema/parsers/string.js +1 -2
  1393. package/dist/utils/zod-to-json-schema/parsers/string.js.map +1 -1
  1394. package/dist/utils/zod-to-json-schema/parsers/tuple.cjs +2 -3
  1395. package/dist/utils/zod-to-json-schema/parsers/tuple.cjs.map +1 -1
  1396. package/dist/utils/zod-to-json-schema/parsers/tuple.d.cts +0 -1
  1397. package/dist/utils/zod-to-json-schema/parsers/tuple.d.cts.map +1 -1
  1398. package/dist/utils/zod-to-json-schema/parsers/tuple.d.ts +0 -3
  1399. package/dist/utils/zod-to-json-schema/parsers/tuple.d.ts.map +1 -1
  1400. package/dist/utils/zod-to-json-schema/parsers/tuple.js +1 -2
  1401. package/dist/utils/zod-to-json-schema/parsers/tuple.js.map +1 -1
  1402. package/dist/utils/zod-to-json-schema/parsers/undefined.cjs +2 -3
  1403. package/dist/utils/zod-to-json-schema/parsers/undefined.cjs.map +1 -1
  1404. package/dist/utils/zod-to-json-schema/parsers/undefined.d.cts +0 -1
  1405. package/dist/utils/zod-to-json-schema/parsers/undefined.d.cts.map +1 -1
  1406. package/dist/utils/zod-to-json-schema/parsers/undefined.d.ts +0 -2
  1407. package/dist/utils/zod-to-json-schema/parsers/undefined.d.ts.map +1 -1
  1408. package/dist/utils/zod-to-json-schema/parsers/undefined.js +1 -2
  1409. package/dist/utils/zod-to-json-schema/parsers/undefined.js.map +1 -1
  1410. package/dist/utils/zod-to-json-schema/parsers/union.cjs +5 -9
  1411. package/dist/utils/zod-to-json-schema/parsers/union.cjs.map +1 -1
  1412. package/dist/utils/zod-to-json-schema/parsers/union.d.cts +1 -2
  1413. package/dist/utils/zod-to-json-schema/parsers/union.d.cts.map +1 -1
  1414. package/dist/utils/zod-to-json-schema/parsers/union.d.ts +0 -3
  1415. package/dist/utils/zod-to-json-schema/parsers/union.d.ts.map +1 -1
  1416. package/dist/utils/zod-to-json-schema/parsers/union.js +4 -8
  1417. package/dist/utils/zod-to-json-schema/parsers/union.js.map +1 -1
  1418. package/dist/utils/zod-to-json-schema/parsers/unknown.cjs +2 -3
  1419. package/dist/utils/zod-to-json-schema/parsers/unknown.cjs.map +1 -1
  1420. package/dist/utils/zod-to-json-schema/parsers/unknown.d.cts +0 -1
  1421. package/dist/utils/zod-to-json-schema/parsers/unknown.d.cts.map +1 -1
  1422. package/dist/utils/zod-to-json-schema/parsers/unknown.d.ts +0 -2
  1423. package/dist/utils/zod-to-json-schema/parsers/unknown.d.ts.map +1 -1
  1424. package/dist/utils/zod-to-json-schema/parsers/unknown.js +1 -2
  1425. package/dist/utils/zod-to-json-schema/parsers/unknown.js.map +1 -1
  1426. package/dist/utils/zod-to-json-schema/selectParser.cjs +34 -35
  1427. package/dist/utils/zod-to-json-schema/selectParser.cjs.map +1 -1
  1428. package/dist/utils/zod-to-json-schema/selectParser.d.cts +1 -0
  1429. package/dist/utils/zod-to-json-schema/selectParser.d.ts +0 -2
  1430. package/dist/utils/zod-to-json-schema/selectParser.js +2 -3
  1431. package/dist/utils/zod-to-json-schema/selectParser.js.map +1 -1
  1432. package/dist/utils/zod-to-json-schema/zodToJsonSchema.cjs +7 -8
  1433. package/dist/utils/zod-to-json-schema/zodToJsonSchema.cjs.map +1 -1
  1434. package/dist/utils/zod-to-json-schema/zodToJsonSchema.d.cts +1 -0
  1435. package/dist/utils/zod-to-json-schema/zodToJsonSchema.d.ts +1 -3
  1436. package/dist/utils/zod-to-json-schema/zodToJsonSchema.js +4 -5
  1437. package/dist/utils/zod-to-json-schema/zodToJsonSchema.js.map +1 -1
  1438. package/dist/vectorstores.cjs +12 -14
  1439. package/dist/vectorstores.cjs.map +1 -1
  1440. package/dist/vectorstores.d.cts +0 -1
  1441. package/dist/vectorstores.d.cts.map +1 -1
  1442. package/dist/vectorstores.d.ts +0 -1
  1443. package/dist/vectorstores.d.ts.map +1 -1
  1444. package/dist/vectorstores.js +4 -7
  1445. package/dist/vectorstores.js.map +1 -1
  1446. package/package.json +116 -19
  1447. package/dist/_virtual/rolldown_runtime.js +0 -11
@@ -1,18 +1,17 @@
1
- const require_json = require('../../utils/json.cjs');
2
- const require_ai = require('../../messages/ai.cjs');
3
- const require_zod = require('../../utils/types/zod.cjs');
4
- const require_base = require('../base.cjs');
5
- const require_transform = require('../transform.cjs');
6
- require('../json.cjs');
7
-
1
+ const require_json = require("../../utils/json.cjs");
2
+ const require_ai = require("../../messages/ai.cjs");
3
+ const require_zod = require("../../utils/types/zod.cjs");
4
+ const require_base = require("../base.cjs");
5
+ const require_transform = require("../transform.cjs");
6
+ require("../json.cjs");
8
7
  //#region src/output_parsers/openai_tools/json_output_tools_parsers.ts
9
8
  function parseToolCall(rawToolCall, options) {
10
- if (rawToolCall.function === void 0) return void 0;
9
+ if (rawToolCall.function === void 0) return;
11
10
  let functionArgs;
12
11
  if (options?.partial) try {
13
12
  functionArgs = require_json.parsePartialJson(rawToolCall.function.arguments ?? "{}");
14
13
  } catch {
15
- return void 0;
14
+ return;
16
15
  }
17
16
  else try {
18
17
  functionArgs = JSON.parse(rawToolCall.function.arguments);
@@ -79,8 +78,7 @@ var JsonOutputToolsParser = class extends require_transform.BaseCumulativeTransf
79
78
  throw new Error("Not implemented.");
80
79
  }
81
80
  async parseResult(generations) {
82
- const result = await this.parsePartialResult(generations, false);
83
- return result;
81
+ return await this.parsePartialResult(generations, false);
84
82
  }
85
83
  /**
86
84
  * Parses the output and returns a JSON object. If `argsOnly` is true,
@@ -92,22 +90,19 @@ var JsonOutputToolsParser = class extends require_transform.BaseCumulativeTransf
92
90
  const message = generations[0].message;
93
91
  let toolCalls;
94
92
  if (require_ai.isAIMessage(message) && message.tool_calls?.length) toolCalls = message.tool_calls.map((toolCall) => {
95
- const { id,...rest } = toolCall;
93
+ const { id, ...rest } = toolCall;
96
94
  if (!this.returnId) return rest;
97
95
  return {
98
96
  id,
99
97
  ...rest
100
98
  };
101
99
  });
102
- else if (message.additional_kwargs.tool_calls !== void 0) {
103
- const rawToolCalls = JSON.parse(JSON.stringify(message.additional_kwargs.tool_calls));
104
- toolCalls = rawToolCalls.map((rawToolCall) => {
105
- return parseToolCall(rawToolCall, {
106
- returnId: this.returnId,
107
- partial
108
- });
100
+ else if (message.additional_kwargs.tool_calls !== void 0) toolCalls = JSON.parse(JSON.stringify(message.additional_kwargs.tool_calls)).map((rawToolCall) => {
101
+ return parseToolCall(rawToolCall, {
102
+ returnId: this.returnId,
103
+ partial
109
104
  });
110
- }
105
+ });
111
106
  if (!toolCalls) return [];
112
107
  const parsedToolCalls = [];
113
108
  for (const toolCall of toolCalls) if (toolCall !== void 0) {
@@ -141,43 +136,47 @@ var JsonOutputKeyToolsParser = class extends JsonOutputToolsParser {
141
136
  /** Whether to return only the first tool call. */
142
137
  returnSingle = false;
143
138
  zodSchema;
139
+ serializableSchema;
144
140
  constructor(params) {
145
141
  super(params);
146
142
  this.keyName = params.keyName;
147
143
  this.returnSingle = params.returnSingle ?? this.returnSingle;
148
- this.zodSchema = params.zodSchema;
144
+ if ("zodSchema" in params) this.zodSchema = params.zodSchema;
145
+ if ("serializableSchema" in params) this.serializableSchema = params.serializableSchema;
149
146
  }
150
147
  async _validateResult(result) {
148
+ if (this.serializableSchema !== void 0) {
149
+ const validated = await this.serializableSchema["~standard"].validate(result);
150
+ if (validated.issues) throw new require_base.OutputParserException(`Failed to parse. Text: "${JSON.stringify(result, null, 2)}". Error: ${JSON.stringify(validated.issues)}`, JSON.stringify(result, null, 2));
151
+ return validated.value;
152
+ }
151
153
  if (this.zodSchema === void 0) return result;
152
154
  const zodParsedResult = await require_zod.interopSafeParseAsync(this.zodSchema, result);
153
155
  if (zodParsedResult.success) return zodParsedResult.data;
154
156
  else throw new require_base.OutputParserException(`Failed to parse. Text: "${JSON.stringify(result, null, 2)}". Error: ${JSON.stringify(zodParsedResult.error?.issues)}`, JSON.stringify(result, null, 2));
155
157
  }
156
158
  async parsePartialResult(generations) {
157
- const results = await super.parsePartialResult(generations);
158
- const matchingResults = results.filter((result) => result.type === this.keyName);
159
+ const matchingResults = (await super.parsePartialResult(generations)).filter((result) => result.type === this.keyName);
159
160
  let returnedValues = matchingResults;
160
- if (!matchingResults.length) return void 0;
161
+ if (!matchingResults.length) return;
161
162
  if (!this.returnId) returnedValues = matchingResults.map((result) => result.args);
162
163
  if (this.returnSingle) return returnedValues[0];
163
164
  return returnedValues;
164
165
  }
165
166
  async parseResult(generations) {
166
- const results = await super.parsePartialResult(generations, false);
167
- const matchingResults = results.filter((result) => result.type === this.keyName);
167
+ const matchingResults = (await super.parsePartialResult(generations, false)).filter((result) => result.type === this.keyName);
168
168
  let returnedValues = matchingResults;
169
- if (!matchingResults.length) return void 0;
169
+ if (!matchingResults.length) return;
170
170
  if (!this.returnId) returnedValues = matchingResults.map((result) => result.args);
171
171
  if (this.returnSingle) return this._validateResult(returnedValues[0]);
172
- const toolCallResults = await Promise.all(returnedValues.map((value) => this._validateResult(value)));
173
- return toolCallResults;
172
+ return await Promise.all(returnedValues.map((value) => this._validateResult(value)));
174
173
  }
175
174
  };
176
-
177
175
  //#endregion
178
176
  exports.JsonOutputKeyToolsParser = JsonOutputKeyToolsParser;
179
177
  exports.JsonOutputToolsParser = JsonOutputToolsParser;
180
178
  exports.convertLangChainToolCallToOpenAI = convertLangChainToolCallToOpenAI;
181
179
  exports.makeInvalidToolCall = makeInvalidToolCall;
182
180
  exports.parseToolCall = parseToolCall;
181
+
183
182
  //# sourceMappingURL=json_output_tools_parsers.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"json_output_tools_parsers.cjs","names":["rawToolCall: Record<string, any>","options?: { returnId?: boolean; partial?: boolean }","parsePartialJson","e: any","OutputParserException","parsedToolCall: ToolCall","toolCall: ToolCall","errorMsg?: string","BaseCumulativeTransformOutputParser","fields?: JsonOutputToolsParserParams","generations: ChatGeneration[]","generations: ChatGenerationChunk[] | ChatGeneration[]","isAIMessage","rawToolCall: Record<string, unknown>","backwardsCompatibleToolCall: ParsedToolCall","params:\n | JsonOutputKeyToolsParserParamsV3<T>\n | JsonOutputKeyToolsParserParamsV4<T>\n | JsonOutputKeyToolsParserParamsInterop<T>","result: unknown","interopSafeParseAsync","result: ParsedToolCall","returnedValues: ParsedToolCall[] | Record<string, any>[]"],"sources":["../../../src/output_parsers/openai_tools/json_output_tools_parsers.ts"],"sourcesContent":["import type * as z3 from \"zod/v3\";\nimport type * as z4 from \"zod/v4/core\";\nimport { ChatGeneration, ChatGenerationChunk } from \"../../outputs.js\";\nimport { OutputParserException } from \"../base.js\";\nimport { parsePartialJson } from \"../json.js\";\nimport { InvalidToolCall, ToolCall } from \"../../messages/tool.js\";\nimport {\n BaseCumulativeTransformOutputParser,\n BaseCumulativeTransformOutputParserInput,\n} from \"../transform.js\";\nimport { isAIMessage } from \"../../messages/ai.js\";\nimport {\n type InteropZodType,\n interopSafeParseAsync,\n} from \"../../utils/types/zod.js\";\n\nexport type ParsedToolCall = {\n id?: string;\n\n type: string;\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n args: Record<string, any>;\n};\n\nexport type JsonOutputToolsParserParams = {\n /** Whether to return the tool call id. */\n returnId?: boolean;\n} & BaseCumulativeTransformOutputParserInput;\n\nexport function parseToolCall(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n rawToolCall: Record<string, any>,\n options: { returnId?: boolean; partial: true }\n): ToolCall | undefined;\nexport function parseToolCall(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n rawToolCall: Record<string, any>,\n options?: { returnId?: boolean; partial?: false }\n): ToolCall;\nexport function parseToolCall(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n rawToolCall: Record<string, any>,\n options?: { returnId?: boolean; partial?: boolean }\n): ToolCall | undefined;\nexport function parseToolCall(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n rawToolCall: Record<string, any>,\n options?: { returnId?: boolean; partial?: boolean }\n): ToolCall | undefined {\n if (rawToolCall.function === undefined) {\n return undefined;\n }\n let functionArgs;\n if (options?.partial) {\n try {\n functionArgs = parsePartialJson(rawToolCall.function.arguments ?? \"{}\");\n } catch {\n return undefined;\n }\n } else {\n try {\n functionArgs = JSON.parse(rawToolCall.function.arguments);\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n } catch (e: any) {\n throw new OutputParserException(\n [\n `Function \"${rawToolCall.function.name}\" arguments:`,\n ``,\n rawToolCall.function.arguments,\n ``,\n `are not valid JSON.`,\n `Error: ${e.message}`,\n ].join(\"\\n\")\n );\n }\n }\n\n const parsedToolCall: ToolCall = {\n name: rawToolCall.function.name,\n args: functionArgs,\n type: \"tool_call\",\n };\n\n if (options?.returnId) {\n parsedToolCall.id = rawToolCall.id;\n }\n\n return parsedToolCall;\n}\n\nexport function convertLangChainToolCallToOpenAI(toolCall: ToolCall) {\n if (toolCall.id === undefined) {\n throw new Error(`All OpenAI tool calls must have an \"id\" field.`);\n }\n return {\n id: toolCall.id,\n type: \"function\",\n function: {\n name: toolCall.name,\n arguments: JSON.stringify(toolCall.args),\n },\n };\n}\n\nexport function makeInvalidToolCall(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n rawToolCall: Record<string, any>,\n errorMsg?: string\n): InvalidToolCall {\n return {\n name: rawToolCall.function?.name,\n args: rawToolCall.function?.arguments,\n id: rawToolCall.id,\n error: errorMsg,\n type: \"invalid_tool_call\",\n };\n}\n\n/**\n * Class for parsing the output of a tool-calling LLM into a JSON object.\n */\nexport class JsonOutputToolsParser<\n T\n> extends BaseCumulativeTransformOutputParser<T> {\n static lc_name() {\n return \"JsonOutputToolsParser\";\n }\n\n returnId = false;\n\n lc_namespace = [\"langchain\", \"output_parsers\", \"openai_tools\"];\n\n lc_serializable = true;\n\n constructor(fields?: JsonOutputToolsParserParams) {\n super(fields);\n this.returnId = fields?.returnId ?? this.returnId;\n }\n\n protected _diff() {\n throw new Error(\"Not supported.\");\n }\n\n async parse(): Promise<T> {\n throw new Error(\"Not implemented.\");\n }\n\n async parseResult(generations: ChatGeneration[]): Promise<T> {\n const result = await this.parsePartialResult(generations, false);\n return result;\n }\n\n /**\n * Parses the output and returns a JSON object. If `argsOnly` is true,\n * only the arguments of the function call are returned.\n * @param generations The output of the LLM to parse.\n * @returns A JSON object representation of the function call or its arguments.\n */\n async parsePartialResult(\n generations: ChatGenerationChunk[] | ChatGeneration[],\n partial = true\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ): Promise<any> {\n const message = generations[0].message;\n let toolCalls;\n if (isAIMessage(message) && message.tool_calls?.length) {\n toolCalls = message.tool_calls.map((toolCall) => {\n const { id, ...rest } = toolCall;\n if (!this.returnId) {\n return rest;\n }\n return {\n id,\n ...rest,\n };\n });\n } else if (message.additional_kwargs.tool_calls !== undefined) {\n const rawToolCalls = JSON.parse(\n JSON.stringify(message.additional_kwargs.tool_calls)\n );\n toolCalls = rawToolCalls.map((rawToolCall: Record<string, unknown>) => {\n return parseToolCall(rawToolCall, { returnId: this.returnId, partial });\n });\n }\n if (!toolCalls) {\n return [];\n }\n const parsedToolCalls = [];\n for (const toolCall of toolCalls) {\n if (toolCall !== undefined) {\n const backwardsCompatibleToolCall: ParsedToolCall = {\n type: toolCall.name,\n args: toolCall.args,\n id: toolCall.id,\n };\n parsedToolCalls.push(backwardsCompatibleToolCall);\n }\n }\n return parsedToolCalls;\n }\n}\n\ntype JsonOutputKeyToolsParserParamsBase = {\n keyName: string;\n returnSingle?: boolean;\n} & JsonOutputToolsParserParams;\n\ntype JsonOutputKeyToolsParserParamsV3<\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n T extends Record<string, any> = Record<string, any>\n> = { zodSchema?: z3.ZodType<T> } & JsonOutputKeyToolsParserParamsBase;\n\ntype JsonOutputKeyToolsParserParamsV4<\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n T extends Record<string, any> = Record<string, any>\n> = { zodSchema?: z4.$ZodType<T, T> } & JsonOutputKeyToolsParserParamsBase;\n\nexport type JsonOutputKeyToolsParserParamsInterop<\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n T extends Record<string, any> = Record<string, any>\n> = { zodSchema?: InteropZodType<T> } & JsonOutputKeyToolsParserParamsBase;\n\n// Use Zod 3 for backwards compatibility\nexport type JsonOutputKeyToolsParserParams<\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n T extends Record<string, any> = Record<string, any>\n> = JsonOutputKeyToolsParserParamsV3<T>;\n\n/**\n * Class for parsing the output of a tool-calling LLM into a JSON object if you are\n * expecting only a single tool to be called.\n */\nexport class JsonOutputKeyToolsParser<\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n T extends Record<string, any> = Record<string, any>\n> extends JsonOutputToolsParser<T> {\n static lc_name() {\n return \"JsonOutputKeyToolsParser\";\n }\n\n lc_namespace = [\"langchain\", \"output_parsers\", \"openai_tools\"];\n\n lc_serializable = true;\n\n returnId = false;\n\n /** The type of tool calls to return. */\n keyName: string;\n\n /** Whether to return only the first tool call. */\n returnSingle = false;\n\n zodSchema?: InteropZodType<T>;\n\n constructor(params: JsonOutputKeyToolsParserParamsV3<T>);\n\n constructor(params: JsonOutputKeyToolsParserParamsV4<T>);\n\n constructor(params: JsonOutputKeyToolsParserParamsInterop<T>);\n\n constructor(\n params:\n | JsonOutputKeyToolsParserParamsV3<T>\n | JsonOutputKeyToolsParserParamsV4<T>\n | JsonOutputKeyToolsParserParamsInterop<T>\n ) {\n super(params);\n this.keyName = params.keyName;\n this.returnSingle = params.returnSingle ?? this.returnSingle;\n this.zodSchema = params.zodSchema;\n }\n\n protected async _validateResult(result: unknown): Promise<T> {\n if (this.zodSchema === undefined) {\n return result as T;\n }\n const zodParsedResult = await interopSafeParseAsync(this.zodSchema, result);\n if (zodParsedResult.success) {\n return zodParsedResult.data;\n } else {\n throw new OutputParserException(\n `Failed to parse. Text: \"${JSON.stringify(\n result,\n null,\n 2\n )}\". Error: ${JSON.stringify(zodParsedResult.error?.issues)}`,\n JSON.stringify(result, null, 2)\n );\n }\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n async parsePartialResult(generations: ChatGeneration[]): Promise<any> {\n const results = await super.parsePartialResult(generations);\n const matchingResults = results.filter(\n (result: ParsedToolCall) => result.type === this.keyName\n );\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let returnedValues: ParsedToolCall[] | Record<string, any>[] =\n matchingResults;\n if (!matchingResults.length) {\n return undefined;\n }\n if (!this.returnId) {\n returnedValues = matchingResults.map(\n (result: ParsedToolCall) => result.args\n );\n }\n if (this.returnSingle) {\n return returnedValues[0];\n }\n return returnedValues;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n async parseResult(generations: ChatGeneration[]): Promise<any> {\n const results = await super.parsePartialResult(generations, false);\n const matchingResults = results.filter(\n (result: ParsedToolCall) => result.type === this.keyName\n );\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let returnedValues: ParsedToolCall[] | Record<string, any>[] =\n matchingResults;\n if (!matchingResults.length) {\n return undefined;\n }\n if (!this.returnId) {\n returnedValues = matchingResults.map(\n (result: ParsedToolCall) => result.args\n );\n }\n if (this.returnSingle) {\n return this._validateResult(returnedValues[0]);\n }\n const toolCallResults = await Promise.all(\n returnedValues.map((value) => this._validateResult(value))\n );\n return toolCallResults;\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"json_output_tools_parsers.cjs","names":["parsePartialJson","OutputParserException","BaseCumulativeTransformOutputParser","isAIMessage","interopSafeParseAsync"],"sources":["../../../src/output_parsers/openai_tools/json_output_tools_parsers.ts"],"sourcesContent":["import type { ZodV3Like, ZodV4Like } from \"../../utils/types/zod.js\";\nimport { ChatGeneration, ChatGenerationChunk } from \"../../outputs.js\";\nimport { OutputParserException } from \"../base.js\";\nimport { parsePartialJson } from \"../json.js\";\nimport { InvalidToolCall, ToolCall } from \"../../messages/tool.js\";\nimport {\n BaseCumulativeTransformOutputParser,\n BaseCumulativeTransformOutputParserInput,\n} from \"../transform.js\";\nimport { isAIMessage } from \"../../messages/ai.js\";\nimport {\n type InteropZodType,\n interopSafeParseAsync,\n} from \"../../utils/types/zod.js\";\nimport { SerializableSchema } from \"../../utils/standard_schema.js\";\n\nexport type ParsedToolCall = {\n id?: string;\n\n type: string;\n\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n args: Record<string, any>;\n};\n\nexport type JsonOutputToolsParserParams = {\n /** Whether to return the tool call id. */\n returnId?: boolean;\n} & BaseCumulativeTransformOutputParserInput;\n\nexport function parseToolCall(\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n rawToolCall: Record<string, any>,\n options: { returnId?: boolean; partial: true }\n): ToolCall | undefined;\nexport function parseToolCall(\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n rawToolCall: Record<string, any>,\n options?: { returnId?: boolean; partial?: false }\n): ToolCall;\nexport function parseToolCall(\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n rawToolCall: Record<string, any>,\n options?: { returnId?: boolean; partial?: boolean }\n): ToolCall | undefined;\nexport function parseToolCall(\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n rawToolCall: Record<string, any>,\n options?: { returnId?: boolean; partial?: boolean }\n): ToolCall | undefined {\n if (rawToolCall.function === undefined) {\n return undefined;\n }\n let functionArgs;\n if (options?.partial) {\n try {\n functionArgs = parsePartialJson(rawToolCall.function.arguments ?? \"{}\");\n } catch {\n return undefined;\n }\n } else {\n try {\n functionArgs = JSON.parse(rawToolCall.function.arguments);\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n } catch (e: any) {\n throw new OutputParserException(\n [\n `Function \"${rawToolCall.function.name}\" arguments:`,\n ``,\n rawToolCall.function.arguments,\n ``,\n `are not valid JSON.`,\n `Error: ${e.message}`,\n ].join(\"\\n\")\n );\n }\n }\n\n const parsedToolCall: ToolCall = {\n name: rawToolCall.function.name,\n args: functionArgs,\n type: \"tool_call\",\n };\n\n if (options?.returnId) {\n parsedToolCall.id = rawToolCall.id;\n }\n\n return parsedToolCall;\n}\n\nexport function convertLangChainToolCallToOpenAI(toolCall: ToolCall) {\n if (toolCall.id === undefined) {\n throw new Error(`All OpenAI tool calls must have an \"id\" field.`);\n }\n return {\n id: toolCall.id,\n type: \"function\",\n function: {\n name: toolCall.name,\n arguments: JSON.stringify(toolCall.args),\n },\n };\n}\n\nexport function makeInvalidToolCall(\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n rawToolCall: Record<string, any>,\n errorMsg?: string\n): InvalidToolCall {\n return {\n name: rawToolCall.function?.name,\n args: rawToolCall.function?.arguments,\n id: rawToolCall.id,\n error: errorMsg,\n type: \"invalid_tool_call\",\n };\n}\n\n/**\n * Class for parsing the output of a tool-calling LLM into a JSON object.\n */\nexport class JsonOutputToolsParser<\n T,\n> extends BaseCumulativeTransformOutputParser<T> {\n static lc_name() {\n return \"JsonOutputToolsParser\";\n }\n\n returnId = false;\n\n lc_namespace = [\"langchain\", \"output_parsers\", \"openai_tools\"];\n\n lc_serializable = true;\n\n constructor(fields?: JsonOutputToolsParserParams) {\n super(fields);\n this.returnId = fields?.returnId ?? this.returnId;\n }\n\n protected _diff() {\n throw new Error(\"Not supported.\");\n }\n\n async parse(): Promise<T> {\n throw new Error(\"Not implemented.\");\n }\n\n async parseResult(generations: ChatGeneration[]): Promise<T> {\n const result = await this.parsePartialResult(generations, false);\n return result;\n }\n\n /**\n * Parses the output and returns a JSON object. If `argsOnly` is true,\n * only the arguments of the function call are returned.\n * @param generations The output of the LLM to parse.\n * @returns A JSON object representation of the function call or its arguments.\n */\n async parsePartialResult(\n generations: ChatGenerationChunk[] | ChatGeneration[],\n partial = true\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n ): Promise<any> {\n const message = generations[0].message;\n let toolCalls;\n if (isAIMessage(message) && message.tool_calls?.length) {\n toolCalls = message.tool_calls.map((toolCall) => {\n const { id, ...rest } = toolCall;\n if (!this.returnId) {\n return rest;\n }\n return {\n id,\n ...rest,\n };\n });\n } else if (message.additional_kwargs.tool_calls !== undefined) {\n const rawToolCalls = JSON.parse(\n JSON.stringify(message.additional_kwargs.tool_calls)\n );\n toolCalls = rawToolCalls.map((rawToolCall: Record<string, unknown>) => {\n return parseToolCall(rawToolCall, { returnId: this.returnId, partial });\n });\n }\n if (!toolCalls) {\n return [];\n }\n const parsedToolCalls = [];\n for (const toolCall of toolCalls) {\n if (toolCall !== undefined) {\n const backwardsCompatibleToolCall: ParsedToolCall = {\n type: toolCall.name,\n args: toolCall.args,\n id: toolCall.id,\n };\n parsedToolCalls.push(backwardsCompatibleToolCall);\n }\n }\n return parsedToolCalls;\n }\n}\n\ntype JsonOutputKeyToolsParserParamsBase = {\n keyName: string;\n returnSingle?: boolean;\n} & JsonOutputToolsParserParams;\n\ntype JsonOutputKeyToolsParserParamsV3<\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n T extends Record<string, any> = Record<string, any>,\n> = { zodSchema?: ZodV3Like<T> } & JsonOutputKeyToolsParserParamsBase;\n\ntype JsonOutputKeyToolsParserParamsV4<\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n T extends Record<string, any> = Record<string, any>,\n> = { zodSchema?: ZodV4Like<T, T> } & JsonOutputKeyToolsParserParamsBase;\n\nexport type JsonOutputKeyToolsParserParamsInterop<\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n T extends Record<string, any> = Record<string, any>,\n> = { zodSchema?: InteropZodType<T> } & JsonOutputKeyToolsParserParamsBase;\n\nexport type JsonOutputKeyToolsParserParamsSerializable<\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n T extends Record<string, any> = Record<string, any>,\n> = {\n serializableSchema?: SerializableSchema<T>;\n} & JsonOutputKeyToolsParserParamsBase;\n\n// Use Zod 3 for backwards compatibility\nexport type JsonOutputKeyToolsParserParams<\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n T extends Record<string, any> = Record<string, any>,\n> = JsonOutputKeyToolsParserParamsV3<T>;\n\n/**\n * Class for parsing the output of a tool-calling LLM into a JSON object if you are\n * expecting only a single tool to be called.\n */\nexport class JsonOutputKeyToolsParser<\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n T extends Record<string, any> = Record<string, any>,\n> extends JsonOutputToolsParser<T> {\n static lc_name() {\n return \"JsonOutputKeyToolsParser\";\n }\n\n lc_namespace = [\"langchain\", \"output_parsers\", \"openai_tools\"];\n\n lc_serializable = true;\n\n returnId = false;\n\n /** The type of tool calls to return. */\n keyName: string;\n\n /** Whether to return only the first tool call. */\n returnSingle = false;\n\n zodSchema?: InteropZodType<T>;\n\n serializableSchema?: SerializableSchema<T>;\n\n constructor(params: JsonOutputKeyToolsParserParamsV3<T>);\n\n constructor(params: JsonOutputKeyToolsParserParamsV4<T>);\n\n constructor(params: JsonOutputKeyToolsParserParamsInterop<T>);\n\n constructor(\n params:\n | JsonOutputKeyToolsParserParamsV3<T>\n | JsonOutputKeyToolsParserParamsV4<T>\n | JsonOutputKeyToolsParserParamsInterop<T>\n | JsonOutputKeyToolsParserParamsSerializable<T>\n ) {\n super(params);\n this.keyName = params.keyName;\n this.returnSingle = params.returnSingle ?? this.returnSingle;\n if (\"zodSchema\" in params) {\n this.zodSchema = params.zodSchema;\n }\n if (\"serializableSchema\" in params) {\n this.serializableSchema = params.serializableSchema;\n }\n }\n\n protected async _validateResult(result: unknown): Promise<T> {\n if (this.serializableSchema !== undefined) {\n const validated =\n await this.serializableSchema[\"~standard\"].validate(result);\n if (validated.issues) {\n throw new OutputParserException(\n `Failed to parse. Text: \"${JSON.stringify(\n result,\n null,\n 2\n )}\". Error: ${JSON.stringify(validated.issues)}`,\n JSON.stringify(result, null, 2)\n );\n }\n return validated.value as T;\n }\n if (this.zodSchema === undefined) {\n return result as T;\n }\n const zodParsedResult = await interopSafeParseAsync(this.zodSchema, result);\n if (zodParsedResult.success) {\n return zodParsedResult.data;\n } else {\n throw new OutputParserException(\n `Failed to parse. Text: \"${JSON.stringify(\n result,\n null,\n 2\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n )}\". Error: ${JSON.stringify((zodParsedResult.error as any)?.issues)}`,\n JSON.stringify(result, null, 2)\n );\n }\n }\n\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n async parsePartialResult(generations: ChatGeneration[]): Promise<any> {\n const results = await super.parsePartialResult(generations);\n const matchingResults = results.filter(\n (result: ParsedToolCall) => result.type === this.keyName\n );\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n let returnedValues: ParsedToolCall[] | Record<string, any>[] =\n matchingResults;\n if (!matchingResults.length) {\n return undefined;\n }\n if (!this.returnId) {\n returnedValues = matchingResults.map(\n (result: ParsedToolCall) => result.args\n );\n }\n if (this.returnSingle) {\n return returnedValues[0];\n }\n return returnedValues;\n }\n\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n async parseResult(generations: ChatGeneration[]): Promise<any> {\n const results = await super.parsePartialResult(generations, false);\n const matchingResults = results.filter(\n (result: ParsedToolCall) => result.type === this.keyName\n );\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n let returnedValues: ParsedToolCall[] | Record<string, any>[] =\n matchingResults;\n if (!matchingResults.length) {\n return undefined;\n }\n if (!this.returnId) {\n returnedValues = matchingResults.map(\n (result: ParsedToolCall) => result.args\n );\n }\n if (this.returnSingle) {\n return this._validateResult(returnedValues[0]);\n }\n const toolCallResults = await Promise.all(\n returnedValues.map((value) => this._validateResult(value))\n );\n return toolCallResults;\n }\n}\n"],"mappings":";;;;;;;AA6CA,SAAgB,cAEd,aACA,SACsB;AACtB,KAAI,YAAY,aAAa,KAAA,EAC3B;CAEF,IAAI;AACJ,KAAI,SAAS,QACX,KAAI;AACF,iBAAeA,aAAAA,iBAAiB,YAAY,SAAS,aAAa,KAAK;SACjE;AACN;;KAGF,KAAI;AACF,iBAAe,KAAK,MAAM,YAAY,SAAS,UAAU;UAElD,GAAQ;AACf,QAAM,IAAIC,aAAAA,sBACR;GACE,aAAa,YAAY,SAAS,KAAK;GACvC;GACA,YAAY,SAAS;GACrB;GACA;GACA,UAAU,EAAE;GACb,CAAC,KAAK,KAAK,CACb;;CAIL,MAAM,iBAA2B;EAC/B,MAAM,YAAY,SAAS;EAC3B,MAAM;EACN,MAAM;EACP;AAED,KAAI,SAAS,SACX,gBAAe,KAAK,YAAY;AAGlC,QAAO;;AAGT,SAAgB,iCAAiC,UAAoB;AACnE,KAAI,SAAS,OAAO,KAAA,EAClB,OAAM,IAAI,MAAM,iDAAiD;AAEnE,QAAO;EACL,IAAI,SAAS;EACb,MAAM;EACN,UAAU;GACR,MAAM,SAAS;GACf,WAAW,KAAK,UAAU,SAAS,KAAK;GACzC;EACF;;AAGH,SAAgB,oBAEd,aACA,UACiB;AACjB,QAAO;EACL,MAAM,YAAY,UAAU;EAC5B,MAAM,YAAY,UAAU;EAC5B,IAAI,YAAY;EAChB,OAAO;EACP,MAAM;EACP;;;;;AAMH,IAAa,wBAAb,cAEUC,kBAAAA,oCAAuC;CAC/C,OAAO,UAAU;AACf,SAAO;;CAGT,WAAW;CAEX,eAAe;EAAC;EAAa;EAAkB;EAAe;CAE9D,kBAAkB;CAElB,YAAY,QAAsC;AAChD,QAAM,OAAO;AACb,OAAK,WAAW,QAAQ,YAAY,KAAK;;CAG3C,QAAkB;AAChB,QAAM,IAAI,MAAM,iBAAiB;;CAGnC,MAAM,QAAoB;AACxB,QAAM,IAAI,MAAM,mBAAmB;;CAGrC,MAAM,YAAY,aAA2C;AAE3D,SADe,MAAM,KAAK,mBAAmB,aAAa,MAAM;;;;;;;;CAUlE,MAAM,mBACJ,aACA,UAAU,MAEI;EACd,MAAM,UAAU,YAAY,GAAG;EAC/B,IAAI;AACJ,MAAIC,WAAAA,YAAY,QAAQ,IAAI,QAAQ,YAAY,OAC9C,aAAY,QAAQ,WAAW,KAAK,aAAa;GAC/C,MAAM,EAAE,IAAI,GAAG,SAAS;AACxB,OAAI,CAAC,KAAK,SACR,QAAO;AAET,UAAO;IACL;IACA,GAAG;IACJ;IACD;WACO,QAAQ,kBAAkB,eAAe,KAAA,EAIlD,aAHqB,KAAK,MACxB,KAAK,UAAU,QAAQ,kBAAkB,WAAW,CACrD,CACwB,KAAK,gBAAyC;AACrE,UAAO,cAAc,aAAa;IAAE,UAAU,KAAK;IAAU;IAAS,CAAC;IACvE;AAEJ,MAAI,CAAC,UACH,QAAO,EAAE;EAEX,MAAM,kBAAkB,EAAE;AAC1B,OAAK,MAAM,YAAY,UACrB,KAAI,aAAa,KAAA,GAAW;GAC1B,MAAM,8BAA8C;IAClD,MAAM,SAAS;IACf,MAAM,SAAS;IACf,IAAI,SAAS;IACd;AACD,mBAAgB,KAAK,4BAA4B;;AAGrD,SAAO;;;;;;;AAyCX,IAAa,2BAAb,cAGU,sBAAyB;CACjC,OAAO,UAAU;AACf,SAAO;;CAGT,eAAe;EAAC;EAAa;EAAkB;EAAe;CAE9D,kBAAkB;CAElB,WAAW;;CAGX;;CAGA,eAAe;CAEf;CAEA;CAQA,YACE,QAKA;AACA,QAAM,OAAO;AACb,OAAK,UAAU,OAAO;AACtB,OAAK,eAAe,OAAO,gBAAgB,KAAK;AAChD,MAAI,eAAe,OACjB,MAAK,YAAY,OAAO;AAE1B,MAAI,wBAAwB,OAC1B,MAAK,qBAAqB,OAAO;;CAIrC,MAAgB,gBAAgB,QAA6B;AAC3D,MAAI,KAAK,uBAAuB,KAAA,GAAW;GACzC,MAAM,YACJ,MAAM,KAAK,mBAAmB,aAAa,SAAS,OAAO;AAC7D,OAAI,UAAU,OACZ,OAAM,IAAIF,aAAAA,sBACR,2BAA2B,KAAK,UAC9B,QACA,MACA,EACD,CAAC,YAAY,KAAK,UAAU,UAAU,OAAO,IAC9C,KAAK,UAAU,QAAQ,MAAM,EAAE,CAChC;AAEH,UAAO,UAAU;;AAEnB,MAAI,KAAK,cAAc,KAAA,EACrB,QAAO;EAET,MAAM,kBAAkB,MAAMG,YAAAA,sBAAsB,KAAK,WAAW,OAAO;AAC3E,MAAI,gBAAgB,QAClB,QAAO,gBAAgB;MAEvB,OAAM,IAAIH,aAAAA,sBACR,2BAA2B,KAAK,UAC9B,QACA,MACA,EAED,CAAC,YAAY,KAAK,UAAW,gBAAgB,OAAe,OAAO,IACpE,KAAK,UAAU,QAAQ,MAAM,EAAE,CAChC;;CAKL,MAAM,mBAAmB,aAA6C;EAEpE,MAAM,mBADU,MAAM,MAAM,mBAAmB,YAAY,EAC3B,QAC7B,WAA2B,OAAO,SAAS,KAAK,QAClD;EAED,IAAI,iBACF;AACF,MAAI,CAAC,gBAAgB,OACnB;AAEF,MAAI,CAAC,KAAK,SACR,kBAAiB,gBAAgB,KAC9B,WAA2B,OAAO,KACpC;AAEH,MAAI,KAAK,aACP,QAAO,eAAe;AAExB,SAAO;;CAIT,MAAM,YAAY,aAA6C;EAE7D,MAAM,mBADU,MAAM,MAAM,mBAAmB,aAAa,MAAM,EAClC,QAC7B,WAA2B,OAAO,SAAS,KAAK,QAClD;EAED,IAAI,iBACF;AACF,MAAI,CAAC,gBAAgB,OACnB;AAEF,MAAI,CAAC,KAAK,SACR,kBAAiB,gBAAgB,KAC9B,WAA2B,OAAO,KACpC;AAEH,MAAI,KAAK,aACP,QAAO,KAAK,gBAAgB,eAAe,GAAG;AAKhD,SAHwB,MAAM,QAAQ,IACpC,eAAe,KAAK,UAAU,KAAK,gBAAgB,MAAM,CAAC,CAC3D"}
@@ -1,9 +1,8 @@
1
1
  import { InvalidToolCall, ToolCall } from "../../messages/tool.cjs";
2
2
  import { ChatGeneration, ChatGenerationChunk } from "../../outputs.cjs";
3
- import { InteropZodType } from "../../utils/types/zod.cjs";
3
+ import { SerializableSchema } from "../../utils/standard_schema.cjs";
4
+ import { InteropZodType, ZodV3Like, ZodV4Like } from "../../utils/types/zod.cjs";
4
5
  import { BaseCumulativeTransformOutputParser, BaseCumulativeTransformOutputParserInput } from "../transform.cjs";
5
- import * as z3 from "zod/v3";
6
- import * as z4 from "zod/v4/core";
7
6
 
8
7
  //#region src/output_parsers/openai_tools/json_output_tools_parsers.d.ts
9
8
  type ParsedToolCall = {
@@ -12,8 +11,7 @@ type ParsedToolCall = {
12
11
  args: Record<string, any>;
13
12
  };
14
13
  type JsonOutputToolsParserParams = {
15
- /** Whether to return the tool call id. */
16
- returnId?: boolean;
14
+ /** Whether to return the tool call id. */returnId?: boolean;
17
15
  } & BaseCumulativeTransformOutputParserInput;
18
16
  declare function parseToolCall(rawToolCall: Record<string, any>, options: {
19
17
  returnId?: boolean;
@@ -61,14 +59,17 @@ type JsonOutputKeyToolsParserParamsBase = {
61
59
  returnSingle?: boolean;
62
60
  } & JsonOutputToolsParserParams;
63
61
  type JsonOutputKeyToolsParserParamsV3<T extends Record<string, any> = Record<string, any>> = {
64
- zodSchema?: z3.ZodType<T>;
62
+ zodSchema?: ZodV3Like<T>;
65
63
  } & JsonOutputKeyToolsParserParamsBase;
66
64
  type JsonOutputKeyToolsParserParamsV4<T extends Record<string, any> = Record<string, any>> = {
67
- zodSchema?: z4.$ZodType<T, T>;
65
+ zodSchema?: ZodV4Like<T, T>;
68
66
  } & JsonOutputKeyToolsParserParamsBase;
69
67
  type JsonOutputKeyToolsParserParamsInterop<T extends Record<string, any> = Record<string, any>> = {
70
68
  zodSchema?: InteropZodType<T>;
71
69
  } & JsonOutputKeyToolsParserParamsBase;
70
+ type JsonOutputKeyToolsParserParamsSerializable<T extends Record<string, any> = Record<string, any>> = {
71
+ serializableSchema?: SerializableSchema<T>;
72
+ } & JsonOutputKeyToolsParserParamsBase;
72
73
  type JsonOutputKeyToolsParserParams<T extends Record<string, any> = Record<string, any>> = JsonOutputKeyToolsParserParamsV3<T>;
73
74
  /**
74
75
  * Class for parsing the output of a tool-calling LLM into a JSON object if you are
@@ -84,6 +85,7 @@ declare class JsonOutputKeyToolsParser<T extends Record<string, any> = Record<st
84
85
  /** Whether to return only the first tool call. */
85
86
  returnSingle: boolean;
86
87
  zodSchema?: InteropZodType<T>;
88
+ serializableSchema?: SerializableSchema<T>;
87
89
  constructor(params: JsonOutputKeyToolsParserParamsV3<T>);
88
90
  constructor(params: JsonOutputKeyToolsParserParamsV4<T>);
89
91
  constructor(params: JsonOutputKeyToolsParserParamsInterop<T>);
@@ -92,5 +94,5 @@ declare class JsonOutputKeyToolsParser<T extends Record<string, any> = Record<st
92
94
  parseResult(generations: ChatGeneration[]): Promise<any>;
93
95
  }
94
96
  //#endregion
95
- export { JsonOutputKeyToolsParser, JsonOutputKeyToolsParserParams, JsonOutputKeyToolsParserParamsInterop, JsonOutputToolsParser, JsonOutputToolsParserParams, ParsedToolCall, convertLangChainToolCallToOpenAI, makeInvalidToolCall, parseToolCall };
97
+ export { JsonOutputKeyToolsParser, JsonOutputKeyToolsParserParams, JsonOutputKeyToolsParserParamsInterop, JsonOutputKeyToolsParserParamsSerializable, JsonOutputToolsParser, JsonOutputToolsParserParams, ParsedToolCall, convertLangChainToolCallToOpenAI, makeInvalidToolCall, parseToolCall };
96
98
  //# sourceMappingURL=json_output_tools_parsers.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"json_output_tools_parsers.d.cts","names":["z3","z4","ChatGeneration","ChatGenerationChunk","InvalidToolCall","ToolCall","BaseCumulativeTransformOutputParser","BaseCumulativeTransformOutputParserInput","InteropZodType","ParsedToolCall","Record","JsonOutputToolsParserParams","parseToolCall","convertLangChainToolCallToOpenAI","makeInvalidToolCall","JsonOutputToolsParser","T","Promise","JsonOutputKeyToolsParserParamsBase","JsonOutputKeyToolsParserParamsV3","ZodType","JsonOutputKeyToolsParserParamsV4","$ZodType","JsonOutputKeyToolsParserParamsInterop","JsonOutputKeyToolsParserParams","JsonOutputKeyToolsParser"],"sources":["../../../src/output_parsers/openai_tools/json_output_tools_parsers.d.ts"],"sourcesContent":["import type * as z3 from \"zod/v3\";\nimport type * as z4 from \"zod/v4/core\";\nimport { ChatGeneration, ChatGenerationChunk } from \"../../outputs.js\";\nimport { InvalidToolCall, ToolCall } from \"../../messages/tool.js\";\nimport { BaseCumulativeTransformOutputParser, BaseCumulativeTransformOutputParserInput } from \"../transform.js\";\nimport { type InteropZodType } from \"../../utils/types/zod.js\";\nexport type ParsedToolCall = {\n id?: string;\n type: string;\n args: Record<string, any>;\n};\nexport type JsonOutputToolsParserParams = {\n /** Whether to return the tool call id. */\n returnId?: boolean;\n} & BaseCumulativeTransformOutputParserInput;\nexport declare function parseToolCall(rawToolCall: Record<string, any>, options: {\n returnId?: boolean;\n partial: true;\n}): ToolCall | undefined;\nexport declare function parseToolCall(rawToolCall: Record<string, any>, options?: {\n returnId?: boolean;\n partial?: false;\n}): ToolCall;\nexport declare function parseToolCall(rawToolCall: Record<string, any>, options?: {\n returnId?: boolean;\n partial?: boolean;\n}): ToolCall | undefined;\nexport declare function convertLangChainToolCallToOpenAI(toolCall: ToolCall): {\n id: string;\n type: string;\n function: {\n name: string;\n arguments: string;\n };\n};\nexport declare function makeInvalidToolCall(rawToolCall: Record<string, any>, errorMsg?: string): InvalidToolCall;\n/**\n * Class for parsing the output of a tool-calling LLM into a JSON object.\n */\nexport declare class JsonOutputToolsParser<T> extends BaseCumulativeTransformOutputParser<T> {\n static lc_name(): string;\n returnId: boolean;\n lc_namespace: string[];\n lc_serializable: boolean;\n constructor(fields?: JsonOutputToolsParserParams);\n protected _diff(): void;\n parse(): Promise<T>;\n parseResult(generations: ChatGeneration[]): Promise<T>;\n /**\n * Parses the output and returns a JSON object. If `argsOnly` is true,\n * only the arguments of the function call are returned.\n * @param generations The output of the LLM to parse.\n * @returns A JSON object representation of the function call or its arguments.\n */\n parsePartialResult(generations: ChatGenerationChunk[] | ChatGeneration[], partial?: boolean): Promise<any>;\n}\ntype JsonOutputKeyToolsParserParamsBase = {\n keyName: string;\n returnSingle?: boolean;\n} & JsonOutputToolsParserParams;\ntype JsonOutputKeyToolsParserParamsV3<T extends Record<string, any> = Record<string, any>> = {\n zodSchema?: z3.ZodType<T>;\n} & JsonOutputKeyToolsParserParamsBase;\ntype JsonOutputKeyToolsParserParamsV4<T extends Record<string, any> = Record<string, any>> = {\n zodSchema?: z4.$ZodType<T, T>;\n} & JsonOutputKeyToolsParserParamsBase;\nexport type JsonOutputKeyToolsParserParamsInterop<T extends Record<string, any> = Record<string, any>> = {\n zodSchema?: InteropZodType<T>;\n} & JsonOutputKeyToolsParserParamsBase;\nexport type JsonOutputKeyToolsParserParams<T extends Record<string, any> = Record<string, any>> = JsonOutputKeyToolsParserParamsV3<T>;\n/**\n * Class for parsing the output of a tool-calling LLM into a JSON object if you are\n * expecting only a single tool to be called.\n */\nexport declare class JsonOutputKeyToolsParser<T extends Record<string, any> = Record<string, any>> extends JsonOutputToolsParser<T> {\n static lc_name(): string;\n lc_namespace: string[];\n lc_serializable: boolean;\n returnId: boolean;\n /** The type of tool calls to return. */\n keyName: string;\n /** Whether to return only the first tool call. */\n returnSingle: boolean;\n zodSchema?: InteropZodType<T>;\n constructor(params: JsonOutputKeyToolsParserParamsV3<T>);\n constructor(params: JsonOutputKeyToolsParserParamsV4<T>);\n constructor(params: JsonOutputKeyToolsParserParamsInterop<T>);\n protected _validateResult(result: unknown): Promise<T>;\n parsePartialResult(generations: ChatGeneration[]): Promise<any>;\n parseResult(generations: ChatGeneration[]): Promise<any>;\n}\nexport {};\n//# sourceMappingURL=json_output_tools_parsers.d.ts.map"],"mappings":"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"}
1
+ {"version":3,"file":"json_output_tools_parsers.d.cts","names":[],"sources":["../../../src/output_parsers/openai_tools/json_output_tools_parsers.ts"],"mappings":";;;;;;;KAgBY,cAAA;EACV,EAAA;EAEA,IAAA;EAGA,IAAA,EAAM,MAAA;AAAA;AAAA,KAGI,2BAAA;EANV,0CAQA,QAAA;AAAA,IACE,wCAAA;AAAA,iBAEY,aAAA,CAEd,WAAA,EAAa,MAAA,eACb,OAAA;EAAW,QAAA;EAAoB,OAAA;AAAA,IAC9B,QAAA;AAAA,iBACa,aAAA,CAEd,WAAA,EAAa,MAAA,eACb,OAAA;EAAY,QAAA;EAAoB,OAAA;AAAA,IAC/B,QAAA;AAAA,iBACa,aAAA,CAEd,WAAA,EAAa,MAAA,eACb,OAAA;EAAY,QAAA;EAAoB,OAAA;AAAA,IAC/B,QAAA;AAAA,iBA+Ca,gCAAA,CAAiC,QAAA,EAAU,QAAA;EAKvD,EAAA;EACA,IAAA;EACA,QAAA;IACE,IAAA;IACA,SAAA;EAAA;AAAA;AAAA,iBAKU,mBAAA,CAEd,WAAA,EAAa,MAAA,eACb,QAAA,YACC,eAAA;;;;cAaU,qBAAA,YAEH,mCAAA,CAAoC,CAAA;EAAA,OACrC,OAAA,CAAA;EAIP,QAAA;EAEA,YAAA;EAEA,eAAA;EAEA,WAAA,CAAY,MAAA,GAAS,2BAAA;EAAA,UAKX,KAAA,CAAA;EAIJ,KAAA,CAAA,GAAS,OAAA,CAAQ,CAAA;EAIjB,WAAA,CAAY,WAAA,EAAa,cAAA,KAAmB,OAAA,CAAQ,CAAA;;;;;;;EAWpD,kBAAA,CACJ,WAAA,EAAa,mBAAA,KAAwB,cAAA,IACrC,OAAA,aAEC,OAAA;AAAA;AAAA,KAwCA,kCAAA;EACH,OAAA;EACA,YAAA;AAAA,IACE,2BAAA;AAAA,KAEC,gCAAA,WAEO,MAAA,gBAAsB,MAAA;EAC5B,SAAA,GAAY,SAAA,CAAU,CAAA;AAAA,IAAO,kCAAA;AAAA,KAE9B,gCAAA,WAEO,MAAA,gBAAsB,MAAA;EAC5B,SAAA,GAAY,SAAA,CAAU,CAAA,EAAG,CAAA;AAAA,IAAO,kCAAA;AAAA,KAE1B,qCAAA,WAEA,MAAA,gBAAsB,MAAA;EAC5B,SAAA,GAAY,cAAA,CAAe,CAAA;AAAA,IAAO,kCAAA;AAAA,KAE5B,0CAAA,WAEA,MAAA,gBAAsB,MAAA;EAEhC,kBAAA,GAAqB,kBAAA,CAAmB,CAAA;AAAA,IACtC,kCAAA;AAAA,KAGQ,8BAAA,WAEA,MAAA,gBAAsB,MAAA,iBAC9B,gCAAA,CAAiC,CAAA;;;;;cAMxB,wBAAA,WAED,MAAA,gBAAsB,MAAA,uBACxB,qBAAA,CAAsB,CAAA;EAAA,OACvB,OAAA,CAAA;EAIP,YAAA;EAEA,eAAA;EAEA,QAAA;EAlIgC;EAqIhC,OAAA;EAnI4C;EAsI5C,YAAA;EAEA,SAAA,GAAY,cAAA,CAAe,CAAA;EAE3B,kBAAA,GAAqB,kBAAA,CAAmB,CAAA;EAExC,WAAA,CAAY,MAAA,EAAQ,gCAAA,CAAiC,CAAA;EAErD,WAAA,CAAY,MAAA,EAAQ,gCAAA,CAAiC,CAAA;EAErD,WAAA,CAAY,MAAA,EAAQ,qCAAA,CAAsC,CAAA;EAAA,UAoB1C,eAAA,CAAgB,MAAA,YAAkB,OAAA,CAAQ,CAAA;EAoCpD,kBAAA,CAAmB,WAAA,EAAa,cAAA,KAAmB,OAAA;EAuBnD,WAAA,CAAY,WAAA,EAAa,cAAA,KAAmB,OAAA;AAAA"}
@@ -1,9 +1,8 @@
1
1
  import { InvalidToolCall, ToolCall } from "../../messages/tool.js";
2
2
  import { ChatGeneration, ChatGenerationChunk } from "../../outputs.js";
3
- import { InteropZodType } from "../../utils/types/zod.js";
3
+ import { SerializableSchema } from "../../utils/standard_schema.js";
4
+ import { InteropZodType, ZodV3Like, ZodV4Like } from "../../utils/types/zod.js";
4
5
  import { BaseCumulativeTransformOutputParser, BaseCumulativeTransformOutputParserInput } from "../transform.js";
5
- import * as z3 from "zod/v3";
6
- import * as z4 from "zod/v4/core";
7
6
 
8
7
  //#region src/output_parsers/openai_tools/json_output_tools_parsers.d.ts
9
8
  type ParsedToolCall = {
@@ -12,8 +11,7 @@ type ParsedToolCall = {
12
11
  args: Record<string, any>;
13
12
  };
14
13
  type JsonOutputToolsParserParams = {
15
- /** Whether to return the tool call id. */
16
- returnId?: boolean;
14
+ /** Whether to return the tool call id. */returnId?: boolean;
17
15
  } & BaseCumulativeTransformOutputParserInput;
18
16
  declare function parseToolCall(rawToolCall: Record<string, any>, options: {
19
17
  returnId?: boolean;
@@ -61,14 +59,17 @@ type JsonOutputKeyToolsParserParamsBase = {
61
59
  returnSingle?: boolean;
62
60
  } & JsonOutputToolsParserParams;
63
61
  type JsonOutputKeyToolsParserParamsV3<T extends Record<string, any> = Record<string, any>> = {
64
- zodSchema?: z3.ZodType<T>;
62
+ zodSchema?: ZodV3Like<T>;
65
63
  } & JsonOutputKeyToolsParserParamsBase;
66
64
  type JsonOutputKeyToolsParserParamsV4<T extends Record<string, any> = Record<string, any>> = {
67
- zodSchema?: z4.$ZodType<T, T>;
65
+ zodSchema?: ZodV4Like<T, T>;
68
66
  } & JsonOutputKeyToolsParserParamsBase;
69
67
  type JsonOutputKeyToolsParserParamsInterop<T extends Record<string, any> = Record<string, any>> = {
70
68
  zodSchema?: InteropZodType<T>;
71
69
  } & JsonOutputKeyToolsParserParamsBase;
70
+ type JsonOutputKeyToolsParserParamsSerializable<T extends Record<string, any> = Record<string, any>> = {
71
+ serializableSchema?: SerializableSchema<T>;
72
+ } & JsonOutputKeyToolsParserParamsBase;
72
73
  type JsonOutputKeyToolsParserParams<T extends Record<string, any> = Record<string, any>> = JsonOutputKeyToolsParserParamsV3<T>;
73
74
  /**
74
75
  * Class for parsing the output of a tool-calling LLM into a JSON object if you are
@@ -84,6 +85,7 @@ declare class JsonOutputKeyToolsParser<T extends Record<string, any> = Record<st
84
85
  /** Whether to return only the first tool call. */
85
86
  returnSingle: boolean;
86
87
  zodSchema?: InteropZodType<T>;
88
+ serializableSchema?: SerializableSchema<T>;
87
89
  constructor(params: JsonOutputKeyToolsParserParamsV3<T>);
88
90
  constructor(params: JsonOutputKeyToolsParserParamsV4<T>);
89
91
  constructor(params: JsonOutputKeyToolsParserParamsInterop<T>);
@@ -92,5 +94,5 @@ declare class JsonOutputKeyToolsParser<T extends Record<string, any> = Record<st
92
94
  parseResult(generations: ChatGeneration[]): Promise<any>;
93
95
  }
94
96
  //#endregion
95
- export { JsonOutputKeyToolsParser, JsonOutputKeyToolsParserParams, JsonOutputKeyToolsParserParamsInterop, JsonOutputToolsParser, JsonOutputToolsParserParams, ParsedToolCall, convertLangChainToolCallToOpenAI, makeInvalidToolCall, parseToolCall };
97
+ export { JsonOutputKeyToolsParser, JsonOutputKeyToolsParserParams, JsonOutputKeyToolsParserParamsInterop, JsonOutputKeyToolsParserParamsSerializable, JsonOutputToolsParser, JsonOutputToolsParserParams, ParsedToolCall, convertLangChainToolCallToOpenAI, makeInvalidToolCall, parseToolCall };
96
98
  //# sourceMappingURL=json_output_tools_parsers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"json_output_tools_parsers.d.ts","names":["z3","z4","ChatGeneration","ChatGenerationChunk","InvalidToolCall","ToolCall","BaseCumulativeTransformOutputParser","BaseCumulativeTransformOutputParserInput","InteropZodType","ParsedToolCall","Record","JsonOutputToolsParserParams","parseToolCall","convertLangChainToolCallToOpenAI","makeInvalidToolCall","JsonOutputToolsParser","T","Promise","JsonOutputKeyToolsParserParamsBase","JsonOutputKeyToolsParserParamsV3","ZodType","JsonOutputKeyToolsParserParamsV4","$ZodType","JsonOutputKeyToolsParserParamsInterop","JsonOutputKeyToolsParserParams","JsonOutputKeyToolsParser"],"sources":["../../../src/output_parsers/openai_tools/json_output_tools_parsers.d.ts"],"sourcesContent":["import type * as z3 from \"zod/v3\";\nimport type * as z4 from \"zod/v4/core\";\nimport { ChatGeneration, ChatGenerationChunk } from \"../../outputs.js\";\nimport { InvalidToolCall, ToolCall } from \"../../messages/tool.js\";\nimport { BaseCumulativeTransformOutputParser, BaseCumulativeTransformOutputParserInput } from \"../transform.js\";\nimport { type InteropZodType } from \"../../utils/types/zod.js\";\nexport type ParsedToolCall = {\n id?: string;\n type: string;\n args: Record<string, any>;\n};\nexport type JsonOutputToolsParserParams = {\n /** Whether to return the tool call id. */\n returnId?: boolean;\n} & BaseCumulativeTransformOutputParserInput;\nexport declare function parseToolCall(rawToolCall: Record<string, any>, options: {\n returnId?: boolean;\n partial: true;\n}): ToolCall | undefined;\nexport declare function parseToolCall(rawToolCall: Record<string, any>, options?: {\n returnId?: boolean;\n partial?: false;\n}): ToolCall;\nexport declare function parseToolCall(rawToolCall: Record<string, any>, options?: {\n returnId?: boolean;\n partial?: boolean;\n}): ToolCall | undefined;\nexport declare function convertLangChainToolCallToOpenAI(toolCall: ToolCall): {\n id: string;\n type: string;\n function: {\n name: string;\n arguments: string;\n };\n};\nexport declare function makeInvalidToolCall(rawToolCall: Record<string, any>, errorMsg?: string): InvalidToolCall;\n/**\n * Class for parsing the output of a tool-calling LLM into a JSON object.\n */\nexport declare class JsonOutputToolsParser<T> extends BaseCumulativeTransformOutputParser<T> {\n static lc_name(): string;\n returnId: boolean;\n lc_namespace: string[];\n lc_serializable: boolean;\n constructor(fields?: JsonOutputToolsParserParams);\n protected _diff(): void;\n parse(): Promise<T>;\n parseResult(generations: ChatGeneration[]): Promise<T>;\n /**\n * Parses the output and returns a JSON object. If `argsOnly` is true,\n * only the arguments of the function call are returned.\n * @param generations The output of the LLM to parse.\n * @returns A JSON object representation of the function call or its arguments.\n */\n parsePartialResult(generations: ChatGenerationChunk[] | ChatGeneration[], partial?: boolean): Promise<any>;\n}\ntype JsonOutputKeyToolsParserParamsBase = {\n keyName: string;\n returnSingle?: boolean;\n} & JsonOutputToolsParserParams;\ntype JsonOutputKeyToolsParserParamsV3<T extends Record<string, any> = Record<string, any>> = {\n zodSchema?: z3.ZodType<T>;\n} & JsonOutputKeyToolsParserParamsBase;\ntype JsonOutputKeyToolsParserParamsV4<T extends Record<string, any> = Record<string, any>> = {\n zodSchema?: z4.$ZodType<T, T>;\n} & JsonOutputKeyToolsParserParamsBase;\nexport type JsonOutputKeyToolsParserParamsInterop<T extends Record<string, any> = Record<string, any>> = {\n zodSchema?: InteropZodType<T>;\n} & JsonOutputKeyToolsParserParamsBase;\nexport type JsonOutputKeyToolsParserParams<T extends Record<string, any> = Record<string, any>> = JsonOutputKeyToolsParserParamsV3<T>;\n/**\n * Class for parsing the output of a tool-calling LLM into a JSON object if you are\n * expecting only a single tool to be called.\n */\nexport declare class JsonOutputKeyToolsParser<T extends Record<string, any> = Record<string, any>> extends JsonOutputToolsParser<T> {\n static lc_name(): string;\n lc_namespace: string[];\n lc_serializable: boolean;\n returnId: boolean;\n /** The type of tool calls to return. */\n keyName: string;\n /** Whether to return only the first tool call. */\n returnSingle: boolean;\n zodSchema?: InteropZodType<T>;\n constructor(params: JsonOutputKeyToolsParserParamsV3<T>);\n constructor(params: JsonOutputKeyToolsParserParamsV4<T>);\n constructor(params: JsonOutputKeyToolsParserParamsInterop<T>);\n protected _validateResult(result: unknown): Promise<T>;\n parsePartialResult(generations: ChatGeneration[]): Promise<any>;\n parseResult(generations: ChatGeneration[]): Promise<any>;\n}\nexport {};\n//# sourceMappingURL=json_output_tools_parsers.d.ts.map"],"mappings":"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"}
1
+ {"version":3,"file":"json_output_tools_parsers.d.ts","names":[],"sources":["../../../src/output_parsers/openai_tools/json_output_tools_parsers.ts"],"mappings":";;;;;;;KAgBY,cAAA;EACV,EAAA;EAEA,IAAA;EAGA,IAAA,EAAM,MAAA;AAAA;AAAA,KAGI,2BAAA;EANV,0CAQA,QAAA;AAAA,IACE,wCAAA;AAAA,iBAEY,aAAA,CAEd,WAAA,EAAa,MAAA,eACb,OAAA;EAAW,QAAA;EAAoB,OAAA;AAAA,IAC9B,QAAA;AAAA,iBACa,aAAA,CAEd,WAAA,EAAa,MAAA,eACb,OAAA;EAAY,QAAA;EAAoB,OAAA;AAAA,IAC/B,QAAA;AAAA,iBACa,aAAA,CAEd,WAAA,EAAa,MAAA,eACb,OAAA;EAAY,QAAA;EAAoB,OAAA;AAAA,IAC/B,QAAA;AAAA,iBA+Ca,gCAAA,CAAiC,QAAA,EAAU,QAAA;EAKvD,EAAA;EACA,IAAA;EACA,QAAA;IACE,IAAA;IACA,SAAA;EAAA;AAAA;AAAA,iBAKU,mBAAA,CAEd,WAAA,EAAa,MAAA,eACb,QAAA,YACC,eAAA;;;;cAaU,qBAAA,YAEH,mCAAA,CAAoC,CAAA;EAAA,OACrC,OAAA,CAAA;EAIP,QAAA;EAEA,YAAA;EAEA,eAAA;EAEA,WAAA,CAAY,MAAA,GAAS,2BAAA;EAAA,UAKX,KAAA,CAAA;EAIJ,KAAA,CAAA,GAAS,OAAA,CAAQ,CAAA;EAIjB,WAAA,CAAY,WAAA,EAAa,cAAA,KAAmB,OAAA,CAAQ,CAAA;;;;;;;EAWpD,kBAAA,CACJ,WAAA,EAAa,mBAAA,KAAwB,cAAA,IACrC,OAAA,aAEC,OAAA;AAAA;AAAA,KAwCA,kCAAA;EACH,OAAA;EACA,YAAA;AAAA,IACE,2BAAA;AAAA,KAEC,gCAAA,WAEO,MAAA,gBAAsB,MAAA;EAC5B,SAAA,GAAY,SAAA,CAAU,CAAA;AAAA,IAAO,kCAAA;AAAA,KAE9B,gCAAA,WAEO,MAAA,gBAAsB,MAAA;EAC5B,SAAA,GAAY,SAAA,CAAU,CAAA,EAAG,CAAA;AAAA,IAAO,kCAAA;AAAA,KAE1B,qCAAA,WAEA,MAAA,gBAAsB,MAAA;EAC5B,SAAA,GAAY,cAAA,CAAe,CAAA;AAAA,IAAO,kCAAA;AAAA,KAE5B,0CAAA,WAEA,MAAA,gBAAsB,MAAA;EAEhC,kBAAA,GAAqB,kBAAA,CAAmB,CAAA;AAAA,IACtC,kCAAA;AAAA,KAGQ,8BAAA,WAEA,MAAA,gBAAsB,MAAA,iBAC9B,gCAAA,CAAiC,CAAA;;;;;cAMxB,wBAAA,WAED,MAAA,gBAAsB,MAAA,uBACxB,qBAAA,CAAsB,CAAA;EAAA,OACvB,OAAA,CAAA;EAIP,YAAA;EAEA,eAAA;EAEA,QAAA;EAlIgC;EAqIhC,OAAA;EAnI4C;EAsI5C,YAAA;EAEA,SAAA,GAAY,cAAA,CAAe,CAAA;EAE3B,kBAAA,GAAqB,kBAAA,CAAmB,CAAA;EAExC,WAAA,CAAY,MAAA,EAAQ,gCAAA,CAAiC,CAAA;EAErD,WAAA,CAAY,MAAA,EAAQ,gCAAA,CAAiC,CAAA;EAErD,WAAA,CAAY,MAAA,EAAQ,qCAAA,CAAsC,CAAA;EAAA,UAoB1C,eAAA,CAAgB,MAAA,YAAkB,OAAA,CAAQ,CAAA;EAoCpD,kBAAA,CAAmB,WAAA,EAAa,cAAA,KAAmB,OAAA;EAuBnD,WAAA,CAAY,WAAA,EAAa,cAAA,KAAmB,OAAA;AAAA"}
@@ -4,15 +4,14 @@ import { interopSafeParseAsync } from "../../utils/types/zod.js";
4
4
  import { OutputParserException } from "../base.js";
5
5
  import { BaseCumulativeTransformOutputParser } from "../transform.js";
6
6
  import "../json.js";
7
-
8
7
  //#region src/output_parsers/openai_tools/json_output_tools_parsers.ts
9
8
  function parseToolCall(rawToolCall, options) {
10
- if (rawToolCall.function === void 0) return void 0;
9
+ if (rawToolCall.function === void 0) return;
11
10
  let functionArgs;
12
11
  if (options?.partial) try {
13
12
  functionArgs = parsePartialJson(rawToolCall.function.arguments ?? "{}");
14
13
  } catch {
15
- return void 0;
14
+ return;
16
15
  }
17
16
  else try {
18
17
  functionArgs = JSON.parse(rawToolCall.function.arguments);
@@ -79,8 +78,7 @@ var JsonOutputToolsParser = class extends BaseCumulativeTransformOutputParser {
79
78
  throw new Error("Not implemented.");
80
79
  }
81
80
  async parseResult(generations) {
82
- const result = await this.parsePartialResult(generations, false);
83
- return result;
81
+ return await this.parsePartialResult(generations, false);
84
82
  }
85
83
  /**
86
84
  * Parses the output and returns a JSON object. If `argsOnly` is true,
@@ -92,22 +90,19 @@ var JsonOutputToolsParser = class extends BaseCumulativeTransformOutputParser {
92
90
  const message = generations[0].message;
93
91
  let toolCalls;
94
92
  if (isAIMessage(message) && message.tool_calls?.length) toolCalls = message.tool_calls.map((toolCall) => {
95
- const { id,...rest } = toolCall;
93
+ const { id, ...rest } = toolCall;
96
94
  if (!this.returnId) return rest;
97
95
  return {
98
96
  id,
99
97
  ...rest
100
98
  };
101
99
  });
102
- else if (message.additional_kwargs.tool_calls !== void 0) {
103
- const rawToolCalls = JSON.parse(JSON.stringify(message.additional_kwargs.tool_calls));
104
- toolCalls = rawToolCalls.map((rawToolCall) => {
105
- return parseToolCall(rawToolCall, {
106
- returnId: this.returnId,
107
- partial
108
- });
100
+ else if (message.additional_kwargs.tool_calls !== void 0) toolCalls = JSON.parse(JSON.stringify(message.additional_kwargs.tool_calls)).map((rawToolCall) => {
101
+ return parseToolCall(rawToolCall, {
102
+ returnId: this.returnId,
103
+ partial
109
104
  });
110
- }
105
+ });
111
106
  if (!toolCalls) return [];
112
107
  const parsedToolCalls = [];
113
108
  for (const toolCall of toolCalls) if (toolCall !== void 0) {
@@ -141,39 +136,43 @@ var JsonOutputKeyToolsParser = class extends JsonOutputToolsParser {
141
136
  /** Whether to return only the first tool call. */
142
137
  returnSingle = false;
143
138
  zodSchema;
139
+ serializableSchema;
144
140
  constructor(params) {
145
141
  super(params);
146
142
  this.keyName = params.keyName;
147
143
  this.returnSingle = params.returnSingle ?? this.returnSingle;
148
- this.zodSchema = params.zodSchema;
144
+ if ("zodSchema" in params) this.zodSchema = params.zodSchema;
145
+ if ("serializableSchema" in params) this.serializableSchema = params.serializableSchema;
149
146
  }
150
147
  async _validateResult(result) {
148
+ if (this.serializableSchema !== void 0) {
149
+ const validated = await this.serializableSchema["~standard"].validate(result);
150
+ if (validated.issues) throw new OutputParserException(`Failed to parse. Text: "${JSON.stringify(result, null, 2)}". Error: ${JSON.stringify(validated.issues)}`, JSON.stringify(result, null, 2));
151
+ return validated.value;
152
+ }
151
153
  if (this.zodSchema === void 0) return result;
152
154
  const zodParsedResult = await interopSafeParseAsync(this.zodSchema, result);
153
155
  if (zodParsedResult.success) return zodParsedResult.data;
154
156
  else throw new OutputParserException(`Failed to parse. Text: "${JSON.stringify(result, null, 2)}". Error: ${JSON.stringify(zodParsedResult.error?.issues)}`, JSON.stringify(result, null, 2));
155
157
  }
156
158
  async parsePartialResult(generations) {
157
- const results = await super.parsePartialResult(generations);
158
- const matchingResults = results.filter((result) => result.type === this.keyName);
159
+ const matchingResults = (await super.parsePartialResult(generations)).filter((result) => result.type === this.keyName);
159
160
  let returnedValues = matchingResults;
160
- if (!matchingResults.length) return void 0;
161
+ if (!matchingResults.length) return;
161
162
  if (!this.returnId) returnedValues = matchingResults.map((result) => result.args);
162
163
  if (this.returnSingle) return returnedValues[0];
163
164
  return returnedValues;
164
165
  }
165
166
  async parseResult(generations) {
166
- const results = await super.parsePartialResult(generations, false);
167
- const matchingResults = results.filter((result) => result.type === this.keyName);
167
+ const matchingResults = (await super.parsePartialResult(generations, false)).filter((result) => result.type === this.keyName);
168
168
  let returnedValues = matchingResults;
169
- if (!matchingResults.length) return void 0;
169
+ if (!matchingResults.length) return;
170
170
  if (!this.returnId) returnedValues = matchingResults.map((result) => result.args);
171
171
  if (this.returnSingle) return this._validateResult(returnedValues[0]);
172
- const toolCallResults = await Promise.all(returnedValues.map((value) => this._validateResult(value)));
173
- return toolCallResults;
172
+ return await Promise.all(returnedValues.map((value) => this._validateResult(value)));
174
173
  }
175
174
  };
176
-
177
175
  //#endregion
178
176
  export { JsonOutputKeyToolsParser, JsonOutputToolsParser, convertLangChainToolCallToOpenAI, makeInvalidToolCall, parseToolCall };
177
+
179
178
  //# sourceMappingURL=json_output_tools_parsers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"json_output_tools_parsers.js","names":["rawToolCall: Record<string, any>","options?: { returnId?: boolean; partial?: boolean }","e: any","parsedToolCall: ToolCall","toolCall: ToolCall","errorMsg?: string","fields?: JsonOutputToolsParserParams","generations: ChatGeneration[]","generations: ChatGenerationChunk[] | ChatGeneration[]","rawToolCall: Record<string, unknown>","backwardsCompatibleToolCall: ParsedToolCall","params:\n | JsonOutputKeyToolsParserParamsV3<T>\n | JsonOutputKeyToolsParserParamsV4<T>\n | JsonOutputKeyToolsParserParamsInterop<T>","result: unknown","result: ParsedToolCall","returnedValues: ParsedToolCall[] | Record<string, any>[]"],"sources":["../../../src/output_parsers/openai_tools/json_output_tools_parsers.ts"],"sourcesContent":["import type * as z3 from \"zod/v3\";\nimport type * as z4 from \"zod/v4/core\";\nimport { ChatGeneration, ChatGenerationChunk } from \"../../outputs.js\";\nimport { OutputParserException } from \"../base.js\";\nimport { parsePartialJson } from \"../json.js\";\nimport { InvalidToolCall, ToolCall } from \"../../messages/tool.js\";\nimport {\n BaseCumulativeTransformOutputParser,\n BaseCumulativeTransformOutputParserInput,\n} from \"../transform.js\";\nimport { isAIMessage } from \"../../messages/ai.js\";\nimport {\n type InteropZodType,\n interopSafeParseAsync,\n} from \"../../utils/types/zod.js\";\n\nexport type ParsedToolCall = {\n id?: string;\n\n type: string;\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n args: Record<string, any>;\n};\n\nexport type JsonOutputToolsParserParams = {\n /** Whether to return the tool call id. */\n returnId?: boolean;\n} & BaseCumulativeTransformOutputParserInput;\n\nexport function parseToolCall(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n rawToolCall: Record<string, any>,\n options: { returnId?: boolean; partial: true }\n): ToolCall | undefined;\nexport function parseToolCall(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n rawToolCall: Record<string, any>,\n options?: { returnId?: boolean; partial?: false }\n): ToolCall;\nexport function parseToolCall(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n rawToolCall: Record<string, any>,\n options?: { returnId?: boolean; partial?: boolean }\n): ToolCall | undefined;\nexport function parseToolCall(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n rawToolCall: Record<string, any>,\n options?: { returnId?: boolean; partial?: boolean }\n): ToolCall | undefined {\n if (rawToolCall.function === undefined) {\n return undefined;\n }\n let functionArgs;\n if (options?.partial) {\n try {\n functionArgs = parsePartialJson(rawToolCall.function.arguments ?? \"{}\");\n } catch {\n return undefined;\n }\n } else {\n try {\n functionArgs = JSON.parse(rawToolCall.function.arguments);\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n } catch (e: any) {\n throw new OutputParserException(\n [\n `Function \"${rawToolCall.function.name}\" arguments:`,\n ``,\n rawToolCall.function.arguments,\n ``,\n `are not valid JSON.`,\n `Error: ${e.message}`,\n ].join(\"\\n\")\n );\n }\n }\n\n const parsedToolCall: ToolCall = {\n name: rawToolCall.function.name,\n args: functionArgs,\n type: \"tool_call\",\n };\n\n if (options?.returnId) {\n parsedToolCall.id = rawToolCall.id;\n }\n\n return parsedToolCall;\n}\n\nexport function convertLangChainToolCallToOpenAI(toolCall: ToolCall) {\n if (toolCall.id === undefined) {\n throw new Error(`All OpenAI tool calls must have an \"id\" field.`);\n }\n return {\n id: toolCall.id,\n type: \"function\",\n function: {\n name: toolCall.name,\n arguments: JSON.stringify(toolCall.args),\n },\n };\n}\n\nexport function makeInvalidToolCall(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n rawToolCall: Record<string, any>,\n errorMsg?: string\n): InvalidToolCall {\n return {\n name: rawToolCall.function?.name,\n args: rawToolCall.function?.arguments,\n id: rawToolCall.id,\n error: errorMsg,\n type: \"invalid_tool_call\",\n };\n}\n\n/**\n * Class for parsing the output of a tool-calling LLM into a JSON object.\n */\nexport class JsonOutputToolsParser<\n T\n> extends BaseCumulativeTransformOutputParser<T> {\n static lc_name() {\n return \"JsonOutputToolsParser\";\n }\n\n returnId = false;\n\n lc_namespace = [\"langchain\", \"output_parsers\", \"openai_tools\"];\n\n lc_serializable = true;\n\n constructor(fields?: JsonOutputToolsParserParams) {\n super(fields);\n this.returnId = fields?.returnId ?? this.returnId;\n }\n\n protected _diff() {\n throw new Error(\"Not supported.\");\n }\n\n async parse(): Promise<T> {\n throw new Error(\"Not implemented.\");\n }\n\n async parseResult(generations: ChatGeneration[]): Promise<T> {\n const result = await this.parsePartialResult(generations, false);\n return result;\n }\n\n /**\n * Parses the output and returns a JSON object. If `argsOnly` is true,\n * only the arguments of the function call are returned.\n * @param generations The output of the LLM to parse.\n * @returns A JSON object representation of the function call or its arguments.\n */\n async parsePartialResult(\n generations: ChatGenerationChunk[] | ChatGeneration[],\n partial = true\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ): Promise<any> {\n const message = generations[0].message;\n let toolCalls;\n if (isAIMessage(message) && message.tool_calls?.length) {\n toolCalls = message.tool_calls.map((toolCall) => {\n const { id, ...rest } = toolCall;\n if (!this.returnId) {\n return rest;\n }\n return {\n id,\n ...rest,\n };\n });\n } else if (message.additional_kwargs.tool_calls !== undefined) {\n const rawToolCalls = JSON.parse(\n JSON.stringify(message.additional_kwargs.tool_calls)\n );\n toolCalls = rawToolCalls.map((rawToolCall: Record<string, unknown>) => {\n return parseToolCall(rawToolCall, { returnId: this.returnId, partial });\n });\n }\n if (!toolCalls) {\n return [];\n }\n const parsedToolCalls = [];\n for (const toolCall of toolCalls) {\n if (toolCall !== undefined) {\n const backwardsCompatibleToolCall: ParsedToolCall = {\n type: toolCall.name,\n args: toolCall.args,\n id: toolCall.id,\n };\n parsedToolCalls.push(backwardsCompatibleToolCall);\n }\n }\n return parsedToolCalls;\n }\n}\n\ntype JsonOutputKeyToolsParserParamsBase = {\n keyName: string;\n returnSingle?: boolean;\n} & JsonOutputToolsParserParams;\n\ntype JsonOutputKeyToolsParserParamsV3<\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n T extends Record<string, any> = Record<string, any>\n> = { zodSchema?: z3.ZodType<T> } & JsonOutputKeyToolsParserParamsBase;\n\ntype JsonOutputKeyToolsParserParamsV4<\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n T extends Record<string, any> = Record<string, any>\n> = { zodSchema?: z4.$ZodType<T, T> } & JsonOutputKeyToolsParserParamsBase;\n\nexport type JsonOutputKeyToolsParserParamsInterop<\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n T extends Record<string, any> = Record<string, any>\n> = { zodSchema?: InteropZodType<T> } & JsonOutputKeyToolsParserParamsBase;\n\n// Use Zod 3 for backwards compatibility\nexport type JsonOutputKeyToolsParserParams<\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n T extends Record<string, any> = Record<string, any>\n> = JsonOutputKeyToolsParserParamsV3<T>;\n\n/**\n * Class for parsing the output of a tool-calling LLM into a JSON object if you are\n * expecting only a single tool to be called.\n */\nexport class JsonOutputKeyToolsParser<\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n T extends Record<string, any> = Record<string, any>\n> extends JsonOutputToolsParser<T> {\n static lc_name() {\n return \"JsonOutputKeyToolsParser\";\n }\n\n lc_namespace = [\"langchain\", \"output_parsers\", \"openai_tools\"];\n\n lc_serializable = true;\n\n returnId = false;\n\n /** The type of tool calls to return. */\n keyName: string;\n\n /** Whether to return only the first tool call. */\n returnSingle = false;\n\n zodSchema?: InteropZodType<T>;\n\n constructor(params: JsonOutputKeyToolsParserParamsV3<T>);\n\n constructor(params: JsonOutputKeyToolsParserParamsV4<T>);\n\n constructor(params: JsonOutputKeyToolsParserParamsInterop<T>);\n\n constructor(\n params:\n | JsonOutputKeyToolsParserParamsV3<T>\n | JsonOutputKeyToolsParserParamsV4<T>\n | JsonOutputKeyToolsParserParamsInterop<T>\n ) {\n super(params);\n this.keyName = params.keyName;\n this.returnSingle = params.returnSingle ?? this.returnSingle;\n this.zodSchema = params.zodSchema;\n }\n\n protected async _validateResult(result: unknown): Promise<T> {\n if (this.zodSchema === undefined) {\n return result as T;\n }\n const zodParsedResult = await interopSafeParseAsync(this.zodSchema, result);\n if (zodParsedResult.success) {\n return zodParsedResult.data;\n } else {\n throw new OutputParserException(\n `Failed to parse. Text: \"${JSON.stringify(\n result,\n null,\n 2\n )}\". Error: ${JSON.stringify(zodParsedResult.error?.issues)}`,\n JSON.stringify(result, null, 2)\n );\n }\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n async parsePartialResult(generations: ChatGeneration[]): Promise<any> {\n const results = await super.parsePartialResult(generations);\n const matchingResults = results.filter(\n (result: ParsedToolCall) => result.type === this.keyName\n );\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let returnedValues: ParsedToolCall[] | Record<string, any>[] =\n matchingResults;\n if (!matchingResults.length) {\n return undefined;\n }\n if (!this.returnId) {\n returnedValues = matchingResults.map(\n (result: ParsedToolCall) => result.args\n );\n }\n if (this.returnSingle) {\n return returnedValues[0];\n }\n return returnedValues;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n async parseResult(generations: ChatGeneration[]): Promise<any> {\n const results = await super.parsePartialResult(generations, false);\n const matchingResults = results.filter(\n (result: ParsedToolCall) => result.type === this.keyName\n );\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let returnedValues: ParsedToolCall[] | Record<string, any>[] =\n matchingResults;\n if (!matchingResults.length) {\n return undefined;\n }\n if (!this.returnId) {\n returnedValues = matchingResults.map(\n (result: ParsedToolCall) => result.args\n );\n }\n if (this.returnSingle) {\n return this._validateResult(returnedValues[0]);\n }\n const toolCallResults = await Promise.all(\n returnedValues.map((value) => this._validateResult(value))\n );\n return toolCallResults;\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"json_output_tools_parsers.js","names":[],"sources":["../../../src/output_parsers/openai_tools/json_output_tools_parsers.ts"],"sourcesContent":["import type { ZodV3Like, ZodV4Like } from \"../../utils/types/zod.js\";\nimport { ChatGeneration, ChatGenerationChunk } from \"../../outputs.js\";\nimport { OutputParserException } from \"../base.js\";\nimport { parsePartialJson } from \"../json.js\";\nimport { InvalidToolCall, ToolCall } from \"../../messages/tool.js\";\nimport {\n BaseCumulativeTransformOutputParser,\n BaseCumulativeTransformOutputParserInput,\n} from \"../transform.js\";\nimport { isAIMessage } from \"../../messages/ai.js\";\nimport {\n type InteropZodType,\n interopSafeParseAsync,\n} from \"../../utils/types/zod.js\";\nimport { SerializableSchema } from \"../../utils/standard_schema.js\";\n\nexport type ParsedToolCall = {\n id?: string;\n\n type: string;\n\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n args: Record<string, any>;\n};\n\nexport type JsonOutputToolsParserParams = {\n /** Whether to return the tool call id. */\n returnId?: boolean;\n} & BaseCumulativeTransformOutputParserInput;\n\nexport function parseToolCall(\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n rawToolCall: Record<string, any>,\n options: { returnId?: boolean; partial: true }\n): ToolCall | undefined;\nexport function parseToolCall(\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n rawToolCall: Record<string, any>,\n options?: { returnId?: boolean; partial?: false }\n): ToolCall;\nexport function parseToolCall(\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n rawToolCall: Record<string, any>,\n options?: { returnId?: boolean; partial?: boolean }\n): ToolCall | undefined;\nexport function parseToolCall(\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n rawToolCall: Record<string, any>,\n options?: { returnId?: boolean; partial?: boolean }\n): ToolCall | undefined {\n if (rawToolCall.function === undefined) {\n return undefined;\n }\n let functionArgs;\n if (options?.partial) {\n try {\n functionArgs = parsePartialJson(rawToolCall.function.arguments ?? \"{}\");\n } catch {\n return undefined;\n }\n } else {\n try {\n functionArgs = JSON.parse(rawToolCall.function.arguments);\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n } catch (e: any) {\n throw new OutputParserException(\n [\n `Function \"${rawToolCall.function.name}\" arguments:`,\n ``,\n rawToolCall.function.arguments,\n ``,\n `are not valid JSON.`,\n `Error: ${e.message}`,\n ].join(\"\\n\")\n );\n }\n }\n\n const parsedToolCall: ToolCall = {\n name: rawToolCall.function.name,\n args: functionArgs,\n type: \"tool_call\",\n };\n\n if (options?.returnId) {\n parsedToolCall.id = rawToolCall.id;\n }\n\n return parsedToolCall;\n}\n\nexport function convertLangChainToolCallToOpenAI(toolCall: ToolCall) {\n if (toolCall.id === undefined) {\n throw new Error(`All OpenAI tool calls must have an \"id\" field.`);\n }\n return {\n id: toolCall.id,\n type: \"function\",\n function: {\n name: toolCall.name,\n arguments: JSON.stringify(toolCall.args),\n },\n };\n}\n\nexport function makeInvalidToolCall(\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n rawToolCall: Record<string, any>,\n errorMsg?: string\n): InvalidToolCall {\n return {\n name: rawToolCall.function?.name,\n args: rawToolCall.function?.arguments,\n id: rawToolCall.id,\n error: errorMsg,\n type: \"invalid_tool_call\",\n };\n}\n\n/**\n * Class for parsing the output of a tool-calling LLM into a JSON object.\n */\nexport class JsonOutputToolsParser<\n T,\n> extends BaseCumulativeTransformOutputParser<T> {\n static lc_name() {\n return \"JsonOutputToolsParser\";\n }\n\n returnId = false;\n\n lc_namespace = [\"langchain\", \"output_parsers\", \"openai_tools\"];\n\n lc_serializable = true;\n\n constructor(fields?: JsonOutputToolsParserParams) {\n super(fields);\n this.returnId = fields?.returnId ?? this.returnId;\n }\n\n protected _diff() {\n throw new Error(\"Not supported.\");\n }\n\n async parse(): Promise<T> {\n throw new Error(\"Not implemented.\");\n }\n\n async parseResult(generations: ChatGeneration[]): Promise<T> {\n const result = await this.parsePartialResult(generations, false);\n return result;\n }\n\n /**\n * Parses the output and returns a JSON object. If `argsOnly` is true,\n * only the arguments of the function call are returned.\n * @param generations The output of the LLM to parse.\n * @returns A JSON object representation of the function call or its arguments.\n */\n async parsePartialResult(\n generations: ChatGenerationChunk[] | ChatGeneration[],\n partial = true\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n ): Promise<any> {\n const message = generations[0].message;\n let toolCalls;\n if (isAIMessage(message) && message.tool_calls?.length) {\n toolCalls = message.tool_calls.map((toolCall) => {\n const { id, ...rest } = toolCall;\n if (!this.returnId) {\n return rest;\n }\n return {\n id,\n ...rest,\n };\n });\n } else if (message.additional_kwargs.tool_calls !== undefined) {\n const rawToolCalls = JSON.parse(\n JSON.stringify(message.additional_kwargs.tool_calls)\n );\n toolCalls = rawToolCalls.map((rawToolCall: Record<string, unknown>) => {\n return parseToolCall(rawToolCall, { returnId: this.returnId, partial });\n });\n }\n if (!toolCalls) {\n return [];\n }\n const parsedToolCalls = [];\n for (const toolCall of toolCalls) {\n if (toolCall !== undefined) {\n const backwardsCompatibleToolCall: ParsedToolCall = {\n type: toolCall.name,\n args: toolCall.args,\n id: toolCall.id,\n };\n parsedToolCalls.push(backwardsCompatibleToolCall);\n }\n }\n return parsedToolCalls;\n }\n}\n\ntype JsonOutputKeyToolsParserParamsBase = {\n keyName: string;\n returnSingle?: boolean;\n} & JsonOutputToolsParserParams;\n\ntype JsonOutputKeyToolsParserParamsV3<\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n T extends Record<string, any> = Record<string, any>,\n> = { zodSchema?: ZodV3Like<T> } & JsonOutputKeyToolsParserParamsBase;\n\ntype JsonOutputKeyToolsParserParamsV4<\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n T extends Record<string, any> = Record<string, any>,\n> = { zodSchema?: ZodV4Like<T, T> } & JsonOutputKeyToolsParserParamsBase;\n\nexport type JsonOutputKeyToolsParserParamsInterop<\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n T extends Record<string, any> = Record<string, any>,\n> = { zodSchema?: InteropZodType<T> } & JsonOutputKeyToolsParserParamsBase;\n\nexport type JsonOutputKeyToolsParserParamsSerializable<\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n T extends Record<string, any> = Record<string, any>,\n> = {\n serializableSchema?: SerializableSchema<T>;\n} & JsonOutputKeyToolsParserParamsBase;\n\n// Use Zod 3 for backwards compatibility\nexport type JsonOutputKeyToolsParserParams<\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n T extends Record<string, any> = Record<string, any>,\n> = JsonOutputKeyToolsParserParamsV3<T>;\n\n/**\n * Class for parsing the output of a tool-calling LLM into a JSON object if you are\n * expecting only a single tool to be called.\n */\nexport class JsonOutputKeyToolsParser<\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n T extends Record<string, any> = Record<string, any>,\n> extends JsonOutputToolsParser<T> {\n static lc_name() {\n return \"JsonOutputKeyToolsParser\";\n }\n\n lc_namespace = [\"langchain\", \"output_parsers\", \"openai_tools\"];\n\n lc_serializable = true;\n\n returnId = false;\n\n /** The type of tool calls to return. */\n keyName: string;\n\n /** Whether to return only the first tool call. */\n returnSingle = false;\n\n zodSchema?: InteropZodType<T>;\n\n serializableSchema?: SerializableSchema<T>;\n\n constructor(params: JsonOutputKeyToolsParserParamsV3<T>);\n\n constructor(params: JsonOutputKeyToolsParserParamsV4<T>);\n\n constructor(params: JsonOutputKeyToolsParserParamsInterop<T>);\n\n constructor(\n params:\n | JsonOutputKeyToolsParserParamsV3<T>\n | JsonOutputKeyToolsParserParamsV4<T>\n | JsonOutputKeyToolsParserParamsInterop<T>\n | JsonOutputKeyToolsParserParamsSerializable<T>\n ) {\n super(params);\n this.keyName = params.keyName;\n this.returnSingle = params.returnSingle ?? this.returnSingle;\n if (\"zodSchema\" in params) {\n this.zodSchema = params.zodSchema;\n }\n if (\"serializableSchema\" in params) {\n this.serializableSchema = params.serializableSchema;\n }\n }\n\n protected async _validateResult(result: unknown): Promise<T> {\n if (this.serializableSchema !== undefined) {\n const validated =\n await this.serializableSchema[\"~standard\"].validate(result);\n if (validated.issues) {\n throw new OutputParserException(\n `Failed to parse. Text: \"${JSON.stringify(\n result,\n null,\n 2\n )}\". Error: ${JSON.stringify(validated.issues)}`,\n JSON.stringify(result, null, 2)\n );\n }\n return validated.value as T;\n }\n if (this.zodSchema === undefined) {\n return result as T;\n }\n const zodParsedResult = await interopSafeParseAsync(this.zodSchema, result);\n if (zodParsedResult.success) {\n return zodParsedResult.data;\n } else {\n throw new OutputParserException(\n `Failed to parse. Text: \"${JSON.stringify(\n result,\n null,\n 2\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n )}\". Error: ${JSON.stringify((zodParsedResult.error as any)?.issues)}`,\n JSON.stringify(result, null, 2)\n );\n }\n }\n\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n async parsePartialResult(generations: ChatGeneration[]): Promise<any> {\n const results = await super.parsePartialResult(generations);\n const matchingResults = results.filter(\n (result: ParsedToolCall) => result.type === this.keyName\n );\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n let returnedValues: ParsedToolCall[] | Record<string, any>[] =\n matchingResults;\n if (!matchingResults.length) {\n return undefined;\n }\n if (!this.returnId) {\n returnedValues = matchingResults.map(\n (result: ParsedToolCall) => result.args\n );\n }\n if (this.returnSingle) {\n return returnedValues[0];\n }\n return returnedValues;\n }\n\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n async parseResult(generations: ChatGeneration[]): Promise<any> {\n const results = await super.parsePartialResult(generations, false);\n const matchingResults = results.filter(\n (result: ParsedToolCall) => result.type === this.keyName\n );\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n let returnedValues: ParsedToolCall[] | Record<string, any>[] =\n matchingResults;\n if (!matchingResults.length) {\n return undefined;\n }\n if (!this.returnId) {\n returnedValues = matchingResults.map(\n (result: ParsedToolCall) => result.args\n );\n }\n if (this.returnSingle) {\n return this._validateResult(returnedValues[0]);\n }\n const toolCallResults = await Promise.all(\n returnedValues.map((value) => this._validateResult(value))\n );\n return toolCallResults;\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ const require_json = require("../utils/json.cjs");
2
+ const require_base = require("./base.cjs");
3
+ require("./json.cjs");
4
+ //#region src/output_parsers/standard_schema.ts
5
+ var StandardSchemaOutputParser = class extends require_base.BaseOutputParser {
6
+ static lc_name() {
7
+ return "StandardSchemaOutputParser";
8
+ }
9
+ lc_namespace = [
10
+ "langchain",
11
+ "output_parsers",
12
+ "standard_schema"
13
+ ];
14
+ schema;
15
+ constructor(schema) {
16
+ super();
17
+ this.schema = schema;
18
+ }
19
+ static fromSerializableSchema(schema) {
20
+ return new this(schema);
21
+ }
22
+ async parse(text) {
23
+ try {
24
+ const json = require_json.parseJsonMarkdown(text, JSON.parse);
25
+ const result = await this.schema["~standard"].validate(json);
26
+ if (result.issues) throw new Error(`Validation failed: ${JSON.stringify(result.issues)}`);
27
+ return result.value;
28
+ } catch (e) {
29
+ throw new require_base.OutputParserException(`Failed to parse. Text: "${text}". Error: ${e}`, text);
30
+ }
31
+ }
32
+ getFormatInstructions() {
33
+ return "";
34
+ }
35
+ };
36
+ //#endregion
37
+ exports.StandardSchemaOutputParser = StandardSchemaOutputParser;
38
+
39
+ //# sourceMappingURL=standard_schema.cjs.map