@langchain/core 1.2.0-dev-1765937705265 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1873) hide show
  1. package/CHANGELOG.md +429 -0
  2. package/README.md +1 -1
  3. package/agents.cjs +1 -0
  4. package/agents.d.cts +1 -0
  5. package/agents.d.ts +1 -0
  6. package/agents.js +1 -0
  7. package/caches.cjs +1 -0
  8. package/caches.d.cts +1 -0
  9. package/caches.d.ts +1 -0
  10. package/caches.js +1 -0
  11. package/callbacks/base.cjs +1 -0
  12. package/callbacks/base.d.cts +1 -0
  13. package/callbacks/base.d.ts +1 -0
  14. package/callbacks/base.js +1 -0
  15. package/callbacks/dispatch/web.cjs +1 -0
  16. package/callbacks/dispatch/web.d.cts +1 -0
  17. package/callbacks/dispatch/web.d.ts +1 -0
  18. package/callbacks/dispatch/web.js +1 -0
  19. package/callbacks/dispatch.cjs +1 -0
  20. package/callbacks/dispatch.d.cts +1 -0
  21. package/callbacks/dispatch.d.ts +1 -0
  22. package/callbacks/dispatch.js +1 -0
  23. package/callbacks/manager.cjs +1 -0
  24. package/callbacks/manager.d.cts +1 -0
  25. package/callbacks/manager.d.ts +1 -0
  26. package/callbacks/manager.js +1 -0
  27. package/callbacks/promises.cjs +1 -0
  28. package/callbacks/promises.d.cts +1 -0
  29. package/callbacks/promises.d.ts +1 -0
  30. package/callbacks/promises.js +1 -0
  31. package/chat_history.cjs +1 -0
  32. package/chat_history.d.cts +1 -0
  33. package/chat_history.d.ts +1 -0
  34. package/chat_history.js +1 -0
  35. package/context.cjs +1 -0
  36. package/context.d.cts +1 -0
  37. package/context.d.ts +1 -0
  38. package/context.js +1 -0
  39. package/dist/_virtual/{rolldown_runtime.cjs → _rolldown/runtime.cjs} +7 -6
  40. package/dist/_virtual/_rolldown/runtime.js +13 -0
  41. package/dist/agents.cjs +8 -8
  42. package/dist/agents.cjs.map +1 -1
  43. package/dist/agents.d.cts.map +1 -1
  44. package/dist/agents.d.ts.map +1 -1
  45. package/dist/agents.js +3 -2
  46. package/dist/agents.js.map +1 -1
  47. package/dist/caches/index.cjs +12 -13
  48. package/dist/caches/index.cjs.map +1 -1
  49. package/dist/caches/index.d.cts.map +1 -1
  50. package/dist/caches/index.d.ts.map +1 -1
  51. package/dist/caches/index.js +4 -6
  52. package/dist/caches/index.js.map +1 -1
  53. package/dist/callbacks/base.cjs +22 -26
  54. package/dist/callbacks/base.cjs.map +1 -1
  55. package/dist/callbacks/base.d.cts +100 -39
  56. package/dist/callbacks/base.d.cts.map +1 -1
  57. package/dist/callbacks/base.d.ts +100 -39
  58. package/dist/callbacks/base.d.ts.map +1 -1
  59. package/dist/callbacks/base.js +14 -20
  60. package/dist/callbacks/base.js.map +1 -1
  61. package/dist/callbacks/dispatch/index.cjs +11 -12
  62. package/dist/callbacks/dispatch/index.cjs.map +1 -1
  63. package/dist/callbacks/dispatch/index.d.cts +0 -2
  64. package/dist/callbacks/dispatch/index.d.cts.map +1 -1
  65. package/dist/callbacks/dispatch/index.d.ts +0 -3
  66. package/dist/callbacks/dispatch/index.d.ts.map +1 -1
  67. package/dist/callbacks/dispatch/index.js +5 -7
  68. package/dist/callbacks/dispatch/index.js.map +1 -1
  69. package/dist/callbacks/dispatch/web.cjs +3 -3
  70. package/dist/callbacks/dispatch/web.cjs.map +1 -1
  71. package/dist/callbacks/dispatch/web.d.cts +0 -2
  72. package/dist/callbacks/dispatch/web.d.cts.map +1 -1
  73. package/dist/callbacks/dispatch/web.d.ts +0 -3
  74. package/dist/callbacks/dispatch/web.d.ts.map +1 -1
  75. package/dist/callbacks/dispatch/web.js +1 -2
  76. package/dist/callbacks/dispatch/web.js.map +1 -1
  77. package/dist/callbacks/manager.cjs +94 -80
  78. package/dist/callbacks/manager.cjs.map +1 -1
  79. package/dist/callbacks/manager.d.cts +7 -2
  80. package/dist/callbacks/manager.d.cts.map +1 -1
  81. package/dist/callbacks/manager.d.ts +7 -2
  82. package/dist/callbacks/manager.d.ts.map +1 -1
  83. package/dist/callbacks/manager.js +74 -61
  84. package/dist/callbacks/manager.js.map +1 -1
  85. package/dist/callbacks/promises.cjs +10 -11
  86. package/dist/callbacks/promises.js +3 -5
  87. package/dist/chat_history.cjs +13 -14
  88. package/dist/chat_history.cjs.map +1 -1
  89. package/dist/chat_history.d.cts +0 -2
  90. package/dist/chat_history.d.cts.map +1 -1
  91. package/dist/chat_history.d.ts +0 -3
  92. package/dist/chat_history.d.ts.map +1 -1
  93. package/dist/chat_history.js +4 -6
  94. package/dist/chat_history.js.map +1 -1
  95. package/dist/context.cjs +14 -7
  96. package/dist/context.cjs.map +1 -1
  97. package/dist/context.d.cts.map +1 -1
  98. package/dist/context.d.ts.map +1 -1
  99. package/dist/context.js +8 -2
  100. package/dist/context.js.map +1 -1
  101. package/dist/document_loaders/base.cjs +8 -10
  102. package/dist/document_loaders/base.cjs.map +1 -1
  103. package/dist/document_loaders/base.d.cts +0 -1
  104. package/dist/document_loaders/base.d.cts.map +1 -1
  105. package/dist/document_loaders/base.d.ts +0 -1
  106. package/dist/document_loaders/base.d.ts.map +1 -1
  107. package/dist/document_loaders/base.js +3 -5
  108. package/dist/document_loaders/base.js.map +1 -1
  109. package/dist/document_loaders/langsmith.cjs +11 -12
  110. package/dist/document_loaders/langsmith.cjs.map +1 -1
  111. package/dist/document_loaders/langsmith.d.cts.map +1 -1
  112. package/dist/document_loaders/langsmith.d.ts.map +1 -1
  113. package/dist/document_loaders/langsmith.js +3 -5
  114. package/dist/document_loaders/langsmith.js.map +1 -1
  115. package/dist/documents/document.cjs +1 -2
  116. package/dist/documents/document.cjs.map +1 -1
  117. package/dist/documents/document.d.cts.map +1 -1
  118. package/dist/documents/document.d.ts.map +1 -1
  119. package/dist/documents/document.js +1 -1
  120. package/dist/documents/document.js.map +1 -1
  121. package/dist/documents/index.cjs +11 -12
  122. package/dist/documents/index.js +3 -5
  123. package/dist/documents/transformers.cjs +2 -3
  124. package/dist/documents/transformers.cjs.map +1 -1
  125. package/dist/documents/transformers.d.cts +0 -1
  126. package/dist/documents/transformers.d.cts.map +1 -1
  127. package/dist/documents/transformers.d.ts +0 -1
  128. package/dist/documents/transformers.d.ts.map +1 -1
  129. package/dist/documents/transformers.js +1 -2
  130. package/dist/documents/transformers.js.map +1 -1
  131. package/dist/embeddings.cjs +10 -11
  132. package/dist/embeddings.cjs.map +1 -1
  133. package/dist/embeddings.d.cts +0 -1
  134. package/dist/embeddings.d.cts.map +1 -1
  135. package/dist/embeddings.d.ts +0 -1
  136. package/dist/embeddings.d.ts.map +1 -1
  137. package/dist/embeddings.js +3 -5
  138. package/dist/embeddings.js.map +1 -1
  139. package/dist/errors/index.cjs +165 -2
  140. package/dist/errors/index.cjs.map +1 -1
  141. package/dist/errors/index.d.cts +150 -0
  142. package/dist/errors/index.d.cts.map +1 -0
  143. package/dist/errors/index.d.ts +150 -0
  144. package/dist/errors/index.d.ts.map +1 -0
  145. package/dist/errors/index.js +155 -2
  146. package/dist/errors/index.js.map +1 -1
  147. package/dist/example_selectors/base.cjs +2 -3
  148. package/dist/example_selectors/base.cjs.map +1 -1
  149. package/dist/example_selectors/base.d.cts +0 -1
  150. package/dist/example_selectors/base.d.cts.map +1 -1
  151. package/dist/example_selectors/base.d.ts +0 -1
  152. package/dist/example_selectors/base.d.ts.map +1 -1
  153. package/dist/example_selectors/base.js +1 -2
  154. package/dist/example_selectors/base.js.map +1 -1
  155. package/dist/example_selectors/conditional.cjs +2 -4
  156. package/dist/example_selectors/conditional.cjs.map +1 -1
  157. package/dist/example_selectors/conditional.d.cts.map +1 -1
  158. package/dist/example_selectors/conditional.d.ts.map +1 -1
  159. package/dist/example_selectors/conditional.js +2 -3
  160. package/dist/example_selectors/conditional.js.map +1 -1
  161. package/dist/example_selectors/index.cjs +13 -14
  162. package/dist/example_selectors/index.js +3 -5
  163. package/dist/example_selectors/length_based.cjs +3 -5
  164. package/dist/example_selectors/length_based.cjs.map +1 -1
  165. package/dist/example_selectors/length_based.d.cts +0 -1
  166. package/dist/example_selectors/length_based.d.cts.map +1 -1
  167. package/dist/example_selectors/length_based.d.ts +0 -1
  168. package/dist/example_selectors/length_based.d.ts.map +1 -1
  169. package/dist/example_selectors/length_based.js +2 -4
  170. package/dist/example_selectors/length_based.js.map +1 -1
  171. package/dist/example_selectors/semantic_similarity.cjs +7 -12
  172. package/dist/example_selectors/semantic_similarity.cjs.map +1 -1
  173. package/dist/example_selectors/semantic_similarity.d.cts +0 -1
  174. package/dist/example_selectors/semantic_similarity.d.cts.map +1 -1
  175. package/dist/example_selectors/semantic_similarity.d.ts +0 -1
  176. package/dist/example_selectors/semantic_similarity.d.ts.map +1 -1
  177. package/dist/example_selectors/semantic_similarity.js +5 -10
  178. package/dist/example_selectors/semantic_similarity.js.map +1 -1
  179. package/dist/index.cjs +8 -8
  180. package/dist/index.js +3 -2
  181. package/dist/indexing/base.cjs +11 -17
  182. package/dist/indexing/base.cjs.map +1 -1
  183. package/dist/indexing/base.d.cts.map +1 -1
  184. package/dist/indexing/base.d.ts.map +1 -1
  185. package/dist/indexing/base.js +7 -12
  186. package/dist/indexing/base.js.map +1 -1
  187. package/dist/indexing/index.cjs +11 -12
  188. package/dist/indexing/index.js +3 -5
  189. package/dist/indexing/record_manager.cjs +2 -3
  190. package/dist/indexing/record_manager.cjs.map +1 -1
  191. package/dist/indexing/record_manager.d.cts.map +1 -1
  192. package/dist/indexing/record_manager.d.ts.map +1 -1
  193. package/dist/indexing/record_manager.js +1 -2
  194. package/dist/indexing/record_manager.js.map +1 -1
  195. package/dist/language_models/base.cjs +40 -26
  196. package/dist/language_models/base.cjs.map +1 -1
  197. package/dist/language_models/base.d.cts +22 -14
  198. package/dist/language_models/base.d.cts.map +1 -1
  199. package/dist/language_models/base.d.ts +22 -16
  200. package/dist/language_models/base.d.ts.map +1 -1
  201. package/dist/language_models/base.js +29 -16
  202. package/dist/language_models/base.js.map +1 -1
  203. package/dist/language_models/chat_models.cjs +173 -75
  204. package/dist/language_models/chat_models.cjs.map +1 -1
  205. package/dist/language_models/chat_models.d.cts +147 -10
  206. package/dist/language_models/chat_models.d.cts.map +1 -1
  207. package/dist/language_models/chat_models.d.ts +147 -13
  208. package/dist/language_models/chat_models.d.ts.map +1 -1
  209. package/dist/language_models/chat_models.js +155 -58
  210. package/dist/language_models/chat_models.js.map +1 -1
  211. package/dist/language_models/compat.cjs +412 -0
  212. package/dist/language_models/compat.cjs.map +1 -0
  213. package/dist/language_models/compat.d.cts +20 -0
  214. package/dist/language_models/compat.d.cts.map +1 -0
  215. package/dist/language_models/compat.d.ts +20 -0
  216. package/dist/language_models/compat.d.ts.map +1 -0
  217. package/dist/language_models/compat.js +404 -0
  218. package/dist/language_models/compat.js.map +1 -0
  219. package/dist/language_models/event.cjs +12 -0
  220. package/dist/language_models/event.cjs.map +1 -0
  221. package/dist/language_models/event.d.cts +185 -0
  222. package/dist/language_models/event.d.cts.map +1 -0
  223. package/dist/language_models/event.d.ts +185 -0
  224. package/dist/language_models/event.d.ts.map +1 -0
  225. package/dist/language_models/event.js +7 -0
  226. package/dist/language_models/event.js.map +1 -0
  227. package/dist/language_models/llms.cjs +41 -33
  228. package/dist/language_models/llms.cjs.map +1 -1
  229. package/dist/language_models/llms.d.cts +4 -4
  230. package/dist/language_models/llms.d.cts.map +1 -1
  231. package/dist/language_models/llms.d.ts +4 -5
  232. package/dist/language_models/llms.d.ts.map +1 -1
  233. package/dist/language_models/llms.js +30 -23
  234. package/dist/language_models/llms.js.map +1 -1
  235. package/dist/language_models/openai_completions_stream.cjs +308 -0
  236. package/dist/language_models/openai_completions_stream.cjs.map +1 -0
  237. package/dist/language_models/openai_completions_stream.d.cts +75 -0
  238. package/dist/language_models/openai_completions_stream.d.cts.map +1 -0
  239. package/dist/language_models/openai_completions_stream.d.ts +75 -0
  240. package/dist/language_models/openai_completions_stream.d.ts.map +1 -0
  241. package/dist/language_models/openai_completions_stream.js +301 -0
  242. package/dist/language_models/openai_completions_stream.js.map +1 -0
  243. package/dist/language_models/profile.cjs +8 -8
  244. package/dist/language_models/profile.d.cts.map +1 -1
  245. package/dist/language_models/profile.d.ts.map +1 -1
  246. package/dist/language_models/profile.js +3 -2
  247. package/dist/language_models/stream.cjs +506 -0
  248. package/dist/language_models/stream.cjs.map +1 -0
  249. package/dist/language_models/stream.d.cts +106 -0
  250. package/dist/language_models/stream.d.cts.map +1 -0
  251. package/dist/language_models/stream.d.ts +106 -0
  252. package/dist/language_models/stream.d.ts.map +1 -0
  253. package/dist/language_models/stream.js +495 -0
  254. package/dist/language_models/stream.js.map +1 -0
  255. package/dist/language_models/structured_output.cjs +87 -0
  256. package/dist/language_models/structured_output.cjs.map +1 -0
  257. package/dist/language_models/structured_output.d.cts +45 -0
  258. package/dist/language_models/structured_output.d.cts.map +1 -0
  259. package/dist/language_models/structured_output.d.ts +45 -0
  260. package/dist/language_models/structured_output.d.ts.map +1 -0
  261. package/dist/language_models/structured_output.js +78 -0
  262. package/dist/language_models/structured_output.js.map +1 -0
  263. package/dist/language_models/utils.cjs +1 -2
  264. package/dist/language_models/utils.cjs.map +1 -1
  265. package/dist/language_models/utils.js +1 -1
  266. package/dist/language_models/utils.js.map +1 -1
  267. package/dist/load/import_constants.cjs +1 -2
  268. package/dist/load/import_constants.cjs.map +1 -1
  269. package/dist/load/import_constants.js +1 -1
  270. package/dist/load/import_constants.js.map +1 -1
  271. package/dist/load/import_map.cjs +86 -66
  272. package/dist/load/import_map.cjs.map +1 -1
  273. package/dist/load/import_map.js +49 -29
  274. package/dist/load/import_map.js.map +1 -1
  275. package/dist/load/import_type.d.cts.map +1 -1
  276. package/dist/load/import_type.d.ts.map +1 -1
  277. package/dist/load/index.cjs +179 -41
  278. package/dist/load/index.cjs.map +1 -1
  279. package/dist/load/index.d.cts +126 -3
  280. package/dist/load/index.d.cts.map +1 -1
  281. package/dist/load/index.d.ts +126 -3
  282. package/dist/load/index.d.ts.map +1 -1
  283. package/dist/load/index.js +168 -31
  284. package/dist/load/index.js.map +1 -1
  285. package/dist/load/map_keys.cjs +14 -7
  286. package/dist/load/map_keys.cjs.map +1 -1
  287. package/dist/load/map_keys.d.cts.map +1 -1
  288. package/dist/load/map_keys.d.ts.map +1 -1
  289. package/dist/load/map_keys.js +12 -4
  290. package/dist/load/map_keys.js.map +1 -1
  291. package/dist/load/serializable.cjs +22 -26
  292. package/dist/load/serializable.cjs.map +1 -1
  293. package/dist/load/serializable.d.cts +15 -1
  294. package/dist/load/serializable.d.cts.map +1 -1
  295. package/dist/load/serializable.d.ts +15 -1
  296. package/dist/load/serializable.d.ts.map +1 -1
  297. package/dist/load/serializable.js +15 -20
  298. package/dist/load/serializable.js.map +1 -1
  299. package/dist/load/validation.cjs +120 -0
  300. package/dist/load/validation.cjs.map +1 -0
  301. package/dist/load/validation.js +118 -0
  302. package/dist/load/validation.js.map +1 -0
  303. package/dist/memory.cjs +10 -18
  304. package/dist/memory.cjs.map +1 -1
  305. package/dist/memory.d.cts +2 -2
  306. package/dist/memory.d.cts.map +1 -1
  307. package/dist/memory.d.ts +2 -2
  308. package/dist/memory.d.ts.map +1 -1
  309. package/dist/memory.js +5 -13
  310. package/dist/memory.js.map +1 -1
  311. package/dist/messages/ai.cjs +27 -18
  312. package/dist/messages/ai.cjs.map +1 -1
  313. package/dist/messages/ai.d.cts +2 -2
  314. package/dist/messages/ai.d.cts.map +1 -1
  315. package/dist/messages/ai.d.ts +2 -2
  316. package/dist/messages/ai.d.ts.map +1 -1
  317. package/dist/messages/ai.js +22 -13
  318. package/dist/messages/ai.js.map +1 -1
  319. package/dist/messages/base.cjs +121 -44
  320. package/dist/messages/base.cjs.map +1 -1
  321. package/dist/messages/base.d.cts +58 -12
  322. package/dist/messages/base.d.cts.map +1 -1
  323. package/dist/messages/base.d.ts +58 -12
  324. package/dist/messages/base.d.ts.map +1 -1
  325. package/dist/messages/base.js +114 -38
  326. package/dist/messages/base.js.map +1 -1
  327. package/dist/messages/block_translators/anthropic.cjs +32 -38
  328. package/dist/messages/block_translators/anthropic.cjs.map +1 -1
  329. package/dist/messages/block_translators/anthropic.js +31 -37
  330. package/dist/messages/block_translators/anthropic.js.map +1 -1
  331. package/dist/messages/block_translators/bedrock_converse.cjs +40 -49
  332. package/dist/messages/block_translators/bedrock_converse.cjs.map +1 -1
  333. package/dist/messages/block_translators/bedrock_converse.js +39 -48
  334. package/dist/messages/block_translators/bedrock_converse.js.map +1 -1
  335. package/dist/messages/block_translators/data.cjs +3 -4
  336. package/dist/messages/block_translators/data.cjs.map +1 -1
  337. package/dist/messages/block_translators/data.js +1 -2
  338. package/dist/messages/block_translators/data.js.map +1 -1
  339. package/dist/messages/block_translators/deepseek.cjs +58 -0
  340. package/dist/messages/block_translators/deepseek.cjs.map +1 -0
  341. package/dist/messages/block_translators/deepseek.js +58 -0
  342. package/dist/messages/block_translators/deepseek.js.map +1 -0
  343. package/dist/messages/block_translators/google.cjs +97 -0
  344. package/dist/messages/block_translators/google.cjs.map +1 -0
  345. package/dist/messages/block_translators/google.js +97 -0
  346. package/dist/messages/block_translators/google.js.map +1 -0
  347. package/dist/messages/block_translators/google_genai.cjs +9 -3
  348. package/dist/messages/block_translators/google_genai.cjs.map +1 -1
  349. package/dist/messages/block_translators/google_genai.js +8 -2
  350. package/dist/messages/block_translators/google_genai.js.map +1 -1
  351. package/dist/messages/block_translators/google_vertexai.cjs +10 -6
  352. package/dist/messages/block_translators/google_vertexai.cjs.map +1 -1
  353. package/dist/messages/block_translators/google_vertexai.js +9 -5
  354. package/dist/messages/block_translators/google_vertexai.js.map +1 -1
  355. package/dist/messages/block_translators/groq.cjs +96 -0
  356. package/dist/messages/block_translators/groq.cjs.map +1 -0
  357. package/dist/messages/block_translators/groq.js +96 -0
  358. package/dist/messages/block_translators/groq.js.map +1 -0
  359. package/dist/messages/block_translators/index.cjs +19 -8
  360. package/dist/messages/block_translators/index.cjs.map +1 -1
  361. package/dist/messages/block_translators/index.js +14 -3
  362. package/dist/messages/block_translators/index.js.map +1 -1
  363. package/dist/messages/block_translators/ollama.cjs +58 -0
  364. package/dist/messages/block_translators/ollama.cjs.map +1 -0
  365. package/dist/messages/block_translators/ollama.js +58 -0
  366. package/dist/messages/block_translators/ollama.js.map +1 -0
  367. package/dist/messages/block_translators/openai.cjs +85 -26
  368. package/dist/messages/block_translators/openai.cjs.map +1 -1
  369. package/dist/messages/block_translators/openai.js +83 -24
  370. package/dist/messages/block_translators/openai.js.map +1 -1
  371. package/dist/messages/block_translators/openrouter.cjs +101 -0
  372. package/dist/messages/block_translators/openrouter.cjs.map +1 -0
  373. package/dist/messages/block_translators/openrouter.js +101 -0
  374. package/dist/messages/block_translators/openrouter.js.map +1 -0
  375. package/dist/messages/block_translators/utils.cjs +2 -3
  376. package/dist/messages/block_translators/utils.cjs.map +1 -1
  377. package/dist/messages/block_translators/utils.js +2 -2
  378. package/dist/messages/block_translators/utils.js.map +1 -1
  379. package/dist/messages/block_translators/xai.cjs +94 -0
  380. package/dist/messages/block_translators/xai.cjs.map +1 -0
  381. package/dist/messages/block_translators/xai.js +94 -0
  382. package/dist/messages/block_translators/xai.js.map +1 -0
  383. package/dist/messages/chat.cjs +2 -3
  384. package/dist/messages/chat.cjs.map +1 -1
  385. package/dist/messages/chat.d.cts.map +1 -1
  386. package/dist/messages/chat.d.ts.map +1 -1
  387. package/dist/messages/chat.js +1 -2
  388. package/dist/messages/chat.js.map +1 -1
  389. package/dist/messages/content/base.d.cts.map +1 -1
  390. package/dist/messages/content/base.d.ts.map +1 -1
  391. package/dist/messages/content/data.cjs +2 -5
  392. package/dist/messages/content/data.cjs.map +1 -1
  393. package/dist/messages/content/data.d.cts +0 -1
  394. package/dist/messages/content/data.d.cts.map +1 -1
  395. package/dist/messages/content/data.d.ts +0 -1
  396. package/dist/messages/content/data.d.ts.map +1 -1
  397. package/dist/messages/content/data.js +2 -4
  398. package/dist/messages/content/data.js.map +1 -1
  399. package/dist/messages/content/index.cjs +5 -6
  400. package/dist/messages/content/index.cjs.map +1 -1
  401. package/dist/messages/content/index.d.cts +7 -3
  402. package/dist/messages/content/index.d.cts.map +1 -1
  403. package/dist/messages/content/index.d.ts +7 -3
  404. package/dist/messages/content/index.d.ts.map +1 -1
  405. package/dist/messages/content/index.js +7 -8
  406. package/dist/messages/content/index.js.map +1 -1
  407. package/dist/messages/content/multimodal.cjs +1 -2
  408. package/dist/messages/content/multimodal.cjs.map +1 -1
  409. package/dist/messages/content/multimodal.d.cts +4 -8
  410. package/dist/messages/content/multimodal.d.cts.map +1 -1
  411. package/dist/messages/content/multimodal.d.ts +4 -8
  412. package/dist/messages/content/multimodal.d.ts.map +1 -1
  413. package/dist/messages/content/multimodal.js +1 -1
  414. package/dist/messages/content/multimodal.js.map +1 -1
  415. package/dist/messages/content/tools.cjs +1 -2
  416. package/dist/messages/content/tools.cjs.map +1 -1
  417. package/dist/messages/content/tools.d.cts +1 -1
  418. package/dist/messages/content/tools.d.cts.map +1 -1
  419. package/dist/messages/content/tools.d.ts +1 -1
  420. package/dist/messages/content/tools.d.ts.map +1 -1
  421. package/dist/messages/content/tools.js +1 -1
  422. package/dist/messages/content/tools.js.map +1 -1
  423. package/dist/messages/format.cjs +1 -2
  424. package/dist/messages/format.cjs.map +1 -1
  425. package/dist/messages/format.d.cts.map +1 -1
  426. package/dist/messages/format.d.ts.map +1 -1
  427. package/dist/messages/format.js +1 -1
  428. package/dist/messages/format.js.map +1 -1
  429. package/dist/messages/function.cjs +2 -3
  430. package/dist/messages/function.cjs.map +1 -1
  431. package/dist/messages/function.d.cts.map +1 -1
  432. package/dist/messages/function.d.ts.map +1 -1
  433. package/dist/messages/function.js +1 -2
  434. package/dist/messages/function.js.map +1 -1
  435. package/dist/messages/human.cjs +2 -3
  436. package/dist/messages/human.cjs.map +1 -1
  437. package/dist/messages/human.d.cts.map +1 -1
  438. package/dist/messages/human.d.ts.map +1 -1
  439. package/dist/messages/human.js +1 -2
  440. package/dist/messages/human.js.map +1 -1
  441. package/dist/messages/index.cjs +25 -24
  442. package/dist/messages/index.d.cts +4 -4
  443. package/dist/messages/index.d.ts +4 -4
  444. package/dist/messages/index.js +7 -8
  445. package/dist/messages/message.cjs +1 -2
  446. package/dist/messages/message.cjs.map +1 -1
  447. package/dist/messages/message.d.cts +50 -27
  448. package/dist/messages/message.d.cts.map +1 -1
  449. package/dist/messages/message.d.ts +50 -27
  450. package/dist/messages/message.d.ts.map +1 -1
  451. package/dist/messages/message.js +1 -1
  452. package/dist/messages/message.js.map +1 -1
  453. package/dist/messages/metadata.cjs +3 -5
  454. package/dist/messages/metadata.cjs.map +1 -1
  455. package/dist/messages/metadata.d.cts.map +1 -1
  456. package/dist/messages/metadata.d.ts.map +1 -1
  457. package/dist/messages/metadata.js +2 -4
  458. package/dist/messages/metadata.js.map +1 -1
  459. package/dist/messages/modifier.cjs +8 -3
  460. package/dist/messages/modifier.cjs.map +1 -1
  461. package/dist/messages/modifier.d.cts +9 -4
  462. package/dist/messages/modifier.d.cts.map +1 -1
  463. package/dist/messages/modifier.d.ts +9 -4
  464. package/dist/messages/modifier.d.ts.map +1 -1
  465. package/dist/messages/modifier.js +7 -2
  466. package/dist/messages/modifier.js.map +1 -1
  467. package/dist/messages/system.cjs +10 -7
  468. package/dist/messages/system.cjs.map +1 -1
  469. package/dist/messages/system.d.cts.map +1 -1
  470. package/dist/messages/system.d.ts.map +1 -1
  471. package/dist/messages/system.js +9 -6
  472. package/dist/messages/system.js.map +1 -1
  473. package/dist/messages/tool.cjs +10 -11
  474. package/dist/messages/tool.cjs.map +1 -1
  475. package/dist/messages/tool.d.cts +1 -1
  476. package/dist/messages/tool.d.cts.map +1 -1
  477. package/dist/messages/tool.d.ts +1 -1
  478. package/dist/messages/tool.d.ts.map +1 -1
  479. package/dist/messages/tool.js +3 -5
  480. package/dist/messages/tool.js.map +1 -1
  481. package/dist/messages/transformers.cjs +18 -25
  482. package/dist/messages/transformers.cjs.map +1 -1
  483. package/dist/messages/transformers.d.cts.map +1 -1
  484. package/dist/messages/transformers.d.ts.map +1 -1
  485. package/dist/messages/transformers.js +9 -16
  486. package/dist/messages/transformers.js.map +1 -1
  487. package/dist/messages/utils.cjs +85 -32
  488. package/dist/messages/utils.cjs.map +1 -1
  489. package/dist/messages/utils.d.cts +25 -8
  490. package/dist/messages/utils.d.cts.map +1 -1
  491. package/dist/messages/utils.d.ts +25 -8
  492. package/dist/messages/utils.d.ts.map +1 -1
  493. package/dist/messages/utils.js +77 -24
  494. package/dist/messages/utils.js.map +1 -1
  495. package/dist/output_parsers/base.cjs +10 -11
  496. package/dist/output_parsers/base.cjs.map +1 -1
  497. package/dist/output_parsers/base.d.cts +0 -1
  498. package/dist/output_parsers/base.d.cts.map +1 -1
  499. package/dist/output_parsers/base.d.ts +0 -4
  500. package/dist/output_parsers/base.d.ts.map +1 -1
  501. package/dist/output_parsers/base.js +6 -7
  502. package/dist/output_parsers/base.js.map +1 -1
  503. package/dist/output_parsers/bytes.cjs +2 -3
  504. package/dist/output_parsers/bytes.cjs.map +1 -1
  505. package/dist/output_parsers/bytes.d.cts +0 -1
  506. package/dist/output_parsers/bytes.d.cts.map +1 -1
  507. package/dist/output_parsers/bytes.d.ts +0 -1
  508. package/dist/output_parsers/bytes.d.ts.map +1 -1
  509. package/dist/output_parsers/bytes.js +1 -2
  510. package/dist/output_parsers/bytes.js.map +1 -1
  511. package/dist/output_parsers/index.cjs +21 -19
  512. package/dist/output_parsers/index.cjs.map +1 -1
  513. package/dist/output_parsers/index.d.cts +2 -1
  514. package/dist/output_parsers/index.d.ts +2 -1
  515. package/dist/output_parsers/index.js +7 -7
  516. package/dist/output_parsers/index.js.map +1 -1
  517. package/dist/output_parsers/json.cjs +16 -7
  518. package/dist/output_parsers/json.cjs.map +1 -1
  519. package/dist/output_parsers/json.d.cts +9 -1
  520. package/dist/output_parsers/json.d.cts.map +1 -1
  521. package/dist/output_parsers/json.d.ts +9 -1
  522. package/dist/output_parsers/json.d.ts.map +1 -1
  523. package/dist/output_parsers/json.js +13 -4
  524. package/dist/output_parsers/json.js.map +1 -1
  525. package/dist/output_parsers/list.cjs +3 -4
  526. package/dist/output_parsers/list.cjs.map +1 -1
  527. package/dist/output_parsers/list.d.cts +0 -1
  528. package/dist/output_parsers/list.d.cts.map +1 -1
  529. package/dist/output_parsers/list.d.ts +0 -2
  530. package/dist/output_parsers/list.d.ts.map +1 -1
  531. package/dist/output_parsers/list.js +1 -2
  532. package/dist/output_parsers/list.js.map +1 -1
  533. package/dist/output_parsers/openai_functions/index.cjs +10 -11
  534. package/dist/output_parsers/openai_functions/index.js +3 -5
  535. package/dist/output_parsers/openai_functions/json_output_functions_parsers.cjs +13 -17
  536. package/dist/output_parsers/openai_functions/json_output_functions_parsers.cjs.map +1 -1
  537. package/dist/output_parsers/openai_functions/json_output_functions_parsers.d.cts +1 -2
  538. package/dist/output_parsers/openai_functions/json_output_functions_parsers.d.cts.map +1 -1
  539. package/dist/output_parsers/openai_functions/json_output_functions_parsers.d.ts +1 -2
  540. package/dist/output_parsers/openai_functions/json_output_functions_parsers.d.ts.map +1 -1
  541. package/dist/output_parsers/openai_functions/json_output_functions_parsers.js +7 -11
  542. package/dist/output_parsers/openai_functions/json_output_functions_parsers.js.map +1 -1
  543. package/dist/output_parsers/openai_tools/index.cjs +10 -11
  544. package/dist/output_parsers/openai_tools/index.d.cts +2 -2
  545. package/dist/output_parsers/openai_tools/index.d.ts +2 -2
  546. package/dist/output_parsers/openai_tools/index.js +3 -5
  547. package/dist/output_parsers/openai_tools/json_output_tools_parsers.cjs +29 -30
  548. package/dist/output_parsers/openai_tools/json_output_tools_parsers.cjs.map +1 -1
  549. package/dist/output_parsers/openai_tools/json_output_tools_parsers.d.cts +10 -8
  550. package/dist/output_parsers/openai_tools/json_output_tools_parsers.d.cts.map +1 -1
  551. package/dist/output_parsers/openai_tools/json_output_tools_parsers.d.ts +10 -8
  552. package/dist/output_parsers/openai_tools/json_output_tools_parsers.d.ts.map +1 -1
  553. package/dist/output_parsers/openai_tools/json_output_tools_parsers.js +23 -24
  554. package/dist/output_parsers/openai_tools/json_output_tools_parsers.js.map +1 -1
  555. package/dist/output_parsers/standard_schema.cjs +42 -0
  556. package/dist/output_parsers/standard_schema.cjs.map +1 -0
  557. package/dist/output_parsers/standard_schema.d.cts +18 -0
  558. package/dist/output_parsers/standard_schema.d.cts.map +1 -0
  559. package/dist/output_parsers/standard_schema.d.ts +18 -0
  560. package/dist/output_parsers/standard_schema.d.ts.map +1 -0
  561. package/dist/output_parsers/standard_schema.js +42 -0
  562. package/dist/output_parsers/standard_schema.js.map +1 -0
  563. package/dist/output_parsers/string.cjs +5 -3
  564. package/dist/output_parsers/string.cjs.map +1 -1
  565. package/dist/output_parsers/string.d.cts +0 -1
  566. package/dist/output_parsers/string.d.cts.map +1 -1
  567. package/dist/output_parsers/string.d.ts +0 -2
  568. package/dist/output_parsers/string.d.ts.map +1 -1
  569. package/dist/output_parsers/string.js +4 -2
  570. package/dist/output_parsers/string.js.map +1 -1
  571. package/dist/output_parsers/structured.cjs +17 -18
  572. package/dist/output_parsers/structured.cjs.map +1 -1
  573. package/dist/output_parsers/structured.d.cts +2 -0
  574. package/dist/output_parsers/structured.d.cts.map +1 -1
  575. package/dist/output_parsers/structured.d.ts +2 -0
  576. package/dist/output_parsers/structured.d.ts.map +1 -1
  577. package/dist/output_parsers/structured.js +12 -13
  578. package/dist/output_parsers/structured.js.map +1 -1
  579. package/dist/output_parsers/transform.cjs +8 -9
  580. package/dist/output_parsers/transform.cjs.map +1 -1
  581. package/dist/output_parsers/transform.d.cts +0 -1
  582. package/dist/output_parsers/transform.d.cts.map +1 -1
  583. package/dist/output_parsers/transform.d.ts +0 -1
  584. package/dist/output_parsers/transform.d.ts.map +1 -1
  585. package/dist/output_parsers/transform.js +1 -2
  586. package/dist/output_parsers/transform.js.map +1 -1
  587. package/dist/output_parsers/xml.cjs +11 -15
  588. package/dist/output_parsers/xml.cjs.map +1 -1
  589. package/dist/output_parsers/xml.d.cts +1 -1
  590. package/dist/output_parsers/xml.d.cts.map +1 -1
  591. package/dist/output_parsers/xml.d.ts +1 -1
  592. package/dist/output_parsers/xml.d.ts.map +1 -1
  593. package/dist/output_parsers/xml.js +7 -11
  594. package/dist/output_parsers/xml.js.map +1 -1
  595. package/dist/outputs.cjs +8 -10
  596. package/dist/outputs.cjs.map +1 -1
  597. package/dist/outputs.d.cts.map +1 -1
  598. package/dist/outputs.d.ts.map +1 -1
  599. package/dist/outputs.js +3 -5
  600. package/dist/outputs.js.map +1 -1
  601. package/dist/prompt_values.cjs +12 -13
  602. package/dist/prompt_values.cjs.map +1 -1
  603. package/dist/prompt_values.d.cts +1 -3
  604. package/dist/prompt_values.d.cts.map +1 -1
  605. package/dist/prompt_values.d.ts +1 -3
  606. package/dist/prompt_values.d.ts.map +1 -1
  607. package/dist/prompt_values.js +3 -5
  608. package/dist/prompt_values.js.map +1 -1
  609. package/dist/prompts/base.cjs +4 -6
  610. package/dist/prompts/base.cjs.map +1 -1
  611. package/dist/prompts/base.d.cts +0 -1
  612. package/dist/prompts/base.d.cts.map +1 -1
  613. package/dist/prompts/base.d.ts +0 -2
  614. package/dist/prompts/base.d.ts.map +1 -1
  615. package/dist/prompts/base.js +3 -5
  616. package/dist/prompts/base.js.map +1 -1
  617. package/dist/prompts/chat.cjs +37 -53
  618. package/dist/prompts/chat.cjs.map +1 -1
  619. package/dist/prompts/chat.d.cts +1 -0
  620. package/dist/prompts/chat.d.cts.map +1 -1
  621. package/dist/prompts/chat.d.ts +1 -1
  622. package/dist/prompts/chat.d.ts.map +1 -1
  623. package/dist/prompts/chat.js +23 -39
  624. package/dist/prompts/chat.js.map +1 -1
  625. package/dist/prompts/dict.cjs +3 -4
  626. package/dist/prompts/dict.cjs.map +1 -1
  627. package/dist/prompts/dict.d.cts.map +1 -1
  628. package/dist/prompts/dict.d.ts.map +1 -1
  629. package/dist/prompts/dict.js +1 -2
  630. package/dist/prompts/dict.js.map +1 -1
  631. package/dist/prompts/few_shot.cjs +14 -20
  632. package/dist/prompts/few_shot.cjs.map +1 -1
  633. package/dist/prompts/few_shot.d.cts.map +1 -1
  634. package/dist/prompts/few_shot.d.ts +0 -1
  635. package/dist/prompts/few_shot.d.ts.map +1 -1
  636. package/dist/prompts/few_shot.js +10 -16
  637. package/dist/prompts/few_shot.js.map +1 -1
  638. package/dist/prompts/image.cjs +7 -10
  639. package/dist/prompts/image.cjs.map +1 -1
  640. package/dist/prompts/image.d.cts +0 -1
  641. package/dist/prompts/image.d.cts.map +1 -1
  642. package/dist/prompts/image.d.ts +0 -2
  643. package/dist/prompts/image.d.ts.map +1 -1
  644. package/dist/prompts/image.js +4 -7
  645. package/dist/prompts/image.js.map +1 -1
  646. package/dist/prompts/index.cjs +19 -20
  647. package/dist/prompts/index.js +3 -5
  648. package/dist/prompts/pipeline.cjs +3 -4
  649. package/dist/prompts/pipeline.cjs.map +1 -1
  650. package/dist/prompts/pipeline.d.cts +0 -1
  651. package/dist/prompts/pipeline.d.cts.map +1 -1
  652. package/dist/prompts/pipeline.d.ts +0 -1
  653. package/dist/prompts/pipeline.d.ts.map +1 -1
  654. package/dist/prompts/pipeline.js +1 -2
  655. package/dist/prompts/pipeline.js.map +1 -1
  656. package/dist/prompts/prompt.cjs +13 -17
  657. package/dist/prompts/prompt.cjs.map +1 -1
  658. package/dist/prompts/prompt.d.cts +1 -2
  659. package/dist/prompts/prompt.d.cts.map +1 -1
  660. package/dist/prompts/prompt.d.ts +1 -2
  661. package/dist/prompts/prompt.d.ts.map +1 -1
  662. package/dist/prompts/prompt.js +11 -15
  663. package/dist/prompts/prompt.js.map +1 -1
  664. package/dist/prompts/serde.d.cts +0 -1
  665. package/dist/prompts/serde.d.cts.map +1 -1
  666. package/dist/prompts/serde.d.ts +0 -2
  667. package/dist/prompts/serde.d.ts.map +1 -1
  668. package/dist/prompts/string.cjs +4 -6
  669. package/dist/prompts/string.cjs.map +1 -1
  670. package/dist/prompts/string.d.cts +0 -1
  671. package/dist/prompts/string.d.cts.map +1 -1
  672. package/dist/prompts/string.d.ts +0 -1
  673. package/dist/prompts/string.d.ts.map +1 -1
  674. package/dist/prompts/string.js +2 -4
  675. package/dist/prompts/string.js.map +1 -1
  676. package/dist/prompts/structured.cjs +3 -4
  677. package/dist/prompts/structured.cjs.map +1 -1
  678. package/dist/prompts/structured.d.cts +0 -1
  679. package/dist/prompts/structured.d.cts.map +1 -1
  680. package/dist/prompts/structured.d.ts +0 -1
  681. package/dist/prompts/structured.d.ts.map +1 -1
  682. package/dist/prompts/structured.js +1 -2
  683. package/dist/prompts/structured.js.map +1 -1
  684. package/dist/prompts/template.cjs +12 -23
  685. package/dist/prompts/template.cjs.map +1 -1
  686. package/dist/prompts/template.d.cts +0 -2
  687. package/dist/prompts/template.d.cts.map +1 -1
  688. package/dist/prompts/template.d.ts +0 -2
  689. package/dist/prompts/template.d.ts.map +1 -1
  690. package/dist/prompts/template.js +8 -20
  691. package/dist/prompts/template.js.map +1 -1
  692. package/dist/retrievers/document_compressors/index.cjs +8 -10
  693. package/dist/retrievers/document_compressors/index.cjs.map +1 -1
  694. package/dist/retrievers/document_compressors/index.d.cts +0 -1
  695. package/dist/retrievers/document_compressors/index.d.cts.map +1 -1
  696. package/dist/retrievers/document_compressors/index.d.ts +0 -1
  697. package/dist/retrievers/document_compressors/index.d.ts.map +1 -1
  698. package/dist/retrievers/document_compressors/index.js +3 -5
  699. package/dist/retrievers/document_compressors/index.js.map +1 -1
  700. package/dist/retrievers/index.cjs +13 -15
  701. package/dist/retrievers/index.cjs.map +1 -1
  702. package/dist/retrievers/index.d.cts +0 -1
  703. package/dist/retrievers/index.d.cts.map +1 -1
  704. package/dist/retrievers/index.d.ts +0 -2
  705. package/dist/retrievers/index.d.ts.map +1 -1
  706. package/dist/retrievers/index.js +4 -7
  707. package/dist/retrievers/index.js.map +1 -1
  708. package/dist/runnables/base.cjs +76 -100
  709. package/dist/runnables/base.cjs.map +1 -1
  710. package/dist/runnables/base.d.cts +46 -4
  711. package/dist/runnables/base.d.cts.map +1 -1
  712. package/dist/runnables/base.d.ts +46 -4
  713. package/dist/runnables/base.d.ts.map +1 -1
  714. package/dist/runnables/base.js +58 -82
  715. package/dist/runnables/base.js.map +1 -1
  716. package/dist/runnables/branch.cjs +8 -13
  717. package/dist/runnables/branch.cjs.map +1 -1
  718. package/dist/runnables/branch.d.cts +0 -1
  719. package/dist/runnables/branch.d.cts.map +1 -1
  720. package/dist/runnables/branch.d.ts +0 -2
  721. package/dist/runnables/branch.d.ts.map +1 -1
  722. package/dist/runnables/branch.js +5 -10
  723. package/dist/runnables/branch.js.map +1 -1
  724. package/dist/runnables/config.cjs +21 -16
  725. package/dist/runnables/config.cjs.map +1 -1
  726. package/dist/runnables/config.d.cts.map +1 -1
  727. package/dist/runnables/config.d.ts.map +1 -1
  728. package/dist/runnables/config.js +19 -13
  729. package/dist/runnables/config.js.map +1 -1
  730. package/dist/runnables/graph.cjs +19 -22
  731. package/dist/runnables/graph.cjs.map +1 -1
  732. package/dist/runnables/graph.d.cts.map +1 -1
  733. package/dist/runnables/graph.d.ts.map +1 -1
  734. package/dist/runnables/graph.js +6 -10
  735. package/dist/runnables/graph.js.map +1 -1
  736. package/dist/runnables/graph_mermaid.cjs +8 -12
  737. package/dist/runnables/graph_mermaid.cjs.map +1 -1
  738. package/dist/runnables/graph_mermaid.js +7 -11
  739. package/dist/runnables/graph_mermaid.js.map +1 -1
  740. package/dist/runnables/history.cjs +15 -17
  741. package/dist/runnables/history.cjs.map +1 -1
  742. package/dist/runnables/history.d.cts +5 -4
  743. package/dist/runnables/history.d.cts.map +1 -1
  744. package/dist/runnables/history.d.ts +5 -6
  745. package/dist/runnables/history.d.ts.map +1 -1
  746. package/dist/runnables/history.js +10 -12
  747. package/dist/runnables/history.js.map +1 -1
  748. package/dist/runnables/index.cjs +16 -17
  749. package/dist/runnables/index.js +3 -5
  750. package/dist/runnables/iter.cjs +21 -5
  751. package/dist/runnables/iter.cjs.map +1 -1
  752. package/dist/runnables/iter.js +17 -3
  753. package/dist/runnables/iter.js.map +1 -1
  754. package/dist/runnables/passthrough.cjs +5 -6
  755. package/dist/runnables/passthrough.cjs.map +1 -1
  756. package/dist/runnables/passthrough.d.cts.map +1 -1
  757. package/dist/runnables/passthrough.d.ts +0 -1
  758. package/dist/runnables/passthrough.d.ts.map +1 -1
  759. package/dist/runnables/passthrough.js +2 -3
  760. package/dist/runnables/passthrough.js.map +1 -1
  761. package/dist/runnables/router.cjs +5 -7
  762. package/dist/runnables/router.cjs.map +1 -1
  763. package/dist/runnables/router.d.cts.map +1 -1
  764. package/dist/runnables/router.d.ts +0 -1
  765. package/dist/runnables/router.d.ts.map +1 -1
  766. package/dist/runnables/router.js +3 -5
  767. package/dist/runnables/router.js.map +1 -1
  768. package/dist/runnables/types.d.cts +1 -2
  769. package/dist/runnables/types.d.cts.map +1 -1
  770. package/dist/runnables/types.d.ts +1 -2
  771. package/dist/runnables/types.d.ts.map +1 -1
  772. package/dist/runnables/utils.cjs +2 -4
  773. package/dist/runnables/utils.cjs.map +1 -1
  774. package/dist/runnables/utils.js +2 -3
  775. package/dist/runnables/utils.js.map +1 -1
  776. package/dist/runnables/wrappers.cjs +2 -3
  777. package/dist/runnables/wrappers.cjs.map +1 -1
  778. package/dist/runnables/wrappers.js +1 -2
  779. package/dist/runnables/wrappers.js.map +1 -1
  780. package/dist/singletons/async_local_storage/context.cjs +6 -8
  781. package/dist/singletons/async_local_storage/context.cjs.map +1 -1
  782. package/dist/singletons/async_local_storage/context.d.cts +0 -1
  783. package/dist/singletons/async_local_storage/context.d.cts.map +1 -1
  784. package/dist/singletons/async_local_storage/context.d.ts +0 -1
  785. package/dist/singletons/async_local_storage/context.d.ts.map +1 -1
  786. package/dist/singletons/async_local_storage/context.js +3 -5
  787. package/dist/singletons/async_local_storage/context.js.map +1 -1
  788. package/dist/singletons/async_local_storage/globals.cjs +1 -2
  789. package/dist/singletons/async_local_storage/globals.cjs.map +1 -1
  790. package/dist/singletons/async_local_storage/globals.d.cts.map +1 -1
  791. package/dist/singletons/async_local_storage/globals.d.ts.map +1 -1
  792. package/dist/singletons/async_local_storage/globals.js +1 -1
  793. package/dist/singletons/async_local_storage/globals.js.map +1 -1
  794. package/dist/singletons/async_local_storage/index.cjs +8 -14
  795. package/dist/singletons/async_local_storage/index.cjs.map +1 -1
  796. package/dist/singletons/async_local_storage/index.d.cts.map +1 -1
  797. package/dist/singletons/async_local_storage/index.d.ts.map +1 -1
  798. package/dist/singletons/async_local_storage/index.js +4 -10
  799. package/dist/singletons/async_local_storage/index.js.map +1 -1
  800. package/dist/singletons/callbacks.cjs +7 -8
  801. package/dist/singletons/callbacks.cjs.map +1 -1
  802. package/dist/singletons/callbacks.d.cts +0 -1
  803. package/dist/singletons/callbacks.d.cts.map +1 -1
  804. package/dist/singletons/callbacks.d.ts +0 -1
  805. package/dist/singletons/callbacks.d.ts.map +1 -1
  806. package/dist/singletons/callbacks.js +2 -4
  807. package/dist/singletons/callbacks.js.map +1 -1
  808. package/dist/singletons/index.cjs +11 -12
  809. package/dist/singletons/index.js +3 -5
  810. package/dist/singletons/tracer.cjs +5 -9
  811. package/dist/singletons/tracer.cjs.map +1 -1
  812. package/dist/singletons/tracer.js +2 -6
  813. package/dist/singletons/tracer.js.map +1 -1
  814. package/dist/stores.cjs +10 -11
  815. package/dist/stores.cjs.map +1 -1
  816. package/dist/stores.d.cts +0 -1
  817. package/dist/stores.d.cts.map +1 -1
  818. package/dist/stores.d.ts +0 -1
  819. package/dist/stores.d.ts.map +1 -1
  820. package/dist/stores.js +3 -5
  821. package/dist/stores.js.map +1 -1
  822. package/dist/structured_query/base.cjs +6 -7
  823. package/dist/structured_query/base.cjs.map +1 -1
  824. package/dist/structured_query/base.d.cts +0 -1
  825. package/dist/structured_query/base.d.cts.map +1 -1
  826. package/dist/structured_query/base.d.ts +0 -1
  827. package/dist/structured_query/base.d.ts.map +1 -1
  828. package/dist/structured_query/base.js +4 -5
  829. package/dist/structured_query/base.js.map +1 -1
  830. package/dist/structured_query/functional.cjs +7 -8
  831. package/dist/structured_query/functional.cjs.map +1 -1
  832. package/dist/structured_query/functional.d.cts +0 -1
  833. package/dist/structured_query/functional.d.cts.map +1 -1
  834. package/dist/structured_query/functional.d.ts +0 -1
  835. package/dist/structured_query/functional.d.ts.map +1 -1
  836. package/dist/structured_query/functional.js +4 -5
  837. package/dist/structured_query/functional.js.map +1 -1
  838. package/dist/structured_query/index.cjs +13 -14
  839. package/dist/structured_query/index.js +3 -5
  840. package/dist/structured_query/ir.cjs +1 -2
  841. package/dist/structured_query/ir.cjs.map +1 -1
  842. package/dist/structured_query/ir.d.cts +0 -1
  843. package/dist/structured_query/ir.d.cts.map +1 -1
  844. package/dist/structured_query/ir.d.ts +0 -1
  845. package/dist/structured_query/ir.d.ts.map +1 -1
  846. package/dist/structured_query/ir.js +1 -1
  847. package/dist/structured_query/ir.js.map +1 -1
  848. package/dist/structured_query/utils.cjs +1 -2
  849. package/dist/structured_query/utils.cjs.map +1 -1
  850. package/dist/structured_query/utils.d.cts.map +1 -1
  851. package/dist/structured_query/utils.d.ts.map +1 -1
  852. package/dist/structured_query/utils.js +1 -1
  853. package/dist/structured_query/utils.js.map +1 -1
  854. package/dist/testing/fake_model_builder.cjs +226 -0
  855. package/dist/testing/fake_model_builder.cjs.map +1 -0
  856. package/dist/testing/fake_model_builder.d.cts +137 -0
  857. package/dist/testing/fake_model_builder.d.cts.map +1 -0
  858. package/dist/testing/fake_model_builder.d.ts +137 -0
  859. package/dist/testing/fake_model_builder.d.ts.map +1 -0
  860. package/dist/testing/fake_model_builder.js +225 -0
  861. package/dist/testing/fake_model_builder.js.map +1 -0
  862. package/dist/testing/index.cjs +58 -0
  863. package/dist/testing/index.cjs.map +1 -0
  864. package/dist/testing/index.d.cts +5 -0
  865. package/dist/testing/index.d.ts +5 -0
  866. package/dist/testing/index.js +32 -0
  867. package/dist/testing/index.js.map +1 -0
  868. package/dist/testing/matchers.cjs +214 -0
  869. package/dist/testing/matchers.cjs.map +1 -0
  870. package/dist/testing/matchers.d.cts +98 -0
  871. package/dist/testing/matchers.d.cts.map +1 -0
  872. package/dist/testing/matchers.d.ts +98 -0
  873. package/dist/testing/matchers.d.ts.map +1 -0
  874. package/dist/testing/matchers.js +204 -0
  875. package/dist/testing/matchers.js.map +1 -0
  876. package/dist/tools/index.cjs +51 -36
  877. package/dist/tools/index.cjs.map +1 -1
  878. package/dist/tools/index.d.cts +31 -24
  879. package/dist/tools/index.d.cts.map +1 -1
  880. package/dist/tools/index.d.ts +31 -26
  881. package/dist/tools/index.d.ts.map +1 -1
  882. package/dist/tools/index.js +32 -18
  883. package/dist/tools/index.js.map +1 -1
  884. package/dist/tools/types.cjs +3 -4
  885. package/dist/tools/types.cjs.map +1 -1
  886. package/dist/tools/types.d.cts +26 -11
  887. package/dist/tools/types.d.cts.map +1 -1
  888. package/dist/tools/types.d.ts +26 -13
  889. package/dist/tools/types.d.ts.map +1 -1
  890. package/dist/tools/types.js +1 -2
  891. package/dist/tools/types.js.map +1 -1
  892. package/dist/tools/utils.cjs +1 -2
  893. package/dist/tools/utils.cjs.map +1 -1
  894. package/dist/tools/utils.d.cts +0 -1
  895. package/dist/tools/utils.d.cts.map +1 -1
  896. package/dist/tools/utils.d.ts +0 -1
  897. package/dist/tools/utils.d.ts.map +1 -1
  898. package/dist/tools/utils.js +1 -1
  899. package/dist/tools/utils.js.map +1 -1
  900. package/dist/tracers/base.cjs +20 -18
  901. package/dist/tracers/base.cjs.map +1 -1
  902. package/dist/tracers/base.d.cts +92 -98
  903. package/dist/tracers/base.d.cts.map +1 -1
  904. package/dist/tracers/base.d.ts +92 -98
  905. package/dist/tracers/base.d.ts.map +1 -1
  906. package/dist/tracers/base.js +11 -10
  907. package/dist/tracers/base.js.map +1 -1
  908. package/dist/tracers/console.cjs +44 -19
  909. package/dist/tracers/console.cjs.map +1 -1
  910. package/dist/tracers/console.d.cts +0 -1
  911. package/dist/tracers/console.d.cts.map +1 -1
  912. package/dist/tracers/console.d.ts +0 -1
  913. package/dist/tracers/console.d.ts.map +1 -1
  914. package/dist/tracers/console.js +35 -11
  915. package/dist/tracers/console.js.map +1 -1
  916. package/dist/tracers/event_stream.cjs +24 -10
  917. package/dist/tracers/event_stream.cjs.map +1 -1
  918. package/dist/tracers/event_stream.d.cts +7 -6
  919. package/dist/tracers/event_stream.d.cts.map +1 -1
  920. package/dist/tracers/event_stream.d.ts +7 -7
  921. package/dist/tracers/event_stream.d.ts.map +1 -1
  922. package/dist/tracers/event_stream.js +20 -6
  923. package/dist/tracers/event_stream.js.map +1 -1
  924. package/dist/tracers/log_stream.cjs +15 -16
  925. package/dist/tracers/log_stream.cjs.map +1 -1
  926. package/dist/tracers/log_stream.d.cts +14 -31
  927. package/dist/tracers/log_stream.d.cts.map +1 -1
  928. package/dist/tracers/log_stream.d.ts +14 -31
  929. package/dist/tracers/log_stream.d.ts.map +1 -1
  930. package/dist/tracers/log_stream.js +5 -7
  931. package/dist/tracers/log_stream.js.map +1 -1
  932. package/dist/tracers/root_listener.cjs +2 -3
  933. package/dist/tracers/root_listener.cjs.map +1 -1
  934. package/dist/tracers/root_listener.js +1 -2
  935. package/dist/tracers/root_listener.js.map +1 -1
  936. package/dist/tracers/run_collector.cjs +10 -11
  937. package/dist/tracers/run_collector.cjs.map +1 -1
  938. package/dist/tracers/run_collector.d.cts +0 -1
  939. package/dist/tracers/run_collector.d.cts.map +1 -1
  940. package/dist/tracers/run_collector.d.ts +0 -1
  941. package/dist/tracers/run_collector.d.ts.map +1 -1
  942. package/dist/tracers/run_collector.js +3 -5
  943. package/dist/tracers/run_collector.js.map +1 -1
  944. package/dist/tracers/tracer_langchain.cjs +112 -20
  945. package/dist/tracers/tracer_langchain.cjs.map +1 -1
  946. package/dist/tracers/tracer_langchain.d.cts +28 -2
  947. package/dist/tracers/tracer_langchain.d.cts.map +1 -1
  948. package/dist/tracers/tracer_langchain.d.ts +28 -2
  949. package/dist/tracers/tracer_langchain.d.ts.map +1 -1
  950. package/dist/tracers/tracer_langchain.js +102 -12
  951. package/dist/tracers/tracer_langchain.js.map +1 -1
  952. package/dist/types/_internal.d.cts.map +1 -1
  953. package/dist/types/_internal.d.ts.map +1 -1
  954. package/dist/types/stream.cjs +8 -8
  955. package/dist/types/stream.js +3 -2
  956. package/dist/types/type-utils.d.cts +2 -1
  957. package/dist/types/type-utils.d.cts.map +1 -1
  958. package/dist/types/type-utils.d.ts +2 -1
  959. package/dist/types/type-utils.d.ts.map +1 -1
  960. package/dist/utils/async_caller.cjs +28 -20
  961. package/dist/utils/async_caller.cjs.map +1 -1
  962. package/dist/utils/async_caller.d.cts.map +1 -1
  963. package/dist/utils/async_caller.d.ts.map +1 -1
  964. package/dist/utils/async_caller.js +18 -12
  965. package/dist/utils/async_caller.js.map +1 -1
  966. package/dist/utils/callbacks.cjs +4 -6
  967. package/dist/utils/callbacks.cjs.map +1 -1
  968. package/dist/utils/callbacks.js +3 -5
  969. package/dist/utils/callbacks.js.map +1 -1
  970. package/dist/utils/chunk_array.cjs +9 -12
  971. package/dist/utils/chunk_array.cjs.map +1 -1
  972. package/dist/utils/chunk_array.d.cts.map +1 -1
  973. package/dist/utils/chunk_array.d.ts.map +1 -1
  974. package/dist/utils/chunk_array.js +4 -7
  975. package/dist/utils/chunk_array.js.map +1 -1
  976. package/dist/utils/context.cjs +104 -0
  977. package/dist/utils/context.cjs.map +1 -0
  978. package/dist/utils/context.d.cts +44 -0
  979. package/dist/utils/context.d.cts.map +1 -0
  980. package/dist/utils/context.d.ts +44 -0
  981. package/dist/utils/context.d.ts.map +1 -0
  982. package/dist/utils/context.js +98 -0
  983. package/dist/utils/context.js.map +1 -0
  984. package/dist/utils/env.cjs +14 -19
  985. package/dist/utils/env.cjs.map +1 -1
  986. package/dist/utils/env.d.cts.map +1 -1
  987. package/dist/utils/env.d.ts.map +1 -1
  988. package/dist/utils/env.js +9 -14
  989. package/dist/utils/env.js.map +1 -1
  990. package/dist/utils/event_source_parse.cjs +15 -23
  991. package/dist/utils/event_source_parse.cjs.map +1 -1
  992. package/dist/utils/event_source_parse.d.cts +2 -2
  993. package/dist/utils/event_source_parse.d.cts.map +1 -1
  994. package/dist/utils/event_source_parse.d.ts +2 -2
  995. package/dist/utils/event_source_parse.d.ts.map +1 -1
  996. package/dist/utils/event_source_parse.js +8 -17
  997. package/dist/utils/event_source_parse.js.map +1 -1
  998. package/dist/utils/fast-json-patch/index.cjs +5 -13
  999. package/dist/utils/fast-json-patch/index.cjs.map +1 -1
  1000. package/dist/utils/fast-json-patch/index.js +6 -13
  1001. package/dist/utils/fast-json-patch/index.js.map +1 -1
  1002. package/dist/utils/fast-json-patch/src/core.cjs +16 -28
  1003. package/dist/utils/fast-json-patch/src/core.cjs.map +1 -1
  1004. package/dist/utils/fast-json-patch/src/core.d.cts +0 -1
  1005. package/dist/utils/fast-json-patch/src/core.d.cts.map +1 -1
  1006. package/dist/utils/fast-json-patch/src/core.d.ts +0 -1
  1007. package/dist/utils/fast-json-patch/src/core.d.ts.map +1 -1
  1008. package/dist/utils/fast-json-patch/src/core.js +10 -22
  1009. package/dist/utils/fast-json-patch/src/core.js.map +1 -1
  1010. package/dist/utils/fast-json-patch/src/duplex.cjs +8 -7
  1011. package/dist/utils/fast-json-patch/src/duplex.cjs.map +1 -1
  1012. package/dist/utils/fast-json-patch/src/duplex.d.cts +0 -1
  1013. package/dist/utils/fast-json-patch/src/duplex.d.cts.map +1 -1
  1014. package/dist/utils/fast-json-patch/src/duplex.d.ts +0 -1
  1015. package/dist/utils/fast-json-patch/src/duplex.d.ts.map +1 -1
  1016. package/dist/utils/fast-json-patch/src/duplex.js +6 -5
  1017. package/dist/utils/fast-json-patch/src/duplex.js.map +1 -1
  1018. package/dist/utils/fast-json-patch/src/helpers.cjs +5 -6
  1019. package/dist/utils/fast-json-patch/src/helpers.cjs.map +1 -1
  1020. package/dist/utils/fast-json-patch/src/helpers.js +5 -5
  1021. package/dist/utils/fast-json-patch/src/helpers.js.map +1 -1
  1022. package/dist/utils/format.cjs +8 -8
  1023. package/dist/utils/format.d.cts.map +1 -1
  1024. package/dist/utils/format.d.ts.map +1 -1
  1025. package/dist/utils/format.js +3 -2
  1026. package/dist/utils/function_calling.cjs +11 -12
  1027. package/dist/utils/function_calling.cjs.map +1 -1
  1028. package/dist/utils/function_calling.d.cts +0 -1
  1029. package/dist/utils/function_calling.d.cts.map +1 -1
  1030. package/dist/utils/function_calling.d.ts +0 -1
  1031. package/dist/utils/function_calling.d.ts.map +1 -1
  1032. package/dist/utils/function_calling.js +3 -5
  1033. package/dist/utils/function_calling.js.map +1 -1
  1034. package/dist/utils/hash.cjs +10 -11
  1035. package/dist/utils/hash.d.cts +0 -1
  1036. package/dist/utils/hash.d.cts.map +1 -1
  1037. package/dist/utils/hash.d.ts +0 -1
  1038. package/dist/utils/hash.d.ts.map +1 -1
  1039. package/dist/utils/hash.js +3 -5
  1040. package/dist/utils/is-network-error/index.cjs +3 -5
  1041. package/dist/utils/is-network-error/index.cjs.map +1 -1
  1042. package/dist/utils/is-network-error/index.js +3 -4
  1043. package/dist/utils/is-network-error/index.js.map +1 -1
  1044. package/dist/utils/js-sha256/hash.cjs +42 -37
  1045. package/dist/utils/js-sha256/hash.cjs.map +1 -1
  1046. package/dist/utils/js-sha256/hash.d.cts.map +1 -1
  1047. package/dist/utils/js-sha256/hash.d.ts.map +1 -1
  1048. package/dist/utils/js-sha256/hash.js +42 -36
  1049. package/dist/utils/js-sha256/hash.js.map +1 -1
  1050. package/dist/utils/json.cjs +1 -2
  1051. package/dist/utils/json.cjs.map +1 -1
  1052. package/dist/utils/json.d.cts.map +1 -1
  1053. package/dist/utils/json.d.ts.map +1 -1
  1054. package/dist/utils/json.js +1 -1
  1055. package/dist/utils/json.js.map +1 -1
  1056. package/dist/utils/json_patch.cjs +12 -13
  1057. package/dist/utils/json_patch.js +3 -5
  1058. package/dist/utils/json_schema.cjs +60 -37
  1059. package/dist/utils/json_schema.cjs.map +1 -1
  1060. package/dist/utils/json_schema.d.cts +4 -2
  1061. package/dist/utils/json_schema.d.cts.map +1 -1
  1062. package/dist/utils/json_schema.d.ts +4 -3
  1063. package/dist/utils/json_schema.d.ts.map +1 -1
  1064. package/dist/utils/json_schema.js +36 -14
  1065. package/dist/utils/json_schema.js.map +1 -1
  1066. package/dist/utils/math.cjs +16 -18
  1067. package/dist/utils/math.cjs.map +1 -1
  1068. package/dist/utils/math.d.cts.map +1 -1
  1069. package/dist/utils/math.d.ts.map +1 -1
  1070. package/dist/utils/math.js +9 -12
  1071. package/dist/utils/math.js.map +1 -1
  1072. package/dist/utils/ml-distance/distances.cjs +1 -2
  1073. package/dist/utils/ml-distance/distances.cjs.map +1 -1
  1074. package/dist/utils/ml-distance/distances.js +1 -1
  1075. package/dist/utils/ml-distance/distances.js.map +1 -1
  1076. package/dist/utils/ml-distance/similarities.cjs +1 -2
  1077. package/dist/utils/ml-distance/similarities.cjs.map +1 -1
  1078. package/dist/utils/ml-distance/similarities.d.cts.map +1 -1
  1079. package/dist/utils/ml-distance/similarities.d.ts.map +1 -1
  1080. package/dist/utils/ml-distance/similarities.js +1 -1
  1081. package/dist/utils/ml-distance/similarities.js.map +1 -1
  1082. package/dist/utils/ml-distance-euclidean/euclidean.cjs +1 -2
  1083. package/dist/utils/ml-distance-euclidean/euclidean.cjs.map +1 -1
  1084. package/dist/utils/ml-distance-euclidean/euclidean.js +1 -1
  1085. package/dist/utils/ml-distance-euclidean/euclidean.js.map +1 -1
  1086. package/dist/utils/namespace.cjs +62 -0
  1087. package/dist/utils/namespace.cjs.map +1 -0
  1088. package/dist/utils/namespace.d.cts +73 -0
  1089. package/dist/utils/namespace.d.cts.map +1 -0
  1090. package/dist/utils/namespace.d.ts +73 -0
  1091. package/dist/utils/namespace.d.ts.map +1 -0
  1092. package/dist/utils/namespace.js +62 -0
  1093. package/dist/utils/namespace.js.map +1 -0
  1094. package/dist/utils/p-retry/index.cjs +4 -5
  1095. package/dist/utils/p-retry/index.cjs.map +1 -1
  1096. package/dist/utils/p-retry/index.js +3 -4
  1097. package/dist/utils/p-retry/index.js.map +1 -1
  1098. package/dist/utils/sax-js/sax.cjs +29 -36
  1099. package/dist/utils/sax-js/sax.cjs.map +1 -1
  1100. package/dist/utils/sax-js/sax.js +29 -35
  1101. package/dist/utils/sax-js/sax.js.map +1 -1
  1102. package/dist/utils/signal.cjs +3 -4
  1103. package/dist/utils/signal.cjs.map +1 -1
  1104. package/dist/utils/signal.d.cts.map +1 -1
  1105. package/dist/utils/signal.d.ts.map +1 -1
  1106. package/dist/utils/signal.js +3 -3
  1107. package/dist/utils/signal.js.map +1 -1
  1108. package/dist/utils/ssrf.cjs +267 -0
  1109. package/dist/utils/ssrf.cjs.map +1 -0
  1110. package/dist/utils/ssrf.d.cts +52 -0
  1111. package/dist/utils/ssrf.d.cts.map +1 -0
  1112. package/dist/utils/ssrf.d.ts +52 -0
  1113. package/dist/utils/ssrf.d.ts.map +1 -0
  1114. package/dist/utils/ssrf.js +256 -0
  1115. package/dist/utils/ssrf.js.map +1 -0
  1116. package/dist/utils/standard_schema.cjs +41 -0
  1117. package/dist/utils/standard_schema.cjs.map +1 -0
  1118. package/dist/utils/standard_schema.d.cts +27 -0
  1119. package/dist/utils/standard_schema.d.cts.map +1 -0
  1120. package/dist/utils/standard_schema.d.ts +27 -0
  1121. package/dist/utils/standard_schema.d.ts.map +1 -0
  1122. package/dist/utils/standard_schema.js +33 -0
  1123. package/dist/utils/standard_schema.js.map +1 -0
  1124. package/dist/utils/stream.cjs +15 -16
  1125. package/dist/utils/stream.cjs.map +1 -1
  1126. package/dist/utils/stream.d.cts.map +1 -1
  1127. package/dist/utils/stream.d.ts.map +1 -1
  1128. package/dist/utils/stream.js +5 -7
  1129. package/dist/utils/stream.js.map +1 -1
  1130. package/dist/utils/testing/chat_models.cjs +10 -13
  1131. package/dist/utils/testing/chat_models.cjs.map +1 -1
  1132. package/dist/utils/testing/chat_models.d.cts.map +1 -1
  1133. package/dist/utils/testing/chat_models.d.ts +0 -1
  1134. package/dist/utils/testing/chat_models.d.ts.map +1 -1
  1135. package/dist/utils/testing/chat_models.js +4 -7
  1136. package/dist/utils/testing/chat_models.js.map +1 -1
  1137. package/dist/utils/testing/embeddings.cjs +4 -7
  1138. package/dist/utils/testing/embeddings.cjs.map +1 -1
  1139. package/dist/utils/testing/embeddings.d.cts +0 -1
  1140. package/dist/utils/testing/embeddings.d.cts.map +1 -1
  1141. package/dist/utils/testing/embeddings.d.ts +0 -1
  1142. package/dist/utils/testing/embeddings.d.ts.map +1 -1
  1143. package/dist/utils/testing/embeddings.js +3 -6
  1144. package/dist/utils/testing/embeddings.js.map +1 -1
  1145. package/dist/utils/testing/index.cjs +36 -21
  1146. package/dist/utils/testing/index.cjs.map +1 -1
  1147. package/dist/utils/testing/index.d.cts +3 -1
  1148. package/dist/utils/testing/index.d.ts +3 -1
  1149. package/dist/utils/testing/index.js +14 -7
  1150. package/dist/utils/testing/index.js.map +1 -1
  1151. package/dist/utils/testing/llms.cjs +2 -3
  1152. package/dist/utils/testing/llms.cjs.map +1 -1
  1153. package/dist/utils/testing/llms.d.cts.map +1 -1
  1154. package/dist/utils/testing/llms.d.ts.map +1 -1
  1155. package/dist/utils/testing/llms.js +1 -2
  1156. package/dist/utils/testing/llms.js.map +1 -1
  1157. package/dist/utils/testing/message_history.cjs +6 -7
  1158. package/dist/utils/testing/message_history.cjs.map +1 -1
  1159. package/dist/utils/testing/message_history.d.cts.map +1 -1
  1160. package/dist/utils/testing/message_history.d.ts +0 -1
  1161. package/dist/utils/testing/message_history.d.ts.map +1 -1
  1162. package/dist/utils/testing/message_history.js +2 -3
  1163. package/dist/utils/testing/message_history.js.map +1 -1
  1164. package/dist/utils/testing/openai_stream_fixtures.cjs +160 -0
  1165. package/dist/utils/testing/openai_stream_fixtures.cjs.map +1 -0
  1166. package/dist/utils/testing/openai_stream_fixtures.d.cts +12 -0
  1167. package/dist/utils/testing/openai_stream_fixtures.d.cts.map +1 -0
  1168. package/dist/utils/testing/openai_stream_fixtures.d.ts +12 -0
  1169. package/dist/utils/testing/openai_stream_fixtures.d.ts.map +1 -0
  1170. package/dist/utils/testing/openai_stream_fixtures.js +155 -0
  1171. package/dist/utils/testing/openai_stream_fixtures.js.map +1 -0
  1172. package/dist/utils/testing/output_parsers.cjs +2 -3
  1173. package/dist/utils/testing/output_parsers.cjs.map +1 -1
  1174. package/dist/utils/testing/output_parsers.d.cts +0 -1
  1175. package/dist/utils/testing/output_parsers.d.cts.map +1 -1
  1176. package/dist/utils/testing/output_parsers.d.ts +0 -1
  1177. package/dist/utils/testing/output_parsers.d.ts.map +1 -1
  1178. package/dist/utils/testing/output_parsers.js +1 -2
  1179. package/dist/utils/testing/output_parsers.js.map +1 -1
  1180. package/dist/utils/testing/retrievers.cjs +3 -4
  1181. package/dist/utils/testing/retrievers.cjs.map +1 -1
  1182. package/dist/utils/testing/retrievers.d.cts.map +1 -1
  1183. package/dist/utils/testing/retrievers.d.ts.map +1 -1
  1184. package/dist/utils/testing/retrievers.js +2 -3
  1185. package/dist/utils/testing/retrievers.js.map +1 -1
  1186. package/dist/utils/testing/runnables.cjs +2 -3
  1187. package/dist/utils/testing/runnables.cjs.map +1 -1
  1188. package/dist/utils/testing/runnables.d.cts.map +1 -1
  1189. package/dist/utils/testing/runnables.d.ts.map +1 -1
  1190. package/dist/utils/testing/runnables.js +1 -2
  1191. package/dist/utils/testing/runnables.js.map +1 -1
  1192. package/dist/utils/testing/stream.cjs +136 -0
  1193. package/dist/utils/testing/stream.cjs.map +1 -0
  1194. package/dist/utils/testing/stream.d.cts +96 -0
  1195. package/dist/utils/testing/stream.d.cts.map +1 -0
  1196. package/dist/utils/testing/stream.d.ts +96 -0
  1197. package/dist/utils/testing/stream.d.ts.map +1 -0
  1198. package/dist/utils/testing/stream.js +136 -0
  1199. package/dist/utils/testing/stream.js.map +1 -0
  1200. package/dist/utils/testing/tools.cjs +2 -3
  1201. package/dist/utils/testing/tools.cjs.map +1 -1
  1202. package/dist/utils/testing/tools.d.cts.map +1 -1
  1203. package/dist/utils/testing/tools.d.ts.map +1 -1
  1204. package/dist/utils/testing/tools.js +1 -2
  1205. package/dist/utils/testing/tools.js.map +1 -1
  1206. package/dist/utils/testing/tracers.cjs +2 -3
  1207. package/dist/utils/testing/tracers.cjs.map +1 -1
  1208. package/dist/utils/testing/tracers.d.cts.map +1 -1
  1209. package/dist/utils/testing/tracers.d.ts.map +1 -1
  1210. package/dist/utils/testing/tracers.js +1 -2
  1211. package/dist/utils/testing/tracers.js.map +1 -1
  1212. package/dist/utils/testing/vectorstores.cjs +10 -15
  1213. package/dist/utils/testing/vectorstores.cjs.map +1 -1
  1214. package/dist/utils/testing/vectorstores.d.cts +0 -1
  1215. package/dist/utils/testing/vectorstores.d.cts.map +1 -1
  1216. package/dist/utils/testing/vectorstores.d.ts +0 -1
  1217. package/dist/utils/testing/vectorstores.d.ts.map +1 -1
  1218. package/dist/utils/testing/vectorstores.js +8 -13
  1219. package/dist/utils/testing/vectorstores.js.map +1 -1
  1220. package/dist/utils/tiktoken.cjs +11 -12
  1221. package/dist/utils/tiktoken.cjs.map +1 -1
  1222. package/dist/utils/tiktoken.d.cts.map +1 -1
  1223. package/dist/utils/tiktoken.d.ts.map +1 -1
  1224. package/dist/utils/tiktoken.js +3 -5
  1225. package/dist/utils/tiktoken.js.map +1 -1
  1226. package/dist/utils/types/index.cjs +10 -11
  1227. package/dist/utils/types/index.cjs.map +1 -1
  1228. package/dist/utils/types/index.d.cts +2 -3
  1229. package/dist/utils/types/index.d.cts.map +1 -1
  1230. package/dist/utils/types/index.d.ts +2 -3
  1231. package/dist/utils/types/index.d.ts.map +1 -1
  1232. package/dist/utils/types/index.js +3 -5
  1233. package/dist/utils/types/index.js.map +1 -1
  1234. package/dist/utils/types/zod.cjs +20 -36
  1235. package/dist/utils/types/zod.cjs.map +1 -1
  1236. package/dist/utils/types/zod.d.cts +144 -33
  1237. package/dist/utils/types/zod.d.cts.map +1 -1
  1238. package/dist/utils/types/zod.d.ts +144 -33
  1239. package/dist/utils/types/zod.d.ts.map +1 -1
  1240. package/dist/utils/types/zod.js +18 -34
  1241. package/dist/utils/types/zod.js.map +1 -1
  1242. package/dist/utils/uuid/index.cjs +58 -0
  1243. package/dist/utils/uuid/index.cjs.map +1 -0
  1244. package/dist/utils/uuid/index.d.cts +26 -0
  1245. package/dist/utils/uuid/index.d.cts.map +1 -0
  1246. package/dist/utils/uuid/index.d.ts +26 -0
  1247. package/dist/utils/uuid/index.d.ts.map +1 -0
  1248. package/dist/utils/uuid/index.js +41 -0
  1249. package/dist/utils/uuid/index.js.map +1 -0
  1250. package/dist/utils/uuid/max.cjs +6 -0
  1251. package/dist/utils/uuid/max.cjs.map +1 -0
  1252. package/dist/utils/uuid/max.js +6 -0
  1253. package/dist/utils/uuid/max.js.map +1 -0
  1254. package/dist/utils/uuid/nil.cjs +6 -0
  1255. package/dist/utils/uuid/nil.cjs.map +1 -0
  1256. package/dist/utils/uuid/nil.js +6 -0
  1257. package/dist/utils/uuid/nil.js.map +1 -0
  1258. package/dist/utils/uuid/parse.cjs +11 -0
  1259. package/dist/utils/uuid/parse.cjs.map +1 -0
  1260. package/dist/utils/uuid/parse.d.cts +7 -0
  1261. package/dist/utils/uuid/parse.d.cts.map +1 -0
  1262. package/dist/utils/uuid/parse.d.ts +7 -0
  1263. package/dist/utils/uuid/parse.d.ts.map +1 -0
  1264. package/dist/utils/uuid/parse.js +11 -0
  1265. package/dist/utils/uuid/parse.js.map +1 -0
  1266. package/dist/utils/uuid/regex.cjs +6 -0
  1267. package/dist/utils/uuid/regex.cjs.map +1 -0
  1268. package/dist/utils/uuid/regex.js +6 -0
  1269. package/dist/utils/uuid/regex.js.map +1 -0
  1270. package/dist/utils/uuid/rng.cjs +9 -0
  1271. package/dist/utils/uuid/rng.cjs.map +1 -0
  1272. package/dist/utils/uuid/rng.js +9 -0
  1273. package/dist/utils/uuid/rng.js.map +1 -0
  1274. package/dist/utils/uuid/sha1.cjs +71 -0
  1275. package/dist/utils/uuid/sha1.cjs.map +1 -0
  1276. package/dist/utils/uuid/sha1.js +71 -0
  1277. package/dist/utils/uuid/sha1.js.map +1 -0
  1278. package/dist/utils/uuid/stringify.cjs +21 -0
  1279. package/dist/utils/uuid/stringify.cjs.map +1 -0
  1280. package/dist/utils/uuid/stringify.d.cts +5 -0
  1281. package/dist/utils/uuid/stringify.d.cts.map +1 -0
  1282. package/dist/utils/uuid/stringify.d.ts +5 -0
  1283. package/dist/utils/uuid/stringify.d.ts.map +1 -0
  1284. package/dist/utils/uuid/stringify.js +20 -0
  1285. package/dist/utils/uuid/stringify.js.map +1 -0
  1286. package/dist/utils/uuid/types.d.cts +26 -0
  1287. package/dist/utils/uuid/types.d.cts.map +1 -0
  1288. package/dist/utils/uuid/types.d.ts +26 -0
  1289. package/dist/utils/uuid/types.d.ts.map +1 -0
  1290. package/dist/utils/uuid/v1.cjs +69 -0
  1291. package/dist/utils/uuid/v1.cjs.map +1 -0
  1292. package/dist/utils/uuid/v1.d.cts +8 -0
  1293. package/dist/utils/uuid/v1.d.cts.map +1 -0
  1294. package/dist/utils/uuid/v1.d.ts +8 -0
  1295. package/dist/utils/uuid/v1.d.ts.map +1 -0
  1296. package/dist/utils/uuid/v1.js +69 -0
  1297. package/dist/utils/uuid/v1.js.map +1 -0
  1298. package/dist/utils/uuid/v1ToV6.cjs +14 -0
  1299. package/dist/utils/uuid/v1ToV6.cjs.map +1 -0
  1300. package/dist/utils/uuid/v1ToV6.js +14 -0
  1301. package/dist/utils/uuid/v1ToV6.js.map +1 -0
  1302. package/dist/utils/uuid/v35.cjs +36 -0
  1303. package/dist/utils/uuid/v35.cjs.map +1 -0
  1304. package/dist/utils/uuid/v35.js +34 -0
  1305. package/dist/utils/uuid/v35.js.map +1 -0
  1306. package/dist/utils/uuid/v4.cjs +25 -0
  1307. package/dist/utils/uuid/v4.cjs.map +1 -0
  1308. package/dist/utils/uuid/v4.d.cts +8 -0
  1309. package/dist/utils/uuid/v4.d.cts.map +1 -0
  1310. package/dist/utils/uuid/v4.d.ts +8 -0
  1311. package/dist/utils/uuid/v4.d.ts.map +1 -0
  1312. package/dist/utils/uuid/v4.js +25 -0
  1313. package/dist/utils/uuid/v4.js.map +1 -0
  1314. package/dist/utils/uuid/v5.cjs +12 -0
  1315. package/dist/utils/uuid/v5.cjs.map +1 -0
  1316. package/dist/utils/uuid/v5.d.cts +14 -0
  1317. package/dist/utils/uuid/v5.d.cts.map +1 -0
  1318. package/dist/utils/uuid/v5.d.ts +14 -0
  1319. package/dist/utils/uuid/v5.d.ts.map +1 -0
  1320. package/dist/utils/uuid/v5.js +12 -0
  1321. package/dist/utils/uuid/v5.js.map +1 -0
  1322. package/dist/utils/uuid/v6.cjs +23 -0
  1323. package/dist/utils/uuid/v6.cjs.map +1 -0
  1324. package/dist/utils/uuid/v6.d.cts +8 -0
  1325. package/dist/utils/uuid/v6.d.cts.map +1 -0
  1326. package/dist/utils/uuid/v6.d.ts +8 -0
  1327. package/dist/utils/uuid/v6.d.ts.map +1 -0
  1328. package/dist/utils/uuid/v6.js +23 -0
  1329. package/dist/utils/uuid/v6.js.map +1 -0
  1330. package/dist/utils/uuid/v7.cjs +57 -0
  1331. package/dist/utils/uuid/v7.cjs.map +1 -0
  1332. package/dist/utils/uuid/v7.d.cts +8 -0
  1333. package/dist/utils/uuid/v7.d.cts.map +1 -0
  1334. package/dist/utils/uuid/v7.d.ts +8 -0
  1335. package/dist/utils/uuid/v7.d.ts.map +1 -0
  1336. package/dist/utils/uuid/v7.js +57 -0
  1337. package/dist/utils/uuid/v7.js.map +1 -0
  1338. package/dist/utils/uuid/validate.cjs +9 -0
  1339. package/dist/utils/uuid/validate.cjs.map +1 -0
  1340. package/dist/utils/uuid/validate.d.cts +5 -0
  1341. package/dist/utils/uuid/validate.d.cts.map +1 -0
  1342. package/dist/utils/uuid/validate.d.ts +5 -0
  1343. package/dist/utils/uuid/validate.d.ts.map +1 -0
  1344. package/dist/utils/uuid/validate.js +9 -0
  1345. package/dist/utils/uuid/validate.js.map +1 -0
  1346. package/dist/utils/uuid/version.cjs +10 -0
  1347. package/dist/utils/uuid/version.cjs.map +1 -0
  1348. package/dist/utils/uuid/version.d.cts +5 -0
  1349. package/dist/utils/uuid/version.d.cts.map +1 -0
  1350. package/dist/utils/uuid/version.d.ts +5 -0
  1351. package/dist/utils/uuid/version.d.ts.map +1 -0
  1352. package/dist/utils/uuid/version.js +10 -0
  1353. package/dist/utils/uuid/version.js.map +1 -0
  1354. package/dist/utils/zod-to-json-schema/Options.cjs +1 -2
  1355. package/dist/utils/zod-to-json-schema/Options.cjs.map +1 -1
  1356. package/dist/utils/zod-to-json-schema/Options.d.cts +1 -0
  1357. package/dist/utils/zod-to-json-schema/Options.d.ts +1 -3
  1358. package/dist/utils/zod-to-json-schema/Options.js +1 -1
  1359. package/dist/utils/zod-to-json-schema/Options.js.map +1 -1
  1360. package/dist/utils/zod-to-json-schema/Refs.cjs +2 -3
  1361. package/dist/utils/zod-to-json-schema/Refs.cjs.map +1 -1
  1362. package/dist/utils/zod-to-json-schema/Refs.d.cts +1 -0
  1363. package/dist/utils/zod-to-json-schema/Refs.d.ts +1 -3
  1364. package/dist/utils/zod-to-json-schema/Refs.js +1 -2
  1365. package/dist/utils/zod-to-json-schema/Refs.js.map +1 -1
  1366. package/dist/utils/zod-to-json-schema/errorMessages.cjs +1 -2
  1367. package/dist/utils/zod-to-json-schema/errorMessages.cjs.map +1 -1
  1368. package/dist/utils/zod-to-json-schema/errorMessages.d.cts +0 -1
  1369. package/dist/utils/zod-to-json-schema/errorMessages.d.cts.map +1 -1
  1370. package/dist/utils/zod-to-json-schema/errorMessages.d.ts +0 -2
  1371. package/dist/utils/zod-to-json-schema/errorMessages.d.ts.map +1 -1
  1372. package/dist/utils/zod-to-json-schema/errorMessages.js +1 -1
  1373. package/dist/utils/zod-to-json-schema/errorMessages.js.map +1 -1
  1374. package/dist/utils/zod-to-json-schema/getRelativePath.cjs +1 -2
  1375. package/dist/utils/zod-to-json-schema/getRelativePath.cjs.map +1 -1
  1376. package/dist/utils/zod-to-json-schema/getRelativePath.js +1 -1
  1377. package/dist/utils/zod-to-json-schema/getRelativePath.js.map +1 -1
  1378. package/dist/utils/zod-to-json-schema/index.cjs +37 -37
  1379. package/dist/utils/zod-to-json-schema/index.d.cts +24 -0
  1380. package/dist/utils/zod-to-json-schema/index.d.ts +1 -14
  1381. package/dist/utils/zod-to-json-schema/index.js +38 -37
  1382. package/dist/utils/zod-to-json-schema/parseDef.cjs +5 -6
  1383. package/dist/utils/zod-to-json-schema/parseDef.cjs.map +1 -1
  1384. package/dist/utils/zod-to-json-schema/parseDef.d.cts +1 -0
  1385. package/dist/utils/zod-to-json-schema/parseDef.d.ts +1 -3
  1386. package/dist/utils/zod-to-json-schema/parseDef.js +1 -2
  1387. package/dist/utils/zod-to-json-schema/parseDef.js.map +1 -1
  1388. package/dist/utils/zod-to-json-schema/parseTypes.d.cts.map +1 -1
  1389. package/dist/utils/zod-to-json-schema/parseTypes.d.ts.map +1 -1
  1390. package/dist/utils/zod-to-json-schema/parsers/any.cjs +2 -3
  1391. package/dist/utils/zod-to-json-schema/parsers/any.cjs.map +1 -1
  1392. package/dist/utils/zod-to-json-schema/parsers/any.d.cts.map +1 -1
  1393. package/dist/utils/zod-to-json-schema/parsers/any.d.ts +0 -2
  1394. package/dist/utils/zod-to-json-schema/parsers/any.d.ts.map +1 -1
  1395. package/dist/utils/zod-to-json-schema/parsers/any.js +1 -2
  1396. package/dist/utils/zod-to-json-schema/parsers/any.js.map +1 -1
  1397. package/dist/utils/zod-to-json-schema/parsers/array.cjs +5 -6
  1398. package/dist/utils/zod-to-json-schema/parsers/array.cjs.map +1 -1
  1399. package/dist/utils/zod-to-json-schema/parsers/array.d.cts +0 -1
  1400. package/dist/utils/zod-to-json-schema/parsers/array.d.cts.map +1 -1
  1401. package/dist/utils/zod-to-json-schema/parsers/array.d.ts +0 -3
  1402. package/dist/utils/zod-to-json-schema/parsers/array.d.ts.map +1 -1
  1403. package/dist/utils/zod-to-json-schema/parsers/array.js +1 -2
  1404. package/dist/utils/zod-to-json-schema/parsers/array.js.map +1 -1
  1405. package/dist/utils/zod-to-json-schema/parsers/bigint.cjs +2 -3
  1406. package/dist/utils/zod-to-json-schema/parsers/bigint.cjs.map +1 -1
  1407. package/dist/utils/zod-to-json-schema/parsers/bigint.d.cts +0 -1
  1408. package/dist/utils/zod-to-json-schema/parsers/bigint.d.cts.map +1 -1
  1409. package/dist/utils/zod-to-json-schema/parsers/bigint.d.ts +0 -3
  1410. package/dist/utils/zod-to-json-schema/parsers/bigint.d.ts.map +1 -1
  1411. package/dist/utils/zod-to-json-schema/parsers/bigint.js +1 -2
  1412. package/dist/utils/zod-to-json-schema/parsers/bigint.js.map +1 -1
  1413. package/dist/utils/zod-to-json-schema/parsers/boolean.cjs +1 -2
  1414. package/dist/utils/zod-to-json-schema/parsers/boolean.cjs.map +1 -1
  1415. package/dist/utils/zod-to-json-schema/parsers/boolean.d.cts.map +1 -1
  1416. package/dist/utils/zod-to-json-schema/parsers/boolean.d.ts.map +1 -1
  1417. package/dist/utils/zod-to-json-schema/parsers/boolean.js +1 -1
  1418. package/dist/utils/zod-to-json-schema/parsers/boolean.js.map +1 -1
  1419. package/dist/utils/zod-to-json-schema/parsers/branded.cjs +2 -3
  1420. package/dist/utils/zod-to-json-schema/parsers/branded.cjs.map +1 -1
  1421. package/dist/utils/zod-to-json-schema/parsers/branded.d.cts +1 -0
  1422. package/dist/utils/zod-to-json-schema/parsers/branded.d.ts +1 -3
  1423. package/dist/utils/zod-to-json-schema/parsers/branded.js +1 -2
  1424. package/dist/utils/zod-to-json-schema/parsers/branded.js.map +1 -1
  1425. package/dist/utils/zod-to-json-schema/parsers/catch.cjs +2 -3
  1426. package/dist/utils/zod-to-json-schema/parsers/catch.cjs.map +1 -1
  1427. package/dist/utils/zod-to-json-schema/parsers/catch.d.cts +1 -0
  1428. package/dist/utils/zod-to-json-schema/parsers/catch.d.ts +1 -3
  1429. package/dist/utils/zod-to-json-schema/parsers/catch.js +1 -2
  1430. package/dist/utils/zod-to-json-schema/parsers/catch.js.map +1 -1
  1431. package/dist/utils/zod-to-json-schema/parsers/date.cjs +2 -3
  1432. package/dist/utils/zod-to-json-schema/parsers/date.cjs.map +1 -1
  1433. package/dist/utils/zod-to-json-schema/parsers/date.d.cts +0 -2
  1434. package/dist/utils/zod-to-json-schema/parsers/date.d.cts.map +1 -1
  1435. package/dist/utils/zod-to-json-schema/parsers/date.d.ts +0 -4
  1436. package/dist/utils/zod-to-json-schema/parsers/date.d.ts.map +1 -1
  1437. package/dist/utils/zod-to-json-schema/parsers/date.js +1 -2
  1438. package/dist/utils/zod-to-json-schema/parsers/date.js.map +1 -1
  1439. package/dist/utils/zod-to-json-schema/parsers/default.cjs +2 -3
  1440. package/dist/utils/zod-to-json-schema/parsers/default.cjs.map +1 -1
  1441. package/dist/utils/zod-to-json-schema/parsers/default.d.cts +1 -0
  1442. package/dist/utils/zod-to-json-schema/parsers/default.d.ts +1 -3
  1443. package/dist/utils/zod-to-json-schema/parsers/default.js +1 -2
  1444. package/dist/utils/zod-to-json-schema/parsers/default.js.map +1 -1
  1445. package/dist/utils/zod-to-json-schema/parsers/effects.cjs +3 -4
  1446. package/dist/utils/zod-to-json-schema/parsers/effects.cjs.map +1 -1
  1447. package/dist/utils/zod-to-json-schema/parsers/effects.d.cts +1 -0
  1448. package/dist/utils/zod-to-json-schema/parsers/effects.d.ts +1 -3
  1449. package/dist/utils/zod-to-json-schema/parsers/effects.js +1 -2
  1450. package/dist/utils/zod-to-json-schema/parsers/effects.js.map +1 -1
  1451. package/dist/utils/zod-to-json-schema/parsers/enum.cjs +1 -2
  1452. package/dist/utils/zod-to-json-schema/parsers/enum.cjs.map +1 -1
  1453. package/dist/utils/zod-to-json-schema/parsers/enum.d.cts.map +1 -1
  1454. package/dist/utils/zod-to-json-schema/parsers/enum.d.ts +0 -2
  1455. package/dist/utils/zod-to-json-schema/parsers/enum.d.ts.map +1 -1
  1456. package/dist/utils/zod-to-json-schema/parsers/enum.js +1 -1
  1457. package/dist/utils/zod-to-json-schema/parsers/enum.js.map +1 -1
  1458. package/dist/utils/zod-to-json-schema/parsers/intersection.cjs +3 -4
  1459. package/dist/utils/zod-to-json-schema/parsers/intersection.cjs.map +1 -1
  1460. package/dist/utils/zod-to-json-schema/parsers/intersection.d.cts +0 -1
  1461. package/dist/utils/zod-to-json-schema/parsers/intersection.d.cts.map +1 -1
  1462. package/dist/utils/zod-to-json-schema/parsers/intersection.d.ts +0 -3
  1463. package/dist/utils/zod-to-json-schema/parsers/intersection.d.ts.map +1 -1
  1464. package/dist/utils/zod-to-json-schema/parsers/intersection.js +2 -3
  1465. package/dist/utils/zod-to-json-schema/parsers/intersection.js.map +1 -1
  1466. package/dist/utils/zod-to-json-schema/parsers/literal.cjs +1 -2
  1467. package/dist/utils/zod-to-json-schema/parsers/literal.cjs.map +1 -1
  1468. package/dist/utils/zod-to-json-schema/parsers/literal.d.cts +0 -1
  1469. package/dist/utils/zod-to-json-schema/parsers/literal.d.cts.map +1 -1
  1470. package/dist/utils/zod-to-json-schema/parsers/literal.d.ts +0 -3
  1471. package/dist/utils/zod-to-json-schema/parsers/literal.d.ts.map +1 -1
  1472. package/dist/utils/zod-to-json-schema/parsers/literal.js +1 -1
  1473. package/dist/utils/zod-to-json-schema/parsers/literal.js.map +1 -1
  1474. package/dist/utils/zod-to-json-schema/parsers/map.cjs +21 -24
  1475. package/dist/utils/zod-to-json-schema/parsers/map.cjs.map +1 -1
  1476. package/dist/utils/zod-to-json-schema/parsers/map.d.cts +0 -2
  1477. package/dist/utils/zod-to-json-schema/parsers/map.d.cts.map +1 -1
  1478. package/dist/utils/zod-to-json-schema/parsers/map.d.ts +0 -4
  1479. package/dist/utils/zod-to-json-schema/parsers/map.d.ts.map +1 -1
  1480. package/dist/utils/zod-to-json-schema/parsers/map.js +18 -21
  1481. package/dist/utils/zod-to-json-schema/parsers/map.js.map +1 -1
  1482. package/dist/utils/zod-to-json-schema/parsers/nativeEnum.cjs +3 -5
  1483. package/dist/utils/zod-to-json-schema/parsers/nativeEnum.cjs.map +1 -1
  1484. package/dist/utils/zod-to-json-schema/parsers/nativeEnum.d.cts.map +1 -1
  1485. package/dist/utils/zod-to-json-schema/parsers/nativeEnum.d.ts +0 -2
  1486. package/dist/utils/zod-to-json-schema/parsers/nativeEnum.d.ts.map +1 -1
  1487. package/dist/utils/zod-to-json-schema/parsers/nativeEnum.js +3 -4
  1488. package/dist/utils/zod-to-json-schema/parsers/nativeEnum.js.map +1 -1
  1489. package/dist/utils/zod-to-json-schema/parsers/never.cjs +2 -3
  1490. package/dist/utils/zod-to-json-schema/parsers/never.cjs.map +1 -1
  1491. package/dist/utils/zod-to-json-schema/parsers/never.d.cts +0 -1
  1492. package/dist/utils/zod-to-json-schema/parsers/never.d.cts.map +1 -1
  1493. package/dist/utils/zod-to-json-schema/parsers/never.d.ts +0 -2
  1494. package/dist/utils/zod-to-json-schema/parsers/never.d.ts.map +1 -1
  1495. package/dist/utils/zod-to-json-schema/parsers/never.js +1 -2
  1496. package/dist/utils/zod-to-json-schema/parsers/never.js.map +1 -1
  1497. package/dist/utils/zod-to-json-schema/parsers/null.cjs +1 -2
  1498. package/dist/utils/zod-to-json-schema/parsers/null.cjs.map +1 -1
  1499. package/dist/utils/zod-to-json-schema/parsers/null.d.cts.map +1 -1
  1500. package/dist/utils/zod-to-json-schema/parsers/null.d.ts +0 -2
  1501. package/dist/utils/zod-to-json-schema/parsers/null.d.ts.map +1 -1
  1502. package/dist/utils/zod-to-json-schema/parsers/null.js +1 -1
  1503. package/dist/utils/zod-to-json-schema/parsers/null.js.map +1 -1
  1504. package/dist/utils/zod-to-json-schema/parsers/nullable.cjs +8 -9
  1505. package/dist/utils/zod-to-json-schema/parsers/nullable.cjs.map +1 -1
  1506. package/dist/utils/zod-to-json-schema/parsers/nullable.d.cts +0 -1
  1507. package/dist/utils/zod-to-json-schema/parsers/nullable.d.cts.map +1 -1
  1508. package/dist/utils/zod-to-json-schema/parsers/nullable.d.ts +0 -3
  1509. package/dist/utils/zod-to-json-schema/parsers/nullable.d.ts.map +1 -1
  1510. package/dist/utils/zod-to-json-schema/parsers/nullable.js +6 -7
  1511. package/dist/utils/zod-to-json-schema/parsers/nullable.js.map +1 -1
  1512. package/dist/utils/zod-to-json-schema/parsers/number.cjs +2 -3
  1513. package/dist/utils/zod-to-json-schema/parsers/number.cjs.map +1 -1
  1514. package/dist/utils/zod-to-json-schema/parsers/number.d.cts +0 -1
  1515. package/dist/utils/zod-to-json-schema/parsers/number.d.cts.map +1 -1
  1516. package/dist/utils/zod-to-json-schema/parsers/number.d.ts +0 -3
  1517. package/dist/utils/zod-to-json-schema/parsers/number.d.ts.map +1 -1
  1518. package/dist/utils/zod-to-json-schema/parsers/number.js +1 -2
  1519. package/dist/utils/zod-to-json-schema/parsers/number.js.map +1 -1
  1520. package/dist/utils/zod-to-json-schema/parsers/object.cjs +2 -3
  1521. package/dist/utils/zod-to-json-schema/parsers/object.cjs.map +1 -1
  1522. package/dist/utils/zod-to-json-schema/parsers/object.d.cts +0 -1
  1523. package/dist/utils/zod-to-json-schema/parsers/object.d.cts.map +1 -1
  1524. package/dist/utils/zod-to-json-schema/parsers/object.d.ts +0 -3
  1525. package/dist/utils/zod-to-json-schema/parsers/object.d.ts.map +1 -1
  1526. package/dist/utils/zod-to-json-schema/parsers/object.js +1 -2
  1527. package/dist/utils/zod-to-json-schema/parsers/object.js.map +1 -1
  1528. package/dist/utils/zod-to-json-schema/parsers/optional.cjs +3 -4
  1529. package/dist/utils/zod-to-json-schema/parsers/optional.cjs.map +1 -1
  1530. package/dist/utils/zod-to-json-schema/parsers/optional.d.cts +1 -0
  1531. package/dist/utils/zod-to-json-schema/parsers/optional.d.ts +1 -3
  1532. package/dist/utils/zod-to-json-schema/parsers/optional.js +1 -2
  1533. package/dist/utils/zod-to-json-schema/parsers/optional.js.map +1 -1
  1534. package/dist/utils/zod-to-json-schema/parsers/pipeline.cjs +4 -6
  1535. package/dist/utils/zod-to-json-schema/parsers/pipeline.cjs.map +1 -1
  1536. package/dist/utils/zod-to-json-schema/parsers/pipeline.d.cts +1 -0
  1537. package/dist/utils/zod-to-json-schema/parsers/pipeline.d.ts +1 -4
  1538. package/dist/utils/zod-to-json-schema/parsers/pipeline.js +3 -5
  1539. package/dist/utils/zod-to-json-schema/parsers/pipeline.js.map +1 -1
  1540. package/dist/utils/zod-to-json-schema/parsers/promise.cjs +2 -3
  1541. package/dist/utils/zod-to-json-schema/parsers/promise.cjs.map +1 -1
  1542. package/dist/utils/zod-to-json-schema/parsers/promise.d.cts +1 -0
  1543. package/dist/utils/zod-to-json-schema/parsers/promise.d.ts +1 -3
  1544. package/dist/utils/zod-to-json-schema/parsers/promise.js +1 -2
  1545. package/dist/utils/zod-to-json-schema/parsers/promise.js.map +1 -1
  1546. package/dist/utils/zod-to-json-schema/parsers/readonly.cjs +2 -3
  1547. package/dist/utils/zod-to-json-schema/parsers/readonly.cjs.map +1 -1
  1548. package/dist/utils/zod-to-json-schema/parsers/readonly.d.cts +1 -0
  1549. package/dist/utils/zod-to-json-schema/parsers/readonly.d.ts +1 -3
  1550. package/dist/utils/zod-to-json-schema/parsers/readonly.js +1 -2
  1551. package/dist/utils/zod-to-json-schema/parsers/readonly.js.map +1 -1
  1552. package/dist/utils/zod-to-json-schema/parsers/record.cjs +9 -10
  1553. package/dist/utils/zod-to-json-schema/parsers/record.cjs.map +1 -1
  1554. package/dist/utils/zod-to-json-schema/parsers/record.d.cts +0 -1
  1555. package/dist/utils/zod-to-json-schema/parsers/record.d.cts.map +1 -1
  1556. package/dist/utils/zod-to-json-schema/parsers/record.d.ts +0 -3
  1557. package/dist/utils/zod-to-json-schema/parsers/record.d.ts.map +1 -1
  1558. package/dist/utils/zod-to-json-schema/parsers/record.js +3 -4
  1559. package/dist/utils/zod-to-json-schema/parsers/record.js.map +1 -1
  1560. package/dist/utils/zod-to-json-schema/parsers/set.cjs +7 -9
  1561. package/dist/utils/zod-to-json-schema/parsers/set.cjs.map +1 -1
  1562. package/dist/utils/zod-to-json-schema/parsers/set.d.cts +0 -1
  1563. package/dist/utils/zod-to-json-schema/parsers/set.d.cts.map +1 -1
  1564. package/dist/utils/zod-to-json-schema/parsers/set.d.ts +0 -3
  1565. package/dist/utils/zod-to-json-schema/parsers/set.d.ts.map +1 -1
  1566. package/dist/utils/zod-to-json-schema/parsers/set.js +5 -7
  1567. package/dist/utils/zod-to-json-schema/parsers/set.js.map +1 -1
  1568. package/dist/utils/zod-to-json-schema/parsers/string.cjs +28 -3
  1569. package/dist/utils/zod-to-json-schema/parsers/string.cjs.map +1 -1
  1570. package/dist/utils/zod-to-json-schema/parsers/string.d.cts +0 -2
  1571. package/dist/utils/zod-to-json-schema/parsers/string.d.cts.map +1 -1
  1572. package/dist/utils/zod-to-json-schema/parsers/string.d.ts +0 -4
  1573. package/dist/utils/zod-to-json-schema/parsers/string.d.ts.map +1 -1
  1574. package/dist/utils/zod-to-json-schema/parsers/string.js +27 -2
  1575. package/dist/utils/zod-to-json-schema/parsers/string.js.map +1 -1
  1576. package/dist/utils/zod-to-json-schema/parsers/tuple.cjs +2 -3
  1577. package/dist/utils/zod-to-json-schema/parsers/tuple.cjs.map +1 -1
  1578. package/dist/utils/zod-to-json-schema/parsers/tuple.d.cts +0 -1
  1579. package/dist/utils/zod-to-json-schema/parsers/tuple.d.cts.map +1 -1
  1580. package/dist/utils/zod-to-json-schema/parsers/tuple.d.ts +0 -3
  1581. package/dist/utils/zod-to-json-schema/parsers/tuple.d.ts.map +1 -1
  1582. package/dist/utils/zod-to-json-schema/parsers/tuple.js +1 -2
  1583. package/dist/utils/zod-to-json-schema/parsers/tuple.js.map +1 -1
  1584. package/dist/utils/zod-to-json-schema/parsers/undefined.cjs +2 -3
  1585. package/dist/utils/zod-to-json-schema/parsers/undefined.cjs.map +1 -1
  1586. package/dist/utils/zod-to-json-schema/parsers/undefined.d.cts +0 -1
  1587. package/dist/utils/zod-to-json-schema/parsers/undefined.d.cts.map +1 -1
  1588. package/dist/utils/zod-to-json-schema/parsers/undefined.d.ts +0 -2
  1589. package/dist/utils/zod-to-json-schema/parsers/undefined.d.ts.map +1 -1
  1590. package/dist/utils/zod-to-json-schema/parsers/undefined.js +1 -2
  1591. package/dist/utils/zod-to-json-schema/parsers/undefined.js.map +1 -1
  1592. package/dist/utils/zod-to-json-schema/parsers/union.cjs +5 -9
  1593. package/dist/utils/zod-to-json-schema/parsers/union.cjs.map +1 -1
  1594. package/dist/utils/zod-to-json-schema/parsers/union.d.cts +1 -2
  1595. package/dist/utils/zod-to-json-schema/parsers/union.d.cts.map +1 -1
  1596. package/dist/utils/zod-to-json-schema/parsers/union.d.ts +0 -3
  1597. package/dist/utils/zod-to-json-schema/parsers/union.d.ts.map +1 -1
  1598. package/dist/utils/zod-to-json-schema/parsers/union.js +4 -8
  1599. package/dist/utils/zod-to-json-schema/parsers/union.js.map +1 -1
  1600. package/dist/utils/zod-to-json-schema/parsers/unknown.cjs +2 -3
  1601. package/dist/utils/zod-to-json-schema/parsers/unknown.cjs.map +1 -1
  1602. package/dist/utils/zod-to-json-schema/parsers/unknown.d.cts +0 -1
  1603. package/dist/utils/zod-to-json-schema/parsers/unknown.d.cts.map +1 -1
  1604. package/dist/utils/zod-to-json-schema/parsers/unknown.d.ts +0 -2
  1605. package/dist/utils/zod-to-json-schema/parsers/unknown.d.ts.map +1 -1
  1606. package/dist/utils/zod-to-json-schema/parsers/unknown.js +1 -2
  1607. package/dist/utils/zod-to-json-schema/parsers/unknown.js.map +1 -1
  1608. package/dist/utils/zod-to-json-schema/selectParser.cjs +34 -35
  1609. package/dist/utils/zod-to-json-schema/selectParser.cjs.map +1 -1
  1610. package/dist/utils/zod-to-json-schema/selectParser.d.cts +1 -0
  1611. package/dist/utils/zod-to-json-schema/selectParser.d.ts +0 -2
  1612. package/dist/utils/zod-to-json-schema/selectParser.js +2 -3
  1613. package/dist/utils/zod-to-json-schema/selectParser.js.map +1 -1
  1614. package/dist/utils/zod-to-json-schema/zodToJsonSchema.cjs +7 -8
  1615. package/dist/utils/zod-to-json-schema/zodToJsonSchema.cjs.map +1 -1
  1616. package/dist/utils/zod-to-json-schema/zodToJsonSchema.d.cts +1 -0
  1617. package/dist/utils/zod-to-json-schema/zodToJsonSchema.d.ts +1 -3
  1618. package/dist/utils/zod-to-json-schema/zodToJsonSchema.js +4 -5
  1619. package/dist/utils/zod-to-json-schema/zodToJsonSchema.js.map +1 -1
  1620. package/dist/vectorstores.cjs +12 -14
  1621. package/dist/vectorstores.cjs.map +1 -1
  1622. package/dist/vectorstores.d.cts +0 -1
  1623. package/dist/vectorstores.d.cts.map +1 -1
  1624. package/dist/vectorstores.d.ts +0 -1
  1625. package/dist/vectorstores.d.ts.map +1 -1
  1626. package/dist/vectorstores.js +4 -7
  1627. package/dist/vectorstores.js.map +1 -1
  1628. package/document_loaders/base.cjs +1 -0
  1629. package/document_loaders/base.d.cts +1 -0
  1630. package/document_loaders/base.d.ts +1 -0
  1631. package/document_loaders/base.js +1 -0
  1632. package/document_loaders/langsmith.cjs +1 -0
  1633. package/document_loaders/langsmith.d.cts +1 -0
  1634. package/document_loaders/langsmith.d.ts +1 -0
  1635. package/document_loaders/langsmith.js +1 -0
  1636. package/documents.cjs +1 -0
  1637. package/documents.d.cts +1 -0
  1638. package/documents.d.ts +1 -0
  1639. package/documents.js +1 -0
  1640. package/embeddings.cjs +1 -0
  1641. package/embeddings.d.cts +1 -0
  1642. package/embeddings.d.ts +1 -0
  1643. package/embeddings.js +1 -0
  1644. package/errors.cjs +1 -0
  1645. package/errors.d.cts +1 -0
  1646. package/errors.d.ts +1 -0
  1647. package/errors.js +1 -0
  1648. package/example_selectors.cjs +1 -0
  1649. package/example_selectors.d.cts +1 -0
  1650. package/example_selectors.d.ts +1 -0
  1651. package/example_selectors.js +1 -0
  1652. package/indexing.cjs +1 -0
  1653. package/indexing.d.cts +1 -0
  1654. package/indexing.d.ts +1 -0
  1655. package/indexing.js +1 -0
  1656. package/language_models/base.cjs +1 -0
  1657. package/language_models/base.d.cts +1 -0
  1658. package/language_models/base.d.ts +1 -0
  1659. package/language_models/base.js +1 -0
  1660. package/language_models/chat_models.cjs +1 -0
  1661. package/language_models/chat_models.d.cts +1 -0
  1662. package/language_models/chat_models.d.ts +1 -0
  1663. package/language_models/chat_models.js +1 -0
  1664. package/language_models/compat.cjs +1 -0
  1665. package/language_models/compat.d.cts +1 -0
  1666. package/language_models/compat.d.ts +1 -0
  1667. package/language_models/compat.js +1 -0
  1668. package/language_models/event.cjs +1 -0
  1669. package/language_models/event.d.cts +1 -0
  1670. package/language_models/event.d.ts +1 -0
  1671. package/language_models/event.js +1 -0
  1672. package/language_models/llms.cjs +1 -0
  1673. package/language_models/llms.d.cts +1 -0
  1674. package/language_models/llms.d.ts +1 -0
  1675. package/language_models/llms.js +1 -0
  1676. package/language_models/openai_completions_stream.cjs +1 -0
  1677. package/language_models/openai_completions_stream.d.cts +1 -0
  1678. package/language_models/openai_completions_stream.d.ts +1 -0
  1679. package/language_models/openai_completions_stream.js +1 -0
  1680. package/language_models/profile.cjs +1 -0
  1681. package/language_models/profile.d.cts +1 -0
  1682. package/language_models/profile.d.ts +1 -0
  1683. package/language_models/profile.js +1 -0
  1684. package/language_models/stream.cjs +1 -0
  1685. package/language_models/stream.d.cts +1 -0
  1686. package/language_models/stream.d.ts +1 -0
  1687. package/language_models/stream.js +1 -0
  1688. package/language_models/structured_output.cjs +1 -0
  1689. package/language_models/structured_output.d.cts +1 -0
  1690. package/language_models/structured_output.d.ts +1 -0
  1691. package/language_models/structured_output.js +1 -0
  1692. package/load/serializable.cjs +1 -0
  1693. package/load/serializable.d.cts +1 -0
  1694. package/load/serializable.d.ts +1 -0
  1695. package/load/serializable.js +1 -0
  1696. package/load.cjs +1 -0
  1697. package/load.d.cts +1 -0
  1698. package/load.d.ts +1 -0
  1699. package/load.js +1 -0
  1700. package/memory.cjs +1 -0
  1701. package/memory.d.cts +1 -0
  1702. package/memory.d.ts +1 -0
  1703. package/memory.js +1 -0
  1704. package/messages/tool.cjs +1 -0
  1705. package/messages/tool.d.cts +1 -0
  1706. package/messages/tool.d.ts +1 -0
  1707. package/messages/tool.js +1 -0
  1708. package/messages.cjs +1 -0
  1709. package/messages.d.cts +1 -0
  1710. package/messages.d.ts +1 -0
  1711. package/messages.js +1 -0
  1712. package/output_parsers/openai_functions.cjs +1 -0
  1713. package/output_parsers/openai_functions.d.cts +1 -0
  1714. package/output_parsers/openai_functions.d.ts +1 -0
  1715. package/output_parsers/openai_functions.js +1 -0
  1716. package/output_parsers/openai_tools.cjs +1 -0
  1717. package/output_parsers/openai_tools.d.cts +1 -0
  1718. package/output_parsers/openai_tools.d.ts +1 -0
  1719. package/output_parsers/openai_tools.js +1 -0
  1720. package/output_parsers.cjs +1 -0
  1721. package/output_parsers.d.cts +1 -0
  1722. package/output_parsers.d.ts +1 -0
  1723. package/output_parsers.js +1 -0
  1724. package/outputs.cjs +1 -0
  1725. package/outputs.d.cts +1 -0
  1726. package/outputs.d.ts +1 -0
  1727. package/outputs.js +1 -0
  1728. package/package.json +144 -27
  1729. package/prompt_values.cjs +1 -0
  1730. package/prompt_values.d.cts +1 -0
  1731. package/prompt_values.d.ts +1 -0
  1732. package/prompt_values.js +1 -0
  1733. package/prompts.cjs +1 -0
  1734. package/prompts.d.cts +1 -0
  1735. package/prompts.d.ts +1 -0
  1736. package/prompts.js +1 -0
  1737. package/retrievers/document_compressors.cjs +1 -0
  1738. package/retrievers/document_compressors.d.cts +1 -0
  1739. package/retrievers/document_compressors.d.ts +1 -0
  1740. package/retrievers/document_compressors.js +1 -0
  1741. package/retrievers.cjs +1 -0
  1742. package/retrievers.d.cts +1 -0
  1743. package/retrievers.d.ts +1 -0
  1744. package/retrievers.js +1 -0
  1745. package/runnables/graph.cjs +1 -0
  1746. package/runnables/graph.d.cts +1 -0
  1747. package/runnables/graph.d.ts +1 -0
  1748. package/runnables/graph.js +1 -0
  1749. package/runnables.cjs +1 -0
  1750. package/runnables.d.cts +1 -0
  1751. package/runnables.d.ts +1 -0
  1752. package/runnables.js +1 -0
  1753. package/singletons.cjs +1 -0
  1754. package/singletons.d.cts +1 -0
  1755. package/singletons.d.ts +1 -0
  1756. package/singletons.js +1 -0
  1757. package/stores.cjs +1 -0
  1758. package/stores.d.cts +1 -0
  1759. package/stores.d.ts +1 -0
  1760. package/stores.js +1 -0
  1761. package/structured_query.cjs +1 -0
  1762. package/structured_query.d.cts +1 -0
  1763. package/structured_query.d.ts +1 -0
  1764. package/structured_query.js +1 -0
  1765. package/testing.cjs +1 -0
  1766. package/testing.d.cts +1 -0
  1767. package/testing.d.ts +1 -0
  1768. package/testing.js +1 -0
  1769. package/tools.cjs +1 -0
  1770. package/tools.d.cts +1 -0
  1771. package/tools.d.ts +1 -0
  1772. package/tools.js +1 -0
  1773. package/tracers/base.cjs +1 -0
  1774. package/tracers/base.d.cts +1 -0
  1775. package/tracers/base.d.ts +1 -0
  1776. package/tracers/base.js +1 -0
  1777. package/tracers/console.cjs +1 -0
  1778. package/tracers/console.d.cts +1 -0
  1779. package/tracers/console.d.ts +1 -0
  1780. package/tracers/console.js +1 -0
  1781. package/tracers/log_stream.cjs +1 -0
  1782. package/tracers/log_stream.d.cts +1 -0
  1783. package/tracers/log_stream.d.ts +1 -0
  1784. package/tracers/log_stream.js +1 -0
  1785. package/tracers/run_collector.cjs +1 -0
  1786. package/tracers/run_collector.d.cts +1 -0
  1787. package/tracers/run_collector.d.ts +1 -0
  1788. package/tracers/run_collector.js +1 -0
  1789. package/tracers/tracer_langchain.cjs +1 -0
  1790. package/tracers/tracer_langchain.d.cts +1 -0
  1791. package/tracers/tracer_langchain.d.ts +1 -0
  1792. package/tracers/tracer_langchain.js +1 -0
  1793. package/types/stream.cjs +1 -0
  1794. package/types/stream.d.cts +1 -0
  1795. package/types/stream.d.ts +1 -0
  1796. package/types/stream.js +1 -0
  1797. package/utils/async_caller.cjs +1 -0
  1798. package/utils/async_caller.d.cts +1 -0
  1799. package/utils/async_caller.d.ts +1 -0
  1800. package/utils/async_caller.js +1 -0
  1801. package/utils/chunk_array.cjs +1 -0
  1802. package/utils/chunk_array.d.cts +1 -0
  1803. package/utils/chunk_array.d.ts +1 -0
  1804. package/utils/chunk_array.js +1 -0
  1805. package/utils/context.cjs +1 -0
  1806. package/utils/context.d.cts +1 -0
  1807. package/utils/context.d.ts +1 -0
  1808. package/utils/context.js +1 -0
  1809. package/utils/env.cjs +1 -0
  1810. package/utils/env.d.cts +1 -0
  1811. package/utils/env.d.ts +1 -0
  1812. package/utils/env.js +1 -0
  1813. package/utils/event_source_parse.cjs +1 -0
  1814. package/utils/event_source_parse.d.cts +1 -0
  1815. package/utils/event_source_parse.d.ts +1 -0
  1816. package/utils/event_source_parse.js +1 -0
  1817. package/utils/format.cjs +1 -0
  1818. package/utils/format.d.cts +1 -0
  1819. package/utils/format.d.ts +1 -0
  1820. package/utils/format.js +1 -0
  1821. package/utils/function_calling.cjs +1 -0
  1822. package/utils/function_calling.d.cts +1 -0
  1823. package/utils/function_calling.d.ts +1 -0
  1824. package/utils/function_calling.js +1 -0
  1825. package/utils/hash.cjs +1 -0
  1826. package/utils/hash.d.cts +1 -0
  1827. package/utils/hash.d.ts +1 -0
  1828. package/utils/hash.js +1 -0
  1829. package/utils/json_patch.cjs +1 -0
  1830. package/utils/json_patch.d.cts +1 -0
  1831. package/utils/json_patch.d.ts +1 -0
  1832. package/utils/json_patch.js +1 -0
  1833. package/utils/json_schema.cjs +1 -0
  1834. package/utils/json_schema.d.cts +1 -0
  1835. package/utils/json_schema.d.ts +1 -0
  1836. package/utils/json_schema.js +1 -0
  1837. package/utils/math.cjs +1 -0
  1838. package/utils/math.d.cts +1 -0
  1839. package/utils/math.d.ts +1 -0
  1840. package/utils/math.js +1 -0
  1841. package/utils/ssrf.cjs +1 -0
  1842. package/utils/ssrf.d.cts +1 -0
  1843. package/utils/ssrf.d.ts +1 -0
  1844. package/utils/ssrf.js +1 -0
  1845. package/utils/standard_schema.cjs +1 -0
  1846. package/utils/standard_schema.d.cts +1 -0
  1847. package/utils/standard_schema.d.ts +1 -0
  1848. package/utils/standard_schema.js +1 -0
  1849. package/utils/stream.cjs +1 -0
  1850. package/utils/stream.d.cts +1 -0
  1851. package/utils/stream.d.ts +1 -0
  1852. package/utils/stream.js +1 -0
  1853. package/utils/testing.cjs +1 -0
  1854. package/utils/testing.d.cts +1 -0
  1855. package/utils/testing.d.ts +1 -0
  1856. package/utils/testing.js +1 -0
  1857. package/utils/tiktoken.cjs +1 -0
  1858. package/utils/tiktoken.d.cts +1 -0
  1859. package/utils/tiktoken.d.ts +1 -0
  1860. package/utils/tiktoken.js +1 -0
  1861. package/utils/types.cjs +1 -0
  1862. package/utils/types.d.cts +1 -0
  1863. package/utils/types.d.ts +1 -0
  1864. package/utils/types.js +1 -0
  1865. package/utils/uuid.cjs +1 -0
  1866. package/utils/uuid.d.cts +1 -0
  1867. package/utils/uuid.d.ts +1 -0
  1868. package/utils/uuid.js +1 -0
  1869. package/vectorstores.cjs +1 -0
  1870. package/vectorstores.d.cts +1 -0
  1871. package/vectorstores.d.ts +1 -0
  1872. package/vectorstores.js +1 -0
  1873. package/dist/_virtual/rolldown_runtime.js +0 -11
