@langchain/core 1.2.14 → 1.2.17

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 (720) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/dist/agents.d.cts +3 -4
  3. package/dist/agents.d.cts.map +1 -1
  4. package/dist/agents.d.ts +3 -4
  5. package/dist/agents.d.ts.map +1 -1
  6. package/dist/caches/index.d.cts +5 -6
  7. package/dist/caches/index.d.cts.map +1 -1
  8. package/dist/caches/index.d.ts +5 -6
  9. package/dist/caches/index.d.ts.map +1 -1
  10. package/dist/callbacks/base.d.cts +10 -11
  11. package/dist/callbacks/base.d.cts.map +1 -1
  12. package/dist/callbacks/base.d.ts +10 -11
  13. package/dist/callbacks/base.d.ts.map +1 -1
  14. package/dist/callbacks/dispatch/index.d.cts +1 -2
  15. package/dist/callbacks/dispatch/index.d.cts.map +1 -1
  16. package/dist/callbacks/dispatch/index.d.ts +1 -2
  17. package/dist/callbacks/dispatch/index.d.ts.map +1 -1
  18. package/dist/callbacks/dispatch/web.d.cts +1 -2
  19. package/dist/callbacks/dispatch/web.d.cts.map +1 -1
  20. package/dist/callbacks/dispatch/web.d.ts +1 -2
  21. package/dist/callbacks/dispatch/web.d.ts.map +1 -1
  22. package/dist/callbacks/manager.cjs +1 -1
  23. package/dist/callbacks/manager.cjs.map +1 -1
  24. package/dist/callbacks/manager.d.cts +12 -13
  25. package/dist/callbacks/manager.d.cts.map +1 -1
  26. package/dist/callbacks/manager.d.ts +12 -13
  27. package/dist/callbacks/manager.d.ts.map +1 -1
  28. package/dist/callbacks/manager.js +1 -1
  29. package/dist/callbacks/manager.js.map +1 -1
  30. package/dist/chat_history.d.cts +3 -4
  31. package/dist/chat_history.d.cts.map +1 -1
  32. package/dist/chat_history.d.ts +3 -4
  33. package/dist/chat_history.d.ts.map +1 -1
  34. package/dist/context.d.cts +2 -2
  35. package/dist/context.d.cts.map +1 -1
  36. package/dist/context.d.ts +2 -2
  37. package/dist/context.d.ts.map +1 -1
  38. package/dist/document_loaders/base.d.cts +2 -3
  39. package/dist/document_loaders/base.d.cts.map +1 -1
  40. package/dist/document_loaders/base.d.ts +2 -3
  41. package/dist/document_loaders/base.d.ts.map +1 -1
  42. package/dist/document_loaders/langsmith.d.cts +2 -3
  43. package/dist/document_loaders/langsmith.d.cts.map +1 -1
  44. package/dist/document_loaders/langsmith.d.ts +2 -3
  45. package/dist/document_loaders/langsmith.d.ts.map +1 -1
  46. package/dist/documents/document.d.cts +3 -4
  47. package/dist/documents/document.d.cts.map +1 -1
  48. package/dist/documents/document.d.ts +3 -4
  49. package/dist/documents/document.d.ts.map +1 -1
  50. package/dist/documents/transformers.d.cts +2 -3
  51. package/dist/documents/transformers.d.cts.map +1 -1
  52. package/dist/documents/transformers.d.ts +2 -3
  53. package/dist/documents/transformers.d.ts.map +1 -1
  54. package/dist/embeddings.d.cts +3 -4
  55. package/dist/embeddings.d.cts.map +1 -1
  56. package/dist/embeddings.d.ts +3 -4
  57. package/dist/embeddings.d.ts.map +1 -1
  58. package/dist/errors/index.cjs.map +1 -1
  59. package/dist/errors/index.d.cts +13 -19
  60. package/dist/errors/index.d.cts.map +1 -1
  61. package/dist/errors/index.d.ts +13 -19
  62. package/dist/errors/index.d.ts.map +1 -1
  63. package/dist/errors/index.js.map +1 -1
  64. package/dist/example_selectors/base.d.cts +1 -2
  65. package/dist/example_selectors/base.d.cts.map +1 -1
  66. package/dist/example_selectors/base.d.ts +1 -2
  67. package/dist/example_selectors/base.d.ts.map +1 -1
  68. package/dist/example_selectors/conditional.d.cts +5 -6
  69. package/dist/example_selectors/conditional.d.cts.map +1 -1
  70. package/dist/example_selectors/conditional.d.ts +5 -6
  71. package/dist/example_selectors/conditional.d.ts.map +1 -1
  72. package/dist/example_selectors/length_based.d.cts +2 -3
  73. package/dist/example_selectors/length_based.d.cts.map +1 -1
  74. package/dist/example_selectors/length_based.d.ts +2 -3
  75. package/dist/example_selectors/length_based.d.ts.map +1 -1
  76. package/dist/example_selectors/semantic_similarity.d.cts +2 -3
  77. package/dist/example_selectors/semantic_similarity.d.cts.map +1 -1
  78. package/dist/example_selectors/semantic_similarity.d.ts +2 -3
  79. package/dist/example_selectors/semantic_similarity.d.ts.map +1 -1
  80. package/dist/indexing/base.d.cts +9 -10
  81. package/dist/indexing/base.d.cts.map +1 -1
  82. package/dist/indexing/base.d.ts +9 -10
  83. package/dist/indexing/base.d.ts.map +1 -1
  84. package/dist/indexing/record_manager.d.cts +5 -6
  85. package/dist/indexing/record_manager.d.cts.map +1 -1
  86. package/dist/indexing/record_manager.d.ts +5 -6
  87. package/dist/indexing/record_manager.d.ts.map +1 -1
  88. package/dist/language_models/base.cjs +1 -1
  89. package/dist/language_models/base.cjs.map +1 -1
  90. package/dist/language_models/base.d.cts +24 -25
  91. package/dist/language_models/base.d.cts.map +1 -1
  92. package/dist/language_models/base.d.ts +24 -25
  93. package/dist/language_models/base.d.ts.map +1 -1
  94. package/dist/language_models/base.js +1 -1
  95. package/dist/language_models/base.js.map +1 -1
  96. package/dist/language_models/chat_models.d.cts +9 -10
  97. package/dist/language_models/chat_models.d.cts.map +1 -1
  98. package/dist/language_models/chat_models.d.ts +9 -10
  99. package/dist/language_models/chat_models.d.ts.map +1 -1
  100. package/dist/language_models/compat.d.cts +2 -3
  101. package/dist/language_models/compat.d.cts.map +1 -1
  102. package/dist/language_models/compat.d.ts +2 -3
  103. package/dist/language_models/compat.d.ts.map +1 -1
  104. package/dist/language_models/event.d.cts +15 -16
  105. package/dist/language_models/event.d.cts.map +1 -1
  106. package/dist/language_models/event.d.ts +15 -16
  107. package/dist/language_models/event.d.ts.map +1 -1
  108. package/dist/language_models/llms.d.cts +5 -6
  109. package/dist/language_models/llms.d.cts.map +1 -1
  110. package/dist/language_models/llms.d.ts +5 -6
  111. package/dist/language_models/llms.d.ts.map +1 -1
  112. package/dist/language_models/openai_completions_stream.d.cts +8 -9
  113. package/dist/language_models/openai_completions_stream.d.cts.map +1 -1
  114. package/dist/language_models/openai_completions_stream.d.ts +8 -9
  115. package/dist/language_models/openai_completions_stream.d.ts.map +1 -1
  116. package/dist/language_models/profile.d.cts +1 -2
  117. package/dist/language_models/profile.d.cts.map +1 -1
  118. package/dist/language_models/profile.d.ts +1 -2
  119. package/dist/language_models/profile.d.ts.map +1 -1
  120. package/dist/language_models/stream.d.cts +5 -6
  121. package/dist/language_models/stream.d.cts.map +1 -1
  122. package/dist/language_models/stream.d.ts +5 -6
  123. package/dist/language_models/stream.d.ts.map +1 -1
  124. package/dist/language_models/structured_output.d.cts +3 -4
  125. package/dist/language_models/structured_output.d.cts.map +1 -1
  126. package/dist/language_models/structured_output.d.ts +3 -4
  127. package/dist/language_models/structured_output.d.ts.map +1 -1
  128. package/dist/load/import_type.d.cts +2 -3
  129. package/dist/load/import_type.d.cts.map +1 -1
  130. package/dist/load/import_type.d.ts +2 -3
  131. package/dist/load/import_type.d.ts.map +1 -1
  132. package/dist/load/index.d.cts +2 -3
  133. package/dist/load/index.d.cts.map +1 -1
  134. package/dist/load/index.d.ts +2 -3
  135. package/dist/load/index.d.ts.map +1 -1
  136. package/dist/load/map_keys.d.cts +1 -2
  137. package/dist/load/map_keys.d.cts.map +1 -1
  138. package/dist/load/map_keys.d.ts +1 -2
  139. package/dist/load/map_keys.d.ts.map +1 -1
  140. package/dist/load/serializable.d.cts +9 -10
  141. package/dist/load/serializable.d.cts.map +1 -1
  142. package/dist/load/serializable.d.ts +9 -10
  143. package/dist/load/serializable.d.ts.map +1 -1
  144. package/dist/memory.d.cts +7 -8
  145. package/dist/memory.d.cts.map +1 -1
  146. package/dist/memory.d.ts +7 -8
  147. package/dist/memory.d.ts.map +1 -1
  148. package/dist/messages/ai.d.cts +6 -7
  149. package/dist/messages/ai.d.cts.map +1 -1
  150. package/dist/messages/ai.d.ts +6 -7
  151. package/dist/messages/ai.d.ts.map +1 -1
  152. package/dist/messages/base.d.cts +23 -24
  153. package/dist/messages/base.d.cts.map +1 -1
  154. package/dist/messages/base.d.ts +23 -24
  155. package/dist/messages/base.d.ts.map +1 -1
  156. package/dist/messages/chat.d.cts +5 -6
  157. package/dist/messages/chat.d.cts.map +1 -1
  158. package/dist/messages/chat.d.ts +5 -6
  159. package/dist/messages/chat.d.ts.map +1 -1
  160. package/dist/messages/content/base.d.cts +1 -2
  161. package/dist/messages/content/base.d.cts.map +1 -1
  162. package/dist/messages/content/base.d.ts +1 -2
  163. package/dist/messages/content/base.d.ts.map +1 -1
  164. package/dist/messages/content/data.d.cts +18 -19
  165. package/dist/messages/content/data.d.cts.map +1 -1
  166. package/dist/messages/content/data.d.ts +18 -19
  167. package/dist/messages/content/data.d.ts.map +1 -1
  168. package/dist/messages/content/index.d.cts +4 -5
  169. package/dist/messages/content/index.d.cts.map +1 -1
  170. package/dist/messages/content/index.d.ts +4 -5
  171. package/dist/messages/content/index.d.ts.map +1 -1
  172. package/dist/messages/content/multimodal.d.cts +2 -3
  173. package/dist/messages/content/multimodal.d.cts.map +1 -1
  174. package/dist/messages/content/multimodal.d.ts +2 -3
  175. package/dist/messages/content/multimodal.d.ts.map +1 -1
  176. package/dist/messages/content/tools.d.cts +2 -3
  177. package/dist/messages/content/tools.d.cts.map +1 -1
  178. package/dist/messages/content/tools.d.ts +2 -3
  179. package/dist/messages/content/tools.d.ts.map +1 -1
  180. package/dist/messages/format.d.cts +1 -2
  181. package/dist/messages/format.d.cts.map +1 -1
  182. package/dist/messages/format.d.ts +1 -2
  183. package/dist/messages/format.d.ts.map +1 -1
  184. package/dist/messages/function.d.cts +5 -6
  185. package/dist/messages/function.d.cts.map +1 -1
  186. package/dist/messages/function.d.ts +5 -6
  187. package/dist/messages/function.d.ts.map +1 -1
  188. package/dist/messages/human.d.cts +5 -6
  189. package/dist/messages/human.d.cts.map +1 -1
  190. package/dist/messages/human.d.ts +5 -6
  191. package/dist/messages/human.d.ts.map +1 -1
  192. package/dist/messages/message.d.cts +20 -21
  193. package/dist/messages/message.d.cts.map +1 -1
  194. package/dist/messages/message.d.ts +20 -21
  195. package/dist/messages/message.d.ts.map +1 -1
  196. package/dist/messages/metadata.d.cts +7 -8
  197. package/dist/messages/metadata.d.cts.map +1 -1
  198. package/dist/messages/metadata.d.ts +7 -8
  199. package/dist/messages/metadata.d.ts.map +1 -1
  200. package/dist/messages/modifier.d.cts +2 -3
  201. package/dist/messages/modifier.d.cts.map +1 -1
  202. package/dist/messages/modifier.d.ts +2 -3
  203. package/dist/messages/modifier.d.ts.map +1 -1
  204. package/dist/messages/system.d.cts +5 -6
  205. package/dist/messages/system.d.cts.map +1 -1
  206. package/dist/messages/system.d.ts +5 -6
  207. package/dist/messages/system.d.ts.map +1 -1
  208. package/dist/messages/tool.d.cts +11 -12
  209. package/dist/messages/tool.d.cts.map +1 -1
  210. package/dist/messages/tool.d.ts +11 -12
  211. package/dist/messages/tool.d.ts.map +1 -1
  212. package/dist/messages/transformers.d.cts +12 -13
  213. package/dist/messages/transformers.d.cts.map +1 -1
  214. package/dist/messages/transformers.d.ts +12 -13
  215. package/dist/messages/transformers.d.ts.map +1 -1
  216. package/dist/messages/utils.d.cts +13 -14
  217. package/dist/messages/utils.d.cts.map +1 -1
  218. package/dist/messages/utils.d.ts +13 -14
  219. package/dist/messages/utils.d.ts.map +1 -1
  220. package/dist/output_parsers/base.d.cts +4 -5
  221. package/dist/output_parsers/base.d.cts.map +1 -1
  222. package/dist/output_parsers/base.d.ts +4 -5
  223. package/dist/output_parsers/base.d.ts.map +1 -1
  224. package/dist/output_parsers/bytes.d.cts +1 -2
  225. package/dist/output_parsers/bytes.d.cts.map +1 -1
  226. package/dist/output_parsers/bytes.d.ts +1 -2
  227. package/dist/output_parsers/bytes.d.ts.map +1 -1
  228. package/dist/output_parsers/json.d.cts +2 -2
  229. package/dist/output_parsers/json.d.cts.map +1 -1
  230. package/dist/output_parsers/json.d.ts +2 -2
  231. package/dist/output_parsers/json.d.ts.map +1 -1
  232. package/dist/output_parsers/list.d.cts +5 -6
  233. package/dist/output_parsers/list.d.cts.map +1 -1
  234. package/dist/output_parsers/list.d.ts +5 -6
  235. package/dist/output_parsers/list.d.ts.map +1 -1
  236. package/dist/output_parsers/openai_functions/json_output_functions_parsers.d.cts +4 -5
  237. package/dist/output_parsers/openai_functions/json_output_functions_parsers.d.cts.map +1 -1
  238. package/dist/output_parsers/openai_functions/json_output_functions_parsers.d.ts +4 -5
  239. package/dist/output_parsers/openai_functions/json_output_functions_parsers.d.ts.map +1 -1
  240. package/dist/output_parsers/openai_tools/json_output_tools_parsers.d.cts +12 -13
  241. package/dist/output_parsers/openai_tools/json_output_tools_parsers.d.cts.map +1 -1
  242. package/dist/output_parsers/openai_tools/json_output_tools_parsers.d.ts +12 -13
  243. package/dist/output_parsers/openai_tools/json_output_tools_parsers.d.ts.map +1 -1
  244. package/dist/output_parsers/standard_schema.d.cts +1 -2
  245. package/dist/output_parsers/standard_schema.d.cts.map +1 -1
  246. package/dist/output_parsers/standard_schema.d.ts +1 -2
  247. package/dist/output_parsers/standard_schema.d.ts.map +1 -1
  248. package/dist/output_parsers/string.d.cts +1 -2
  249. package/dist/output_parsers/string.d.cts.map +1 -1
  250. package/dist/output_parsers/string.d.ts +1 -2
  251. package/dist/output_parsers/string.d.ts.map +1 -1
  252. package/dist/output_parsers/structured.d.cts +6 -7
  253. package/dist/output_parsers/structured.d.cts.map +1 -1
  254. package/dist/output_parsers/structured.d.ts +6 -7
  255. package/dist/output_parsers/structured.d.ts.map +1 -1
  256. package/dist/output_parsers/transform.d.cts +3 -4
  257. package/dist/output_parsers/transform.d.cts.map +1 -1
  258. package/dist/output_parsers/transform.d.ts +3 -4
  259. package/dist/output_parsers/transform.d.ts.map +1 -1
  260. package/dist/output_parsers/xml.d.cts +6 -7
  261. package/dist/output_parsers/xml.d.cts.map +1 -1
  262. package/dist/output_parsers/xml.d.ts +6 -7
  263. package/dist/output_parsers/xml.d.ts.map +1 -1
  264. package/dist/outputs.d.cts +9 -10
  265. package/dist/outputs.d.cts.map +1 -1
  266. package/dist/outputs.d.ts +9 -10
  267. package/dist/outputs.d.ts.map +1 -1
  268. package/dist/prompt_values.d.cts +10 -11
  269. package/dist/prompt_values.d.cts.map +1 -1
  270. package/dist/prompt_values.d.ts +10 -11
  271. package/dist/prompt_values.d.ts.map +1 -1
  272. package/dist/prompts/base.d.cts +4 -5
  273. package/dist/prompts/base.d.cts.map +1 -1
  274. package/dist/prompts/base.d.ts +4 -5
  275. package/dist/prompts/base.d.ts.map +1 -1
  276. package/dist/prompts/chat.d.cts +14 -15
  277. package/dist/prompts/chat.d.cts.map +1 -1
  278. package/dist/prompts/chat.d.ts +14 -15
  279. package/dist/prompts/chat.d.ts.map +1 -1
  280. package/dist/prompts/dict.d.cts +1 -2
  281. package/dist/prompts/dict.d.cts.map +1 -1
  282. package/dist/prompts/dict.d.ts +1 -2
  283. package/dist/prompts/dict.d.ts.map +1 -1
  284. package/dist/prompts/few_shot.d.cts +4 -5
  285. package/dist/prompts/few_shot.d.cts.map +1 -1
  286. package/dist/prompts/few_shot.d.ts +4 -5
  287. package/dist/prompts/few_shot.d.ts.map +1 -1
  288. package/dist/prompts/image.d.cts +2 -3
  289. package/dist/prompts/image.d.cts.map +1 -1
  290. package/dist/prompts/image.d.ts +2 -3
  291. package/dist/prompts/image.d.ts.map +1 -1
  292. package/dist/prompts/pipeline.d.cts +3 -4
  293. package/dist/prompts/pipeline.d.cts.map +1 -1
  294. package/dist/prompts/pipeline.d.ts +3 -4
  295. package/dist/prompts/pipeline.d.ts.map +1 -1
  296. package/dist/prompts/prompt.d.cts +4 -5
  297. package/dist/prompts/prompt.d.cts.map +1 -1
  298. package/dist/prompts/prompt.d.ts +4 -5
  299. package/dist/prompts/prompt.d.ts.map +1 -1
  300. package/dist/prompts/serde.d.cts +3 -4
  301. package/dist/prompts/serde.d.cts.map +1 -1
  302. package/dist/prompts/serde.d.ts +3 -4
  303. package/dist/prompts/serde.d.ts.map +1 -1
  304. package/dist/prompts/string.d.cts +1 -2
  305. package/dist/prompts/string.d.cts.map +1 -1
  306. package/dist/prompts/string.d.ts +1 -2
  307. package/dist/prompts/string.d.ts.map +1 -1
  308. package/dist/prompts/structured.d.cts +2 -3
  309. package/dist/prompts/structured.d.cts.map +1 -1
  310. package/dist/prompts/structured.d.ts +2 -3
  311. package/dist/prompts/structured.d.ts.map +1 -1
  312. package/dist/prompts/template.d.cts +12 -13
  313. package/dist/prompts/template.d.cts.map +1 -1
  314. package/dist/prompts/template.d.ts +12 -13
  315. package/dist/prompts/template.d.ts.map +1 -1
  316. package/dist/retrievers/document_compressors/index.d.cts +1 -2
  317. package/dist/retrievers/document_compressors/index.d.cts.map +1 -1
  318. package/dist/retrievers/document_compressors/index.d.ts +1 -2
  319. package/dist/retrievers/document_compressors/index.d.ts.map +1 -1
  320. package/dist/retrievers/index.d.cts +3 -4
  321. package/dist/retrievers/index.d.cts.map +1 -1
  322. package/dist/retrievers/index.d.ts +3 -4
  323. package/dist/retrievers/index.d.ts.map +1 -1
  324. package/dist/runnables/base.d.cts +23 -23
  325. package/dist/runnables/base.d.cts.map +1 -1
  326. package/dist/runnables/base.d.ts +23 -23
  327. package/dist/runnables/base.d.ts.map +1 -1
  328. package/dist/runnables/branch.d.cts +3 -4
  329. package/dist/runnables/branch.d.cts.map +1 -1
  330. package/dist/runnables/branch.d.ts +3 -4
  331. package/dist/runnables/branch.d.ts.map +1 -1
  332. package/dist/runnables/config.cjs +2 -1
  333. package/dist/runnables/config.cjs.map +1 -1
  334. package/dist/runnables/config.d.cts +6 -6
  335. package/dist/runnables/config.d.cts.map +1 -1
  336. package/dist/runnables/config.d.ts +6 -6
  337. package/dist/runnables/config.d.ts.map +1 -1
  338. package/dist/runnables/config.js +2 -1
  339. package/dist/runnables/config.js.map +1 -1
  340. package/dist/runnables/graph.d.cts +2 -2
  341. package/dist/runnables/graph.d.cts.map +1 -1
  342. package/dist/runnables/graph.d.ts +2 -2
  343. package/dist/runnables/graph.d.ts.map +1 -1
  344. package/dist/runnables/history.d.cts +2 -3
  345. package/dist/runnables/history.d.cts.map +1 -1
  346. package/dist/runnables/history.d.ts +2 -3
  347. package/dist/runnables/history.d.ts.map +1 -1
  348. package/dist/runnables/passthrough.d.cts +1 -2
  349. package/dist/runnables/passthrough.d.cts.map +1 -1
  350. package/dist/runnables/passthrough.d.ts +1 -2
  351. package/dist/runnables/passthrough.d.ts.map +1 -1
  352. package/dist/runnables/router.d.cts +2 -3
  353. package/dist/runnables/router.d.cts.map +1 -1
  354. package/dist/runnables/router.d.ts +2 -3
  355. package/dist/runnables/router.d.ts.map +1 -1
  356. package/dist/runnables/types.d.cts +6 -7
  357. package/dist/runnables/types.d.cts.map +1 -1
  358. package/dist/runnables/types.d.ts +6 -7
  359. package/dist/runnables/types.d.ts.map +1 -1
  360. package/dist/singletons/async_local_storage/context.d.cts +4 -5
  361. package/dist/singletons/async_local_storage/context.d.cts.map +1 -1
  362. package/dist/singletons/async_local_storage/context.d.ts +4 -5
  363. package/dist/singletons/async_local_storage/context.d.ts.map +1 -1
  364. package/dist/singletons/async_local_storage/globals.d.cts +2 -3
  365. package/dist/singletons/async_local_storage/globals.d.cts.map +1 -1
  366. package/dist/singletons/async_local_storage/globals.d.ts +2 -3
  367. package/dist/singletons/async_local_storage/globals.d.ts.map +1 -1
  368. package/dist/singletons/async_local_storage/index.d.cts +2 -2
  369. package/dist/singletons/async_local_storage/index.d.cts.map +1 -1
  370. package/dist/singletons/async_local_storage/index.d.ts +2 -2
  371. package/dist/singletons/async_local_storage/index.d.ts.map +1 -1
  372. package/dist/singletons/callbacks.d.cts +2 -3
  373. package/dist/singletons/callbacks.d.cts.map +1 -1
  374. package/dist/singletons/callbacks.d.ts +2 -3
  375. package/dist/singletons/callbacks.d.ts.map +1 -1
  376. package/dist/stores.d.cts +2 -3
  377. package/dist/stores.d.cts.map +1 -1
  378. package/dist/stores.d.ts +2 -3
  379. package/dist/stores.d.ts.map +1 -1
  380. package/dist/structured_query/base.d.cts +3 -4
  381. package/dist/structured_query/base.d.cts.map +1 -1
  382. package/dist/structured_query/base.d.ts +3 -4
  383. package/dist/structured_query/base.d.ts.map +1 -1
  384. package/dist/structured_query/functional.d.cts +2 -3
  385. package/dist/structured_query/functional.d.cts.map +1 -1
  386. package/dist/structured_query/functional.d.ts +2 -3
  387. package/dist/structured_query/functional.d.ts.map +1 -1
  388. package/dist/structured_query/ir.d.cts +23 -24
  389. package/dist/structured_query/ir.d.cts.map +1 -1
  390. package/dist/structured_query/ir.d.ts +23 -24
  391. package/dist/structured_query/ir.d.ts.map +1 -1
  392. package/dist/structured_query/utils.d.cts +7 -8
  393. package/dist/structured_query/utils.d.cts.map +1 -1
  394. package/dist/structured_query/utils.d.ts +7 -8
  395. package/dist/structured_query/utils.d.ts.map +1 -1
  396. package/dist/testing/fake_model_builder.d.cts +2 -3
  397. package/dist/testing/fake_model_builder.d.cts.map +1 -1
  398. package/dist/testing/fake_model_builder.d.ts +2 -3
  399. package/dist/testing/fake_model_builder.d.ts.map +1 -1
  400. package/dist/testing/index.d.cts +1 -0
  401. package/dist/testing/index.d.ts +1 -0
  402. package/dist/testing/matchers.d.cts +12 -13
  403. package/dist/testing/matchers.d.cts.map +1 -1
  404. package/dist/testing/matchers.d.ts +12 -13
  405. package/dist/testing/matchers.d.ts.map +1 -1
  406. package/dist/testing/vitest-expect.d.cts +8 -0
  407. package/dist/testing/vitest-expect.d.cts.map +1 -0
  408. package/dist/testing/vitest-expect.d.ts +8 -0
  409. package/dist/testing/vitest-expect.d.ts.map +1 -0
  410. package/dist/tools/index.d.cts +21 -21
  411. package/dist/tools/index.d.cts.map +1 -1
  412. package/dist/tools/index.d.ts +21 -21
  413. package/dist/tools/index.d.ts.map +1 -1
  414. package/dist/tools/types.d.cts +25 -26
  415. package/dist/tools/types.d.cts.map +1 -1
  416. package/dist/tools/types.d.ts +25 -26
  417. package/dist/tools/types.d.ts.map +1 -1
  418. package/dist/tools/utils.d.cts +1 -2
  419. package/dist/tools/utils.d.cts.map +1 -1
  420. package/dist/tools/utils.d.ts +1 -2
  421. package/dist/tools/utils.d.ts.map +1 -1
  422. package/dist/tracers/base.cjs +7 -4
  423. package/dist/tracers/base.cjs.map +1 -1
  424. package/dist/tracers/base.d.cts +7 -8
  425. package/dist/tracers/base.d.cts.map +1 -1
  426. package/dist/tracers/base.d.ts +7 -8
  427. package/dist/tracers/base.d.ts.map +1 -1
  428. package/dist/tracers/base.js +7 -4
  429. package/dist/tracers/base.js.map +1 -1
  430. package/dist/tracers/console.d.cts +1 -2
  431. package/dist/tracers/console.d.cts.map +1 -1
  432. package/dist/tracers/console.d.ts +1 -2
  433. package/dist/tracers/console.d.ts.map +1 -1
  434. package/dist/tracers/event_stream.d.cts +3 -4
  435. package/dist/tracers/event_stream.d.cts.map +1 -1
  436. package/dist/tracers/event_stream.d.ts +3 -4
  437. package/dist/tracers/event_stream.d.ts.map +1 -1
  438. package/dist/tracers/log_stream.d.cts +9 -9
  439. package/dist/tracers/log_stream.d.cts.map +1 -1
  440. package/dist/tracers/log_stream.d.ts +9 -9
  441. package/dist/tracers/log_stream.d.ts.map +1 -1
  442. package/dist/tracers/run_collector.d.cts +1 -2
  443. package/dist/tracers/run_collector.d.cts.map +1 -1
  444. package/dist/tracers/run_collector.d.ts +1 -2
  445. package/dist/tracers/run_collector.d.ts.map +1 -1
  446. package/dist/tracers/tracer_langchain.d.cts +6 -7
  447. package/dist/tracers/tracer_langchain.d.cts.map +1 -1
  448. package/dist/tracers/tracer_langchain.d.ts +6 -7
  449. package/dist/tracers/tracer_langchain.d.ts.map +1 -1
  450. package/dist/types/_internal.d.cts +1 -2
  451. package/dist/types/_internal.d.cts.map +1 -1
  452. package/dist/types/_internal.d.ts +1 -2
  453. package/dist/types/_internal.d.ts.map +1 -1
  454. package/dist/types/type-utils.d.cts +2 -3
  455. package/dist/types/type-utils.d.cts.map +1 -1
  456. package/dist/types/type-utils.d.ts +2 -3
  457. package/dist/types/type-utils.d.ts.map +1 -1
  458. package/dist/utils/async_caller.d.cts +6 -7
  459. package/dist/utils/async_caller.d.cts.map +1 -1
  460. package/dist/utils/async_caller.d.ts +6 -7
  461. package/dist/utils/async_caller.d.ts.map +1 -1
  462. package/dist/utils/chunk_array.d.cts +1 -2
  463. package/dist/utils/chunk_array.d.cts.map +1 -1
  464. package/dist/utils/chunk_array.d.ts +1 -2
  465. package/dist/utils/chunk_array.d.ts.map +1 -1
  466. package/dist/utils/context.d.cts +1 -2
  467. package/dist/utils/context.d.cts.map +1 -1
  468. package/dist/utils/context.d.ts +1 -2
  469. package/dist/utils/context.d.ts.map +1 -1
  470. package/dist/utils/env.d.cts +9 -10
  471. package/dist/utils/env.d.cts.map +1 -1
  472. package/dist/utils/env.d.ts +9 -10
  473. package/dist/utils/env.d.ts.map +1 -1
  474. package/dist/utils/event_source_parse.d.cts +6 -7
  475. package/dist/utils/event_source_parse.d.cts.map +1 -1
  476. package/dist/utils/event_source_parse.d.ts +6 -7
  477. package/dist/utils/event_source_parse.d.ts.map +1 -1
  478. package/dist/utils/fast-json-patch/src/core.d.cts +13 -14
  479. package/dist/utils/fast-json-patch/src/core.d.cts.map +1 -1
  480. package/dist/utils/fast-json-patch/src/core.d.ts +13 -14
  481. package/dist/utils/fast-json-patch/src/core.d.ts.map +1 -1
  482. package/dist/utils/fast-json-patch/src/duplex.d.cts +1 -2
  483. package/dist/utils/fast-json-patch/src/duplex.d.cts.map +1 -1
  484. package/dist/utils/fast-json-patch/src/duplex.d.ts +1 -2
  485. package/dist/utils/fast-json-patch/src/duplex.d.ts.map +1 -1
  486. package/dist/utils/format.d.cts +2 -3
  487. package/dist/utils/format.d.cts.map +1 -1
  488. package/dist/utils/format.d.ts +2 -3
  489. package/dist/utils/format.d.ts.map +1 -1
  490. package/dist/utils/function_calling.d.cts +3 -3
  491. package/dist/utils/function_calling.d.cts.map +1 -1
  492. package/dist/utils/function_calling.d.ts +3 -3
  493. package/dist/utils/function_calling.d.ts.map +1 -1
  494. package/dist/utils/gateway.d.cts +4 -5
  495. package/dist/utils/gateway.d.cts.map +1 -1
  496. package/dist/utils/gateway.d.ts +4 -5
  497. package/dist/utils/gateway.d.ts.map +1 -1
  498. package/dist/utils/hash.d.cts +2 -2
  499. package/dist/utils/hash.d.cts.map +1 -1
  500. package/dist/utils/hash.d.ts +2 -2
  501. package/dist/utils/hash.d.ts.map +1 -1
  502. package/dist/utils/js-sha256/hash.cjs +2 -2
  503. package/dist/utils/js-sha256/hash.cjs.map +1 -1
  504. package/dist/utils/js-sha256/hash.d.cts +1 -2
  505. package/dist/utils/js-sha256/hash.d.cts.map +1 -1
  506. package/dist/utils/js-sha256/hash.d.ts +1 -2
  507. package/dist/utils/js-sha256/hash.d.ts.map +1 -1
  508. package/dist/utils/js-sha256/hash.js +2 -2
  509. package/dist/utils/js-sha256/hash.js.map +1 -1
  510. package/dist/utils/json.d.cts +2 -3
  511. package/dist/utils/json.d.cts.map +1 -1
  512. package/dist/utils/json.d.ts +2 -3
  513. package/dist/utils/json.d.ts.map +1 -1
  514. package/dist/utils/json_schema.d.cts +4 -4
  515. package/dist/utils/json_schema.d.cts.map +1 -1
  516. package/dist/utils/json_schema.d.ts +4 -4
  517. package/dist/utils/json_schema.d.ts.map +1 -1
  518. package/dist/utils/math.d.cts +6 -7
  519. package/dist/utils/math.d.cts.map +1 -1
  520. package/dist/utils/math.d.ts +6 -7
  521. package/dist/utils/math.d.ts.map +1 -1
  522. package/dist/utils/ml-distance/similarities.d.cts +1 -2
  523. package/dist/utils/ml-distance/similarities.d.cts.map +1 -1
  524. package/dist/utils/ml-distance/similarities.d.ts +1 -2
  525. package/dist/utils/ml-distance/similarities.d.ts.map +1 -1
  526. package/dist/utils/namespace.cjs.map +1 -1
  527. package/dist/utils/namespace.d.cts +2 -3
  528. package/dist/utils/namespace.d.cts.map +1 -1
  529. package/dist/utils/namespace.d.ts +2 -3
  530. package/dist/utils/namespace.d.ts.map +1 -1
  531. package/dist/utils/namespace.js.map +1 -1
  532. package/dist/utils/signal.d.cts +1 -2
  533. package/dist/utils/signal.d.cts.map +1 -1
  534. package/dist/utils/signal.d.ts +1 -2
  535. package/dist/utils/signal.d.ts.map +1 -1
  536. package/dist/utils/ssrf.d.cts +6 -7
  537. package/dist/utils/ssrf.d.cts.map +1 -1
  538. package/dist/utils/ssrf.d.ts +6 -7
  539. package/dist/utils/ssrf.d.ts.map +1 -1
  540. package/dist/utils/standard_schema.d.cts +4 -5
  541. package/dist/utils/standard_schema.d.cts.map +1 -1
  542. package/dist/utils/standard_schema.d.ts +4 -5
  543. package/dist/utils/standard_schema.d.ts.map +1 -1
  544. package/dist/utils/stream.d.cts +6 -6
  545. package/dist/utils/stream.d.cts.map +1 -1
  546. package/dist/utils/stream.d.ts +6 -6
  547. package/dist/utils/stream.d.ts.map +1 -1
  548. package/dist/utils/testing/chat_models.d.cts +8 -9
  549. package/dist/utils/testing/chat_models.d.cts.map +1 -1
  550. package/dist/utils/testing/chat_models.d.ts +8 -9
  551. package/dist/utils/testing/chat_models.d.ts.map +1 -1
  552. package/dist/utils/testing/embeddings.d.cts +2 -3
  553. package/dist/utils/testing/embeddings.d.cts.map +1 -1
  554. package/dist/utils/testing/embeddings.d.ts +2 -3
  555. package/dist/utils/testing/embeddings.d.ts.map +1 -1
  556. package/dist/utils/testing/llms.d.cts +2 -3
  557. package/dist/utils/testing/llms.d.cts.map +1 -1
  558. package/dist/utils/testing/llms.d.ts +2 -3
  559. package/dist/utils/testing/llms.d.ts.map +1 -1
  560. package/dist/utils/testing/message_history.d.cts +3 -4
  561. package/dist/utils/testing/message_history.d.cts.map +1 -1
  562. package/dist/utils/testing/message_history.d.ts +3 -4
  563. package/dist/utils/testing/message_history.d.ts.map +1 -1
  564. package/dist/utils/testing/openai_stream_fixtures.d.cts +6 -7
  565. package/dist/utils/testing/openai_stream_fixtures.d.cts.map +1 -1
  566. package/dist/utils/testing/openai_stream_fixtures.d.ts +6 -7
  567. package/dist/utils/testing/openai_stream_fixtures.d.ts.map +1 -1
  568. package/dist/utils/testing/output_parsers.d.cts +1 -2
  569. package/dist/utils/testing/output_parsers.d.cts.map +1 -1
  570. package/dist/utils/testing/output_parsers.d.ts +1 -2
  571. package/dist/utils/testing/output_parsers.d.ts.map +1 -1
  572. package/dist/utils/testing/retrievers.d.cts +1 -2
  573. package/dist/utils/testing/retrievers.d.cts.map +1 -1
  574. package/dist/utils/testing/retrievers.d.ts +1 -2
  575. package/dist/utils/testing/retrievers.d.ts.map +1 -1
  576. package/dist/utils/testing/runnables.d.cts +1 -2
  577. package/dist/utils/testing/runnables.d.cts.map +1 -1
  578. package/dist/utils/testing/runnables.d.ts +1 -2
  579. package/dist/utils/testing/runnables.d.ts.map +1 -1
  580. package/dist/utils/testing/stream.d.cts +10 -11
  581. package/dist/utils/testing/stream.d.cts.map +1 -1
  582. package/dist/utils/testing/stream.d.ts +10 -11
  583. package/dist/utils/testing/stream.d.ts.map +1 -1
  584. package/dist/utils/testing/tools.d.cts +2 -3
  585. package/dist/utils/testing/tools.d.cts.map +1 -1
  586. package/dist/utils/testing/tools.d.ts +2 -3
  587. package/dist/utils/testing/tools.d.ts.map +1 -1
  588. package/dist/utils/testing/tracers.d.cts +1 -2
  589. package/dist/utils/testing/tracers.d.cts.map +1 -1
  590. package/dist/utils/testing/tracers.d.ts +1 -2
  591. package/dist/utils/testing/tracers.d.ts.map +1 -1
  592. package/dist/utils/testing/vectorstores.d.cts +2 -3
  593. package/dist/utils/testing/vectorstores.d.cts.map +1 -1
  594. package/dist/utils/testing/vectorstores.d.ts +2 -3
  595. package/dist/utils/testing/vectorstores.d.ts.map +1 -1
  596. package/dist/utils/tiktoken.d.cts +2 -3
  597. package/dist/utils/tiktoken.d.cts.map +1 -1
  598. package/dist/utils/tiktoken.d.ts +2 -3
  599. package/dist/utils/tiktoken.d.ts.map +1 -1
  600. package/dist/utils/types/index.d.cts +5 -5
  601. package/dist/utils/types/index.d.cts.map +1 -1
  602. package/dist/utils/types/index.d.ts +5 -5
  603. package/dist/utils/types/index.d.ts.map +1 -1
  604. package/dist/utils/types/zod.d.cts +62 -63
  605. package/dist/utils/types/zod.d.cts.map +1 -1
  606. package/dist/utils/types/zod.d.ts +62 -63
  607. package/dist/utils/types/zod.d.ts.map +1 -1
  608. package/dist/utils/uuid/index.d.cts +12 -12
  609. package/dist/utils/uuid/index.d.cts.map +1 -1
  610. package/dist/utils/uuid/index.d.ts +12 -12
  611. package/dist/utils/uuid/index.d.ts.map +1 -1
  612. package/dist/utils/uuid/types.d.cts +6 -7
  613. package/dist/utils/uuid/types.d.cts.map +1 -1
  614. package/dist/utils/uuid/types.d.ts +6 -7
  615. package/dist/utils/uuid/types.d.ts.map +1 -1
  616. package/dist/utils/uuid/v35.d.cts +2 -3
  617. package/dist/utils/uuid/v35.d.cts.map +1 -1
  618. package/dist/utils/uuid/v35.d.ts +2 -3
  619. package/dist/utils/uuid/v35.d.ts.map +1 -1
  620. package/dist/utils/zod-to-json-schema/errorMessages.d.cts +1 -2
  621. package/dist/utils/zod-to-json-schema/errorMessages.d.cts.map +1 -1
  622. package/dist/utils/zod-to-json-schema/errorMessages.d.ts +1 -2
  623. package/dist/utils/zod-to-json-schema/errorMessages.d.ts.map +1 -1
  624. package/dist/utils/zod-to-json-schema/parseTypes.d.cts +2 -3
  625. package/dist/utils/zod-to-json-schema/parseTypes.d.cts.map +1 -1
  626. package/dist/utils/zod-to-json-schema/parseTypes.d.ts +2 -3
  627. package/dist/utils/zod-to-json-schema/parseTypes.d.ts.map +1 -1
  628. package/dist/utils/zod-to-json-schema/parsers/any.d.cts +1 -2
  629. package/dist/utils/zod-to-json-schema/parsers/any.d.cts.map +1 -1
  630. package/dist/utils/zod-to-json-schema/parsers/any.d.ts +1 -2
  631. package/dist/utils/zod-to-json-schema/parsers/any.d.ts.map +1 -1
  632. package/dist/utils/zod-to-json-schema/parsers/array.d.cts +1 -2
  633. package/dist/utils/zod-to-json-schema/parsers/array.d.cts.map +1 -1
  634. package/dist/utils/zod-to-json-schema/parsers/array.d.ts +1 -2
  635. package/dist/utils/zod-to-json-schema/parsers/array.d.ts.map +1 -1
  636. package/dist/utils/zod-to-json-schema/parsers/bigint.d.cts +1 -2
  637. package/dist/utils/zod-to-json-schema/parsers/bigint.d.cts.map +1 -1
  638. package/dist/utils/zod-to-json-schema/parsers/bigint.d.ts +1 -2
  639. package/dist/utils/zod-to-json-schema/parsers/bigint.d.ts.map +1 -1
  640. package/dist/utils/zod-to-json-schema/parsers/boolean.d.cts +1 -2
  641. package/dist/utils/zod-to-json-schema/parsers/boolean.d.cts.map +1 -1
  642. package/dist/utils/zod-to-json-schema/parsers/boolean.d.ts +1 -2
  643. package/dist/utils/zod-to-json-schema/parsers/boolean.d.ts.map +1 -1
  644. package/dist/utils/zod-to-json-schema/parsers/date.d.cts +1 -2
  645. package/dist/utils/zod-to-json-schema/parsers/date.d.cts.map +1 -1
  646. package/dist/utils/zod-to-json-schema/parsers/date.d.ts +1 -2
  647. package/dist/utils/zod-to-json-schema/parsers/date.d.ts.map +1 -1
  648. package/dist/utils/zod-to-json-schema/parsers/enum.d.cts +1 -2
  649. package/dist/utils/zod-to-json-schema/parsers/enum.d.cts.map +1 -1
  650. package/dist/utils/zod-to-json-schema/parsers/enum.d.ts +1 -2
  651. package/dist/utils/zod-to-json-schema/parsers/enum.d.ts.map +1 -1
  652. package/dist/utils/zod-to-json-schema/parsers/intersection.d.cts +1 -2
  653. package/dist/utils/zod-to-json-schema/parsers/intersection.d.cts.map +1 -1
  654. package/dist/utils/zod-to-json-schema/parsers/intersection.d.ts +1 -2
  655. package/dist/utils/zod-to-json-schema/parsers/intersection.d.ts.map +1 -1
  656. package/dist/utils/zod-to-json-schema/parsers/literal.d.cts +1 -2
  657. package/dist/utils/zod-to-json-schema/parsers/literal.d.cts.map +1 -1
  658. package/dist/utils/zod-to-json-schema/parsers/literal.d.ts +1 -2
  659. package/dist/utils/zod-to-json-schema/parsers/literal.d.ts.map +1 -1
  660. package/dist/utils/zod-to-json-schema/parsers/map.d.cts +1 -2
  661. package/dist/utils/zod-to-json-schema/parsers/map.d.cts.map +1 -1
  662. package/dist/utils/zod-to-json-schema/parsers/map.d.ts +1 -2
  663. package/dist/utils/zod-to-json-schema/parsers/map.d.ts.map +1 -1
  664. package/dist/utils/zod-to-json-schema/parsers/nativeEnum.d.cts +1 -2
  665. package/dist/utils/zod-to-json-schema/parsers/nativeEnum.d.cts.map +1 -1
  666. package/dist/utils/zod-to-json-schema/parsers/nativeEnum.d.ts +1 -2
  667. package/dist/utils/zod-to-json-schema/parsers/nativeEnum.d.ts.map +1 -1
  668. package/dist/utils/zod-to-json-schema/parsers/never.d.cts +1 -2
  669. package/dist/utils/zod-to-json-schema/parsers/never.d.cts.map +1 -1
  670. package/dist/utils/zod-to-json-schema/parsers/never.d.ts +1 -2
  671. package/dist/utils/zod-to-json-schema/parsers/never.d.ts.map +1 -1
  672. package/dist/utils/zod-to-json-schema/parsers/null.d.cts +1 -2
  673. package/dist/utils/zod-to-json-schema/parsers/null.d.cts.map +1 -1
  674. package/dist/utils/zod-to-json-schema/parsers/null.d.ts +1 -2
  675. package/dist/utils/zod-to-json-schema/parsers/null.d.ts.map +1 -1
  676. package/dist/utils/zod-to-json-schema/parsers/nullable.d.cts +1 -2
  677. package/dist/utils/zod-to-json-schema/parsers/nullable.d.cts.map +1 -1
  678. package/dist/utils/zod-to-json-schema/parsers/nullable.d.ts +1 -2
  679. package/dist/utils/zod-to-json-schema/parsers/nullable.d.ts.map +1 -1
  680. package/dist/utils/zod-to-json-schema/parsers/number.d.cts +1 -2
  681. package/dist/utils/zod-to-json-schema/parsers/number.d.cts.map +1 -1
  682. package/dist/utils/zod-to-json-schema/parsers/number.d.ts +1 -2
  683. package/dist/utils/zod-to-json-schema/parsers/number.d.ts.map +1 -1
  684. package/dist/utils/zod-to-json-schema/parsers/object.d.cts +1 -2
  685. package/dist/utils/zod-to-json-schema/parsers/object.d.cts.map +1 -1
  686. package/dist/utils/zod-to-json-schema/parsers/object.d.ts +1 -2
  687. package/dist/utils/zod-to-json-schema/parsers/object.d.ts.map +1 -1
  688. package/dist/utils/zod-to-json-schema/parsers/record.d.cts +1 -2
  689. package/dist/utils/zod-to-json-schema/parsers/record.d.cts.map +1 -1
  690. package/dist/utils/zod-to-json-schema/parsers/record.d.ts +1 -2
  691. package/dist/utils/zod-to-json-schema/parsers/record.d.ts.map +1 -1
  692. package/dist/utils/zod-to-json-schema/parsers/set.d.cts +1 -2
  693. package/dist/utils/zod-to-json-schema/parsers/set.d.cts.map +1 -1
  694. package/dist/utils/zod-to-json-schema/parsers/set.d.ts +1 -2
  695. package/dist/utils/zod-to-json-schema/parsers/set.d.ts.map +1 -1
  696. package/dist/utils/zod-to-json-schema/parsers/string.d.cts +1 -2
  697. package/dist/utils/zod-to-json-schema/parsers/string.d.cts.map +1 -1
  698. package/dist/utils/zod-to-json-schema/parsers/string.d.ts +1 -2
  699. package/dist/utils/zod-to-json-schema/parsers/string.d.ts.map +1 -1
  700. package/dist/utils/zod-to-json-schema/parsers/tuple.d.cts +1 -2
  701. package/dist/utils/zod-to-json-schema/parsers/tuple.d.cts.map +1 -1
  702. package/dist/utils/zod-to-json-schema/parsers/tuple.d.ts +1 -2
  703. package/dist/utils/zod-to-json-schema/parsers/tuple.d.ts.map +1 -1
  704. package/dist/utils/zod-to-json-schema/parsers/undefined.d.cts +1 -2
  705. package/dist/utils/zod-to-json-schema/parsers/undefined.d.cts.map +1 -1
  706. package/dist/utils/zod-to-json-schema/parsers/undefined.d.ts +1 -2
  707. package/dist/utils/zod-to-json-schema/parsers/undefined.d.ts.map +1 -1
  708. package/dist/utils/zod-to-json-schema/parsers/union.d.cts +2 -3
  709. package/dist/utils/zod-to-json-schema/parsers/union.d.cts.map +1 -1
  710. package/dist/utils/zod-to-json-schema/parsers/union.d.ts +2 -3
  711. package/dist/utils/zod-to-json-schema/parsers/union.d.ts.map +1 -1
  712. package/dist/utils/zod-to-json-schema/parsers/unknown.d.cts +1 -2
  713. package/dist/utils/zod-to-json-schema/parsers/unknown.d.cts.map +1 -1
  714. package/dist/utils/zod-to-json-schema/parsers/unknown.d.ts +1 -2
  715. package/dist/utils/zod-to-json-schema/parsers/unknown.d.ts.map +1 -1
  716. package/dist/vectorstores.d.cts +8 -9
  717. package/dist/vectorstores.d.cts.map +1 -1
  718. package/dist/vectorstores.d.ts +8 -9
  719. package/dist/vectorstores.d.ts.map +1 -1
  720. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"base.cjs","names":["RunTree","getRuntimeEnvironment","BaseCallbackHandler","convertToDottedOrderFormat"],"sources":["../../src/tracers/base.ts"],"sourcesContent":["import { KVMap, BaseRun } from \"langsmith/schemas\";\nimport { RunTree, convertToDottedOrderFormat } from \"langsmith/run_trees\";\n\nimport type { ChainValues } from \"../utils/types/index.js\";\nimport type { AgentAction, AgentFinish } from \"../agents.js\";\nimport type { LLMResult } from \"../outputs.js\";\nimport type { BaseMessage } from \"../messages/base.js\";\nimport { Serialized } from \"../load/serializable.js\";\nimport {\n BaseCallbackHandler,\n BaseCallbackHandlerInput,\n HandleLLMNewTokenCallbackFields,\n NewTokenIndices,\n} from \"../callbacks/base.js\";\nimport type { Document } from \"../documents/document.js\";\nimport { getRuntimeEnvironment } from \"../utils/env.js\";\n\nexport type RunType = string;\n\n// TODO: Remove this type and just use the base LangSmith Run type.\nexport interface Run extends BaseRun {\n // some optional fields are always present here\n id: string;\n start_time: number;\n end_time?: number;\n execution_order: number;\n // some additional fields that don't exist in sdk runs\n child_runs: this[];\n child_execution_order: number;\n events: Array<{\n name: string;\n time: string;\n kwargs?: Record<string, unknown>;\n }>;\n trace_id?: string;\n dotted_order?: string;\n /** @internal */\n _serialized_start_time?: string;\n}\n\n// TODO: Remove and just use base LangSmith Run type\nconst convertRunTreeToRun = (runTree?: RunTree): Run | undefined => {\n if (!runTree) {\n return undefined;\n }\n // Important that we return the raw run tree object since the reference\n // is mutated in other places.\n // TODO: Remove places where this is being done.\n\n runTree.events = runTree.events ?? [];\n runTree.child_runs = runTree.child_runs ?? [];\n // TODO: Remove this cast and just use the LangSmith RunTree type.\n return runTree as unknown as Run;\n};\n\nfunction convertRunToRunTree(run?: Run, parentRun?: Run): RunTree | undefined {\n if (!run) {\n return undefined;\n }\n return new RunTree({\n ...run,\n start_time: run._serialized_start_time ?? run.start_time,\n parent_run: convertRunToRunTree(parentRun),\n child_runs: run.child_runs\n .map((r) => convertRunToRunTree(r))\n .filter((r): r is RunTree => r !== undefined),\n extra: {\n ...run.extra,\n runtime: getRuntimeEnvironment(),\n },\n tracingEnabled: false,\n });\n}\n\nexport interface AgentRun extends Run {\n actions: AgentAction[];\n}\n\n// oxlint-disable-next-line @typescript-eslint/no-explicit-any\nfunction _coerceToDict(value: any, defaultKey: string) {\n return value && !Array.isArray(value) && typeof value === \"object\"\n ? value\n : { [defaultKey]: value };\n}\n\nexport function isBaseTracer(x: BaseCallbackHandler): x is BaseTracer {\n return typeof (x as BaseTracer)._addRunToRunMap === \"function\";\n}\n\nexport abstract class BaseTracer extends BaseCallbackHandler {\n /** @deprecated Use `runTreeMap` instead. */\n protected runMap: Map<string, Run> = new Map();\n\n protected runTreeMap: Map<string, RunTree> = new Map();\n\n protected usesRunTreeMap = false;\n\n constructor(_fields?: BaseCallbackHandlerInput) {\n super(...arguments);\n }\n\n copy(): this {\n return this;\n }\n\n protected getRunById(runId?: string): Run | undefined {\n if (runId === undefined) {\n return undefined;\n }\n return this.usesRunTreeMap\n ? convertRunTreeToRun(this.runTreeMap.get(runId))\n : this.runMap.get(runId);\n }\n\n protected stringifyError(error: unknown) {\n // oxlint-disable-next-line no-instanceof/no-instanceof\n if (error instanceof Error) {\n return error.message + (error?.stack ? `\\n\\n${error.stack}` : \"\");\n }\n\n if (typeof error === \"string\") {\n return error;\n }\n\n return `${error}`;\n }\n\n protected abstract persistRun(run: Run): Promise<void>;\n\n protected _addChildRun(parentRun: Run, childRun: Run) {\n parentRun.child_runs.push(childRun);\n }\n\n _addRunToRunMap(run: Run) {\n const { dottedOrder: currentDottedOrder, microsecondPrecisionDatestring } =\n convertToDottedOrderFormat(\n new Date(run.start_time).getTime(),\n run.id,\n run.execution_order\n );\n const storedRun = { ...run };\n const parentRun = this.getRunById(storedRun.parent_run_id);\n if (storedRun.parent_run_id !== undefined) {\n if (parentRun) {\n this._addChildRun(parentRun, storedRun);\n parentRun.child_execution_order = Math.max(\n parentRun.child_execution_order,\n storedRun.child_execution_order\n );\n storedRun.trace_id = parentRun.trace_id;\n if (parentRun.dotted_order !== undefined) {\n storedRun.dotted_order = [\n parentRun.dotted_order,\n currentDottedOrder,\n ].join(\".\");\n storedRun._serialized_start_time = microsecondPrecisionDatestring;\n } else {\n // This can happen naturally for callbacks added within a run\n // console.debug(`Parent run with UUID ${storedRun.parent_run_id} has no dotted order.`);\n }\n } else {\n // This can happen naturally for callbacks added within a run\n // console.debug(\n // `Parent run with UUID ${storedRun.parent_run_id} not found.`\n // );\n\n // Child run with no trace_id and dotted_order causes 400 error on LangSmith.\n // So we set the parent_run_id to undefined as a workaround.\n // This run will be shown as isolated run on LangSmith.\n storedRun.parent_run_id = undefined;\n }\n } else {\n storedRun.trace_id = storedRun.id;\n storedRun.dotted_order = currentDottedOrder;\n storedRun._serialized_start_time = microsecondPrecisionDatestring;\n }\n if (this.usesRunTreeMap) {\n const runTree = convertRunToRunTree(storedRun, parentRun);\n if (runTree !== undefined) {\n this.runTreeMap.set(storedRun.id, runTree);\n }\n } else {\n this.runMap.set(storedRun.id, storedRun);\n }\n return storedRun;\n }\n\n protected async _endTrace(run: Run): Promise<void> {\n const parentRun =\n run.parent_run_id !== undefined && this.getRunById(run.parent_run_id);\n if (parentRun) {\n parentRun.child_execution_order = Math.max(\n parentRun.child_execution_order,\n run.child_execution_order\n );\n } else {\n await this.persistRun(run);\n }\n await this.onRunUpdate?.(run);\n if (this.usesRunTreeMap) {\n this.runTreeMap.delete(run.id);\n } else {\n this.runMap.delete(run.id);\n }\n }\n\n protected _getExecutionOrder(parentRunId: string | undefined): number {\n const parentRun = parentRunId !== undefined && this.getRunById(parentRunId);\n // If a run has no parent then execution order is 1\n if (!parentRun) {\n return 1;\n }\n\n return parentRun.child_execution_order + 1;\n }\n\n /**\n * Create and add a run to the run map for LLM start events.\n * This must sometimes be done synchronously to avoid race conditions\n * when callbacks are backgrounded, so we expose it as a separate method here.\n */\n _createRunForLLMStart(\n llm: Serialized,\n prompts: string[],\n runId: string,\n parentRunId?: string,\n extraParams?: KVMap,\n tags?: string[],\n metadata?: KVMap,\n name?: string\n ) {\n const execution_order = this._getExecutionOrder(parentRunId);\n const start_time = Date.now();\n const finalExtraParams = metadata\n ? { ...extraParams, metadata }\n : extraParams;\n const run: Run = {\n id: runId,\n name: name ?? llm.id[llm.id.length - 1],\n parent_run_id: parentRunId,\n start_time,\n serialized: llm,\n events: [\n {\n name: \"start\",\n time: new Date(start_time).toISOString(),\n },\n ],\n inputs: { prompts },\n execution_order,\n child_runs: [],\n child_execution_order: execution_order,\n run_type: \"llm\",\n extra: finalExtraParams ?? {},\n tags: tags || [],\n };\n return this._addRunToRunMap(run);\n }\n\n async handleLLMStart(\n llm: Serialized,\n prompts: string[],\n runId: string,\n parentRunId?: string,\n extraParams?: KVMap,\n tags?: string[],\n metadata?: KVMap,\n name?: string\n ): Promise<Run> {\n const run =\n this.getRunById(runId) ??\n this._createRunForLLMStart(\n llm,\n prompts,\n runId,\n parentRunId,\n extraParams,\n tags,\n metadata,\n name\n );\n await this.onRunCreate?.(run);\n await this.onLLMStart?.(run);\n return run;\n }\n\n /**\n * Create and add a run to the run map for chat model start events.\n * This must sometimes be done synchronously to avoid race conditions\n * when callbacks are backgrounded, so we expose it as a separate method here.\n */\n _createRunForChatModelStart(\n llm: Serialized,\n messages: BaseMessage[][],\n runId: string,\n parentRunId?: string,\n extraParams?: KVMap,\n tags?: string[],\n metadata?: KVMap,\n name?: string\n ) {\n const execution_order = this._getExecutionOrder(parentRunId);\n const start_time = Date.now();\n const finalExtraParams = metadata\n ? { ...extraParams, metadata }\n : extraParams;\n const run: Run = {\n id: runId,\n name: name ?? llm.id[llm.id.length - 1],\n parent_run_id: parentRunId,\n start_time,\n serialized: llm,\n events: [\n {\n name: \"start\",\n time: new Date(start_time).toISOString(),\n },\n ],\n inputs: { messages },\n execution_order,\n child_runs: [],\n child_execution_order: execution_order,\n run_type: \"llm\",\n extra: finalExtraParams ?? {},\n tags: tags || [],\n };\n return this._addRunToRunMap(run);\n }\n\n async handleChatModelStart(\n llm: Serialized,\n messages: BaseMessage[][],\n runId: string,\n parentRunId?: string,\n extraParams?: KVMap,\n tags?: string[],\n metadata?: KVMap,\n name?: string\n ): Promise<Run> {\n const run =\n this.getRunById(runId) ??\n this._createRunForChatModelStart(\n llm,\n messages,\n runId,\n parentRunId,\n extraParams,\n tags,\n metadata,\n name\n );\n await this.onRunCreate?.(run);\n await this.onLLMStart?.(run);\n return run;\n }\n\n async handleLLMEnd(\n output: LLMResult,\n runId: string,\n _parentRunId?: string,\n _tags?: string[],\n extraParams?: Record<string, unknown>\n ): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"llm\") {\n throw new Error(\"No LLM run to end.\");\n }\n run.end_time = Date.now();\n run.outputs = output;\n run.events.push({\n name: \"end\",\n time: new Date(run.end_time).toISOString(),\n });\n run.extra = { ...run.extra, ...extraParams };\n await this.onLLMEnd?.(run);\n await this._endTrace(run);\n return run;\n }\n\n async handleLLMError(\n error: unknown,\n runId: string,\n _parentRunId?: string,\n _tags?: string[],\n extraParams?: Record<string, unknown>\n ): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"llm\") {\n throw new Error(\"No LLM run to end.\");\n }\n run.end_time = Date.now();\n run.error = this.stringifyError(error);\n run.events.push({\n name: \"error\",\n time: new Date(run.end_time).toISOString(),\n });\n run.extra = { ...run.extra, ...extraParams };\n await this.onLLMError?.(run);\n await this._endTrace(run);\n return run;\n }\n\n /**\n * Create and add a run to the run map for chain start events.\n * This must sometimes be done synchronously to avoid race conditions\n * when callbacks are backgrounded, so we expose it as a separate method here.\n */\n _createRunForChainStart(\n chain: Serialized,\n inputs: ChainValues,\n runId: string,\n parentRunId?: string,\n tags?: string[],\n metadata?: KVMap,\n runType?: string,\n name?: string,\n extra?: Record<string, unknown>\n ) {\n const execution_order = this._getExecutionOrder(parentRunId);\n const start_time = Date.now();\n const run: Run = {\n id: runId,\n name: name ?? chain.id[chain.id.length - 1],\n parent_run_id: parentRunId,\n start_time,\n serialized: chain,\n events: [\n {\n name: \"start\",\n time: new Date(start_time).toISOString(),\n },\n ],\n inputs,\n execution_order,\n child_execution_order: execution_order,\n run_type: runType ?? \"chain\",\n child_runs: [],\n extra: metadata ? { ...extra, metadata } : { ...extra },\n tags: tags || [],\n };\n return this._addRunToRunMap(run);\n }\n\n async handleChainStart(\n chain: Serialized,\n inputs: ChainValues,\n runId: string,\n parentRunId?: string,\n tags?: string[],\n metadata?: KVMap,\n runType?: string,\n name?: string\n ): Promise<Run> {\n const run =\n this.getRunById(runId) ??\n this._createRunForChainStart(\n chain,\n inputs,\n runId,\n parentRunId,\n tags,\n metadata,\n runType,\n name\n );\n await this.onRunCreate?.(run);\n await this.onChainStart?.(run);\n return run;\n }\n\n async handleChainEnd(\n outputs: ChainValues,\n runId: string,\n _parentRunId?: string,\n _tags?: string[],\n kwargs?: { inputs?: Record<string, unknown> }\n ): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run) {\n throw new Error(\"No chain run to end.\");\n }\n run.end_time = Date.now();\n run.outputs = _coerceToDict(outputs, \"output\");\n run.events.push({\n name: \"end\",\n time: new Date(run.end_time).toISOString(),\n });\n if (kwargs?.inputs !== undefined) {\n run.inputs = _coerceToDict(kwargs.inputs, \"input\");\n }\n await this.onChainEnd?.(run);\n await this._endTrace(run);\n return run;\n }\n\n async handleChainError(\n error: unknown,\n runId: string,\n _parentRunId?: string,\n _tags?: string[],\n kwargs?: { inputs?: Record<string, unknown> }\n ): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run) {\n throw new Error(\"No chain run to end.\");\n }\n run.end_time = Date.now();\n run.error = this.stringifyError(error);\n run.events.push({\n name: \"error\",\n time: new Date(run.end_time).toISOString(),\n });\n if (kwargs?.inputs !== undefined) {\n run.inputs = _coerceToDict(kwargs.inputs, \"input\");\n }\n await this.onChainError?.(run);\n await this._endTrace(run);\n return run;\n }\n\n /**\n * Create and add a run to the run map for tool start events.\n * This must sometimes be done synchronously to avoid race conditions\n * when callbacks are backgrounded, so we expose it as a separate method here.\n */\n _createRunForToolStart(\n tool: Serialized,\n input: string | Record<string, unknown>,\n runId: string,\n parentRunId?: string,\n tags?: string[],\n metadata?: KVMap,\n name?: string\n ) {\n const execution_order = this._getExecutionOrder(parentRunId);\n const start_time = Date.now();\n const run: Run = {\n id: runId,\n name: name ?? tool.id[tool.id.length - 1],\n parent_run_id: parentRunId,\n start_time,\n serialized: tool,\n events: [\n {\n name: \"start\",\n time: new Date(start_time).toISOString(),\n },\n ],\n inputs: typeof input === \"string\" ? { input } : input,\n execution_order,\n child_execution_order: execution_order,\n run_type: \"tool\",\n child_runs: [],\n extra: metadata ? { metadata } : {},\n tags: tags || [],\n };\n return this._addRunToRunMap(run);\n }\n\n async handleToolStart(\n tool: Serialized,\n input: string | Record<string, unknown>,\n runId: string,\n parentRunId?: string,\n tags?: string[],\n metadata?: KVMap,\n name?: string,\n _toolCallId?: string\n ): Promise<Run> {\n const run =\n this.getRunById(runId) ??\n this._createRunForToolStart(\n tool,\n input,\n runId,\n parentRunId,\n tags,\n metadata,\n name\n );\n await this.onRunCreate?.(run);\n await this.onToolStart?.(run);\n return run;\n }\n\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n async handleToolEnd(output: any, runId: string): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"tool\") {\n throw new Error(\"No tool run to end\");\n }\n run.end_time = Date.now();\n run.outputs = { output };\n run.events.push({\n name: \"end\",\n time: new Date(run.end_time).toISOString(),\n });\n await this.onToolEnd?.(run);\n await this._endTrace(run);\n return run;\n }\n\n async handleToolError(error: unknown, runId: string): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"tool\") {\n throw new Error(\"No tool run to end\");\n }\n run.end_time = Date.now();\n run.error = this.stringifyError(error);\n run.events.push({\n name: \"error\",\n time: new Date(run.end_time).toISOString(),\n });\n await this.onToolError?.(run);\n await this._endTrace(run);\n return run;\n }\n\n async handleAgentAction(action: AgentAction, runId: string): Promise<void> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"chain\") {\n return;\n }\n const agentRun = run as AgentRun;\n agentRun.actions = agentRun.actions || [];\n agentRun.actions.push(action);\n agentRun.events.push({\n name: \"agent_action\",\n time: new Date().toISOString(),\n kwargs: { action },\n });\n await this.onAgentAction?.(run as AgentRun);\n }\n\n async handleAgentEnd(action: AgentFinish, runId: string): Promise<void> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"chain\") {\n return;\n }\n run.events.push({\n name: \"agent_end\",\n time: new Date().toISOString(),\n kwargs: { action },\n });\n await this.onAgentEnd?.(run);\n }\n\n /**\n * Create and add a run to the run map for retriever start events.\n * This must sometimes be done synchronously to avoid race conditions\n * when callbacks are backgrounded, so we expose it as a separate method here.\n */\n _createRunForRetrieverStart(\n retriever: Serialized,\n query: string,\n runId: string,\n parentRunId?: string,\n tags?: string[],\n metadata?: KVMap,\n name?: string\n ) {\n const execution_order = this._getExecutionOrder(parentRunId);\n const start_time = Date.now();\n const run: Run = {\n id: runId,\n name: name ?? retriever.id[retriever.id.length - 1],\n parent_run_id: parentRunId,\n start_time,\n serialized: retriever,\n events: [\n {\n name: \"start\",\n time: new Date(start_time).toISOString(),\n },\n ],\n inputs: { query },\n execution_order,\n child_execution_order: execution_order,\n run_type: \"retriever\",\n child_runs: [],\n extra: metadata ? { metadata } : {},\n tags: tags || [],\n };\n return this._addRunToRunMap(run);\n }\n\n async handleRetrieverStart(\n retriever: Serialized,\n query: string,\n runId: string,\n parentRunId?: string,\n tags?: string[],\n metadata?: KVMap,\n name?: string\n ): Promise<Run> {\n const run =\n this.getRunById(runId) ??\n this._createRunForRetrieverStart(\n retriever,\n query,\n runId,\n parentRunId,\n tags,\n metadata,\n name\n );\n await this.onRunCreate?.(run);\n await this.onRetrieverStart?.(run);\n return run;\n }\n\n async handleRetrieverEnd(\n documents: Document<Record<string, unknown>>[],\n runId: string\n ): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"retriever\") {\n throw new Error(\"No retriever run to end\");\n }\n run.end_time = Date.now();\n run.outputs = { documents };\n run.events.push({\n name: \"end\",\n time: new Date(run.end_time).toISOString(),\n });\n await this.onRetrieverEnd?.(run);\n await this._endTrace(run);\n return run;\n }\n\n async handleRetrieverError(error: unknown, runId: string): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"retriever\") {\n throw new Error(\"No retriever run to end\");\n }\n run.end_time = Date.now();\n run.error = this.stringifyError(error);\n run.events.push({\n name: \"error\",\n time: new Date(run.end_time).toISOString(),\n });\n await this.onRetrieverError?.(run);\n await this._endTrace(run);\n return run;\n }\n\n async handleText(text: string, runId: string): Promise<void> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"chain\") {\n return;\n }\n run.events.push({\n name: \"text\",\n time: new Date().toISOString(),\n kwargs: { text },\n });\n await this.onText?.(run);\n }\n\n async handleLLMNewToken(\n token: string,\n idx: NewTokenIndices,\n runId: string,\n _parentRunId?: string,\n _tags?: string[],\n fields?: HandleLLMNewTokenCallbackFields\n ): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"llm\") {\n throw new Error(\n `Invalid \"runId\" provided to \"handleLLMNewToken\" callback.`\n );\n }\n run.events.push({\n name: \"new_token\",\n time: new Date().toISOString(),\n kwargs: { token, idx, chunk: fields?.chunk },\n });\n await this.onLLMNewToken?.(run, token, { chunk: fields?.chunk });\n return run;\n }\n\n // custom event handlers\n\n onRunCreate?(run: Run): void | Promise<void>;\n\n onRunUpdate?(run: Run): void | Promise<void>;\n\n onLLMStart?(run: Run): void | Promise<void>;\n\n onLLMEnd?(run: Run): void | Promise<void>;\n\n onLLMError?(run: Run): void | Promise<void>;\n\n onChainStart?(run: Run): void | Promise<void>;\n\n onChainEnd?(run: Run): void | Promise<void>;\n\n onChainError?(run: Run): void | Promise<void>;\n\n onToolStart?(run: Run): void | Promise<void>;\n\n onToolEnd?(run: Run): void | Promise<void>;\n\n onToolError?(run: Run): void | Promise<void>;\n\n onAgentAction?(run: Run): void | Promise<void>;\n\n onAgentEnd?(run: Run): void | Promise<void>;\n\n onRetrieverStart?(run: Run): void | Promise<void>;\n\n onRetrieverEnd?(run: Run): void | Promise<void>;\n\n onRetrieverError?(run: Run): void | Promise<void>;\n\n onText?(run: Run): void | Promise<void>;\n\n onLLMNewToken?(\n run: Run,\n token: string,\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n kwargs?: { chunk: any }\n ): void | Promise<void>;\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"base.cjs","names":["RunTree","getRuntimeEnvironment","BaseCallbackHandler","convertToDottedOrderFormat"],"sources":["../../src/tracers/base.ts"],"sourcesContent":["import { KVMap, BaseRun } from \"langsmith/schemas\";\nimport { RunTree, convertToDottedOrderFormat } from \"langsmith/run_trees\";\n\nimport type { ChainValues } from \"../utils/types/index.js\";\nimport type { AgentAction, AgentFinish } from \"../agents.js\";\nimport type { LLMResult } from \"../outputs.js\";\nimport type { BaseMessage } from \"../messages/base.js\";\nimport { Serialized } from \"../load/serializable.js\";\nimport {\n BaseCallbackHandler,\n BaseCallbackHandlerInput,\n HandleLLMNewTokenCallbackFields,\n NewTokenIndices,\n} from \"../callbacks/base.js\";\nimport type { Document } from \"../documents/document.js\";\nimport { getRuntimeEnvironment } from \"../utils/env.js\";\n\nexport type RunType = string;\n\n// TODO: Remove this type and just use the base LangSmith Run type.\nexport interface Run extends BaseRun {\n // some optional fields are always present here\n id: string;\n start_time: number;\n end_time?: number;\n execution_order: number;\n // some additional fields that don't exist in sdk runs\n child_runs: this[];\n child_execution_order: number;\n events: Array<{\n name: string;\n time: string;\n kwargs?: Record<string, unknown>;\n }>;\n trace_id?: string;\n dotted_order?: string;\n /** @internal */\n _serialized_start_time?: string;\n}\n\n// TODO: Remove and just use base LangSmith Run type\nconst convertRunTreeToRun = (runTree?: RunTree): Run | undefined => {\n if (!runTree) {\n return undefined;\n }\n // Important that we return the raw run tree object since the reference\n // is mutated in other places.\n // TODO: Remove places where this is being done.\n\n runTree.events = runTree.events ?? [];\n runTree.child_runs = runTree.child_runs ?? [];\n // TODO: Remove this cast and just use the LangSmith RunTree type.\n return runTree as unknown as Run;\n};\n\nfunction convertRunToRunTree(run?: Run, parentRun?: Run): RunTree | undefined {\n if (!run) {\n return undefined;\n }\n return new RunTree({\n ...run,\n start_time: run._serialized_start_time ?? run.start_time,\n parent_run: convertRunToRunTree(parentRun),\n child_runs: run.child_runs\n .map((r) => convertRunToRunTree(r))\n .filter((r): r is RunTree => r !== undefined),\n extra: {\n ...run.extra,\n runtime: getRuntimeEnvironment(),\n },\n tracingEnabled: false,\n });\n}\n\nexport interface AgentRun extends Run {\n actions: AgentAction[];\n}\n\n// oxlint-disable-next-line @typescript-eslint/no-explicit-any\nfunction _coerceToDict(value: any, defaultKey: string) {\n return value && !Array.isArray(value) && typeof value === \"object\"\n ? value\n : { [defaultKey]: value };\n}\n\nexport function isBaseTracer(x: BaseCallbackHandler): x is BaseTracer {\n return typeof (x as BaseTracer)._addRunToRunMap === \"function\";\n}\n\nexport abstract class BaseTracer extends BaseCallbackHandler {\n /** @deprecated Use `runTreeMap` instead. */\n protected runMap: Map<string, Run> = new Map();\n\n protected runTreeMap: Map<string, RunTree> = new Map();\n\n protected usesRunTreeMap = false;\n\n constructor(_fields?: BaseCallbackHandlerInput) {\n super(...arguments);\n }\n\n copy(): this {\n return this;\n }\n\n protected getRunById(runId?: string): Run | undefined {\n if (runId === undefined) {\n return undefined;\n }\n return this.usesRunTreeMap\n ? convertRunTreeToRun(this.runTreeMap.get(runId))\n : this.runMap.get(runId);\n }\n\n protected stringifyError(error: unknown) {\n // oxlint-disable-next-line no-instanceof/no-instanceof\n if (error instanceof Error) {\n return error.message + (error?.stack ? `\\n\\n${error.stack}` : \"\");\n }\n\n if (typeof error === \"string\") {\n return error;\n }\n\n return `${error}`;\n }\n\n protected abstract persistRun(run: Run): Promise<void>;\n\n protected _addChildRun(parentRun: Run, childRun: Run) {\n parentRun.child_runs.push(childRun);\n }\n\n _addRunToRunMap(run: Run) {\n const { dottedOrder: currentDottedOrder, microsecondPrecisionDatestring } =\n convertToDottedOrderFormat(\n new Date(run.start_time).getTime(),\n run.id,\n run.execution_order\n );\n const storedRun = { ...run };\n const parentRun = this.getRunById(storedRun.parent_run_id);\n if (storedRun.parent_run_id !== undefined) {\n if (parentRun) {\n this._addChildRun(parentRun, storedRun);\n parentRun.child_execution_order = Math.max(\n parentRun.child_execution_order,\n storedRun.child_execution_order\n );\n storedRun.trace_id = parentRun.trace_id;\n if (parentRun.dotted_order !== undefined) {\n storedRun.dotted_order = [\n parentRun.dotted_order,\n currentDottedOrder,\n ].join(\".\");\n storedRun._serialized_start_time = microsecondPrecisionDatestring;\n } else {\n // This can happen naturally for callbacks added within a run\n // console.debug(`Parent run with UUID ${storedRun.parent_run_id} has no dotted order.`);\n }\n } else {\n // This can happen naturally for callbacks added within a run\n // console.debug(\n // `Parent run with UUID ${storedRun.parent_run_id} not found.`\n // );\n\n // Child run with no trace_id and dotted_order causes 400 error on LangSmith.\n // So we set the parent_run_id to undefined as a workaround.\n // This run will be shown as isolated run on LangSmith.\n storedRun.parent_run_id = undefined;\n }\n } else {\n storedRun.trace_id = storedRun.id;\n storedRun.dotted_order = currentDottedOrder;\n storedRun._serialized_start_time = microsecondPrecisionDatestring;\n }\n if (this.usesRunTreeMap) {\n const runTree = convertRunToRunTree(storedRun, parentRun);\n if (runTree !== undefined) {\n this.runTreeMap.set(storedRun.id, runTree);\n }\n } else {\n this.runMap.set(storedRun.id, storedRun);\n }\n return storedRun;\n }\n\n protected async _endTrace(run: Run): Promise<void> {\n const parentRun =\n run.parent_run_id !== undefined && this.getRunById(run.parent_run_id);\n if (parentRun) {\n parentRun.child_execution_order = Math.max(\n parentRun.child_execution_order,\n run.child_execution_order\n );\n } else {\n await this.persistRun(run);\n }\n await this.onRunUpdate?.(run);\n if (this.usesRunTreeMap) {\n this.runTreeMap.delete(run.id);\n } else {\n this.runMap.delete(run.id);\n }\n }\n\n protected _getExecutionOrder(parentRunId: string | undefined): number {\n const parentRun = parentRunId !== undefined && this.getRunById(parentRunId);\n // If a run has no parent then execution order is 1\n if (!parentRun) {\n return 1;\n }\n\n return parentRun.child_execution_order + 1;\n }\n\n /**\n * Create and add a run to the run map for LLM start events.\n * This must sometimes be done synchronously to avoid race conditions\n * when callbacks are backgrounded, so we expose it as a separate method here.\n */\n _createRunForLLMStart(\n llm: Serialized,\n prompts: string[],\n runId: string,\n parentRunId?: string,\n extraParams?: KVMap,\n tags?: string[],\n metadata?: KVMap,\n name?: string\n ) {\n const execution_order = this._getExecutionOrder(parentRunId);\n const start_time = Date.now();\n const finalExtraParams = metadata\n ? { ...extraParams, metadata }\n : extraParams;\n const run: Run = {\n id: runId,\n name: name ?? llm.id[llm.id.length - 1],\n parent_run_id: parentRunId,\n start_time,\n serialized: llm,\n events: [\n {\n name: \"start\",\n time: new Date(start_time).toISOString(),\n },\n ],\n inputs: { prompts },\n execution_order,\n child_runs: [],\n child_execution_order: execution_order,\n run_type: \"llm\",\n extra: finalExtraParams ?? {},\n tags: tags || [],\n };\n return this._addRunToRunMap(run);\n }\n\n async handleLLMStart(\n llm: Serialized,\n prompts: string[],\n runId: string,\n parentRunId?: string,\n extraParams?: KVMap,\n tags?: string[],\n metadata?: KVMap,\n name?: string\n ): Promise<Run> {\n const run =\n this.getRunById(runId) ??\n this._createRunForLLMStart(\n llm,\n prompts,\n runId,\n parentRunId,\n extraParams,\n tags,\n metadata,\n name\n );\n await this.onRunCreate?.(run);\n await this.onLLMStart?.(run);\n return run;\n }\n\n /**\n * Create and add a run to the run map for chat model start events.\n * This must sometimes be done synchronously to avoid race conditions\n * when callbacks are backgrounded, so we expose it as a separate method here.\n */\n _createRunForChatModelStart(\n llm: Serialized,\n messages: BaseMessage[][],\n runId: string,\n parentRunId?: string,\n extraParams?: KVMap,\n tags?: string[],\n metadata?: KVMap,\n name?: string\n ) {\n const execution_order = this._getExecutionOrder(parentRunId);\n const start_time = Date.now();\n const finalExtraParams = metadata\n ? { ...extraParams, metadata }\n : extraParams;\n const run: Run = {\n id: runId,\n name: name ?? llm.id[llm.id.length - 1],\n parent_run_id: parentRunId,\n start_time,\n serialized: llm,\n events: [\n {\n name: \"start\",\n time: new Date(start_time).toISOString(),\n },\n ],\n inputs: { messages },\n execution_order,\n child_runs: [],\n child_execution_order: execution_order,\n run_type: \"llm\",\n extra: finalExtraParams ?? {},\n tags: tags || [],\n };\n return this._addRunToRunMap(run);\n }\n\n async handleChatModelStart(\n llm: Serialized,\n messages: BaseMessage[][],\n runId: string,\n parentRunId?: string,\n extraParams?: KVMap,\n tags?: string[],\n metadata?: KVMap,\n name?: string\n ): Promise<Run> {\n const run =\n this.getRunById(runId) ??\n this._createRunForChatModelStart(\n llm,\n messages,\n runId,\n parentRunId,\n extraParams,\n tags,\n metadata,\n name\n );\n await this.onRunCreate?.(run);\n await this.onLLMStart?.(run);\n return run;\n }\n\n async handleLLMEnd(\n output: LLMResult,\n runId: string,\n _parentRunId?: string,\n _tags?: string[],\n extraParams?: Record<string, unknown>\n ): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"llm\") {\n throw new Error(\"No LLM run to end.\");\n }\n run.end_time = Date.now();\n run.outputs = output;\n run.events.push({\n name: \"end\",\n time: new Date(run.end_time).toISOString(),\n });\n run.extra = { ...run.extra, ...extraParams };\n await this.onLLMEnd?.(run);\n await this._endTrace(run);\n return run;\n }\n\n async handleLLMError(\n error: unknown,\n runId: string,\n _parentRunId?: string,\n _tags?: string[],\n extraParams?: Record<string, unknown>\n ): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"llm\") {\n throw new Error(\"No LLM run to end.\");\n }\n run.end_time = Date.now();\n run.error = this.stringifyError(error);\n run.events.push({\n name: \"error\",\n time: new Date(run.end_time).toISOString(),\n });\n run.extra = { ...run.extra, ...extraParams };\n await this.onLLMError?.(run);\n await this._endTrace(run);\n return run;\n }\n\n /**\n * Create and add a run to the run map for chain start events.\n * This must sometimes be done synchronously to avoid race conditions\n * when callbacks are backgrounded, so we expose it as a separate method here.\n */\n _createRunForChainStart(\n chain: Serialized,\n inputs: ChainValues,\n runId: string,\n parentRunId?: string,\n tags?: string[],\n metadata?: KVMap,\n runType?: string,\n name?: string,\n extra?: Record<string, unknown>\n ) {\n const execution_order = this._getExecutionOrder(parentRunId);\n const start_time = Date.now();\n const run: Run = {\n id: runId,\n name: name ?? chain.id[chain.id.length - 1],\n parent_run_id: parentRunId,\n start_time,\n serialized: chain,\n events: [\n {\n name: \"start\",\n time: new Date(start_time).toISOString(),\n },\n ],\n inputs,\n execution_order,\n child_execution_order: execution_order,\n run_type: runType ?? \"chain\",\n child_runs: [],\n extra: metadata ? { ...extra, metadata } : { ...extra },\n tags: tags || [],\n };\n return this._addRunToRunMap(run);\n }\n\n async handleChainStart(\n chain: Serialized,\n inputs: ChainValues,\n runId: string,\n parentRunId?: string,\n tags?: string[],\n metadata?: KVMap,\n runType?: string,\n name?: string\n ): Promise<Run> {\n const run =\n this.getRunById(runId) ??\n this._createRunForChainStart(\n chain,\n inputs,\n runId,\n parentRunId,\n tags,\n metadata,\n runType,\n name\n );\n await this.onRunCreate?.(run);\n await this.onChainStart?.(run);\n return run;\n }\n\n async handleChainEnd(\n outputs: ChainValues,\n runId: string,\n _parentRunId?: string,\n _tags?: string[],\n kwargs?: { inputs?: Record<string, unknown> }\n ): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run) {\n throw new Error(\"No chain run to end.\");\n }\n run.end_time = Date.now();\n run.outputs = _coerceToDict(outputs, \"output\");\n run.events.push({\n name: \"end\",\n time: new Date(run.end_time).toISOString(),\n });\n if (kwargs?.inputs !== undefined) {\n run.inputs = _coerceToDict(kwargs.inputs, \"input\");\n }\n await this.onChainEnd?.(run);\n await this._endTrace(run);\n return run;\n }\n\n async handleChainError(\n error: unknown,\n runId: string,\n _parentRunId?: string,\n _tags?: string[],\n kwargs?: { inputs?: Record<string, unknown> }\n ): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run) {\n throw new Error(\"No chain run to end.\");\n }\n run.end_time = Date.now();\n run.error = this.stringifyError(error);\n run.events.push({\n name: \"error\",\n time: new Date(run.end_time).toISOString(),\n });\n if (kwargs?.inputs !== undefined) {\n run.inputs = _coerceToDict(kwargs.inputs, \"input\");\n }\n await this.onChainError?.(run);\n await this._endTrace(run);\n return run;\n }\n\n /**\n * Create and add a run to the run map for tool start events.\n * This must sometimes be done synchronously to avoid race conditions\n * when callbacks are backgrounded, so we expose it as a separate method here.\n */\n _createRunForToolStart(\n tool: Serialized,\n input: string | Record<string, unknown>,\n runId: string,\n parentRunId?: string,\n tags?: string[],\n metadata?: KVMap,\n name?: string,\n toolCallId?: string\n ) {\n const execution_order = this._getExecutionOrder(parentRunId);\n const start_time = Date.now();\n const run: Run = {\n id: runId,\n name: name ?? tool.id[tool.id.length - 1],\n parent_run_id: parentRunId,\n start_time,\n serialized: tool,\n events: [\n {\n name: \"start\",\n time: new Date(start_time).toISOString(),\n },\n ],\n inputs: typeof input === \"string\" ? { input } : input,\n execution_order,\n child_execution_order: execution_order,\n run_type: \"tool\",\n child_runs: [],\n extra: {\n ...(metadata ? { metadata } : {}),\n ...(toolCallId !== undefined ? { tool_call_id: toolCallId } : {}),\n },\n tags: tags || [],\n };\n return this._addRunToRunMap(run);\n }\n\n async handleToolStart(\n tool: Serialized,\n input: string | Record<string, unknown>,\n runId: string,\n parentRunId?: string,\n tags?: string[],\n metadata?: KVMap,\n name?: string,\n toolCallId?: string\n ): Promise<Run> {\n const run =\n this.getRunById(runId) ??\n this._createRunForToolStart(\n tool,\n input,\n runId,\n parentRunId,\n tags,\n metadata,\n name,\n toolCallId\n );\n await this.onRunCreate?.(run);\n await this.onToolStart?.(run);\n return run;\n }\n\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n async handleToolEnd(output: any, runId: string): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"tool\") {\n throw new Error(\"No tool run to end\");\n }\n run.end_time = Date.now();\n run.outputs = { output };\n run.events.push({\n name: \"end\",\n time: new Date(run.end_time).toISOString(),\n });\n await this.onToolEnd?.(run);\n await this._endTrace(run);\n return run;\n }\n\n async handleToolError(error: unknown, runId: string): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"tool\") {\n throw new Error(\"No tool run to end\");\n }\n run.end_time = Date.now();\n run.error = this.stringifyError(error);\n run.events.push({\n name: \"error\",\n time: new Date(run.end_time).toISOString(),\n });\n await this.onToolError?.(run);\n await this._endTrace(run);\n return run;\n }\n\n async handleAgentAction(action: AgentAction, runId: string): Promise<void> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"chain\") {\n return;\n }\n const agentRun = run as AgentRun;\n agentRun.actions = agentRun.actions || [];\n agentRun.actions.push(action);\n agentRun.events.push({\n name: \"agent_action\",\n time: new Date().toISOString(),\n kwargs: { action },\n });\n await this.onAgentAction?.(run as AgentRun);\n }\n\n async handleAgentEnd(action: AgentFinish, runId: string): Promise<void> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"chain\") {\n return;\n }\n run.events.push({\n name: \"agent_end\",\n time: new Date().toISOString(),\n kwargs: { action },\n });\n await this.onAgentEnd?.(run);\n }\n\n /**\n * Create and add a run to the run map for retriever start events.\n * This must sometimes be done synchronously to avoid race conditions\n * when callbacks are backgrounded, so we expose it as a separate method here.\n */\n _createRunForRetrieverStart(\n retriever: Serialized,\n query: string,\n runId: string,\n parentRunId?: string,\n tags?: string[],\n metadata?: KVMap,\n name?: string\n ) {\n const execution_order = this._getExecutionOrder(parentRunId);\n const start_time = Date.now();\n const run: Run = {\n id: runId,\n name: name ?? retriever.id[retriever.id.length - 1],\n parent_run_id: parentRunId,\n start_time,\n serialized: retriever,\n events: [\n {\n name: \"start\",\n time: new Date(start_time).toISOString(),\n },\n ],\n inputs: { query },\n execution_order,\n child_execution_order: execution_order,\n run_type: \"retriever\",\n child_runs: [],\n extra: metadata ? { metadata } : {},\n tags: tags || [],\n };\n return this._addRunToRunMap(run);\n }\n\n async handleRetrieverStart(\n retriever: Serialized,\n query: string,\n runId: string,\n parentRunId?: string,\n tags?: string[],\n metadata?: KVMap,\n name?: string\n ): Promise<Run> {\n const run =\n this.getRunById(runId) ??\n this._createRunForRetrieverStart(\n retriever,\n query,\n runId,\n parentRunId,\n tags,\n metadata,\n name\n );\n await this.onRunCreate?.(run);\n await this.onRetrieverStart?.(run);\n return run;\n }\n\n async handleRetrieverEnd(\n documents: Document<Record<string, unknown>>[],\n runId: string\n ): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"retriever\") {\n throw new Error(\"No retriever run to end\");\n }\n run.end_time = Date.now();\n run.outputs = { documents };\n run.events.push({\n name: \"end\",\n time: new Date(run.end_time).toISOString(),\n });\n await this.onRetrieverEnd?.(run);\n await this._endTrace(run);\n return run;\n }\n\n async handleRetrieverError(error: unknown, runId: string): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"retriever\") {\n throw new Error(\"No retriever run to end\");\n }\n run.end_time = Date.now();\n run.error = this.stringifyError(error);\n run.events.push({\n name: \"error\",\n time: new Date(run.end_time).toISOString(),\n });\n await this.onRetrieverError?.(run);\n await this._endTrace(run);\n return run;\n }\n\n async handleText(text: string, runId: string): Promise<void> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"chain\") {\n return;\n }\n run.events.push({\n name: \"text\",\n time: new Date().toISOString(),\n kwargs: { text },\n });\n await this.onText?.(run);\n }\n\n async handleLLMNewToken(\n token: string,\n idx: NewTokenIndices,\n runId: string,\n _parentRunId?: string,\n _tags?: string[],\n fields?: HandleLLMNewTokenCallbackFields\n ): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"llm\") {\n throw new Error(\n `Invalid \"runId\" provided to \"handleLLMNewToken\" callback.`\n );\n }\n run.events.push({\n name: \"new_token\",\n time: new Date().toISOString(),\n kwargs: { token, idx, chunk: fields?.chunk },\n });\n await this.onLLMNewToken?.(run, token, { chunk: fields?.chunk });\n return run;\n }\n\n // custom event handlers\n\n onRunCreate?(run: Run): void | Promise<void>;\n\n onRunUpdate?(run: Run): void | Promise<void>;\n\n onLLMStart?(run: Run): void | Promise<void>;\n\n onLLMEnd?(run: Run): void | Promise<void>;\n\n onLLMError?(run: Run): void | Promise<void>;\n\n onChainStart?(run: Run): void | Promise<void>;\n\n onChainEnd?(run: Run): void | Promise<void>;\n\n onChainError?(run: Run): void | Promise<void>;\n\n onToolStart?(run: Run): void | Promise<void>;\n\n onToolEnd?(run: Run): void | Promise<void>;\n\n onToolError?(run: Run): void | Promise<void>;\n\n onAgentAction?(run: Run): void | Promise<void>;\n\n onAgentEnd?(run: Run): void | Promise<void>;\n\n onRetrieverStart?(run: Run): void | Promise<void>;\n\n onRetrieverEnd?(run: Run): void | Promise<void>;\n\n onRetrieverError?(run: Run): void | Promise<void>;\n\n onText?(run: Run): void | Promise<void>;\n\n onLLMNewToken?(\n run: Run,\n token: string,\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n kwargs?: { chunk: any }\n ): void | Promise<void>;\n}\n"],"mappings":"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"}