@@ -1 +1 @@
1
- {"version":3,"file":"chat_models.js","names":["messages: BaseMessage[]","messagesToTrace: BaseMessage[]","fields: BaseChatModelParams","options?: Partial<CallOptions>","input: BaseLanguageModelInput","options?: CallOptions","_messages: BaseMessage[]","_options: this[\"ParsedCallOptions\"]","_runManager?: CallbackManagerForLLMRun","generationChunk: ChatGenerationChunk | undefined","llmOutput: Record<string, any> | undefined","options: this[\"ParsedCallOptions\"]","messages: BaseMessageLike[][]","parsedOptions: this[\"ParsedCallOptions\"]","handledOptions: RunnableConfig","startedRunManagers?: CallbackManagerForLLMRun[]","runManagers: CallbackManagerForLLMRun[] | undefined","generations: ChatGeneration[][]","llmOutputs: LLMResult[\"llmOutput\"][]","output: LLMResult","missingPromptIndices: number[]","generations: Generation[][]","result","options?: string[] | CallOptions","callbacks?: Callbacks","parsedOptions: CallOptions | undefined","_options?: this[\"ParsedCallOptions\"]","promptValues: BasePromptValueInterface[]","promptMessages: BaseMessage[][]","outputSchema:\n | InteropZodType<RunOutput>\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n | Record<string, any>","config?: StructuredOutputMethodOptions<boolean>","schema: Record<string, any> | InteropZodType<RunOutput>","tools: ToolDefinition[]","input: BaseMessageChunk","input: any","config","runManager?: CallbackManagerForLLMRun"],"sources":["../../src/language_models/chat_models.ts"],"sourcesContent":["import type { ZodType as ZodTypeV3 } from \"zod/v3\";\nimport type { $ZodType as ZodTypeV4 } from \"zod/v4/core\";\nimport {\n AIMessage,\n type BaseMessage,\n BaseMessageChunk,\n type BaseMessageLike,\n coerceMessageLikeToMessage,\n AIMessageChunk,\n isAIMessageChunk,\n isBaseMessage,\n isAIMessage,\n MessageOutputVersion,\n} from \"../messages/index.js\";\nimport {\n convertToOpenAIImageBlock,\n isURLContentBlock,\n isBase64ContentBlock,\n} from \"../messages/content/data.js\";\nimport type { BasePromptValueInterface } from \"../prompt_values.js\";\nimport {\n LLMResult,\n RUN_KEY,\n type ChatGeneration,\n ChatGenerationChunk,\n type ChatResult,\n type Generation,\n} from \"../outputs.js\";\nimport {\n BaseLanguageModel,\n type StructuredOutputMethodOptions,\n type ToolDefinition,\n type BaseLanguageModelCallOptions,\n type BaseLanguageModelInput,\n type BaseLanguageModelParams,\n} from \"./base.js\";\nimport {\n CallbackManager,\n type CallbackManagerForLLMRun,\n type Callbacks,\n} from \"../callbacks/manager.js\";\nimport type { RunnableConfig } from \"../runnables/config.js\";\nimport type { BaseCache } from \"../caches/index.js\";\nimport {\n StructuredToolInterface,\n StructuredToolParams,\n} from \"../tools/index.js\";\nimport {\n Runnable,\n RunnableLambda,\n RunnableSequence,\n RunnableToolLike,\n} from \"../runnables/base.js\";\nimport { concat } from \"../utils/stream.js\";\nimport { RunnablePassthrough } from \"../runnables/passthrough.js\";\nimport {\n getSchemaDescription,\n InteropZodType,\n isInteropZodSchema,\n} from \"../utils/types/zod.js\";\nimport { callbackHandlerPrefersStreaming } from \"../callbacks/base.js\";\nimport { toJsonSchema } from \"../utils/json_schema.js\";\nimport { getEnvironmentVariable } from \"../utils/env.js\";\nimport { castStandardMessageContent, iife } from \"./utils.js\";\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type ToolChoice = string | Record<string, any> | \"auto\" | \"any\";\n\n/**\n * Represents a serialized chat model.\n */\nexport type SerializedChatModel = {\n _model: string;\n _type: string;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n} & Record<string, any>;\n\n// todo?\n/**\n * Represents a serialized large language model.\n */\nexport type SerializedLLM = {\n _model: string;\n _type: string;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n} & Record<string, any>;\n\n/**\n * Represents the parameters for a base chat model.\n */\nexport type BaseChatModelParams = BaseLanguageModelParams & {\n /**\n * Whether to disable streaming.\n *\n * If streaming is bypassed, then `stream()` will defer to\n * `invoke()`.\n *\n * - If true, will always bypass streaming case.\n * - If false (default), will always use streaming case if available.\n */\n disableStreaming?: boolean;\n /**\n * Version of `AIMessage` output format to store in message content.\n *\n * `AIMessage.contentBlocks` will lazily parse the contents of `content` into a\n * standard format. This flag can be used to additionally store the standard format\n * as the message content, e.g., for serialization purposes.\n *\n * - \"v0\": provider-specific format in content (can lazily parse with `.contentBlocks`)\n * - \"v1\": standardized format in content (consistent with `.contentBlocks`)\n *\n * You can also set `LC_OUTPUT_VERSION` as an environment variable to \"v1\" to\n * enable this by default.\n *\n * @default \"v0\"\n */\n outputVersion?: MessageOutputVersion;\n};\n\n/**\n * Represents the call options for a base chat model.\n */\nexport type BaseChatModelCallOptions = BaseLanguageModelCallOptions & {\n /**\n * Specifies how the chat model should use tools.\n * @default undefined\n *\n * Possible values:\n * - \"auto\": The model may choose to use any of the provided tools, or none.\n * - \"any\": The model must use one of the provided tools.\n * - \"none\": The model must not use any tools.\n * - A string (not \"auto\", \"any\", or \"none\"): The name of a specific tool the model must use.\n * - An object: A custom schema specifying tool choice parameters. Specific to the provider.\n *\n * Note: Not all providers support tool_choice. An error will be thrown\n * if used with an unsupported model.\n */\n tool_choice?: ToolChoice;\n /**\n * Version of `AIMessage` output format to store in message content.\n *\n * `AIMessage.contentBlocks` will lazily parse the contents of `content` into a\n * standard format. This flag can be used to additionally store the standard format\n * as the message content, e.g., for serialization purposes.\n *\n * - \"v0\": provider-specific format in content (can lazily parse with `.contentBlocks`)\n * - \"v1\": standardized format in content (consistent with `.contentBlocks`)\n *\n * You can also set `LC_OUTPUT_VERSION` as an environment variable to \"v1\" to\n * enable this by default.\n *\n * @default \"v0\"\n */\n outputVersion?: MessageOutputVersion;\n};\n\nfunction _formatForTracing(messages: BaseMessage[]): BaseMessage[] {\n const messagesToTrace: BaseMessage[] = [];\n for (const message of messages) {\n let messageToTrace = message;\n if (Array.isArray(message.content)) {\n for (let idx = 0; idx < message.content.length; idx++) {\n const block = message.content[idx];\n if (isURLContentBlock(block) || isBase64ContentBlock(block)) {\n if (messageToTrace === message) {\n // Also shallow-copy content\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n messageToTrace = new (message.constructor as any)({\n ...messageToTrace,\n content: [\n ...message.content.slice(0, idx),\n convertToOpenAIImageBlock(block),\n ...message.content.slice(idx + 1),\n ],\n });\n }\n }\n }\n }\n messagesToTrace.push(messageToTrace);\n }\n return messagesToTrace;\n}\n\nexport type LangSmithParams = {\n ls_provider?: string;\n ls_model_name?: string;\n ls_model_type: \"chat\";\n ls_temperature?: number;\n ls_max_tokens?: number;\n ls_stop?: Array<string>;\n};\n\nexport type BindToolsInput =\n | StructuredToolInterface\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n | Record<string, any>\n | ToolDefinition\n | RunnableToolLike\n | StructuredToolParams;\n\n/**\n * Base class for chat models. It extends the BaseLanguageModel class and\n * provides methods for generating chat based on input messages.\n */\nexport abstract class BaseChatModel<\n CallOptions extends BaseChatModelCallOptions = BaseChatModelCallOptions,\n // TODO: Fix the parameter order on the next minor version.\n OutputMessageType extends BaseMessageChunk = AIMessageChunk\n> extends BaseLanguageModel<OutputMessageType, CallOptions> {\n // Backwards compatibility since fields have been moved to RunnableConfig\n declare ParsedCallOptions: Omit<\n CallOptions,\n Exclude<keyof RunnableConfig, \"signal\" | \"timeout\" | \"maxConcurrency\">\n >;\n\n // Only ever instantiated in main LangChain\n lc_namespace = [\"langchain\", \"chat_models\", this._llmType()];\n\n disableStreaming = false;\n\n outputVersion?: MessageOutputVersion;\n\n get callKeys(): string[] {\n return [...super.callKeys, \"outputVersion\"];\n }\n\n constructor(fields: BaseChatModelParams) {\n super(fields);\n this.outputVersion = iife(() => {\n const outputVersion =\n fields.outputVersion ?? getEnvironmentVariable(\"LC_OUTPUT_VERSION\");\n if (outputVersion && [\"v0\", \"v1\"].includes(outputVersion)) {\n return outputVersion as \"v0\" | \"v1\";\n }\n return \"v0\";\n });\n }\n\n _combineLLMOutput?(\n ...llmOutputs: LLMResult[\"llmOutput\"][]\n ): LLMResult[\"llmOutput\"];\n\n protected _separateRunnableConfigFromCallOptionsCompat(\n options?: Partial<CallOptions>\n ): [RunnableConfig, this[\"ParsedCallOptions\"]] {\n // For backwards compat, keep `signal` in both runnableConfig and callOptions\n const [runnableConfig, callOptions] =\n super._separateRunnableConfigFromCallOptions(options);\n (callOptions as this[\"ParsedCallOptions\"]).signal = runnableConfig.signal;\n return [runnableConfig, callOptions as this[\"ParsedCallOptions\"]];\n }\n\n /**\n * Bind tool-like objects to this chat model.\n *\n * @param tools A list of tool definitions to bind to this chat model.\n * Can be a structured tool, an OpenAI formatted tool, or an object\n * matching the provider's specific tool schema.\n * @param kwargs Any additional parameters to bind.\n */\n bindTools?(\n tools: BindToolsInput[],\n kwargs?: Partial<CallOptions>\n ): Runnable<BaseLanguageModelInput, OutputMessageType, CallOptions>;\n\n /**\n * Invokes the chat model with a single input.\n * @param input The input for the language model.\n * @param options The call options.\n * @returns A Promise that resolves to a BaseMessageChunk.\n */\n async invoke(\n input: BaseLanguageModelInput,\n options?: CallOptions\n ): Promise<OutputMessageType> {\n const promptValue = BaseChatModel._convertInputToPromptValue(input);\n const result = await this.generatePrompt(\n [promptValue],\n options,\n options?.callbacks\n );\n const chatGeneration = result.generations[0][0] as ChatGeneration;\n // TODO: Remove cast after figuring out inheritance\n return chatGeneration.message as OutputMessageType;\n }\n\n // eslint-disable-next-line require-yield\n async *_streamResponseChunks(\n _messages: BaseMessage[],\n _options: this[\"ParsedCallOptions\"],\n _runManager?: CallbackManagerForLLMRun\n ): AsyncGenerator<ChatGenerationChunk> {\n throw new Error(\"Not implemented.\");\n }\n\n async *_streamIterator(\n input: BaseLanguageModelInput,\n options?: CallOptions\n ): AsyncGenerator<OutputMessageType> {\n // Subclass check required to avoid double callbacks with default implementation\n if (\n this._streamResponseChunks ===\n BaseChatModel.prototype._streamResponseChunks ||\n this.disableStreaming\n ) {\n yield this.invoke(input, options);\n } else {\n const prompt = BaseChatModel._convertInputToPromptValue(input);\n const messages = prompt.toChatMessages();\n const [runnableConfig, callOptions] =\n this._separateRunnableConfigFromCallOptionsCompat(options);\n\n const inheritableMetadata = {\n ...runnableConfig.metadata,\n ...this.getLsParams(callOptions),\n };\n const callbackManager_ = await CallbackManager.configure(\n runnableConfig.callbacks,\n this.callbacks,\n runnableConfig.tags,\n this.tags,\n inheritableMetadata,\n this.metadata,\n { verbose: this.verbose }\n );\n const extra = {\n options: callOptions,\n invocation_params: this?.invocationParams(callOptions),\n batch_size: 1,\n };\n const outputVersion = callOptions.outputVersion ?? this.outputVersion;\n const runManagers = await callbackManager_?.handleChatModelStart(\n this.toJSON(),\n [_formatForTracing(messages)],\n runnableConfig.runId,\n undefined,\n extra,\n undefined,\n undefined,\n runnableConfig.runName\n );\n let generationChunk: ChatGenerationChunk | undefined;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let llmOutput: Record<string, any> | undefined;\n try {\n for await (const chunk of this._streamResponseChunks(\n messages,\n callOptions,\n runManagers?.[0]\n )) {\n if (chunk.message.id == null) {\n const runId = runManagers?.at(0)?.runId;\n if (runId != null) chunk.message._updateId(`run-${runId}`);\n }\n chunk.message.response_metadata = {\n ...chunk.generationInfo,\n ...chunk.message.response_metadata,\n };\n if (outputVersion === \"v1\") {\n yield castStandardMessageContent(\n chunk.message\n ) as OutputMessageType;\n } else {\n yield chunk.message as OutputMessageType;\n }\n if (!generationChunk) {\n generationChunk = chunk;\n } else {\n generationChunk = generationChunk.concat(chunk);\n }\n if (\n isAIMessageChunk(chunk.message) &&\n chunk.message.usage_metadata !== undefined\n ) {\n llmOutput = {\n tokenUsage: {\n promptTokens: chunk.message.usage_metadata.input_tokens,\n completionTokens: chunk.message.usage_metadata.output_tokens,\n totalTokens: chunk.message.usage_metadata.total_tokens,\n },\n };\n }\n }\n } catch (err) {\n await Promise.all(\n (runManagers ?? []).map((runManager) =>\n runManager?.handleLLMError(err)\n )\n );\n throw err;\n }\n await Promise.all(\n (runManagers ?? []).map((runManager) =>\n runManager?.handleLLMEnd({\n // TODO: Remove cast after figuring out inheritance\n generations: [[generationChunk as ChatGeneration]],\n llmOutput,\n })\n )\n );\n }\n }\n\n getLsParams(options: this[\"ParsedCallOptions\"]): LangSmithParams {\n const providerName = this.getName().startsWith(\"Chat\")\n ? this.getName().replace(\"Chat\", \"\")\n : this.getName();\n\n return {\n ls_model_type: \"chat\",\n ls_stop: options.stop,\n ls_provider: providerName,\n };\n }\n\n /** @ignore */\n async _generateUncached(\n messages: BaseMessageLike[][],\n parsedOptions: this[\"ParsedCallOptions\"],\n handledOptions: RunnableConfig,\n startedRunManagers?: CallbackManagerForLLMRun[]\n ): Promise<LLMResult> {\n const baseMessages = messages.map((messageList) =>\n messageList.map(coerceMessageLikeToMessage)\n );\n\n let runManagers: CallbackManagerForLLMRun[] | undefined;\n if (\n startedRunManagers !== undefined &&\n startedRunManagers.length === baseMessages.length\n ) {\n runManagers = startedRunManagers;\n } else {\n const inheritableMetadata = {\n ...handledOptions.metadata,\n ...this.getLsParams(parsedOptions),\n };\n // create callback manager and start run\n const callbackManager_ = await CallbackManager.configure(\n handledOptions.callbacks,\n this.callbacks,\n handledOptions.tags,\n this.tags,\n inheritableMetadata,\n this.metadata,\n { verbose: this.verbose }\n );\n const extra = {\n options: parsedOptions,\n invocation_params: this?.invocationParams(parsedOptions),\n batch_size: 1,\n };\n runManagers = await callbackManager_?.handleChatModelStart(\n this.toJSON(),\n baseMessages.map(_formatForTracing),\n handledOptions.runId,\n undefined,\n extra,\n undefined,\n undefined,\n handledOptions.runName\n );\n }\n const outputVersion = parsedOptions.outputVersion ?? this.outputVersion;\n const generations: ChatGeneration[][] = [];\n const llmOutputs: LLMResult[\"llmOutput\"][] = [];\n // Even if stream is not explicitly called, check if model is implicitly\n // called from streamEvents() or streamLog() to get all streamed events.\n // Bail out if _streamResponseChunks not overridden\n const hasStreamingHandler = !!runManagers?.[0].handlers.find(\n callbackHandlerPrefersStreaming\n );\n if (\n hasStreamingHandler &&\n !this.disableStreaming &&\n baseMessages.length === 1 &&\n this._streamResponseChunks !==\n BaseChatModel.prototype._streamResponseChunks\n ) {\n try {\n const stream = await this._streamResponseChunks(\n baseMessages[0],\n parsedOptions,\n runManagers?.[0]\n );\n let aggregated;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let llmOutput: Record<string, any> | undefined;\n for await (const chunk of stream) {\n if (chunk.message.id == null) {\n const runId = runManagers?.at(0)?.runId;\n if (runId != null) chunk.message._updateId(`run-${runId}`);\n }\n if (aggregated === undefined) {\n aggregated = chunk;\n } else {\n aggregated = concat(aggregated, chunk);\n }\n if (\n isAIMessageChunk(chunk.message) &&\n chunk.message.usage_metadata !== undefined\n ) {\n llmOutput = {\n tokenUsage: {\n promptTokens: chunk.message.usage_metadata.input_tokens,\n completionTokens: chunk.message.usage_metadata.output_tokens,\n totalTokens: chunk.message.usage_metadata.total_tokens,\n },\n };\n }\n }\n if (aggregated === undefined) {\n throw new Error(\"Received empty response from chat model call.\");\n }\n generations.push([aggregated]);\n await runManagers?.[0].handleLLMEnd({\n generations,\n llmOutput,\n });\n } catch (e) {\n await runManagers?.[0].handleLLMError(e);\n throw e;\n }\n } else {\n // generate results\n const results = await Promise.allSettled(\n baseMessages.map(async (messageList, i) => {\n const generateResults = await this._generate(\n messageList,\n { ...parsedOptions, promptIndex: i },\n runManagers?.[i]\n );\n if (outputVersion === \"v1\") {\n for (const generation of generateResults.generations) {\n generation.message = castStandardMessageContent(\n generation.message\n );\n }\n }\n return generateResults;\n })\n );\n // handle results\n await Promise.all(\n results.map(async (pResult, i) => {\n if (pResult.status === \"fulfilled\") {\n const result = pResult.value;\n for (const generation of result.generations) {\n if (generation.message.id == null) {\n const runId = runManagers?.at(0)?.runId;\n if (runId != null) generation.message._updateId(`run-${runId}`);\n }\n generation.message.response_metadata = {\n ...generation.generationInfo,\n ...generation.message.response_metadata,\n };\n }\n if (result.generations.length === 1) {\n result.generations[0].message.response_metadata = {\n ...result.llmOutput,\n ...result.generations[0].message.response_metadata,\n };\n }\n generations[i] = result.generations;\n llmOutputs[i] = result.llmOutput;\n return runManagers?.[i]?.handleLLMEnd({\n generations: [result.generations],\n llmOutput: result.llmOutput,\n });\n } else {\n // status === \"rejected\"\n await runManagers?.[i]?.handleLLMError(pResult.reason);\n return Promise.reject(pResult.reason);\n }\n })\n );\n }\n // create combined output\n const output: LLMResult = {\n generations,\n llmOutput: llmOutputs.length\n ? this._combineLLMOutput?.(...llmOutputs)\n : undefined,\n };\n Object.defineProperty(output, RUN_KEY, {\n value: runManagers\n ? { runIds: runManagers?.map((manager) => manager.runId) }\n : undefined,\n configurable: true,\n });\n return output;\n }\n\n async _generateCached({\n messages,\n cache,\n llmStringKey,\n parsedOptions,\n handledOptions,\n }: {\n messages: BaseMessageLike[][];\n cache: BaseCache<Generation[]>;\n llmStringKey: string;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n parsedOptions: any;\n handledOptions: RunnableConfig;\n }): Promise<\n LLMResult & {\n missingPromptIndices: number[];\n startedRunManagers?: CallbackManagerForLLMRun[];\n }\n > {\n const baseMessages = messages.map((messageList) =>\n messageList.map(coerceMessageLikeToMessage)\n );\n\n const inheritableMetadata = {\n ...handledOptions.metadata,\n ...this.getLsParams(parsedOptions),\n };\n // create callback manager and start run\n const callbackManager_ = await CallbackManager.configure(\n handledOptions.callbacks,\n this.callbacks,\n handledOptions.tags,\n this.tags,\n inheritableMetadata,\n this.metadata,\n { verbose: this.verbose }\n );\n const extra = {\n options: parsedOptions,\n invocation_params: this?.invocationParams(parsedOptions),\n batch_size: 1,\n };\n const runManagers = await callbackManager_?.handleChatModelStart(\n this.toJSON(),\n baseMessages.map(_formatForTracing),\n handledOptions.runId,\n undefined,\n extra,\n undefined,\n undefined,\n handledOptions.runName\n );\n\n // generate results\n const missingPromptIndices: number[] = [];\n const results = await Promise.allSettled(\n baseMessages.map(async (baseMessage, index) => {\n // Join all content into one string for the prompt index\n const prompt =\n BaseChatModel._convertInputToPromptValue(baseMessage).toString();\n const result = await cache.lookup(prompt, llmStringKey);\n\n if (result == null) {\n missingPromptIndices.push(index);\n }\n\n return result;\n })\n );\n\n // Map run managers to the results before filtering out null results\n // Null results are just absent from the cache.\n const cachedResults = results\n .map((result, index) => ({ result, runManager: runManagers?.[index] }))\n .filter(\n ({ result }) =>\n (result.status === \"fulfilled\" && result.value != null) ||\n result.status === \"rejected\"\n );\n\n // Handle results and call run managers\n const outputVersion = parsedOptions.outputVersion ?? this.outputVersion;\n const generations: Generation[][] = [];\n await Promise.all(\n cachedResults.map(async ({ result: promiseResult, runManager }, i) => {\n if (promiseResult.status === \"fulfilled\") {\n const result = promiseResult.value as Generation[];\n generations[i] = result.map((result) => {\n if (\n \"message\" in result &&\n isBaseMessage(result.message) &&\n isAIMessage(result.message)\n ) {\n result.message.usage_metadata = {\n input_tokens: 0,\n output_tokens: 0,\n total_tokens: 0,\n };\n if (outputVersion === \"v1\") {\n result.message = castStandardMessageContent(result.message);\n }\n }\n result.generationInfo = {\n ...result.generationInfo,\n tokenUsage: {},\n };\n return result;\n });\n if (result.length) {\n await runManager?.handleLLMNewToken(result[0].text);\n }\n return runManager?.handleLLMEnd(\n {\n generations: [result],\n },\n undefined,\n undefined,\n undefined,\n {\n cached: true,\n }\n );\n } else {\n // status === \"rejected\"\n await runManager?.handleLLMError(\n promiseResult.reason,\n undefined,\n undefined,\n undefined,\n {\n cached: true,\n }\n );\n return Promise.reject(promiseResult.reason);\n }\n })\n );\n\n const output = {\n generations,\n missingPromptIndices,\n startedRunManagers: runManagers,\n };\n\n // This defines RUN_KEY as a non-enumerable property on the output object\n // so that it is not serialized when the output is stringified, and so that\n // it isnt included when listing the keys of the output object.\n Object.defineProperty(output, RUN_KEY, {\n value: runManagers\n ? { runIds: runManagers?.map((manager) => manager.runId) }\n : undefined,\n configurable: true,\n });\n\n return output;\n }\n\n /**\n * Generates chat based on the input messages.\n * @param messages An array of arrays of BaseMessage instances.\n * @param options The call options or an array of stop sequences.\n * @param callbacks The callbacks for the language model.\n * @returns A Promise that resolves to an LLMResult.\n */\n async generate(\n messages: BaseMessageLike[][],\n options?: string[] | CallOptions,\n callbacks?: Callbacks\n ): Promise<LLMResult> {\n // parse call options\n let parsedOptions: CallOptions | undefined;\n if (Array.isArray(options)) {\n parsedOptions = { stop: options } as CallOptions;\n } else {\n parsedOptions = options;\n }\n\n const baseMessages = messages.map((messageList) =>\n messageList.map(coerceMessageLikeToMessage)\n );\n\n const [runnableConfig, callOptions] =\n this._separateRunnableConfigFromCallOptionsCompat(parsedOptions);\n runnableConfig.callbacks = runnableConfig.callbacks ?? callbacks;\n\n if (!this.cache) {\n return this._generateUncached(baseMessages, callOptions, runnableConfig);\n }\n\n const { cache } = this;\n const llmStringKey = this._getSerializedCacheKeyParametersForCall(\n callOptions as CallOptions\n );\n\n const { generations, missingPromptIndices, startedRunManagers } =\n await this._generateCached({\n messages: baseMessages,\n cache,\n llmStringKey,\n parsedOptions: callOptions,\n handledOptions: runnableConfig,\n });\n\n let llmOutput = {};\n if (missingPromptIndices.length > 0) {\n const results = await this._generateUncached(\n missingPromptIndices.map((i) => baseMessages[i]),\n callOptions,\n runnableConfig,\n startedRunManagers !== undefined\n ? missingPromptIndices.map((i) => startedRunManagers?.[i])\n : undefined\n );\n await Promise.all(\n results.generations.map(async (generation, index) => {\n const promptIndex = missingPromptIndices[index];\n generations[promptIndex] = generation;\n // Join all content into one string for the prompt index\n const prompt = BaseChatModel._convertInputToPromptValue(\n baseMessages[promptIndex]\n ).toString();\n return cache.update(prompt, llmStringKey, generation);\n })\n );\n llmOutput = results.llmOutput ?? {};\n }\n\n return { generations, llmOutput } as LLMResult;\n }\n\n /**\n * Get the parameters used to invoke the model\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n invocationParams(_options?: this[\"ParsedCallOptions\"]): any {\n return {};\n }\n\n _modelType(): string {\n return \"base_chat_model\" as const;\n }\n\n abstract _llmType(): string;\n\n /**\n * Generates a prompt based on the input prompt values.\n * @param promptValues An array of BasePromptValue instances.\n * @param options The call options or an array of stop sequences.\n * @param callbacks The callbacks for the language model.\n * @returns A Promise that resolves to an LLMResult.\n */\n async generatePrompt(\n promptValues: BasePromptValueInterface[],\n options?: string[] | CallOptions,\n callbacks?: Callbacks\n ): Promise<LLMResult> {\n const promptMessages: BaseMessage[][] = promptValues.map((promptValue) =>\n promptValue.toChatMessages()\n );\n return this.generate(promptMessages, options, callbacks);\n }\n\n abstract _generate(\n messages: BaseMessage[],\n options: this[\"ParsedCallOptions\"],\n runManager?: CallbackManagerForLLMRun\n ): Promise<ChatResult>;\n\n withStructuredOutput<\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n RunOutput extends Record<string, any> = Record<string, any>\n >(\n outputSchema:\n | ZodTypeV4<RunOutput>\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n | Record<string, any>,\n config?: StructuredOutputMethodOptions<false>\n ): Runnable<BaseLanguageModelInput, RunOutput>;\n\n withStructuredOutput<\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n RunOutput extends Record<string, any> = Record<string, any>\n >(\n outputSchema:\n | ZodTypeV4<RunOutput>\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n | Record<string, any>,\n config?: StructuredOutputMethodOptions<true>\n ): Runnable<BaseLanguageModelInput, { raw: BaseMessage; parsed: RunOutput }>;\n\n withStructuredOutput<\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n RunOutput extends Record<string, any> = Record<string, any>\n >(\n outputSchema:\n | ZodTypeV3<RunOutput>\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n | Record<string, any>,\n config?: StructuredOutputMethodOptions<false>\n ): Runnable<BaseLanguageModelInput, RunOutput>;\n\n withStructuredOutput<\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n RunOutput extends Record<string, any> = Record<string, any>\n >(\n outputSchema:\n | ZodTypeV3<RunOutput>\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n | Record<string, any>,\n config?: StructuredOutputMethodOptions<true>\n ): Runnable<BaseLanguageModelInput, { raw: BaseMessage; parsed: RunOutput }>;\n\n withStructuredOutput<\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n RunOutput extends Record<string, any> = Record<string, any>\n >(\n outputSchema:\n | InteropZodType<RunOutput>\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n | Record<string, any>,\n config?: StructuredOutputMethodOptions<boolean>\n ):\n | Runnable<BaseLanguageModelInput, RunOutput>\n | Runnable<\n BaseLanguageModelInput,\n {\n raw: BaseMessage;\n parsed: RunOutput;\n }\n > {\n if (typeof this.bindTools !== \"function\") {\n throw new Error(\n `Chat model must implement \".bindTools()\" to use withStructuredOutput.`\n );\n }\n if (config?.strict) {\n throw new Error(\n `\"strict\" mode is not supported for this model by default.`\n );\n }\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const schema: Record<string, any> | InteropZodType<RunOutput> =\n outputSchema;\n const name = config?.name;\n const description =\n getSchemaDescription(schema) ?? \"A function available to call.\";\n const method = config?.method;\n const includeRaw = config?.includeRaw;\n if (method === \"jsonMode\") {\n throw new Error(\n `Base withStructuredOutput implementation only supports \"functionCalling\" as a method.`\n );\n }\n\n let functionName = name ?? \"extract\";\n let tools: ToolDefinition[];\n if (isInteropZodSchema(schema)) {\n tools = [\n {\n type: \"function\",\n function: {\n name: functionName,\n description,\n parameters: toJsonSchema(schema),\n },\n },\n ];\n } else {\n if (\"name\" in schema) {\n functionName = schema.name;\n }\n tools = [\n {\n type: \"function\",\n function: {\n name: functionName,\n description,\n parameters: schema,\n },\n },\n ];\n }\n\n const llm = this.bindTools(tools);\n const outputParser = RunnableLambda.from<OutputMessageType, RunOutput>(\n (input: BaseMessageChunk): RunOutput => {\n if (!AIMessageChunk.isInstance(input)) {\n throw new Error(\"Input is not an AIMessageChunk.\");\n }\n if (!input.tool_calls || input.tool_calls.length === 0) {\n throw new Error(\"No tool calls found in the response.\");\n }\n const toolCall = input.tool_calls.find(\n (tc) => tc.name === functionName\n );\n if (!toolCall) {\n throw new Error(`No tool call found with name ${functionName}.`);\n }\n return toolCall.args as RunOutput;\n }\n );\n\n if (!includeRaw) {\n return llm.pipe(outputParser).withConfig({\n runName: \"StructuredOutput\",\n }) as Runnable<BaseLanguageModelInput, RunOutput>;\n }\n\n const parserAssign = RunnablePassthrough.assign({\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n parsed: (input: any, config) => outputParser.invoke(input.raw, config),\n });\n const parserNone = RunnablePassthrough.assign({\n parsed: () => null,\n });\n const parsedWithFallback = parserAssign.withFallbacks({\n fallbacks: [parserNone],\n });\n return RunnableSequence.from<\n BaseLanguageModelInput,\n { raw: BaseMessage; parsed: RunOutput }\n >([\n {\n raw: llm,\n },\n parsedWithFallback,\n ]).withConfig({\n runName: \"StructuredOutputRunnable\",\n });\n }\n}\n\n/**\n * An abstract class that extends BaseChatModel and provides a simple\n * implementation of _generate.\n */\nexport abstract class SimpleChatModel<\n CallOptions extends BaseChatModelCallOptions = BaseChatModelCallOptions\n> extends BaseChatModel<CallOptions> {\n abstract _call(\n messages: BaseMessage[],\n options: this[\"ParsedCallOptions\"],\n runManager?: CallbackManagerForLLMRun\n ): Promise<string>;\n\n async _generate(\n messages: BaseMessage[],\n options: this[\"ParsedCallOptions\"],\n runManager?: CallbackManagerForLLMRun\n ): Promise<ChatResult> {\n const text = await this._call(messages, options, runManager);\n const message = new AIMessage(text);\n if (typeof message.content !== \"string\") {\n throw new Error(\n \"Cannot generate with a simple chat model when output is not a string.\"\n );\n }\n return {\n generations: [\n {\n text: message.content,\n message,\n },\n ],\n };\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"chat_models.js","names":[],"sources":["../../src/language_models/chat_models.ts"],"sourcesContent":["import type { ZodV3Like, ZodV4Like } from \"../utils/types/zod.js\";\nimport {\n AIMessage,\n type BaseMessage,\n BaseMessageChunk,\n type BaseMessageLike,\n coerceMessageLikeToMessage,\n AIMessageChunk,\n isAIMessageChunk,\n isBaseMessage,\n isAIMessage,\n MessageOutputVersion,\n} from \"../messages/index.js\";\nimport {\n convertToOpenAIImageBlock,\n isURLContentBlock,\n isBase64ContentBlock,\n} from \"../messages/content/data.js\";\nimport type { BasePromptValueInterface } from \"../prompt_values.js\";\nimport {\n LLMResult,\n RUN_KEY,\n type ChatGeneration,\n ChatGenerationChunk,\n type ChatResult,\n type Generation,\n} from \"../outputs.js\";\nimport {\n BaseLanguageModel,\n type StructuredOutputMethodOptions,\n type ToolDefinition,\n type BaseLanguageModelCallOptions,\n type BaseLanguageModelInput,\n type BaseLanguageModelParams,\n} from \"./base.js\";\nimport {\n CallbackManager,\n type CallbackManagerForLLMRun,\n type Callbacks,\n} from \"../callbacks/manager.js\";\nimport type { RunnableConfig } from \"../runnables/config.js\";\nimport type { BaseCache } from \"../caches/index.js\";\nimport {\n StructuredToolInterface,\n StructuredToolParams,\n} from \"../tools/index.js\";\nimport {\n Runnable,\n RunnableLambda,\n RunnableToolLike,\n} from \"../runnables/base.js\";\nimport { concat } from \"../utils/stream.js\";\nimport {\n getSchemaDescription,\n InteropZodType,\n isInteropZodSchema,\n} from \"../utils/types/zod.js\";\nimport { ModelAbortError } from \"../errors/index.js\";\nimport {\n callbackHandlerPrefersChatModelStreamEvents,\n callbackHandlerPrefersStreaming,\n} from \"../callbacks/base.js\";\nimport { toJsonSchema } from \"../utils/json_schema.js\";\nimport { getEnvironmentVariable } from \"../utils/env.js\";\nimport { castStandardMessageContent, iife } from \"./utils.js\";\nimport {\n isSerializableSchema,\n type SerializableSchema,\n} from \"../utils/standard_schema.js\";\nimport { assembleStructuredOutputPipeline } from \"./structured_output.js\";\nimport type { ChatModelStreamEvent } from \"./event.js\";\nimport { ChatModelStream } from \"./stream.js\";\nimport { convertChunksToEvents } from \"./compat.js\";\nimport {\n EventStreamCallbackHandlerInput,\n StreamEvent,\n} from \"../tracers/event_stream.js\";\nimport { IterableReadableStream } from \"../utils/stream.js\";\n\n// oxlint-disable-next-line @typescript-eslint/no-explicit-any\nexport type ToolChoice = string | Record<string, any> | \"auto\" | \"any\";\n\n/**\n * Represents a serialized chat model.\n */\nexport type SerializedChatModel = {\n _model: string;\n _type: string;\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n} & Record<string, any>;\n\n// todo?\n/**\n * Represents a serialized large language model.\n */\nexport type SerializedLLM = {\n _model: string;\n _type: string;\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n} & Record<string, any>;\n\n/**\n * Represents the parameters for a base chat model.\n */\nexport type BaseChatModelParams = BaseLanguageModelParams & {\n /**\n * Whether to disable streaming.\n *\n * If streaming is bypassed, then `stream()` will defer to\n * `invoke()`.\n *\n * - If true, will always bypass streaming case.\n * - If false (default), will always use streaming case if available.\n */\n disableStreaming?: boolean;\n /**\n * Version of `AIMessage` output format to store in message content.\n *\n * `AIMessage.contentBlocks` will lazily parse the contents of `content` into a\n * standard format. This flag can be used to additionally store the standard format\n * as the message content, e.g., for serialization purposes.\n *\n * - \"v0\": provider-specific format in content (can lazily parse with `.contentBlocks`)\n * - \"v1\": standardized format in content (consistent with `.contentBlocks`)\n *\n * You can also set `LC_OUTPUT_VERSION` as an environment variable to \"v1\" to\n * enable this by default.\n *\n * @default \"v0\"\n */\n outputVersion?: MessageOutputVersion;\n};\n\n/**\n * Represents the call options for a base chat model.\n */\nexport type BaseChatModelCallOptions = BaseLanguageModelCallOptions & {\n /**\n * Specifies how the chat model should use tools.\n * @default undefined\n *\n * Possible values:\n * - \"auto\": The model may choose to use any of the provided tools, or none.\n * - \"any\": The model must use one of the provided tools.\n * - \"none\": The model must not use any tools.\n * - A string (not \"auto\", \"any\", or \"none\"): The name of a specific tool the model must use.\n * - An object: A custom schema specifying tool choice parameters. Specific to the provider.\n *\n * Note: Not all providers support tool_choice. An error will be thrown\n * if used with an unsupported model.\n */\n tool_choice?: ToolChoice;\n /**\n * Version of `AIMessage` output format to store in message content.\n *\n * `AIMessage.contentBlocks` will lazily parse the contents of `content` into a\n * standard format. This flag can be used to additionally store the standard format\n * as the message content, e.g., for serialization purposes.\n *\n * - \"v0\": provider-specific format in content (can lazily parse with `.contentBlocks`)\n * - \"v1\": standardized format in content (consistent with `.contentBlocks`)\n *\n * You can also set `LC_OUTPUT_VERSION` as an environment variable to \"v1\" to\n * enable this by default.\n *\n * @default \"v0\"\n */\n outputVersion?: MessageOutputVersion;\n};\n\nfunction _formatForTracing(messages: BaseMessage[]): BaseMessage[] {\n const messagesToTrace: BaseMessage[] = [];\n for (const message of messages) {\n let messageToTrace = message;\n if (Array.isArray(message.content)) {\n for (let idx = 0; idx < message.content.length; idx++) {\n const block = message.content[idx];\n if (isURLContentBlock(block) || isBase64ContentBlock(block)) {\n if (messageToTrace === message) {\n // Also shallow-copy content\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n messageToTrace = new (message.constructor as any)({\n ...messageToTrace,\n content: [\n ...message.content.slice(0, idx),\n convertToOpenAIImageBlock(block),\n ...message.content.slice(idx + 1),\n ],\n });\n }\n }\n }\n }\n messagesToTrace.push(messageToTrace);\n }\n return messagesToTrace;\n}\n\nexport type LangSmithParams = {\n ls_provider?: string;\n ls_model_name?: string;\n ls_model_type: \"chat\";\n ls_temperature?: number;\n ls_max_tokens?: number;\n ls_stop?: Array<string>;\n ls_integration?: string;\n};\n\nexport type BindToolsInput =\n | StructuredToolInterface\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n | Record<string, any>\n | ToolDefinition\n | RunnableToolLike\n | StructuredToolParams;\n\n/**\n * Base class for chat models. It extends the BaseLanguageModel class and\n * provides methods for generating chat based on input messages.\n */\nexport abstract class BaseChatModel<\n CallOptions extends BaseChatModelCallOptions = BaseChatModelCallOptions,\n // TODO: Fix the parameter order on the next minor version.\n OutputMessageType extends BaseMessageChunk = AIMessageChunk,\n> extends BaseLanguageModel<OutputMessageType, CallOptions> {\n // Backwards compatibility since fields have been moved to RunnableConfig\n declare ParsedCallOptions: Omit<\n CallOptions,\n Exclude<keyof RunnableConfig, \"signal\" | \"timeout\" | \"maxConcurrency\">\n >;\n\n // Only ever instantiated in main LangChain\n lc_namespace = [\"langchain\", \"chat_models\", this._llmType()];\n\n disableStreaming = false;\n\n outputVersion?: MessageOutputVersion;\n\n get callKeys(): string[] {\n return [...super.callKeys, \"outputVersion\"];\n }\n\n constructor(fields: BaseChatModelParams) {\n super(fields);\n this.outputVersion = iife(() => {\n const outputVersion =\n fields.outputVersion ?? getEnvironmentVariable(\"LC_OUTPUT_VERSION\");\n if (outputVersion && [\"v0\", \"v1\"].includes(outputVersion)) {\n return outputVersion as \"v0\" | \"v1\";\n }\n return \"v0\";\n });\n }\n\n _combineLLMOutput?(\n ...llmOutputs: LLMResult[\"llmOutput\"][]\n ): LLMResult[\"llmOutput\"];\n\n protected _separateRunnableConfigFromCallOptionsCompat(\n options?: Partial<CallOptions>\n ): [RunnableConfig, this[\"ParsedCallOptions\"]] {\n // For backwards compat, keep `signal` in both runnableConfig and callOptions\n const [runnableConfig, callOptions] =\n super._separateRunnableConfigFromCallOptions(options);\n (callOptions as this[\"ParsedCallOptions\"]).signal = runnableConfig.signal;\n return [runnableConfig, callOptions as this[\"ParsedCallOptions\"]];\n }\n\n /**\n * Bind tool-like objects to this chat model.\n *\n * @param tools A list of tool definitions to bind to this chat model.\n * Can be a structured tool, an OpenAI formatted tool, or an object\n * matching the provider's specific tool schema.\n * @param kwargs Any additional parameters to bind.\n */\n bindTools?(\n tools: BindToolsInput[],\n kwargs?: Partial<CallOptions>\n ): Runnable<BaseLanguageModelInput, OutputMessageType, CallOptions>;\n\n /**\n * Invokes the chat model with a single input.\n * @param input The input for the language model.\n * @param options The call options.\n * @returns A Promise that resolves to a BaseMessageChunk.\n */\n async invoke(\n input: BaseLanguageModelInput,\n options?: Partial<CallOptions>\n ): Promise<OutputMessageType> {\n const promptValue = BaseChatModel._convertInputToPromptValue(input);\n const result = await this.generatePrompt(\n [promptValue],\n options,\n options?.callbacks\n );\n const chatGeneration = result.generations[0][0] as ChatGeneration;\n // TODO: Remove cast after figuring out inheritance\n return chatGeneration.message as OutputMessageType;\n }\n\n // oxlint-disable-next-line require-yield\n async *_streamResponseChunks(\n _messages: BaseMessage[],\n _options: this[\"ParsedCallOptions\"],\n _runManager?: CallbackManagerForLLMRun\n ): AsyncGenerator<ChatGenerationChunk> {\n throw new Error(\"Not implemented.\");\n }\n\n /**\n * Stream chat model events using the new content-block-centric protocol.\n *\n * Override this method to provide native event streaming from the provider SDK.\n * The default implementation bridges from `_streamResponseChunks` by\n * synthesizing lifecycle events from `ChatGenerationChunk` objects.\n *\n * ## Event lifecycle\n *\n * ```\n * MessageStart\n * -> ContentBlockStart(index, contentBlock)\n * -> ContentBlockDelta(index, delta) ...\n * -> ContentBlockFinish(index, contentBlock)\n * -> MessageFinish(reason, usage?)\n * ```\n *\n * Content blocks may interleave (e.g., parallel tool calls). The only\n * invariant: a block's start precedes its deltas, and its deltas precede\n * its finish.\n *\n * @param messages - The input messages.\n * @param options - Parsed call options.\n * @param runManager - Optional callback manager for the run.\n * @returns An async generator of {@link ChatModelStreamEvent}.\n */\n async *_streamChatModelEvents(\n messages: BaseMessage[],\n options: this[\"ParsedCallOptions\"],\n runManager?: CallbackManagerForLLMRun\n ): AsyncGenerator<ChatModelStreamEvent> {\n // Default: bridge from legacy _streamResponseChunks\n const chunks = this._streamResponseChunks(messages, options, runManager);\n yield* convertChunksToEvents(chunks, { signal: options.signal });\n }\n\n /**\n * @deprecated Use {@link BaseChatModel.streamEvents} without a `version`\n * option for content-block streaming instead.\n */\n streamEvents(\n input: BaseLanguageModelInput,\n options: Partial<CallOptions> & { version: \"v2\" },\n streamOptions?: Omit<EventStreamCallbackHandlerInput, \"autoClose\">\n ): IterableReadableStream<StreamEvent>;\n\n /**\n * @deprecated Use {@link BaseChatModel.streamEvents} without a `version`\n * option for content-block streaming instead.\n */\n streamEvents(\n input: BaseLanguageModelInput,\n options: Partial<CallOptions> & {\n version: \"v2\";\n encoding: \"text/event-stream\";\n },\n streamOptions?: Omit<EventStreamCallbackHandlerInput, \"autoClose\">\n ): IterableReadableStream<Uint8Array>;\n\n /**\n * @deprecated Use {@link BaseChatModel.streamEvents} without a `version`\n * option for content-block streaming instead.\n */\n streamEvents(\n input: BaseLanguageModelInput,\n options: Partial<CallOptions> & { version: \"v1\" },\n streamOptions?: Omit<EventStreamCallbackHandlerInput, \"autoClose\">\n ): IterableReadableStream<StreamEvent>;\n\n /**\n * @deprecated Use {@link BaseChatModel.streamEvents} without a `version`\n * option for content-block streaming instead.\n */\n streamEvents(\n input: BaseLanguageModelInput,\n options: Partial<CallOptions> & {\n version: \"v1\";\n encoding: \"text/event-stream\";\n },\n streamOptions?: Omit<EventStreamCallbackHandlerInput, \"autoClose\">\n ): IterableReadableStream<Uint8Array>;\n\n /**\n * @deprecated Use {@link BaseChatModel.streamEvents} without a `version`\n * option for content-block streaming instead.\n */\n streamEvents(\n input: BaseLanguageModelInput,\n options: Partial<CallOptions> & { version: \"v1\" | \"v2\" },\n streamOptions?: Omit<EventStreamCallbackHandlerInput, \"autoClose\">\n ): IterableReadableStream<StreamEvent>;\n\n /**\n * @deprecated Use {@link BaseChatModel.streamEvents} without a `version`\n * option for content-block streaming instead.\n */\n streamEvents(\n input: BaseLanguageModelInput,\n options: Partial<CallOptions> & {\n version: \"v1\" | \"v2\";\n encoding: \"text/event-stream\";\n },\n streamOptions?: Omit<EventStreamCallbackHandlerInput, \"autoClose\">\n ): IterableReadableStream<Uint8Array>;\n\n /**\n * Create a {@link ChatModelStream} for the given input.\n *\n * Returns a stream object that is both `AsyncIterable<ChatModelStreamEvent>`\n * and `PromiseLike<AIMessage>`, with typed sub-stream accessors for\n * `.text`, `.toolCalls`, `.reasoning`, and `.usage`.\n *\n * @param input - The input messages.\n * @param options - Optional call options.\n * @returns A {@link ChatModelStream}.\n *\n * When `options.version` is `\"v1\"` or `\"v2\"`, this delegates to\n * {@link Runnable.streamEvents} for callback-based tracing events instead.\n * That path is deprecated on chat models; prefer calling `streamEvents()`\n * without a `version` option.\n *\n * @example\n * ```ts\n * const stream = model.streamEvents([{ role: \"user\", content: \"Hello\" }]);\n *\n * // Stream text\n * for await (const token of stream.text) {\n * process.stdout.write(token);\n * }\n *\n * // Stream tool calls\n * for await (const toolCall of stream.toolCalls) {\n * console.log(toolCall);\n * }\n *\n * // Stream reasoning\n * for await (const reasoning of stream.reasoning) {\n * console.log(reasoning);\n * }\n *\n * // Stream usage\n * for await (const usage of stream.usage) {\n * console.log(usage);\n * }\n *\n * // Or await the full message\n * const message = await stream;\n * ```\n */\n streamEvents(\n input: BaseLanguageModelInput,\n options?: Partial<CallOptions>\n ): ChatModelStream;\n\n streamEvents(\n input: BaseLanguageModelInput,\n options?: Partial<CallOptions> & {\n version?: \"v1\" | \"v2\";\n encoding?: \"text/event-stream\" | undefined;\n },\n streamOptions?: Omit<EventStreamCallbackHandlerInput, \"autoClose\">\n ): ChatModelStream | IterableReadableStream<StreamEvent | Uint8Array> {\n if (options?.version === \"v1\" || options?.version === \"v2\") {\n return super.streamEvents(\n input,\n options as Partial<CallOptions> & {\n version: \"v1\" | \"v2\";\n encoding?: \"text/event-stream\" | undefined;\n },\n streamOptions\n );\n }\n\n const prompt = BaseChatModel._convertInputToPromptValue(input);\n const messages = prompt.toChatMessages();\n const [, callOptions] =\n this._separateRunnableConfigFromCallOptionsCompat(options);\n\n const generator = this._streamChatModelEvents(messages, callOptions);\n\n return new ChatModelStream(generator);\n }\n\n /**\n * @deprecated Use {@link BaseChatModel.streamEvents} instead. This method will be removed in the next major version.\n */\n streamV2(\n input: BaseLanguageModelInput,\n options?: Partial<CallOptions>\n ): ChatModelStream {\n return this.streamEvents(input, options);\n }\n\n async *_streamIterator(\n input: BaseLanguageModelInput,\n options?: Partial<CallOptions>\n ): AsyncGenerator<OutputMessageType> {\n // Subclass check required to avoid double callbacks with default implementation\n if (\n this._streamResponseChunks ===\n BaseChatModel.prototype._streamResponseChunks ||\n this.disableStreaming\n ) {\n yield this.invoke(input, options);\n } else {\n const prompt = BaseChatModel._convertInputToPromptValue(input);\n const messages = prompt.toChatMessages();\n const [runnableConfig, callOptions] =\n this._separateRunnableConfigFromCallOptionsCompat(options);\n\n const inheritableMetadata = {\n ...runnableConfig.metadata,\n ...this.getLsParamsWithDefaults(callOptions),\n };\n const invocationParams = this.invocationParams(callOptions);\n const callbackManager_ = await CallbackManager.configure(\n runnableConfig.callbacks,\n this.callbacks,\n runnableConfig.tags,\n this.tags,\n inheritableMetadata,\n this.metadata,\n {\n verbose: this.verbose,\n tracerInheritableMetadata:\n this._filterInvocationParamsForTracing(invocationParams),\n }\n );\n const extra = {\n options: callOptions,\n invocation_params: invocationParams,\n batch_size: 1,\n };\n const outputVersion = callOptions.outputVersion ?? this.outputVersion;\n const runManagers = await callbackManager_?.handleChatModelStart(\n this.toJSON(),\n [_formatForTracing(messages)],\n runnableConfig.runId,\n undefined,\n extra,\n undefined,\n undefined,\n runnableConfig.runName\n );\n let generationChunk: ChatGenerationChunk | undefined;\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n let llmOutput: Record<string, any> | undefined;\n try {\n for await (const chunk of this._streamResponseChunks(\n messages,\n callOptions,\n runManagers?.[0]\n )) {\n callOptions.signal?.throwIfAborted();\n if (chunk.message.id == null) {\n const runId = runManagers?.at(0)?.runId;\n if (runId != null) chunk.message._updateId(`run-${runId}`);\n }\n chunk.message.response_metadata = {\n ...chunk.generationInfo,\n ...chunk.message.response_metadata,\n };\n if (outputVersion === \"v1\") {\n yield castStandardMessageContent(\n chunk.message\n ) as OutputMessageType;\n } else {\n yield chunk.message as OutputMessageType;\n }\n if (!generationChunk) {\n generationChunk = chunk;\n } else {\n generationChunk = generationChunk.concat(chunk);\n }\n if (\n isAIMessageChunk(chunk.message) &&\n chunk.message.usage_metadata !== undefined\n ) {\n llmOutput = {\n tokenUsage: {\n promptTokens: chunk.message.usage_metadata.input_tokens,\n completionTokens: chunk.message.usage_metadata.output_tokens,\n totalTokens: chunk.message.usage_metadata.total_tokens,\n },\n };\n }\n }\n // Throw error if stream ended due to abort (provider returned early)\n callOptions.signal?.throwIfAborted();\n } catch (err) {\n await Promise.all(\n (runManagers ?? []).map((runManager) =>\n runManager?.handleLLMError(err)\n )\n );\n throw err;\n }\n await Promise.all(\n (runManagers ?? []).map((runManager) =>\n runManager?.handleLLMEnd({\n // TODO: Remove cast after figuring out inheritance\n generations: [[generationChunk as ChatGeneration]],\n llmOutput,\n })\n )\n );\n }\n }\n\n getLsParams(options: this[\"ParsedCallOptions\"]): LangSmithParams {\n const providerName = this.getName().startsWith(\"Chat\")\n ? this.getName().replace(\"Chat\", \"\")\n : this.getName();\n\n return {\n ls_model_type: \"chat\",\n ls_stop: options.stop,\n ls_provider: providerName,\n };\n }\n\n /**\n * Wraps getLsParams() and always appends ls_integration.\n * This ensures the integration tag is present even when\n * partner packages fully override getLsParams().\n */\n getLsParamsWithDefaults(options: this[\"ParsedCallOptions\"]): LangSmithParams {\n return {\n ...this.getLsParams(options),\n ls_integration: \"langchain_chat_model\",\n };\n }\n\n /** @ignore */\n async _generateUncached(\n messages: BaseMessageLike[][],\n parsedOptions: this[\"ParsedCallOptions\"],\n handledOptions: RunnableConfig,\n startedRunManagers?: CallbackManagerForLLMRun[]\n ): Promise<LLMResult> {\n const baseMessages = messages.map((messageList) =>\n messageList.map(coerceMessageLikeToMessage)\n );\n\n let runManagers: CallbackManagerForLLMRun[] | undefined;\n if (\n startedRunManagers !== undefined &&\n startedRunManagers.length === baseMessages.length\n ) {\n runManagers = startedRunManagers;\n } else {\n const inheritableMetadata = {\n ...handledOptions.metadata,\n ...this.getLsParamsWithDefaults(parsedOptions),\n };\n const invocationParams = this.invocationParams(parsedOptions);\n // create callback manager and start run\n const callbackManager_ = await CallbackManager.configure(\n handledOptions.callbacks,\n this.callbacks,\n handledOptions.tags,\n this.tags,\n inheritableMetadata,\n this.metadata,\n {\n verbose: this.verbose,\n tracerInheritableMetadata:\n this._filterInvocationParamsForTracing(invocationParams),\n }\n );\n const extra = {\n options: parsedOptions,\n invocation_params: invocationParams,\n batch_size: 1,\n };\n runManagers = await callbackManager_?.handleChatModelStart(\n this.toJSON(),\n baseMessages.map(_formatForTracing),\n handledOptions.runId,\n undefined,\n extra,\n undefined,\n undefined,\n handledOptions.runName\n );\n }\n const outputVersion = parsedOptions.outputVersion ?? this.outputVersion;\n const generations: ChatGeneration[][] = [];\n const llmOutputs: LLMResult[\"llmOutput\"][] = [];\n // Even if stream is not explicitly called, check if model is implicitly\n // called from streamEvents() or streamLog() to get all streamed events.\n // Bail out if _streamResponseChunks not overridden\n const hasChatModelStreamEventHandler = !!runManagers?.[0].handlers.find(\n callbackHandlerPrefersChatModelStreamEvents\n );\n const hasStreamingHandler = !!runManagers?.[0].handlers.find(\n callbackHandlerPrefersStreaming\n );\n if (\n hasChatModelStreamEventHandler &&\n !this.disableStreaming &&\n baseMessages.length === 1 &&\n (this._streamChatModelEvents !==\n BaseChatModel.prototype._streamChatModelEvents ||\n this._streamResponseChunks !==\n BaseChatModel.prototype._streamResponseChunks)\n ) {\n try {\n let sawEvent = false;\n const runManager = runManagers?.[0];\n const events = this._streamChatModelEvents(\n baseMessages[0],\n parsedOptions\n );\n const forwardedEvents = {\n async *[Symbol.asyncIterator]() {\n for await (const event of events) {\n parsedOptions.signal?.throwIfAborted();\n sawEvent = true;\n const streamEvent =\n event.event === \"message-start\" &&\n event.id == null &&\n runManager?.runId != null\n ? { ...event, id: `run-${runManager.runId}` }\n : event;\n await runManager?.handleChatModelStreamEvent(streamEvent);\n yield streamEvent;\n }\n },\n };\n const message = await new ChatModelStream(forwardedEvents);\n parsedOptions.signal?.throwIfAborted();\n if (!sawEvent) {\n throw new Error(\"Received empty response from chat model call.\");\n }\n if (message.id == null) {\n const runId = runManagers?.at(0)?.runId;\n if (runId != null) message._updateId(`run-${runId}`);\n }\n const generation: ChatGeneration = {\n text: message.text,\n message,\n };\n generations.push([generation]);\n const llmOutput =\n message.usage_metadata !== undefined\n ? {\n tokenUsage: {\n promptTokens: message.usage_metadata.input_tokens,\n completionTokens: message.usage_metadata.output_tokens,\n totalTokens: message.usage_metadata.total_tokens,\n },\n }\n : undefined;\n await runManagers?.[0].handleLLMEnd({\n generations,\n llmOutput,\n });\n } catch (e) {\n await runManagers?.[0].handleLLMError(e);\n throw e;\n }\n } else if (\n hasStreamingHandler &&\n !this.disableStreaming &&\n baseMessages.length === 1 &&\n this._streamResponseChunks !==\n BaseChatModel.prototype._streamResponseChunks\n ) {\n try {\n const stream = await this._streamResponseChunks(\n baseMessages[0],\n parsedOptions,\n runManagers?.[0]\n );\n let aggregated: ChatGenerationChunk | undefined;\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n let llmOutput: Record<string, any> | undefined;\n for await (const chunk of stream) {\n // Check for abort signal - throw ModelAbortError with partial output\n if (parsedOptions.signal?.aborted) {\n const partialMessage = aggregated?.message as\n | AIMessageChunk\n | undefined;\n throw new ModelAbortError(\n \"Model invocation was aborted.\",\n partialMessage\n );\n }\n if (chunk.message.id == null) {\n const runId = runManagers?.at(0)?.runId;\n if (runId != null) chunk.message._updateId(`run-${runId}`);\n }\n if (aggregated === undefined) {\n aggregated = chunk;\n } else {\n aggregated = concat(aggregated, chunk);\n }\n if (\n isAIMessageChunk(chunk.message) &&\n chunk.message.usage_metadata !== undefined\n ) {\n llmOutput = {\n tokenUsage: {\n promptTokens: chunk.message.usage_metadata.input_tokens,\n completionTokens: chunk.message.usage_metadata.output_tokens,\n totalTokens: chunk.message.usage_metadata.total_tokens,\n },\n };\n }\n }\n // Check if stream ended due to abort (provider returned early)\n if (parsedOptions.signal?.aborted) {\n const partialMessage = aggregated?.message as\n | AIMessageChunk\n | undefined;\n throw new ModelAbortError(\n \"Model invocation was aborted.\",\n partialMessage\n );\n }\n if (aggregated === undefined) {\n throw new Error(\"Received empty response from chat model call.\");\n }\n if (outputVersion === \"v1\") {\n aggregated.message = castStandardMessageContent(\n aggregated.message\n ) as AIMessageChunk;\n }\n generations.push([aggregated]);\n await runManagers?.[0].handleLLMEnd({\n generations,\n llmOutput,\n });\n } catch (e) {\n await runManagers?.[0].handleLLMError(e);\n throw e;\n }\n } else {\n // generate results\n const results = await Promise.allSettled(\n baseMessages.map(async (messageList, i) => {\n const generateResults = await this._generate(\n messageList,\n { ...parsedOptions, promptIndex: i },\n runManagers?.[i]\n );\n if (outputVersion === \"v1\") {\n for (const generation of generateResults.generations) {\n generation.message = castStandardMessageContent(\n generation.message\n );\n }\n }\n return generateResults;\n })\n );\n // handle results\n await Promise.all(\n results.map(async (pResult, i) => {\n if (pResult.status === \"fulfilled\") {\n const result = pResult.value;\n for (const generation of result.generations) {\n if (generation.message.id == null) {\n const runId = runManagers?.at(0)?.runId;\n if (runId != null) generation.message._updateId(`run-${runId}`);\n }\n generation.message.response_metadata = {\n ...generation.generationInfo,\n ...generation.message.response_metadata,\n };\n }\n if (result.generations.length === 1) {\n result.generations[0].message.response_metadata = {\n ...result.llmOutput,\n ...result.generations[0].message.response_metadata,\n };\n }\n generations[i] = result.generations;\n llmOutputs[i] = result.llmOutput;\n return runManagers?.[i]?.handleLLMEnd({\n generations: [result.generations],\n llmOutput: result.llmOutput,\n });\n } else {\n // status === \"rejected\"\n await runManagers?.[i]?.handleLLMError(pResult.reason);\n return Promise.reject(pResult.reason);\n }\n })\n );\n }\n // create combined output\n const output: LLMResult = {\n generations,\n llmOutput: llmOutputs.length\n ? this._combineLLMOutput?.(...llmOutputs)\n : undefined,\n };\n Object.defineProperty(output, RUN_KEY, {\n value: runManagers\n ? { runIds: runManagers?.map((manager) => manager.runId) }\n : undefined,\n configurable: true,\n });\n return output;\n }\n\n async _generateCached({\n messages,\n cache,\n llmStringKey,\n parsedOptions,\n handledOptions,\n }: {\n messages: BaseMessageLike[][];\n cache: BaseCache<Generation[]>;\n llmStringKey: string;\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n parsedOptions: any;\n handledOptions: RunnableConfig;\n }): Promise<\n LLMResult & {\n missingPromptIndices: number[];\n startedRunManagers?: CallbackManagerForLLMRun[];\n }\n > {\n const baseMessages = messages.map((messageList) =>\n messageList.map(coerceMessageLikeToMessage)\n );\n\n const inheritableMetadata = {\n ...handledOptions.metadata,\n ...this.getLsParamsWithDefaults(parsedOptions),\n };\n const invocationParams = this.invocationParams(parsedOptions);\n // create callback manager and start run\n const callbackManager_ = await CallbackManager.configure(\n handledOptions.callbacks,\n this.callbacks,\n handledOptions.tags,\n this.tags,\n inheritableMetadata,\n this.metadata,\n {\n verbose: this.verbose,\n tracerInheritableMetadata:\n this._filterInvocationParamsForTracing(invocationParams),\n }\n );\n const extra = {\n options: parsedOptions,\n invocation_params: invocationParams,\n batch_size: 1,\n };\n const runManagers = await callbackManager_?.handleChatModelStart(\n this.toJSON(),\n baseMessages.map(_formatForTracing),\n handledOptions.runId,\n undefined,\n extra,\n undefined,\n undefined,\n handledOptions.runName\n );\n\n // generate results\n const missingPromptIndices: number[] = [];\n const results = await Promise.allSettled(\n baseMessages.map(async (baseMessage, index) => {\n // Join all content into one string for the prompt index\n const prompt =\n BaseChatModel._convertInputToPromptValue(baseMessage).toString();\n const result = await cache.lookup(prompt, llmStringKey);\n\n if (result == null) {\n missingPromptIndices.push(index);\n }\n\n return result;\n })\n );\n\n // Map run managers to the results before filtering out null results\n // Null results are just absent from the cache.\n const cachedResults = results\n .map((result, index) => ({ result, runManager: runManagers?.[index] }))\n .filter(\n ({ result }) =>\n (result.status === \"fulfilled\" && result.value != null) ||\n result.status === \"rejected\"\n );\n\n // Handle results and call run managers\n const outputVersion = parsedOptions.outputVersion ?? this.outputVersion;\n const generations: Generation[][] = [];\n await Promise.all(\n cachedResults.map(async ({ result: promiseResult, runManager }, i) => {\n if (promiseResult.status === \"fulfilled\") {\n const result = promiseResult.value as Generation[];\n generations[i] = result.map((result) => {\n if (\n \"message\" in result &&\n isBaseMessage(result.message) &&\n isAIMessage(result.message)\n ) {\n result.message.usage_metadata = {\n input_tokens: 0,\n output_tokens: 0,\n total_tokens: 0,\n };\n if (outputVersion === \"v1\") {\n result.message = castStandardMessageContent(result.message);\n }\n }\n result.generationInfo = {\n ...result.generationInfo,\n tokenUsage: {},\n };\n return result;\n });\n if (result.length) {\n await runManager?.handleLLMNewToken(result[0].text);\n }\n return runManager?.handleLLMEnd(\n {\n generations: [result],\n },\n undefined,\n undefined,\n undefined,\n {\n cached: true,\n }\n );\n } else {\n // status === \"rejected\"\n await runManager?.handleLLMError(\n promiseResult.reason,\n undefined,\n undefined,\n undefined,\n {\n cached: true,\n }\n );\n return Promise.reject(promiseResult.reason);\n }\n })\n );\n\n const output = {\n generations,\n missingPromptIndices,\n startedRunManagers: runManagers,\n };\n\n // This defines RUN_KEY as a non-enumerable property on the output object\n // so that it is not serialized when the output is stringified, and so that\n // it isnt included when listing the keys of the output object.\n Object.defineProperty(output, RUN_KEY, {\n value: runManagers\n ? { runIds: runManagers?.map((manager) => manager.runId) }\n : undefined,\n configurable: true,\n });\n\n return output;\n }\n\n /**\n * Generates chat based on the input messages.\n * @param messages An array of arrays of BaseMessage instances.\n * @param options The call options or an array of stop sequences.\n * @param callbacks The callbacks for the language model.\n * @returns A Promise that resolves to an LLMResult.\n */\n async generate(\n messages: BaseMessageLike[][],\n options?: string[] | Partial<CallOptions>,\n callbacks?: Callbacks\n ): Promise<LLMResult> {\n // parse call options\n let parsedOptions: Partial<CallOptions> | undefined;\n if (Array.isArray(options)) {\n parsedOptions = { stop: options } as Partial<CallOptions>;\n } else {\n parsedOptions = options;\n }\n\n const baseMessages = messages.map((messageList) =>\n messageList.map(coerceMessageLikeToMessage)\n );\n\n const [runnableConfig, callOptions] =\n this._separateRunnableConfigFromCallOptionsCompat(parsedOptions);\n runnableConfig.callbacks = runnableConfig.callbacks ?? callbacks;\n\n if (!this.cache) {\n return this._generateUncached(baseMessages, callOptions, runnableConfig);\n }\n\n const { cache } = this;\n const llmStringKey = this._getSerializedCacheKeyParametersForCall(\n callOptions as CallOptions\n );\n\n const { generations, missingPromptIndices, startedRunManagers } =\n await this._generateCached({\n messages: baseMessages,\n cache,\n llmStringKey,\n parsedOptions: callOptions,\n handledOptions: runnableConfig,\n });\n\n let llmOutput = {};\n if (missingPromptIndices.length > 0) {\n const results = await this._generateUncached(\n missingPromptIndices.map((i) => baseMessages[i]),\n callOptions,\n runnableConfig,\n startedRunManagers !== undefined\n ? missingPromptIndices.map((i) => startedRunManagers?.[i])\n : undefined\n );\n await Promise.all(\n results.generations.map(async (generation, index) => {\n const promptIndex = missingPromptIndices[index];\n generations[promptIndex] = generation;\n // Join all content into one string for the prompt index\n const prompt = BaseChatModel._convertInputToPromptValue(\n baseMessages[promptIndex]\n ).toString();\n return cache.update(prompt, llmStringKey, generation);\n })\n );\n llmOutput = results.llmOutput ?? {};\n }\n\n return { generations, llmOutput } as LLMResult;\n }\n\n /**\n * Get the parameters used to invoke the model\n */\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n invocationParams(_options?: this[\"ParsedCallOptions\"]): any {\n return {};\n }\n\n _modelType(): string {\n return \"base_chat_model\" as const;\n }\n\n abstract _llmType(): string;\n\n /**\n * Generates a prompt based on the input prompt values.\n * @param promptValues An array of BasePromptValue instances.\n * @param options The call options or an array of stop sequences.\n * @param callbacks The callbacks for the language model.\n * @returns A Promise that resolves to an LLMResult.\n */\n async generatePrompt(\n promptValues: BasePromptValueInterface[],\n options?: string[] | Partial<CallOptions>,\n callbacks?: Callbacks\n ): Promise<LLMResult> {\n const promptMessages: BaseMessage[][] = promptValues.map((promptValue) =>\n promptValue.toChatMessages()\n );\n return this.generate(promptMessages, options, callbacks);\n }\n\n abstract _generate(\n messages: BaseMessage[],\n options: this[\"ParsedCallOptions\"],\n runManager?: CallbackManagerForLLMRun\n ): Promise<ChatResult>;\n\n withStructuredOutput<\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n RunOutput extends Record<string, any> = Record<string, any>,\n >(\n outputSchema: SerializableSchema<RunOutput>,\n config?: StructuredOutputMethodOptions<false>\n ): Runnable<BaseLanguageModelInput, RunOutput>;\n\n withStructuredOutput<\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n RunOutput extends Record<string, any> = Record<string, any>,\n >(\n outputSchema: SerializableSchema<RunOutput>,\n config?: StructuredOutputMethodOptions<true>\n ): Runnable<BaseLanguageModelInput, { raw: BaseMessage; parsed: RunOutput }>;\n\n withStructuredOutput<\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n RunOutput extends Record<string, any> = Record<string, any>,\n >(\n outputSchema:\n | ZodV4Like<RunOutput>\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n | Record<string, any>,\n config?: StructuredOutputMethodOptions<false>\n ): Runnable<BaseLanguageModelInput, RunOutput>;\n\n withStructuredOutput<\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n RunOutput extends Record<string, any> = Record<string, any>,\n >(\n outputSchema:\n | ZodV4Like<RunOutput>\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n | Record<string, any>,\n config?: StructuredOutputMethodOptions<true>\n ): Runnable<BaseLanguageModelInput, { raw: BaseMessage; parsed: RunOutput }>;\n\n withStructuredOutput<\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n RunOutput extends Record<string, any> = Record<string, any>,\n >(\n outputSchema:\n | ZodV3Like<RunOutput>\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n | Record<string, any>,\n config?: StructuredOutputMethodOptions<false>\n ): Runnable<BaseLanguageModelInput, RunOutput>;\n\n withStructuredOutput<\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n RunOutput extends Record<string, any> = Record<string, any>,\n >(\n outputSchema:\n | ZodV3Like<RunOutput>\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n | Record<string, any>,\n config?: StructuredOutputMethodOptions<true>\n ): Runnable<BaseLanguageModelInput, { raw: BaseMessage; parsed: RunOutput }>;\n\n withStructuredOutput<\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n RunOutput extends Record<string, any> = Record<string, any>,\n >(\n outputSchema:\n | InteropZodType<RunOutput>\n | SerializableSchema<RunOutput>\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n | Record<string, any>,\n config?: StructuredOutputMethodOptions<boolean>\n ):\n | Runnable<BaseLanguageModelInput, RunOutput>\n | Runnable<\n BaseLanguageModelInput,\n {\n raw: BaseMessage;\n parsed: RunOutput;\n }\n > {\n if (typeof this.bindTools !== \"function\") {\n throw new Error(\n `Chat model must implement \".bindTools()\" to use withStructuredOutput.`\n );\n }\n if (config?.strict) {\n throw new Error(\n `\"strict\" mode is not supported for this model by default.`\n );\n }\n\n const schema = outputSchema;\n const name = config?.name;\n const description =\n getSchemaDescription(schema) ?? \"A function available to call.\";\n const method = config?.method;\n const includeRaw = config?.includeRaw;\n if (method === \"jsonMode\") {\n throw new Error(\n `Base withStructuredOutput implementation only supports \"functionCalling\" as a method.`\n );\n }\n\n let functionName = name ?? \"extract\";\n if (\n !isInteropZodSchema(schema) &&\n !isSerializableSchema(schema) &&\n \"name\" in schema\n ) {\n functionName = schema.name;\n }\n\n const asJsonSchema =\n isInteropZodSchema(schema) || isSerializableSchema(schema)\n ? toJsonSchema(schema)\n : schema;\n\n const tools: ToolDefinition[] = [\n {\n type: \"function\",\n function: {\n name: functionName,\n description,\n parameters: asJsonSchema,\n },\n },\n ];\n\n const llm = this.bindTools(tools);\n const outputParser = RunnableLambda.from<OutputMessageType, RunOutput>(\n (input: BaseMessageChunk): RunOutput => {\n if (!AIMessageChunk.isInstance(input)) {\n throw new Error(\"Input is not an AIMessageChunk.\");\n }\n if (!input.tool_calls || input.tool_calls.length === 0) {\n throw new Error(\"No tool calls found in the response.\");\n }\n const toolCall = input.tool_calls.find(\n (tc) => tc.name === functionName\n );\n if (!toolCall) {\n throw new Error(`No tool call found with name ${functionName}.`);\n }\n return toolCall.args as RunOutput;\n }\n );\n\n return assembleStructuredOutputPipeline(\n llm,\n outputParser,\n includeRaw,\n includeRaw ? \"StructuredOutputRunnable\" : \"StructuredOutput\"\n );\n }\n}\n\n/**\n * An abstract class that extends BaseChatModel and provides a simple\n * implementation of _generate.\n */\nexport abstract class SimpleChatModel<\n CallOptions extends BaseChatModelCallOptions = BaseChatModelCallOptions,\n> extends BaseChatModel<CallOptions> {\n abstract _call(\n messages: BaseMessage[],\n options: this[\"ParsedCallOptions\"],\n runManager?: CallbackManagerForLLMRun\n ): Promise<string>;\n\n async _generate(\n messages: BaseMessage[],\n options: this[\"ParsedCallOptions\"],\n runManager?: CallbackManagerForLLMRun\n ): Promise<ChatResult> {\n const text = await this._call(messages, options, runManager);\n const message = new AIMessage(text);\n if (typeof message.content !== \"string\") {\n throw new Error(\n \"Cannot generate with a simple chat model when output is not a string.\"\n );\n }\n return {\n generations: [\n {\n text: message.content,\n message,\n },\n ],\n };\n }\n}\n"],"mappings":"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"}