@@ -8,8 +8,8 @@ import { BaseCallbackHandler, BaseCallbackHandlerInput, HandleLLMNewTokenCallbac
8
8
  import { BaseRun, KVMap } from "langsmith/schemas";
9
9
  import { RunTree } from "langsmith/run_trees";
10
10
  //#region src/tracers/base.d.ts
11
- type RunType = string;
12
- interface Run extends BaseRun {
11
+ export type RunType = string;
12
+ export interface Run extends BaseRun {
13
13
  id: string;
14
14
  start_time: number;
15
15
  end_time?: number;
@@ -26,11 +26,11 @@ interface Run extends BaseRun {
26
26
  /** @internal */
27
27
  _serialized_start_time?: string;
28
28
  }
29
- interface AgentRun extends Run {
29
+ export interface AgentRun extends Run {
30
30
  actions: AgentAction[];
31
31
  }
32
- declare function isBaseTracer(x: BaseCallbackHandler): x is BaseTracer;
33
- declare abstract class BaseTracer extends BaseCallbackHandler {
32
+ export declare function isBaseTracer(x: BaseCallbackHandler): x is BaseTracer;
33
+ export declare abstract class BaseTracer extends BaseCallbackHandler {
34
34
  /** @deprecated Use `runTreeMap` instead. */
35
35
  protected runMap: Map<string, Run>;
36
36
  protected runTreeMap: Map<string, RunTree>;
@@ -186,7 +186,7 @@ declare abstract class BaseTracer extends BaseCallbackHandler {
186
186
  * This must sometimes be done synchronously to avoid race conditions
187
187
  * when callbacks are backgrounded, so we expose it as a separate method here.
188
188
  */
189
- _createRunForToolStart(tool: Serialized, input: string | Record<string, unknown>, runId: string, parentRunId?: string, tags?: string[], metadata?: KVMap, name?: string): {
189
+ _createRunForToolStart(tool: Serialized, input: string | Record<string, unknown>, runId: string, parentRunId?: string, tags?: string[], metadata?: KVMap, name?: string, toolCallId?: string): {
190
190
  name: string;
191
191
  run_type: string;
192
192
  extra?: KVMap;
@@ -214,7 +214,7 @@ declare abstract class BaseTracer extends BaseCallbackHandler {
214
214
  /** @internal */
215
215
  _serialized_start_time?: string;
216
216
  };
217
- handleToolStart(tool: Serialized, input: string | Record<string, unknown>, runId: string, parentRunId?: string, tags?: string[], metadata?: KVMap, name?: string, _toolCallId?: string): Promise<Run>;
217
+ handleToolStart(tool: Serialized, input: string | Record<string, unknown>, runId: string, parentRunId?: string, tags?: string[], metadata?: KVMap, name?: string, toolCallId?: string): Promise<Run>;
218
218
  handleToolEnd(output: any, runId: string): Promise<Run>;
219
219
  handleToolError(error: unknown, runId: string): Promise<Run>;
220
220
  handleAgentAction(action: AgentAction, runId: string): Promise<void>;
@@ -279,5 +279,4 @@ declare abstract class BaseTracer extends BaseCallbackHandler {
279
279
  }): void | Promise<void>;
280
280
  }
281
281
  //#endregion
282
- export { AgentRun, BaseTracer, Run, RunType, isBaseTracer };
283
282
  //# sourceMappingURL=base.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"base.d.cts","names":[],"sources":["../../src/tracers/base.ts"],"mappings":"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"}
1
+ {"version":3,"file":"base.d.cts","names":[],"sources":["../../src/tracers/base.ts"],"mappings":"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"}
@@ -8,8 +8,8 @@ import { BaseCallbackHandler, BaseCallbackHandlerInput, HandleLLMNewTokenCallbac
8
8
  import { RunTree } from "langsmith/run_trees";
9
9
  import { BaseRun, KVMap } from "langsmith/schemas";
10
10
  //#region src/tracers/base.d.ts
11
- type RunType = string;
12
- interface Run extends BaseRun {
11
+ export type RunType = string;
12
+ export interface Run extends BaseRun {
13
13
  id: string;
14
14
  start_time: number;
15
15
  end_time?: number;
@@ -26,11 +26,11 @@ interface Run extends BaseRun {
26
26
  /** @internal */
27
27
  _serialized_start_time?: string;
28
28
  }
29
- interface AgentRun extends Run {
29
+ export interface AgentRun extends Run {
30
30
  actions: AgentAction[];
31
31
  }
32
- declare function isBaseTracer(x: BaseCallbackHandler): x is BaseTracer;
33
- declare abstract class BaseTracer extends BaseCallbackHandler {
32
+ export declare function isBaseTracer(x: BaseCallbackHandler): x is BaseTracer;
33
+ export declare abstract class BaseTracer extends BaseCallbackHandler {
34
34
  /** @deprecated Use `runTreeMap` instead. */
35
35
  protected runMap: Map<string, Run>;
36
36
  protected runTreeMap: Map<string, RunTree>;
@@ -186,7 +186,7 @@ declare abstract class BaseTracer extends BaseCallbackHandler {
186
186
  * This must sometimes be done synchronously to avoid race conditions
187
187
  * when callbacks are backgrounded, so we expose it as a separate method here.
188
188
  */
189
- _createRunForToolStart(tool: Serialized, input: string | Record<string, unknown>, runId: string, parentRunId?: string, tags?: string[], metadata?: KVMap, name?: string): {
189
+ _createRunForToolStart(tool: Serialized, input: string | Record<string, unknown>, runId: string, parentRunId?: string, tags?: string[], metadata?: KVMap, name?: string, toolCallId?: string): {
190
190
  name: string;
191
191
  run_type: string;
192
192
  extra?: KVMap;
@@ -214,7 +214,7 @@ declare abstract class BaseTracer extends BaseCallbackHandler {
214
214
  /** @internal */
215
215
  _serialized_start_time?: string;
216
216
  };
217
- handleToolStart(tool: Serialized, input: string | Record<string, unknown>, runId: string, parentRunId?: string, tags?: string[], metadata?: KVMap, name?: string, _toolCallId?: string): Promise<Run>;
217
+ handleToolStart(tool: Serialized, input: string | Record<string, unknown>, runId: string, parentRunId?: string, tags?: string[], metadata?: KVMap, name?: string, toolCallId?: string): Promise<Run>;
218
218
  handleToolEnd(output: any, runId: string): Promise<Run>;
219
219
  handleToolError(error: unknown, runId: string): Promise<Run>;
220
220
  handleAgentAction(action: AgentAction, runId: string): Promise<void>;
@@ -279,5 +279,4 @@ declare abstract class BaseTracer extends BaseCallbackHandler {
279
279
  }): void | Promise<void>;
280
280
  }
281
281
  //#endregion
282
- export { AgentRun, BaseTracer, Run, RunType, isBaseTracer };
283
282
  //# sourceMappingURL=base.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"base.d.ts","names":[],"sources":["../../src/tracers/base.ts"],"mappings":"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"}
1
+ {"version":3,"file":"base.d.ts","names":[],"sources":["../../src/tracers/base.ts"],"mappings":"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"}
@@ -274,7 +274,7 @@ var BaseTracer = class extends BaseCallbackHandler {
274
274
  * This must sometimes be done synchronously to avoid race conditions
275
275
  * when callbacks are backgrounded, so we expose it as a separate method here.
276
276
  */
277
- _createRunForToolStart(tool, input, runId, parentRunId, tags, metadata, name) {
277
+ _createRunForToolStart(tool, input, runId, parentRunId, tags, metadata, name, toolCallId) {
278
278
  const execution_order = this._getExecutionOrder(parentRunId);
279
279
  const start_time = Date.now();
280
280
  const run = {
@@ -292,13 +292,16 @@ var BaseTracer = class extends BaseCallbackHandler {
292
292
  child_execution_order: execution_order,
293
293
  run_type: "tool",
294
294
  child_runs: [],
295
- extra: metadata ? { metadata } : {},
295
+ extra: {
296
+ ...metadata ? { metadata } : {},
297
+ ...toolCallId !== void 0 ? { tool_call_id: toolCallId } : {}
298
+ },
296
299
  tags: tags || []
297
300
  };
298
301
  return this._addRunToRunMap(run);
299
302
  }
300
- async handleToolStart(tool, input, runId, parentRunId, tags, metadata, name, _toolCallId) {
301
- const run = this.getRunById(runId) ?? this._createRunForToolStart(tool, input, runId, parentRunId, tags, metadata, name);
303
+ async handleToolStart(tool, input, runId, parentRunId, tags, metadata, name, toolCallId) {
304
+ const run = this.getRunById(runId) ?? this._createRunForToolStart(tool, input, runId, parentRunId, tags, metadata, name, toolCallId);
302
305
  await this.onRunCreate?.(run);
303
306
  await this.onToolStart?.(run);
304
307
  return run;
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","names":[],"sources":["../../src/tracers/base.ts"],"sourcesContent":["import { KVMap, BaseRun } from \"langsmith/schemas\";\nimport { RunTree, convertToDottedOrderFormat } from \"langsmith/run_trees\";\n\nimport type { ChainValues } from \"../utils/types/index.js\";\nimport type { AgentAction, AgentFinish } from \"../agents.js\";\nimport type { LLMResult } from \"../outputs.js\";\nimport type { BaseMessage } from \"../messages/base.js\";\nimport { Serialized } from \"../load/serializable.js\";\nimport {\n BaseCallbackHandler,\n BaseCallbackHandlerInput,\n HandleLLMNewTokenCallbackFields,\n NewTokenIndices,\n} from \"../callbacks/base.js\";\nimport type { Document } from \"../documents/document.js\";\nimport { getRuntimeEnvironment } from \"../utils/env.js\";\n\nexport type RunType = string;\n\n// TODO: Remove this type and just use the base LangSmith Run type.\nexport interface Run extends BaseRun {\n // some optional fields are always present here\n id: string;\n start_time: number;\n end_time?: number;\n execution_order: number;\n // some additional fields that don't exist in sdk runs\n child_runs: this[];\n child_execution_order: number;\n events: Array<{\n name: string;\n time: string;\n kwargs?: Record<string, unknown>;\n }>;\n trace_id?: string;\n dotted_order?: string;\n /** @internal */\n _serialized_start_time?: string;\n}\n\n// TODO: Remove and just use base LangSmith Run type\nconst convertRunTreeToRun = (runTree?: RunTree): Run | undefined => {\n if (!runTree) {\n return undefined;\n }\n // Important that we return the raw run tree object since the reference\n // is mutated in other places.\n // TODO: Remove places where this is being done.\n\n runTree.events = runTree.events ?? [];\n runTree.child_runs = runTree.child_runs ?? [];\n // TODO: Remove this cast and just use the LangSmith RunTree type.\n return runTree as unknown as Run;\n};\n\nfunction convertRunToRunTree(run?: Run, parentRun?: Run): RunTree | undefined {\n if (!run) {\n return undefined;\n }\n return new RunTree({\n ...run,\n start_time: run._serialized_start_time ?? run.start_time,\n parent_run: convertRunToRunTree(parentRun),\n child_runs: run.child_runs\n .map((r) => convertRunToRunTree(r))\n .filter((r): r is RunTree => r !== undefined),\n extra: {\n ...run.extra,\n runtime: getRuntimeEnvironment(),\n },\n tracingEnabled: false,\n });\n}\n\nexport interface AgentRun extends Run {\n actions: AgentAction[];\n}\n\n// oxlint-disable-next-line @typescript-eslint/no-explicit-any\nfunction _coerceToDict(value: any, defaultKey: string) {\n return value && !Array.isArray(value) && typeof value === \"object\"\n ? value\n : { [defaultKey]: value };\n}\n\nexport function isBaseTracer(x: BaseCallbackHandler): x is BaseTracer {\n return typeof (x as BaseTracer)._addRunToRunMap === \"function\";\n}\n\nexport abstract class BaseTracer extends BaseCallbackHandler {\n /** @deprecated Use `runTreeMap` instead. */\n protected runMap: Map<string, Run> = new Map();\n\n protected runTreeMap: Map<string, RunTree> = new Map();\n\n protected usesRunTreeMap = false;\n\n constructor(_fields?: BaseCallbackHandlerInput) {\n super(...arguments);\n }\n\n copy(): this {\n return this;\n }\n\n protected getRunById(runId?: string): Run | undefined {\n if (runId === undefined) {\n return undefined;\n }\n return this.usesRunTreeMap\n ? convertRunTreeToRun(this.runTreeMap.get(runId))\n : this.runMap.get(runId);\n }\n\n protected stringifyError(error: unknown) {\n // oxlint-disable-next-line no-instanceof/no-instanceof\n if (error instanceof Error) {\n return error.message + (error?.stack ? `\\n\\n${error.stack}` : \"\");\n }\n\n if (typeof error === \"string\") {\n return error;\n }\n\n return `${error}`;\n }\n\n protected abstract persistRun(run: Run): Promise<void>;\n\n protected _addChildRun(parentRun: Run, childRun: Run) {\n parentRun.child_runs.push(childRun);\n }\n\n _addRunToRunMap(run: Run) {\n const { dottedOrder: currentDottedOrder, microsecondPrecisionDatestring } =\n convertToDottedOrderFormat(\n new Date(run.start_time).getTime(),\n run.id,\n run.execution_order\n );\n const storedRun = { ...run };\n const parentRun = this.getRunById(storedRun.parent_run_id);\n if (storedRun.parent_run_id !== undefined) {\n if (parentRun) {\n this._addChildRun(parentRun, storedRun);\n parentRun.child_execution_order = Math.max(\n parentRun.child_execution_order,\n storedRun.child_execution_order\n );\n storedRun.trace_id = parentRun.trace_id;\n if (parentRun.dotted_order !== undefined) {\n storedRun.dotted_order = [\n parentRun.dotted_order,\n currentDottedOrder,\n ].join(\".\");\n storedRun._serialized_start_time = microsecondPrecisionDatestring;\n } else {\n // This can happen naturally for callbacks added within a run\n // console.debug(`Parent run with UUID ${storedRun.parent_run_id} has no dotted order.`);\n }\n } else {\n // This can happen naturally for callbacks added within a run\n // console.debug(\n // `Parent run with UUID ${storedRun.parent_run_id} not found.`\n // );\n\n // Child run with no trace_id and dotted_order causes 400 error on LangSmith.\n // So we set the parent_run_id to undefined as a workaround.\n // This run will be shown as isolated run on LangSmith.\n storedRun.parent_run_id = undefined;\n }\n } else {\n storedRun.trace_id = storedRun.id;\n storedRun.dotted_order = currentDottedOrder;\n storedRun._serialized_start_time = microsecondPrecisionDatestring;\n }\n if (this.usesRunTreeMap) {\n const runTree = convertRunToRunTree(storedRun, parentRun);\n if (runTree !== undefined) {\n this.runTreeMap.set(storedRun.id, runTree);\n }\n } else {\n this.runMap.set(storedRun.id, storedRun);\n }\n return storedRun;\n }\n\n protected async _endTrace(run: Run): Promise<void> {\n const parentRun =\n run.parent_run_id !== undefined && this.getRunById(run.parent_run_id);\n if (parentRun) {\n parentRun.child_execution_order = Math.max(\n parentRun.child_execution_order,\n run.child_execution_order\n );\n } else {\n await this.persistRun(run);\n }\n await this.onRunUpdate?.(run);\n if (this.usesRunTreeMap) {\n this.runTreeMap.delete(run.id);\n } else {\n this.runMap.delete(run.id);\n }\n }\n\n protected _getExecutionOrder(parentRunId: string | undefined): number {\n const parentRun = parentRunId !== undefined && this.getRunById(parentRunId);\n // If a run has no parent then execution order is 1\n if (!parentRun) {\n return 1;\n }\n\n return parentRun.child_execution_order + 1;\n }\n\n /**\n * Create and add a run to the run map for LLM start events.\n * This must sometimes be done synchronously to avoid race conditions\n * when callbacks are backgrounded, so we expose it as a separate method here.\n */\n _createRunForLLMStart(\n llm: Serialized,\n prompts: string[],\n runId: string,\n parentRunId?: string,\n extraParams?: KVMap,\n tags?: string[],\n metadata?: KVMap,\n name?: string\n ) {\n const execution_order = this._getExecutionOrder(parentRunId);\n const start_time = Date.now();\n const finalExtraParams = metadata\n ? { ...extraParams, metadata }\n : extraParams;\n const run: Run = {\n id: runId,\n name: name ?? llm.id[llm.id.length - 1],\n parent_run_id: parentRunId,\n start_time,\n serialized: llm,\n events: [\n {\n name: \"start\",\n time: new Date(start_time).toISOString(),\n },\n ],\n inputs: { prompts },\n execution_order,\n child_runs: [],\n child_execution_order: execution_order,\n run_type: \"llm\",\n extra: finalExtraParams ?? {},\n tags: tags || [],\n };\n return this._addRunToRunMap(run);\n }\n\n async handleLLMStart(\n llm: Serialized,\n prompts: string[],\n runId: string,\n parentRunId?: string,\n extraParams?: KVMap,\n tags?: string[],\n metadata?: KVMap,\n name?: string\n ): Promise<Run> {\n const run =\n this.getRunById(runId) ??\n this._createRunForLLMStart(\n llm,\n prompts,\n runId,\n parentRunId,\n extraParams,\n tags,\n metadata,\n name\n );\n await this.onRunCreate?.(run);\n await this.onLLMStart?.(run);\n return run;\n }\n\n /**\n * Create and add a run to the run map for chat model start events.\n * This must sometimes be done synchronously to avoid race conditions\n * when callbacks are backgrounded, so we expose it as a separate method here.\n */\n _createRunForChatModelStart(\n llm: Serialized,\n messages: BaseMessage[][],\n runId: string,\n parentRunId?: string,\n extraParams?: KVMap,\n tags?: string[],\n metadata?: KVMap,\n name?: string\n ) {\n const execution_order = this._getExecutionOrder(parentRunId);\n const start_time = Date.now();\n const finalExtraParams = metadata\n ? { ...extraParams, metadata }\n : extraParams;\n const run: Run = {\n id: runId,\n name: name ?? llm.id[llm.id.length - 1],\n parent_run_id: parentRunId,\n start_time,\n serialized: llm,\n events: [\n {\n name: \"start\",\n time: new Date(start_time).toISOString(),\n },\n ],\n inputs: { messages },\n execution_order,\n child_runs: [],\n child_execution_order: execution_order,\n run_type: \"llm\",\n extra: finalExtraParams ?? {},\n tags: tags || [],\n };\n return this._addRunToRunMap(run);\n }\n\n async handleChatModelStart(\n llm: Serialized,\n messages: BaseMessage[][],\n runId: string,\n parentRunId?: string,\n extraParams?: KVMap,\n tags?: string[],\n metadata?: KVMap,\n name?: string\n ): Promise<Run> {\n const run =\n this.getRunById(runId) ??\n this._createRunForChatModelStart(\n llm,\n messages,\n runId,\n parentRunId,\n extraParams,\n tags,\n metadata,\n name\n );\n await this.onRunCreate?.(run);\n await this.onLLMStart?.(run);\n return run;\n }\n\n async handleLLMEnd(\n output: LLMResult,\n runId: string,\n _parentRunId?: string,\n _tags?: string[],\n extraParams?: Record<string, unknown>\n ): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"llm\") {\n throw new Error(\"No LLM run to end.\");\n }\n run.end_time = Date.now();\n run.outputs = output;\n run.events.push({\n name: \"end\",\n time: new Date(run.end_time).toISOString(),\n });\n run.extra = { ...run.extra, ...extraParams };\n await this.onLLMEnd?.(run);\n await this._endTrace(run);\n return run;\n }\n\n async handleLLMError(\n error: unknown,\n runId: string,\n _parentRunId?: string,\n _tags?: string[],\n extraParams?: Record<string, unknown>\n ): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"llm\") {\n throw new Error(\"No LLM run to end.\");\n }\n run.end_time = Date.now();\n run.error = this.stringifyError(error);\n run.events.push({\n name: \"error\",\n time: new Date(run.end_time).toISOString(),\n });\n run.extra = { ...run.extra, ...extraParams };\n await this.onLLMError?.(run);\n await this._endTrace(run);\n return run;\n }\n\n /**\n * Create and add a run to the run map for chain start events.\n * This must sometimes be done synchronously to avoid race conditions\n * when callbacks are backgrounded, so we expose it as a separate method here.\n */\n _createRunForChainStart(\n chain: Serialized,\n inputs: ChainValues,\n runId: string,\n parentRunId?: string,\n tags?: string[],\n metadata?: KVMap,\n runType?: string,\n name?: string,\n extra?: Record<string, unknown>\n ) {\n const execution_order = this._getExecutionOrder(parentRunId);\n const start_time = Date.now();\n const run: Run = {\n id: runId,\n name: name ?? chain.id[chain.id.length - 1],\n parent_run_id: parentRunId,\n start_time,\n serialized: chain,\n events: [\n {\n name: \"start\",\n time: new Date(start_time).toISOString(),\n },\n ],\n inputs,\n execution_order,\n child_execution_order: execution_order,\n run_type: runType ?? \"chain\",\n child_runs: [],\n extra: metadata ? { ...extra, metadata } : { ...extra },\n tags: tags || [],\n };\n return this._addRunToRunMap(run);\n }\n\n async handleChainStart(\n chain: Serialized,\n inputs: ChainValues,\n runId: string,\n parentRunId?: string,\n tags?: string[],\n metadata?: KVMap,\n runType?: string,\n name?: string\n ): Promise<Run> {\n const run =\n this.getRunById(runId) ??\n this._createRunForChainStart(\n chain,\n inputs,\n runId,\n parentRunId,\n tags,\n metadata,\n runType,\n name\n );\n await this.onRunCreate?.(run);\n await this.onChainStart?.(run);\n return run;\n }\n\n async handleChainEnd(\n outputs: ChainValues,\n runId: string,\n _parentRunId?: string,\n _tags?: string[],\n kwargs?: { inputs?: Record<string, unknown> }\n ): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run) {\n throw new Error(\"No chain run to end.\");\n }\n run.end_time = Date.now();\n run.outputs = _coerceToDict(outputs, \"output\");\n run.events.push({\n name: \"end\",\n time: new Date(run.end_time).toISOString(),\n });\n if (kwargs?.inputs !== undefined) {\n run.inputs = _coerceToDict(kwargs.inputs, \"input\");\n }\n await this.onChainEnd?.(run);\n await this._endTrace(run);\n return run;\n }\n\n async handleChainError(\n error: unknown,\n runId: string,\n _parentRunId?: string,\n _tags?: string[],\n kwargs?: { inputs?: Record<string, unknown> }\n ): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run) {\n throw new Error(\"No chain run to end.\");\n }\n run.end_time = Date.now();\n run.error = this.stringifyError(error);\n run.events.push({\n name: \"error\",\n time: new Date(run.end_time).toISOString(),\n });\n if (kwargs?.inputs !== undefined) {\n run.inputs = _coerceToDict(kwargs.inputs, \"input\");\n }\n await this.onChainError?.(run);\n await this._endTrace(run);\n return run;\n }\n\n /**\n * Create and add a run to the run map for tool start events.\n * This must sometimes be done synchronously to avoid race conditions\n * when callbacks are backgrounded, so we expose it as a separate method here.\n */\n _createRunForToolStart(\n tool: Serialized,\n input: string | Record<string, unknown>,\n runId: string,\n parentRunId?: string,\n tags?: string[],\n metadata?: KVMap,\n name?: string\n ) {\n const execution_order = this._getExecutionOrder(parentRunId);\n const start_time = Date.now();\n const run: Run = {\n id: runId,\n name: name ?? tool.id[tool.id.length - 1],\n parent_run_id: parentRunId,\n start_time,\n serialized: tool,\n events: [\n {\n name: \"start\",\n time: new Date(start_time).toISOString(),\n },\n ],\n inputs: typeof input === \"string\" ? { input } : input,\n execution_order,\n child_execution_order: execution_order,\n run_type: \"tool\",\n child_runs: [],\n extra: metadata ? { metadata } : {},\n tags: tags || [],\n };\n return this._addRunToRunMap(run);\n }\n\n async handleToolStart(\n tool: Serialized,\n input: string | Record<string, unknown>,\n runId: string,\n parentRunId?: string,\n tags?: string[],\n metadata?: KVMap,\n name?: string,\n _toolCallId?: string\n ): Promise<Run> {\n const run =\n this.getRunById(runId) ??\n this._createRunForToolStart(\n tool,\n input,\n runId,\n parentRunId,\n tags,\n metadata,\n name\n );\n await this.onRunCreate?.(run);\n await this.onToolStart?.(run);\n return run;\n }\n\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n async handleToolEnd(output: any, runId: string): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"tool\") {\n throw new Error(\"No tool run to end\");\n }\n run.end_time = Date.now();\n run.outputs = { output };\n run.events.push({\n name: \"end\",\n time: new Date(run.end_time).toISOString(),\n });\n await this.onToolEnd?.(run);\n await this._endTrace(run);\n return run;\n }\n\n async handleToolError(error: unknown, runId: string): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"tool\") {\n throw new Error(\"No tool run to end\");\n }\n run.end_time = Date.now();\n run.error = this.stringifyError(error);\n run.events.push({\n name: \"error\",\n time: new Date(run.end_time).toISOString(),\n });\n await this.onToolError?.(run);\n await this._endTrace(run);\n return run;\n }\n\n async handleAgentAction(action: AgentAction, runId: string): Promise<void> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"chain\") {\n return;\n }\n const agentRun = run as AgentRun;\n agentRun.actions = agentRun.actions || [];\n agentRun.actions.push(action);\n agentRun.events.push({\n name: \"agent_action\",\n time: new Date().toISOString(),\n kwargs: { action },\n });\n await this.onAgentAction?.(run as AgentRun);\n }\n\n async handleAgentEnd(action: AgentFinish, runId: string): Promise<void> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"chain\") {\n return;\n }\n run.events.push({\n name: \"agent_end\",\n time: new Date().toISOString(),\n kwargs: { action },\n });\n await this.onAgentEnd?.(run);\n }\n\n /**\n * Create and add a run to the run map for retriever start events.\n * This must sometimes be done synchronously to avoid race conditions\n * when callbacks are backgrounded, so we expose it as a separate method here.\n */\n _createRunForRetrieverStart(\n retriever: Serialized,\n query: string,\n runId: string,\n parentRunId?: string,\n tags?: string[],\n metadata?: KVMap,\n name?: string\n ) {\n const execution_order = this._getExecutionOrder(parentRunId);\n const start_time = Date.now();\n const run: Run = {\n id: runId,\n name: name ?? retriever.id[retriever.id.length - 1],\n parent_run_id: parentRunId,\n start_time,\n serialized: retriever,\n events: [\n {\n name: \"start\",\n time: new Date(start_time).toISOString(),\n },\n ],\n inputs: { query },\n execution_order,\n child_execution_order: execution_order,\n run_type: \"retriever\",\n child_runs: [],\n extra: metadata ? { metadata } : {},\n tags: tags || [],\n };\n return this._addRunToRunMap(run);\n }\n\n async handleRetrieverStart(\n retriever: Serialized,\n query: string,\n runId: string,\n parentRunId?: string,\n tags?: string[],\n metadata?: KVMap,\n name?: string\n ): Promise<Run> {\n const run =\n this.getRunById(runId) ??\n this._createRunForRetrieverStart(\n retriever,\n query,\n runId,\n parentRunId,\n tags,\n metadata,\n name\n );\n await this.onRunCreate?.(run);\n await this.onRetrieverStart?.(run);\n return run;\n }\n\n async handleRetrieverEnd(\n documents: Document<Record<string, unknown>>[],\n runId: string\n ): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"retriever\") {\n throw new Error(\"No retriever run to end\");\n }\n run.end_time = Date.now();\n run.outputs = { documents };\n run.events.push({\n name: \"end\",\n time: new Date(run.end_time).toISOString(),\n });\n await this.onRetrieverEnd?.(run);\n await this._endTrace(run);\n return run;\n }\n\n async handleRetrieverError(error: unknown, runId: string): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"retriever\") {\n throw new Error(\"No retriever run to end\");\n }\n run.end_time = Date.now();\n run.error = this.stringifyError(error);\n run.events.push({\n name: \"error\",\n time: new Date(run.end_time).toISOString(),\n });\n await this.onRetrieverError?.(run);\n await this._endTrace(run);\n return run;\n }\n\n async handleText(text: string, runId: string): Promise<void> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"chain\") {\n return;\n }\n run.events.push({\n name: \"text\",\n time: new Date().toISOString(),\n kwargs: { text },\n });\n await this.onText?.(run);\n }\n\n async handleLLMNewToken(\n token: string,\n idx: NewTokenIndices,\n runId: string,\n _parentRunId?: string,\n _tags?: string[],\n fields?: HandleLLMNewTokenCallbackFields\n ): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"llm\") {\n throw new Error(\n `Invalid \"runId\" provided to \"handleLLMNewToken\" callback.`\n );\n }\n run.events.push({\n name: \"new_token\",\n time: new Date().toISOString(),\n kwargs: { token, idx, chunk: fields?.chunk },\n });\n await this.onLLMNewToken?.(run, token, { chunk: fields?.chunk });\n return run;\n }\n\n // custom event handlers\n\n onRunCreate?(run: Run): void | Promise<void>;\n\n onRunUpdate?(run: Run): void | Promise<void>;\n\n onLLMStart?(run: Run): void | Promise<void>;\n\n onLLMEnd?(run: Run): void | Promise<void>;\n\n onLLMError?(run: Run): void | Promise<void>;\n\n onChainStart?(run: Run): void | Promise<void>;\n\n onChainEnd?(run: Run): void | Promise<void>;\n\n onChainError?(run: Run): void | Promise<void>;\n\n onToolStart?(run: Run): void | Promise<void>;\n\n onToolEnd?(run: Run): void | Promise<void>;\n\n onToolError?(run: Run): void | Promise<void>;\n\n onAgentAction?(run: Run): void | Promise<void>;\n\n onAgentEnd?(run: Run): void | Promise<void>;\n\n onRetrieverStart?(run: Run): void | Promise<void>;\n\n onRetrieverEnd?(run: Run): void | Promise<void>;\n\n onRetrieverError?(run: Run): void | Promise<void>;\n\n onText?(run: Run): void | Promise<void>;\n\n onLLMNewToken?(\n run: Run,\n token: string,\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n kwargs?: { chunk: any }\n ): void | Promise<void>;\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"base.js","names":[],"sources":["../../src/tracers/base.ts"],"sourcesContent":["import { KVMap, BaseRun } from \"langsmith/schemas\";\nimport { RunTree, convertToDottedOrderFormat } from \"langsmith/run_trees\";\n\nimport type { ChainValues } from \"../utils/types/index.js\";\nimport type { AgentAction, AgentFinish } from \"../agents.js\";\nimport type { LLMResult } from \"../outputs.js\";\nimport type { BaseMessage } from \"../messages/base.js\";\nimport { Serialized } from \"../load/serializable.js\";\nimport {\n BaseCallbackHandler,\n BaseCallbackHandlerInput,\n HandleLLMNewTokenCallbackFields,\n NewTokenIndices,\n} from \"../callbacks/base.js\";\nimport type { Document } from \"../documents/document.js\";\nimport { getRuntimeEnvironment } from \"../utils/env.js\";\n\nexport type RunType = string;\n\n// TODO: Remove this type and just use the base LangSmith Run type.\nexport interface Run extends BaseRun {\n // some optional fields are always present here\n id: string;\n start_time: number;\n end_time?: number;\n execution_order: number;\n // some additional fields that don't exist in sdk runs\n child_runs: this[];\n child_execution_order: number;\n events: Array<{\n name: string;\n time: string;\n kwargs?: Record<string, unknown>;\n }>;\n trace_id?: string;\n dotted_order?: string;\n /** @internal */\n _serialized_start_time?: string;\n}\n\n// TODO: Remove and just use base LangSmith Run type\nconst convertRunTreeToRun = (runTree?: RunTree): Run | undefined => {\n if (!runTree) {\n return undefined;\n }\n // Important that we return the raw run tree object since the reference\n // is mutated in other places.\n // TODO: Remove places where this is being done.\n\n runTree.events = runTree.events ?? [];\n runTree.child_runs = runTree.child_runs ?? [];\n // TODO: Remove this cast and just use the LangSmith RunTree type.\n return runTree as unknown as Run;\n};\n\nfunction convertRunToRunTree(run?: Run, parentRun?: Run): RunTree | undefined {\n if (!run) {\n return undefined;\n }\n return new RunTree({\n ...run,\n start_time: run._serialized_start_time ?? run.start_time,\n parent_run: convertRunToRunTree(parentRun),\n child_runs: run.child_runs\n .map((r) => convertRunToRunTree(r))\n .filter((r): r is RunTree => r !== undefined),\n extra: {\n ...run.extra,\n runtime: getRuntimeEnvironment(),\n },\n tracingEnabled: false,\n });\n}\n\nexport interface AgentRun extends Run {\n actions: AgentAction[];\n}\n\n// oxlint-disable-next-line @typescript-eslint/no-explicit-any\nfunction _coerceToDict(value: any, defaultKey: string) {\n return value && !Array.isArray(value) && typeof value === \"object\"\n ? value\n : { [defaultKey]: value };\n}\n\nexport function isBaseTracer(x: BaseCallbackHandler): x is BaseTracer {\n return typeof (x as BaseTracer)._addRunToRunMap === \"function\";\n}\n\nexport abstract class BaseTracer extends BaseCallbackHandler {\n /** @deprecated Use `runTreeMap` instead. */\n protected runMap: Map<string, Run> = new Map();\n\n protected runTreeMap: Map<string, RunTree> = new Map();\n\n protected usesRunTreeMap = false;\n\n constructor(_fields?: BaseCallbackHandlerInput) {\n super(...arguments);\n }\n\n copy(): this {\n return this;\n }\n\n protected getRunById(runId?: string): Run | undefined {\n if (runId === undefined) {\n return undefined;\n }\n return this.usesRunTreeMap\n ? convertRunTreeToRun(this.runTreeMap.get(runId))\n : this.runMap.get(runId);\n }\n\n protected stringifyError(error: unknown) {\n // oxlint-disable-next-line no-instanceof/no-instanceof\n if (error instanceof Error) {\n return error.message + (error?.stack ? `\\n\\n${error.stack}` : \"\");\n }\n\n if (typeof error === \"string\") {\n return error;\n }\n\n return `${error}`;\n }\n\n protected abstract persistRun(run: Run): Promise<void>;\n\n protected _addChildRun(parentRun: Run, childRun: Run) {\n parentRun.child_runs.push(childRun);\n }\n\n _addRunToRunMap(run: Run) {\n const { dottedOrder: currentDottedOrder, microsecondPrecisionDatestring } =\n convertToDottedOrderFormat(\n new Date(run.start_time).getTime(),\n run.id,\n run.execution_order\n );\n const storedRun = { ...run };\n const parentRun = this.getRunById(storedRun.parent_run_id);\n if (storedRun.parent_run_id !== undefined) {\n if (parentRun) {\n this._addChildRun(parentRun, storedRun);\n parentRun.child_execution_order = Math.max(\n parentRun.child_execution_order,\n storedRun.child_execution_order\n );\n storedRun.trace_id = parentRun.trace_id;\n if (parentRun.dotted_order !== undefined) {\n storedRun.dotted_order = [\n parentRun.dotted_order,\n currentDottedOrder,\n ].join(\".\");\n storedRun._serialized_start_time = microsecondPrecisionDatestring;\n } else {\n // This can happen naturally for callbacks added within a run\n // console.debug(`Parent run with UUID ${storedRun.parent_run_id} has no dotted order.`);\n }\n } else {\n // This can happen naturally for callbacks added within a run\n // console.debug(\n // `Parent run with UUID ${storedRun.parent_run_id} not found.`\n // );\n\n // Child run with no trace_id and dotted_order causes 400 error on LangSmith.\n // So we set the parent_run_id to undefined as a workaround.\n // This run will be shown as isolated run on LangSmith.\n storedRun.parent_run_id = undefined;\n }\n } else {\n storedRun.trace_id = storedRun.id;\n storedRun.dotted_order = currentDottedOrder;\n storedRun._serialized_start_time = microsecondPrecisionDatestring;\n }\n if (this.usesRunTreeMap) {\n const runTree = convertRunToRunTree(storedRun, parentRun);\n if (runTree !== undefined) {\n this.runTreeMap.set(storedRun.id, runTree);\n }\n } else {\n this.runMap.set(storedRun.id, storedRun);\n }\n return storedRun;\n }\n\n protected async _endTrace(run: Run): Promise<void> {\n const parentRun =\n run.parent_run_id !== undefined && this.getRunById(run.parent_run_id);\n if (parentRun) {\n parentRun.child_execution_order = Math.max(\n parentRun.child_execution_order,\n run.child_execution_order\n );\n } else {\n await this.persistRun(run);\n }\n await this.onRunUpdate?.(run);\n if (this.usesRunTreeMap) {\n this.runTreeMap.delete(run.id);\n } else {\n this.runMap.delete(run.id);\n }\n }\n\n protected _getExecutionOrder(parentRunId: string | undefined): number {\n const parentRun = parentRunId !== undefined && this.getRunById(parentRunId);\n // If a run has no parent then execution order is 1\n if (!parentRun) {\n return 1;\n }\n\n return parentRun.child_execution_order + 1;\n }\n\n /**\n * Create and add a run to the run map for LLM start events.\n * This must sometimes be done synchronously to avoid race conditions\n * when callbacks are backgrounded, so we expose it as a separate method here.\n */\n _createRunForLLMStart(\n llm: Serialized,\n prompts: string[],\n runId: string,\n parentRunId?: string,\n extraParams?: KVMap,\n tags?: string[],\n metadata?: KVMap,\n name?: string\n ) {\n const execution_order = this._getExecutionOrder(parentRunId);\n const start_time = Date.now();\n const finalExtraParams = metadata\n ? { ...extraParams, metadata }\n : extraParams;\n const run: Run = {\n id: runId,\n name: name ?? llm.id[llm.id.length - 1],\n parent_run_id: parentRunId,\n start_time,\n serialized: llm,\n events: [\n {\n name: \"start\",\n time: new Date(start_time).toISOString(),\n },\n ],\n inputs: { prompts },\n execution_order,\n child_runs: [],\n child_execution_order: execution_order,\n run_type: \"llm\",\n extra: finalExtraParams ?? {},\n tags: tags || [],\n };\n return this._addRunToRunMap(run);\n }\n\n async handleLLMStart(\n llm: Serialized,\n prompts: string[],\n runId: string,\n parentRunId?: string,\n extraParams?: KVMap,\n tags?: string[],\n metadata?: KVMap,\n name?: string\n ): Promise<Run> {\n const run =\n this.getRunById(runId) ??\n this._createRunForLLMStart(\n llm,\n prompts,\n runId,\n parentRunId,\n extraParams,\n tags,\n metadata,\n name\n );\n await this.onRunCreate?.(run);\n await this.onLLMStart?.(run);\n return run;\n }\n\n /**\n * Create and add a run to the run map for chat model start events.\n * This must sometimes be done synchronously to avoid race conditions\n * when callbacks are backgrounded, so we expose it as a separate method here.\n */\n _createRunForChatModelStart(\n llm: Serialized,\n messages: BaseMessage[][],\n runId: string,\n parentRunId?: string,\n extraParams?: KVMap,\n tags?: string[],\n metadata?: KVMap,\n name?: string\n ) {\n const execution_order = this._getExecutionOrder(parentRunId);\n const start_time = Date.now();\n const finalExtraParams = metadata\n ? { ...extraParams, metadata }\n : extraParams;\n const run: Run = {\n id: runId,\n name: name ?? llm.id[llm.id.length - 1],\n parent_run_id: parentRunId,\n start_time,\n serialized: llm,\n events: [\n {\n name: \"start\",\n time: new Date(start_time).toISOString(),\n },\n ],\n inputs: { messages },\n execution_order,\n child_runs: [],\n child_execution_order: execution_order,\n run_type: \"llm\",\n extra: finalExtraParams ?? {},\n tags: tags || [],\n };\n return this._addRunToRunMap(run);\n }\n\n async handleChatModelStart(\n llm: Serialized,\n messages: BaseMessage[][],\n runId: string,\n parentRunId?: string,\n extraParams?: KVMap,\n tags?: string[],\n metadata?: KVMap,\n name?: string\n ): Promise<Run> {\n const run =\n this.getRunById(runId) ??\n this._createRunForChatModelStart(\n llm,\n messages,\n runId,\n parentRunId,\n extraParams,\n tags,\n metadata,\n name\n );\n await this.onRunCreate?.(run);\n await this.onLLMStart?.(run);\n return run;\n }\n\n async handleLLMEnd(\n output: LLMResult,\n runId: string,\n _parentRunId?: string,\n _tags?: string[],\n extraParams?: Record<string, unknown>\n ): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"llm\") {\n throw new Error(\"No LLM run to end.\");\n }\n run.end_time = Date.now();\n run.outputs = output;\n run.events.push({\n name: \"end\",\n time: new Date(run.end_time).toISOString(),\n });\n run.extra = { ...run.extra, ...extraParams };\n await this.onLLMEnd?.(run);\n await this._endTrace(run);\n return run;\n }\n\n async handleLLMError(\n error: unknown,\n runId: string,\n _parentRunId?: string,\n _tags?: string[],\n extraParams?: Record<string, unknown>\n ): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"llm\") {\n throw new Error(\"No LLM run to end.\");\n }\n run.end_time = Date.now();\n run.error = this.stringifyError(error);\n run.events.push({\n name: \"error\",\n time: new Date(run.end_time).toISOString(),\n });\n run.extra = { ...run.extra, ...extraParams };\n await this.onLLMError?.(run);\n await this._endTrace(run);\n return run;\n }\n\n /**\n * Create and add a run to the run map for chain start events.\n * This must sometimes be done synchronously to avoid race conditions\n * when callbacks are backgrounded, so we expose it as a separate method here.\n */\n _createRunForChainStart(\n chain: Serialized,\n inputs: ChainValues,\n runId: string,\n parentRunId?: string,\n tags?: string[],\n metadata?: KVMap,\n runType?: string,\n name?: string,\n extra?: Record<string, unknown>\n ) {\n const execution_order = this._getExecutionOrder(parentRunId);\n const start_time = Date.now();\n const run: Run = {\n id: runId,\n name: name ?? chain.id[chain.id.length - 1],\n parent_run_id: parentRunId,\n start_time,\n serialized: chain,\n events: [\n {\n name: \"start\",\n time: new Date(start_time).toISOString(),\n },\n ],\n inputs,\n execution_order,\n child_execution_order: execution_order,\n run_type: runType ?? \"chain\",\n child_runs: [],\n extra: metadata ? { ...extra, metadata } : { ...extra },\n tags: tags || [],\n };\n return this._addRunToRunMap(run);\n }\n\n async handleChainStart(\n chain: Serialized,\n inputs: ChainValues,\n runId: string,\n parentRunId?: string,\n tags?: string[],\n metadata?: KVMap,\n runType?: string,\n name?: string\n ): Promise<Run> {\n const run =\n this.getRunById(runId) ??\n this._createRunForChainStart(\n chain,\n inputs,\n runId,\n parentRunId,\n tags,\n metadata,\n runType,\n name\n );\n await this.onRunCreate?.(run);\n await this.onChainStart?.(run);\n return run;\n }\n\n async handleChainEnd(\n outputs: ChainValues,\n runId: string,\n _parentRunId?: string,\n _tags?: string[],\n kwargs?: { inputs?: Record<string, unknown> }\n ): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run) {\n throw new Error(\"No chain run to end.\");\n }\n run.end_time = Date.now();\n run.outputs = _coerceToDict(outputs, \"output\");\n run.events.push({\n name: \"end\",\n time: new Date(run.end_time).toISOString(),\n });\n if (kwargs?.inputs !== undefined) {\n run.inputs = _coerceToDict(kwargs.inputs, \"input\");\n }\n await this.onChainEnd?.(run);\n await this._endTrace(run);\n return run;\n }\n\n async handleChainError(\n error: unknown,\n runId: string,\n _parentRunId?: string,\n _tags?: string[],\n kwargs?: { inputs?: Record<string, unknown> }\n ): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run) {\n throw new Error(\"No chain run to end.\");\n }\n run.end_time = Date.now();\n run.error = this.stringifyError(error);\n run.events.push({\n name: \"error\",\n time: new Date(run.end_time).toISOString(),\n });\n if (kwargs?.inputs !== undefined) {\n run.inputs = _coerceToDict(kwargs.inputs, \"input\");\n }\n await this.onChainError?.(run);\n await this._endTrace(run);\n return run;\n }\n\n /**\n * Create and add a run to the run map for tool start events.\n * This must sometimes be done synchronously to avoid race conditions\n * when callbacks are backgrounded, so we expose it as a separate method here.\n */\n _createRunForToolStart(\n tool: Serialized,\n input: string | Record<string, unknown>,\n runId: string,\n parentRunId?: string,\n tags?: string[],\n metadata?: KVMap,\n name?: string,\n toolCallId?: string\n ) {\n const execution_order = this._getExecutionOrder(parentRunId);\n const start_time = Date.now();\n const run: Run = {\n id: runId,\n name: name ?? tool.id[tool.id.length - 1],\n parent_run_id: parentRunId,\n start_time,\n serialized: tool,\n events: [\n {\n name: \"start\",\n time: new Date(start_time).toISOString(),\n },\n ],\n inputs: typeof input === \"string\" ? { input } : input,\n execution_order,\n child_execution_order: execution_order,\n run_type: \"tool\",\n child_runs: [],\n extra: {\n ...(metadata ? { metadata } : {}),\n ...(toolCallId !== undefined ? { tool_call_id: toolCallId } : {}),\n },\n tags: tags || [],\n };\n return this._addRunToRunMap(run);\n }\n\n async handleToolStart(\n tool: Serialized,\n input: string | Record<string, unknown>,\n runId: string,\n parentRunId?: string,\n tags?: string[],\n metadata?: KVMap,\n name?: string,\n toolCallId?: string\n ): Promise<Run> {\n const run =\n this.getRunById(runId) ??\n this._createRunForToolStart(\n tool,\n input,\n runId,\n parentRunId,\n tags,\n metadata,\n name,\n toolCallId\n );\n await this.onRunCreate?.(run);\n await this.onToolStart?.(run);\n return run;\n }\n\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n async handleToolEnd(output: any, runId: string): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"tool\") {\n throw new Error(\"No tool run to end\");\n }\n run.end_time = Date.now();\n run.outputs = { output };\n run.events.push({\n name: \"end\",\n time: new Date(run.end_time).toISOString(),\n });\n await this.onToolEnd?.(run);\n await this._endTrace(run);\n return run;\n }\n\n async handleToolError(error: unknown, runId: string): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"tool\") {\n throw new Error(\"No tool run to end\");\n }\n run.end_time = Date.now();\n run.error = this.stringifyError(error);\n run.events.push({\n name: \"error\",\n time: new Date(run.end_time).toISOString(),\n });\n await this.onToolError?.(run);\n await this._endTrace(run);\n return run;\n }\n\n async handleAgentAction(action: AgentAction, runId: string): Promise<void> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"chain\") {\n return;\n }\n const agentRun = run as AgentRun;\n agentRun.actions = agentRun.actions || [];\n agentRun.actions.push(action);\n agentRun.events.push({\n name: \"agent_action\",\n time: new Date().toISOString(),\n kwargs: { action },\n });\n await this.onAgentAction?.(run as AgentRun);\n }\n\n async handleAgentEnd(action: AgentFinish, runId: string): Promise<void> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"chain\") {\n return;\n }\n run.events.push({\n name: \"agent_end\",\n time: new Date().toISOString(),\n kwargs: { action },\n });\n await this.onAgentEnd?.(run);\n }\n\n /**\n * Create and add a run to the run map for retriever start events.\n * This must sometimes be done synchronously to avoid race conditions\n * when callbacks are backgrounded, so we expose it as a separate method here.\n */\n _createRunForRetrieverStart(\n retriever: Serialized,\n query: string,\n runId: string,\n parentRunId?: string,\n tags?: string[],\n metadata?: KVMap,\n name?: string\n ) {\n const execution_order = this._getExecutionOrder(parentRunId);\n const start_time = Date.now();\n const run: Run = {\n id: runId,\n name: name ?? retriever.id[retriever.id.length - 1],\n parent_run_id: parentRunId,\n start_time,\n serialized: retriever,\n events: [\n {\n name: \"start\",\n time: new Date(start_time).toISOString(),\n },\n ],\n inputs: { query },\n execution_order,\n child_execution_order: execution_order,\n run_type: \"retriever\",\n child_runs: [],\n extra: metadata ? { metadata } : {},\n tags: tags || [],\n };\n return this._addRunToRunMap(run);\n }\n\n async handleRetrieverStart(\n retriever: Serialized,\n query: string,\n runId: string,\n parentRunId?: string,\n tags?: string[],\n metadata?: KVMap,\n name?: string\n ): Promise<Run> {\n const run =\n this.getRunById(runId) ??\n this._createRunForRetrieverStart(\n retriever,\n query,\n runId,\n parentRunId,\n tags,\n metadata,\n name\n );\n await this.onRunCreate?.(run);\n await this.onRetrieverStart?.(run);\n return run;\n }\n\n async handleRetrieverEnd(\n documents: Document<Record<string, unknown>>[],\n runId: string\n ): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"retriever\") {\n throw new Error(\"No retriever run to end\");\n }\n run.end_time = Date.now();\n run.outputs = { documents };\n run.events.push({\n name: \"end\",\n time: new Date(run.end_time).toISOString(),\n });\n await this.onRetrieverEnd?.(run);\n await this._endTrace(run);\n return run;\n }\n\n async handleRetrieverError(error: unknown, runId: string): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"retriever\") {\n throw new Error(\"No retriever run to end\");\n }\n run.end_time = Date.now();\n run.error = this.stringifyError(error);\n run.events.push({\n name: \"error\",\n time: new Date(run.end_time).toISOString(),\n });\n await this.onRetrieverError?.(run);\n await this._endTrace(run);\n return run;\n }\n\n async handleText(text: string, runId: string): Promise<void> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"chain\") {\n return;\n }\n run.events.push({\n name: \"text\",\n time: new Date().toISOString(),\n kwargs: { text },\n });\n await this.onText?.(run);\n }\n\n async handleLLMNewToken(\n token: string,\n idx: NewTokenIndices,\n runId: string,\n _parentRunId?: string,\n _tags?: string[],\n fields?: HandleLLMNewTokenCallbackFields\n ): Promise<Run> {\n const run = this.getRunById(runId);\n if (!run || run?.run_type !== \"llm\") {\n throw new Error(\n `Invalid \"runId\" provided to \"handleLLMNewToken\" callback.`\n );\n }\n run.events.push({\n name: \"new_token\",\n time: new Date().toISOString(),\n kwargs: { token, idx, chunk: fields?.chunk },\n });\n await this.onLLMNewToken?.(run, token, { chunk: fields?.chunk });\n return run;\n }\n\n // custom event handlers\n\n onRunCreate?(run: Run): void | Promise<void>;\n\n onRunUpdate?(run: Run): void | Promise<void>;\n\n onLLMStart?(run: Run): void | Promise<void>;\n\n onLLMEnd?(run: Run): void | Promise<void>;\n\n onLLMError?(run: Run): void | Promise<void>;\n\n onChainStart?(run: Run): void | Promise<void>;\n\n onChainEnd?(run: Run): void | Promise<void>;\n\n onChainError?(run: Run): void | Promise<void>;\n\n onToolStart?(run: Run): void | Promise<void>;\n\n onToolEnd?(run: Run): void | Promise<void>;\n\n onToolError?(run: Run): void | Promise<void>;\n\n onAgentAction?(run: Run): void | Promise<void>;\n\n onAgentEnd?(run: Run): void | Promise<void>;\n\n onRetrieverStart?(run: Run): void | Promise<void>;\n\n onRetrieverEnd?(run: Run): void | Promise<void>;\n\n onRetrieverError?(run: Run): void | Promise<void>;\n\n onText?(run: Run): void | Promise<void>;\n\n onLLMNewToken?(\n run: Run,\n token: string,\n // oxlint-disable-next-line @typescript-eslint/no-explicit-any\n kwargs?: { chunk: any }\n ): void | Promise<void>;\n}\n"],"mappings":"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"}
@@ -15,7 +15,7 @@ import { BaseTracer, Run } from "./base.cjs";
15
15
  *
16
16
  * ```
17
17
  */
18
- declare class ConsoleCallbackHandler extends BaseTracer {
18
+ export declare class ConsoleCallbackHandler extends BaseTracer {
19
19
  name: "console_callback_handler";
20
20
  /**
21
21
  * Method used to persist the run. In this case, it simply returns a
@@ -117,5 +117,4 @@ declare class ConsoleCallbackHandler extends BaseTracer {
117
117
  onAgentAction(run: Run): void;
118
118
  }
119
119
  //#endregion
120
- export { ConsoleCallbackHandler };
121
120
  //# sourceMappingURL=console.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"console.d.cts","names":[],"sources":["../../src/tracers/console.ts"],"mappings":";;;;;;;;;;;;;;;;;cAuEa,+BAA+B;EAC1C;;;;;;;YAQU,WAAW,MAAM,MAAG;;;;;;EAW9B,WAAW,KAAK,MAAG;;;;;;;EAqBnB,eAAe,KAAK;;;;;;EAkBpB,aAAa,KAAK;;;;;;EAkBlB,WAAW,KAAK;;;;;;EAiBhB,aAAa,KAAK;;;;;;EAiBlB,WAAW,KAAK;;;;;;EAsBhB,SAAS,KAAK;;;;;;EAiBd,WAAW,KAAK;;;;;;EAchB,YAAY,KAAK;;;;;;EAiBjB,UAAU,KAAK;;;;;;EAiBf,YAAY,KAAK;;;;;;EAiBjB,iBAAiB,KAAK;;;;;;EAkBtB,eAAe,KAAK;;;;;;EAiBpB,iBAAiB,KAAK;;;;;;EAiBtB,cAAc,KAAK"}
1
+ {"version":3,"file":"console.d.cts","names":[],"sources":["../../src/tracers/console.ts"],"mappings":";;;;;;;;;;;;;;;;;qBAuEa,+BAA+B;EAC1C;;;;;;;YAQU,WAAW,MAAM,MAAG;;;;;;EAW9B,WAAW,KAAK,MAAG;;;;;;;EAqBnB,eAAe,KAAK;;;;;;EAkBpB,aAAa,KAAK;;;;;;EAkBlB,WAAW,KAAK;;;;;;EAiBhB,aAAa,KAAK;;;;;;EAiBlB,WAAW,KAAK;;;;;;EAsBhB,SAAS,KAAK;;;;;;EAiBd,WAAW,KAAK;;;;;;EAchB,YAAY,KAAK;;;;;;EAiBjB,UAAU,KAAK;;;;;;EAiBf,YAAY,KAAK;;;;;;EAiBjB,iBAAiB,KAAK;;;;;;EAkBtB,eAAe,KAAK;;;;;;EAiBpB,iBAAiB,KAAK;;;;;;EAiBtB,cAAc,KAAK"}
@@ -15,7 +15,7 @@ import { BaseTracer, Run } from "./base.js";
15
15
  *
16
16
  * ```
17
17
  */
18
- declare class ConsoleCallbackHandler extends BaseTracer {
18
+ export declare class ConsoleCallbackHandler extends BaseTracer {
19
19
  name: "console_callback_handler";
20
20
  /**
21
21
  * Method used to persist the run. In this case, it simply returns a
@@ -117,5 +117,4 @@ declare class ConsoleCallbackHandler extends BaseTracer {
117
117
  onAgentAction(run: Run): void;
118
118
  }
119
119
  //#endregion
120
- export { ConsoleCallbackHandler };
121
120
  //# sourceMappingURL=console.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"console.d.ts","names":[],"sources":["../../src/tracers/console.ts"],"mappings":";;;;;;;;;;;;;;;;;cAuEa,+BAA+B;EAC1C;;;;;;;YAQU,WAAW,MAAM,MAAG;;;;;;EAW9B,WAAW,KAAK,MAAG;;;;;;;EAqBnB,eAAe,KAAK;;;;;;EAkBpB,aAAa,KAAK;;;;;;EAkBlB,WAAW,KAAK;;;;;;EAiBhB,aAAa,KAAK;;;;;;EAiBlB,WAAW,KAAK;;;;;;EAsBhB,SAAS,KAAK;;;;;;EAiBd,WAAW,KAAK;;;;;;EAchB,YAAY,KAAK;;;;;;EAiBjB,UAAU,KAAK;;;;;;EAiBf,YAAY,KAAK;;;;;;EAiBjB,iBAAiB,KAAK;;;;;;EAkBtB,eAAe,KAAK;;;;;;EAiBpB,iBAAiB,KAAK;;;;;;EAiBtB,cAAc,KAAK"}
1
+ {"version":3,"file":"console.d.ts","names":[],"sources":["../../src/tracers/console.ts"],"mappings":";;;;;;;;;;;;;;;;;qBAuEa,+BAA+B;EAC1C;;;;;;;YAQU,WAAW,MAAM,MAAG;;;;;;EAW9B,WAAW,KAAK,MAAG;;;;;;;EAqBnB,eAAe,KAAK;;;;;;EAkBpB,aAAa,KAAK;;;;;;EAkBlB,WAAW,KAAK;;;;;;EAiBhB,aAAa,KAAK;;;;;;EAiBlB,WAAW,KAAK;;;;;;EAsBhB,SAAS,KAAK;;;;;;EAiBd,WAAW,KAAK;;;;;;EAchB,YAAY,KAAK;;;;;;EAiBjB,UAAU,KAAK;;;;;;EAiBf,YAAY,KAAK;;;;;;EAiBjB,iBAAiB,KAAK;;;;;;EAkBtB,eAAe,KAAK;;;;;;EAiBpB,iBAAiB,KAAK;;;;;;EAiBtB,cAAc,KAAK"}
@@ -4,7 +4,7 @@ import "./base.cjs";
4
4
  /**
5
5
  * Data associated with a StreamEvent.
6
6
  */
7
- type StreamEventData = {
7
+ export type StreamEventData = {
8
8
  /**
9
9
  * The input passed to the runnable that generated the event.
10
10
  * Inputs will sometimes be available at the *START* of the runnable, and
@@ -39,7 +39,7 @@ type StreamEventData = {
39
39
  *
40
40
  * Schema of a streaming event which is produced from the streamEvents method.
41
41
  */
42
- type StreamEvent = {
42
+ export type StreamEvent = {
43
43
  /**
44
44
  * Event names are of the format: on_[runnable_type]_(start|stream|end).
45
45
  *
@@ -83,7 +83,7 @@ type StreamEvent = {
83
83
  */
84
84
  data: StreamEventData;
85
85
  };
86
- interface EventStreamCallbackHandlerInput extends BaseCallbackHandlerInput {
86
+ export interface EventStreamCallbackHandlerInput extends BaseCallbackHandlerInput {
87
87
  autoClose?: boolean;
88
88
  includeNames?: string[];
89
89
  includeTypes?: string[];
@@ -93,5 +93,4 @@ interface EventStreamCallbackHandlerInput extends BaseCallbackHandlerInput {
93
93
  excludeTags?: string[];
94
94
  }
95
95
  //#endregion
96
- export { EventStreamCallbackHandlerInput, StreamEvent, StreamEventData };
97
96
  //# sourceMappingURL=event_stream.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"event_stream.d.cts","names":[],"sources":["../../src/tracers/event_stream.ts"],"mappings":";;;;;;KAcY;;;;;;;;;EAUV;;;;;;;;EAUA;;;;;;EAQA;;;;;EAMA;;;;;;;KAQU;;;;;;;;;;;;;;;;;;;;EAoBV;;EAEA;;;;;;;EAOA;;;;;EAKA;;EAGA,UAAU;;;;;;EAMV,MAAM;;UAaS,wCAAwC;EACvD;EACA;EACA;EACA;EACA;EACA;EACA"}
1
+ {"version":3,"file":"event_stream.d.cts","names":[],"sources":["../../src/tracers/event_stream.ts"],"mappings":";;;;;;YAcY;;;;;;;;;EAUV;;;;;;;;EAUA;;;;;;EAQA;;;;;EAMA;;;;;;;YAQU;;;;;;;;;;;;;;;;;;;;EAoBV;;EAEA;;;;;;;EAOA;;;;;EAKA;;EAGA,UAAU;;;;;;EAMV,MAAM;;iBAaS,wCAAwC;EACvD;EACA;EACA;EACA;EACA;EACA;EACA"}
@@ -4,7 +4,7 @@ import "./base.js";
4
4
  /**
5
5
  * Data associated with a StreamEvent.
6
6
  */
7
- type StreamEventData = {
7
+ export type StreamEventData = {
8
8
  /**
9
9
  * The input passed to the runnable that generated the event.
10
10
  * Inputs will sometimes be available at the *START* of the runnable, and
@@ -39,7 +39,7 @@ type StreamEventData = {
39
39
  *
40
40
  * Schema of a streaming event which is produced from the streamEvents method.
41
41
  */
42
- type StreamEvent = {
42
+ export type StreamEvent = {
43
43
  /**
44
44
  * Event names are of the format: on_[runnable_type]_(start|stream|end).
45
45
  *
@@ -83,7 +83,7 @@ type StreamEvent = {
83
83
  */
84
84
  data: StreamEventData;
85
85
  };
86
- interface EventStreamCallbackHandlerInput extends BaseCallbackHandlerInput {
86
+ export interface EventStreamCallbackHandlerInput extends BaseCallbackHandlerInput {
87
87
  autoClose?: boolean;
88
88
  includeNames?: string[];
89
89
  includeTypes?: string[];
@@ -93,5 +93,4 @@ interface EventStreamCallbackHandlerInput extends BaseCallbackHandlerInput {
93
93
  excludeTags?: string[];
94
94
  }
95
95
  //#endregion
96
- export { EventStreamCallbackHandlerInput, StreamEvent, StreamEventData };
97
96
  //# sourceMappingURL=event_stream.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"event_stream.d.ts","names":[],"sources":["../../src/tracers/event_stream.ts"],"mappings":";;;;;;KAcY;;;;;;;;;EAUV;;;;;;;;EAUA;;;;;;EAQA;;;;;EAMA;;;;;;;KAQU;;;;;;;;;;;;;;;;;;;;EAoBV;;EAEA;;;;;;;EAOA;;;;;EAKA;;EAGA,UAAU;;;;;;EAMV,MAAM;;UAaS,wCAAwC;EACvD;EACA;EACA;EACA;EACA;EACA;EACA"}
1
+ {"version":3,"file":"event_stream.d.ts","names":[],"sources":["../../src/tracers/event_stream.ts"],"mappings":";;;;;;YAcY;;;;;;;;;EAUV;;;;;;;;EAUA;;;;;;EAQA;;;;;EAMA;;;;;;;YAQU;;;;;;;;;;;;;;;;;;;;EAoBV;;EAEA;;;;;;;EAOA;;;;;EAKA;;EAGA,UAAU;;;;;;EAMV,MAAM;;iBAaS,wCAAwC;EACvD;EACA;EACA;EACA;EACA;EACA;EACA"}