@langchain/classic 1.0.5 → 1.0.6-dev-1765432861398

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 (1274) hide show
  1. package/dist/_virtual/rolldown_runtime.cjs +0 -4
  2. package/dist/_virtual/rolldown_runtime.js +1 -10
  3. package/dist/agents/agent.d.cts +3 -17
  4. package/dist/agents/agent.d.cts.map +1 -0
  5. package/dist/agents/agent.d.ts +3 -17
  6. package/dist/agents/agent.d.ts.map +1 -0
  7. package/dist/agents/chat/index.d.cts.map +1 -0
  8. package/dist/agents/chat/index.d.ts.map +1 -0
  9. package/dist/agents/chat/outputParser.d.cts.map +1 -0
  10. package/dist/agents/chat/outputParser.d.ts +2 -2
  11. package/dist/agents/chat/outputParser.d.ts.map +1 -0
  12. package/dist/agents/chat_convo/index.d.cts.map +1 -0
  13. package/dist/agents/chat_convo/index.d.ts.map +1 -0
  14. package/dist/agents/chat_convo/outputParser.d.cts.map +1 -0
  15. package/dist/agents/chat_convo/outputParser.d.ts.map +1 -0
  16. package/dist/agents/executor.d.cts +1 -5
  17. package/dist/agents/executor.d.cts.map +1 -0
  18. package/dist/agents/executor.d.ts +1 -5
  19. package/dist/agents/executor.d.ts.map +1 -0
  20. package/dist/agents/format_scratchpad/log.d.cts.map +1 -0
  21. package/dist/agents/format_scratchpad/log.d.ts.map +1 -0
  22. package/dist/agents/format_scratchpad/log_to_message.d.cts.map +1 -0
  23. package/dist/agents/format_scratchpad/log_to_message.d.ts.map +1 -0
  24. package/dist/agents/format_scratchpad/openai_functions.d.cts.map +1 -0
  25. package/dist/agents/format_scratchpad/openai_functions.d.ts.map +1 -0
  26. package/dist/agents/format_scratchpad/tool_calling.d.cts.map +1 -0
  27. package/dist/agents/format_scratchpad/tool_calling.d.ts.map +1 -0
  28. package/dist/agents/format_scratchpad/xml.d.cts.map +1 -0
  29. package/dist/agents/format_scratchpad/xml.d.ts.map +1 -0
  30. package/dist/agents/initialize.d.cts +1 -10
  31. package/dist/agents/initialize.d.cts.map +1 -0
  32. package/dist/agents/initialize.d.ts +1 -10
  33. package/dist/agents/initialize.d.ts.map +1 -0
  34. package/dist/agents/load.d.cts +2 -10
  35. package/dist/agents/load.d.cts.map +1 -0
  36. package/dist/agents/load.d.ts +2 -10
  37. package/dist/agents/load.d.ts.map +1 -0
  38. package/dist/agents/mrkl/index.d.cts.map +1 -0
  39. package/dist/agents/mrkl/index.d.ts.map +1 -0
  40. package/dist/agents/mrkl/outputParser.d.cts +1 -1
  41. package/dist/agents/mrkl/outputParser.d.cts.map +1 -0
  42. package/dist/agents/mrkl/outputParser.d.ts +1 -1
  43. package/dist/agents/mrkl/outputParser.d.ts.map +1 -0
  44. package/dist/agents/openai_functions/index.d.cts.map +1 -0
  45. package/dist/agents/openai_functions/index.d.ts.map +1 -0
  46. package/dist/agents/openai_functions/output_parser.d.cts.map +1 -0
  47. package/dist/agents/openai_functions/output_parser.d.ts.map +1 -0
  48. package/dist/agents/openai_tools/index.d.cts +3 -5
  49. package/dist/agents/openai_tools/index.d.cts.map +1 -0
  50. package/dist/agents/openai_tools/index.d.ts +3 -5
  51. package/dist/agents/openai_tools/index.d.ts.map +1 -0
  52. package/dist/agents/openai_tools/output_parser.d.cts.map +1 -0
  53. package/dist/agents/openai_tools/output_parser.d.ts.map +1 -0
  54. package/dist/agents/react/index.d.cts +2 -2
  55. package/dist/agents/react/index.d.cts.map +1 -0
  56. package/dist/agents/react/index.d.ts +2 -2
  57. package/dist/agents/react/index.d.ts.map +1 -0
  58. package/dist/agents/react/output_parser.d.cts.map +1 -0
  59. package/dist/agents/react/output_parser.d.ts.map +1 -0
  60. package/dist/agents/structured_chat/index.d.cts +2 -2
  61. package/dist/agents/structured_chat/index.d.cts.map +1 -0
  62. package/dist/agents/structured_chat/index.d.ts.map +1 -0
  63. package/dist/agents/structured_chat/outputParser.d.cts.map +1 -0
  64. package/dist/agents/structured_chat/outputParser.d.ts.map +1 -0
  65. package/dist/agents/tool_calling/index.d.cts +2 -2
  66. package/dist/agents/tool_calling/index.d.cts.map +1 -0
  67. package/dist/agents/tool_calling/index.d.ts +2 -2
  68. package/dist/agents/tool_calling/index.d.ts.map +1 -0
  69. package/dist/agents/tool_calling/output_parser.d.cts.map +1 -0
  70. package/dist/agents/tool_calling/output_parser.d.ts.map +1 -0
  71. package/dist/agents/toolkits/conversational_retrieval/openai_functions.d.cts.map +1 -0
  72. package/dist/agents/toolkits/conversational_retrieval/openai_functions.d.ts.map +1 -0
  73. package/dist/agents/toolkits/conversational_retrieval/token_buffer_memory.d.cts +2 -2
  74. package/dist/agents/toolkits/conversational_retrieval/token_buffer_memory.d.cts.map +1 -0
  75. package/dist/agents/toolkits/conversational_retrieval/token_buffer_memory.d.ts +2 -2
  76. package/dist/agents/toolkits/conversational_retrieval/token_buffer_memory.d.ts.map +1 -0
  77. package/dist/agents/toolkits/conversational_retrieval/tool.d.cts.map +1 -0
  78. package/dist/agents/toolkits/conversational_retrieval/tool.d.ts.map +1 -0
  79. package/dist/agents/toolkits/json/json.d.cts.map +1 -0
  80. package/dist/agents/toolkits/json/json.d.ts.map +1 -0
  81. package/dist/agents/toolkits/openapi/openapi.d.cts.map +1 -0
  82. package/dist/agents/toolkits/openapi/openapi.d.ts.map +1 -0
  83. package/dist/agents/toolkits/sql/prompt.d.cts.map +1 -0
  84. package/dist/agents/toolkits/sql/prompt.d.ts.map +1 -0
  85. package/dist/agents/toolkits/sql/sql.d.cts.map +1 -0
  86. package/dist/agents/toolkits/sql/sql.d.ts.map +1 -0
  87. package/dist/agents/toolkits/vectorstore/vectorstore.d.cts.map +1 -0
  88. package/dist/agents/toolkits/vectorstore/vectorstore.d.ts.map +1 -0
  89. package/dist/agents/types.d.cts.map +1 -0
  90. package/dist/agents/types.d.ts.map +1 -0
  91. package/dist/agents/xml/index.d.cts.map +1 -0
  92. package/dist/agents/xml/index.d.ts.map +1 -0
  93. package/dist/agents/xml/output_parser.d.cts.map +1 -0
  94. package/dist/agents/xml/output_parser.d.ts.map +1 -0
  95. package/dist/cache/file_system.d.cts.map +1 -0
  96. package/dist/cache/file_system.d.ts.map +1 -0
  97. package/dist/callbacks/handlers/console.d.cts.map +1 -0
  98. package/dist/callbacks/handlers/console.d.ts.map +1 -0
  99. package/dist/callbacks/handlers/run_collector.d.cts.map +1 -0
  100. package/dist/callbacks/handlers/run_collector.d.ts.map +1 -0
  101. package/dist/callbacks/handlers/tracer.d.cts.map +1 -0
  102. package/dist/callbacks/handlers/tracer.d.ts.map +1 -0
  103. package/dist/callbacks/handlers/tracer_langchain.d.cts.map +1 -0
  104. package/dist/callbacks/handlers/tracer_langchain.d.ts.map +1 -0
  105. package/dist/callbacks/promises.d.cts.map +1 -0
  106. package/dist/callbacks/promises.d.ts.map +1 -0
  107. package/dist/chains/analyze_documents_chain.d.cts +0 -1
  108. package/dist/chains/analyze_documents_chain.d.cts.map +1 -0
  109. package/dist/chains/analyze_documents_chain.d.ts +0 -1
  110. package/dist/chains/analyze_documents_chain.d.ts.map +1 -0
  111. package/dist/chains/api/api_chain.d.cts.map +1 -0
  112. package/dist/chains/api/api_chain.d.ts.map +1 -0
  113. package/dist/chains/base.d.cts +1 -4
  114. package/dist/chains/base.d.cts.map +1 -0
  115. package/dist/chains/base.d.ts +1 -4
  116. package/dist/chains/base.d.ts.map +1 -0
  117. package/dist/chains/chat_vector_db_chain.d.cts +0 -1
  118. package/dist/chains/chat_vector_db_chain.d.cts.map +1 -0
  119. package/dist/chains/chat_vector_db_chain.d.ts +0 -1
  120. package/dist/chains/chat_vector_db_chain.d.ts.map +1 -0
  121. package/dist/chains/combine_docs_chain.d.cts +2 -2
  122. package/dist/chains/combine_docs_chain.d.cts.map +1 -0
  123. package/dist/chains/combine_docs_chain.d.ts +2 -2
  124. package/dist/chains/combine_docs_chain.d.ts.map +1 -0
  125. package/dist/chains/combine_documents/reduce.d.cts +1 -3
  126. package/dist/chains/combine_documents/reduce.d.cts.map +1 -0
  127. package/dist/chains/combine_documents/reduce.d.ts +1 -3
  128. package/dist/chains/combine_documents/reduce.d.ts.map +1 -0
  129. package/dist/chains/combine_documents/stuff.d.cts.map +1 -0
  130. package/dist/chains/combine_documents/stuff.d.ts.map +1 -0
  131. package/dist/chains/constitutional_ai/constitutional_chain.d.cts.map +1 -0
  132. package/dist/chains/constitutional_ai/constitutional_chain.d.ts.map +1 -0
  133. package/dist/chains/constitutional_ai/constitutional_principle.d.cts.map +1 -0
  134. package/dist/chains/constitutional_ai/constitutional_principle.d.ts.map +1 -0
  135. package/dist/chains/conversation.d.cts.map +1 -0
  136. package/dist/chains/conversation.d.ts.map +1 -0
  137. package/dist/chains/conversational_retrieval_chain.d.cts +1 -2
  138. package/dist/chains/conversational_retrieval_chain.d.cts.map +1 -0
  139. package/dist/chains/conversational_retrieval_chain.d.ts +1 -2
  140. package/dist/chains/conversational_retrieval_chain.d.ts.map +1 -0
  141. package/dist/chains/graph_qa/cypher.d.cts +0 -3
  142. package/dist/chains/graph_qa/cypher.d.cts.map +1 -0
  143. package/dist/chains/graph_qa/cypher.d.ts +0 -3
  144. package/dist/chains/graph_qa/cypher.d.ts.map +1 -0
  145. package/dist/chains/history_aware_retriever.d.cts.map +1 -0
  146. package/dist/chains/history_aware_retriever.d.ts.map +1 -0
  147. package/dist/chains/llm_chain.d.cts +0 -1
  148. package/dist/chains/llm_chain.d.cts.map +1 -0
  149. package/dist/chains/llm_chain.d.ts +0 -1
  150. package/dist/chains/llm_chain.d.ts.map +1 -0
  151. package/dist/chains/load.d.cts +2 -2
  152. package/dist/chains/load.d.cts.map +1 -0
  153. package/dist/chains/load.d.ts +2 -2
  154. package/dist/chains/load.d.ts.map +1 -0
  155. package/dist/chains/openai_functions/base.d.cts +4 -16
  156. package/dist/chains/openai_functions/base.d.cts.map +1 -0
  157. package/dist/chains/openai_functions/base.d.ts +4 -16
  158. package/dist/chains/openai_functions/base.d.ts.map +1 -0
  159. package/dist/chains/openai_functions/extraction.d.cts.map +1 -0
  160. package/dist/chains/openai_functions/extraction.d.ts.map +1 -0
  161. package/dist/chains/openai_functions/openapi.d.cts +1 -4
  162. package/dist/chains/openai_functions/openapi.d.cts.map +1 -0
  163. package/dist/chains/openai_functions/openapi.d.ts +1 -4
  164. package/dist/chains/openai_functions/openapi.d.ts.map +1 -0
  165. package/dist/chains/openai_functions/tagging.d.cts.map +1 -0
  166. package/dist/chains/openai_functions/tagging.d.ts.map +1 -0
  167. package/dist/chains/openai_moderation.d.cts.map +1 -0
  168. package/dist/chains/openai_moderation.d.ts.map +1 -0
  169. package/dist/chains/query_constructor/index.d.cts +1 -3
  170. package/dist/chains/query_constructor/index.d.cts.map +1 -0
  171. package/dist/chains/query_constructor/index.d.ts +1 -3
  172. package/dist/chains/query_constructor/index.d.ts.map +1 -0
  173. package/dist/chains/query_constructor/parser.d.cts.map +1 -0
  174. package/dist/chains/query_constructor/parser.d.ts.map +1 -0
  175. package/dist/chains/query_constructor/prompt.d.cts.map +1 -0
  176. package/dist/chains/query_constructor/prompt.d.ts.map +1 -0
  177. package/dist/chains/question_answering/load.d.cts +2 -2
  178. package/dist/chains/question_answering/load.d.cts.map +1 -0
  179. package/dist/chains/question_answering/load.d.ts +2 -2
  180. package/dist/chains/question_answering/load.d.ts.map +1 -0
  181. package/dist/chains/retrieval.d.cts +1 -4
  182. package/dist/chains/retrieval.d.cts.map +1 -0
  183. package/dist/chains/retrieval.d.ts +1 -4
  184. package/dist/chains/retrieval.d.ts.map +1 -0
  185. package/dist/chains/retrieval_qa.d.cts +0 -1
  186. package/dist/chains/retrieval_qa.d.cts.map +1 -0
  187. package/dist/chains/retrieval_qa.d.ts +0 -1
  188. package/dist/chains/retrieval_qa.d.ts.map +1 -0
  189. package/dist/chains/router/llm_router.d.cts.map +1 -0
  190. package/dist/chains/router/llm_router.d.ts.map +1 -0
  191. package/dist/chains/router/multi_prompt.d.cts.map +1 -0
  192. package/dist/chains/router/multi_prompt.d.ts.map +1 -0
  193. package/dist/chains/router/multi_retrieval_qa.d.cts.map +1 -0
  194. package/dist/chains/router/multi_retrieval_qa.d.ts.map +1 -0
  195. package/dist/chains/router/multi_route.d.cts.map +1 -0
  196. package/dist/chains/router/multi_route.d.ts.map +1 -0
  197. package/dist/chains/sequential_chain.d.cts.map +1 -0
  198. package/dist/chains/sequential_chain.d.ts.map +1 -0
  199. package/dist/chains/serde.d.cts.map +1 -0
  200. package/dist/chains/serde.d.ts.map +1 -0
  201. package/dist/chains/sql_db/sql_db_chain.d.cts +0 -5
  202. package/dist/chains/sql_db/sql_db_chain.d.cts.map +1 -0
  203. package/dist/chains/sql_db/sql_db_chain.d.ts +0 -5
  204. package/dist/chains/sql_db/sql_db_chain.d.ts.map +1 -0
  205. package/dist/chains/sql_db/sql_db_prompt.d.cts.map +1 -0
  206. package/dist/chains/sql_db/sql_db_prompt.d.ts.map +1 -0
  207. package/dist/chains/summarization/load.d.cts.map +1 -0
  208. package/dist/chains/summarization/load.d.ts +2 -2
  209. package/dist/chains/summarization/load.d.ts.map +1 -0
  210. package/dist/chains/transform.d.cts.map +1 -0
  211. package/dist/chains/transform.d.ts.map +1 -0
  212. package/dist/chains/vector_db_qa.d.cts +0 -1
  213. package/dist/chains/vector_db_qa.d.cts.map +1 -0
  214. package/dist/chains/vector_db_qa.d.ts +0 -1
  215. package/dist/chains/vector_db_qa.d.ts.map +1 -0
  216. package/dist/chat_models/universal.d.cts +4 -21
  217. package/dist/chat_models/universal.d.cts.map +1 -0
  218. package/dist/chat_models/universal.d.ts +4 -21
  219. package/dist/chat_models/universal.d.ts.map +1 -0
  220. package/dist/document_loaders/fs/buffer.d.cts.map +1 -0
  221. package/dist/document_loaders/fs/buffer.d.ts.map +1 -0
  222. package/dist/document_loaders/fs/directory.d.cts +0 -2
  223. package/dist/document_loaders/fs/directory.d.cts.map +1 -0
  224. package/dist/document_loaders/fs/directory.d.ts +0 -2
  225. package/dist/document_loaders/fs/directory.d.ts.map +1 -0
  226. package/dist/document_loaders/fs/json.d.cts.map +1 -0
  227. package/dist/document_loaders/fs/json.d.ts.map +1 -0
  228. package/dist/document_loaders/fs/multi_file.d.cts.map +1 -0
  229. package/dist/document_loaders/fs/multi_file.d.ts.map +1 -0
  230. package/dist/document_loaders/fs/text.d.cts.map +1 -0
  231. package/dist/document_loaders/fs/text.d.ts.map +1 -0
  232. package/dist/document_transformers/openai_functions.d.cts.map +1 -0
  233. package/dist/document_transformers/openai_functions.d.ts.map +1 -0
  234. package/dist/embeddings/cache_backed.d.cts.map +1 -0
  235. package/dist/embeddings/cache_backed.d.ts.map +1 -0
  236. package/dist/evaluation/agents/trajectory.d.cts +2 -2
  237. package/dist/evaluation/agents/trajectory.d.cts.map +1 -0
  238. package/dist/evaluation/agents/trajectory.d.ts +2 -2
  239. package/dist/evaluation/agents/trajectory.d.ts.map +1 -0
  240. package/dist/evaluation/base.d.cts +1 -3
  241. package/dist/evaluation/base.d.cts.map +1 -0
  242. package/dist/evaluation/base.d.ts +1 -3
  243. package/dist/evaluation/base.d.ts.map +1 -0
  244. package/dist/evaluation/comparison/pairwise.d.cts +3 -3
  245. package/dist/evaluation/comparison/pairwise.d.cts.map +1 -0
  246. package/dist/evaluation/comparison/pairwise.d.ts +3 -3
  247. package/dist/evaluation/comparison/pairwise.d.ts.map +1 -0
  248. package/dist/evaluation/criteria/criteria.d.cts +3 -5
  249. package/dist/evaluation/criteria/criteria.d.cts.map +1 -0
  250. package/dist/evaluation/criteria/criteria.d.ts +3 -5
  251. package/dist/evaluation/criteria/criteria.d.ts.map +1 -0
  252. package/dist/evaluation/embedding_distance/base.d.cts.map +1 -0
  253. package/dist/evaluation/embedding_distance/base.d.ts.map +1 -0
  254. package/dist/evaluation/loader.d.cts.map +1 -0
  255. package/dist/evaluation/loader.d.ts.map +1 -0
  256. package/dist/evaluation/qa/eval_chain.d.cts.map +1 -0
  257. package/dist/evaluation/qa/eval_chain.d.ts.map +1 -0
  258. package/dist/evaluation/types.d.cts.map +1 -0
  259. package/dist/evaluation/types.d.ts.map +1 -0
  260. package/dist/experimental/autogpt/agent.d.cts +0 -2
  261. package/dist/experimental/autogpt/agent.d.cts.map +1 -0
  262. package/dist/experimental/autogpt/agent.d.ts +0 -2
  263. package/dist/experimental/autogpt/agent.d.ts.map +1 -0
  264. package/dist/experimental/autogpt/output_parser.d.cts.map +1 -0
  265. package/dist/experimental/autogpt/output_parser.d.ts.map +1 -0
  266. package/dist/experimental/autogpt/prompt.d.cts +2 -2
  267. package/dist/experimental/autogpt/prompt.d.cts.map +1 -0
  268. package/dist/experimental/autogpt/prompt.d.ts +2 -2
  269. package/dist/experimental/autogpt/prompt.d.ts.map +1 -0
  270. package/dist/experimental/autogpt/schema.d.cts +0 -1
  271. package/dist/experimental/autogpt/schema.d.cts.map +1 -0
  272. package/dist/experimental/autogpt/schema.d.ts +0 -1
  273. package/dist/experimental/autogpt/schema.d.ts.map +1 -0
  274. package/dist/experimental/babyagi/agent.d.cts.map +1 -0
  275. package/dist/experimental/babyagi/agent.d.ts.map +1 -0
  276. package/dist/experimental/babyagi/task_creation.d.cts.map +1 -0
  277. package/dist/experimental/babyagi/task_creation.d.ts.map +1 -0
  278. package/dist/experimental/babyagi/task_execution.d.cts.map +1 -0
  279. package/dist/experimental/babyagi/task_execution.d.ts.map +1 -0
  280. package/dist/experimental/babyagi/task_prioritization.d.cts.map +1 -0
  281. package/dist/experimental/babyagi/task_prioritization.d.ts.map +1 -0
  282. package/dist/experimental/chains/violation_of_expectations/types.d.cts.map +1 -0
  283. package/dist/experimental/chains/violation_of_expectations/types.d.ts.map +1 -0
  284. package/dist/experimental/chains/violation_of_expectations/violation_of_expectations_chain.d.cts.map +1 -0
  285. package/dist/experimental/chains/violation_of_expectations/violation_of_expectations_chain.d.ts.map +1 -0
  286. package/dist/experimental/generative_agents/generative_agent.d.cts +8 -16
  287. package/dist/experimental/generative_agents/generative_agent.d.cts.map +1 -0
  288. package/dist/experimental/generative_agents/generative_agent.d.ts +8 -16
  289. package/dist/experimental/generative_agents/generative_agent.d.ts.map +1 -0
  290. package/dist/experimental/generative_agents/generative_agent_memory.d.cts +0 -1
  291. package/dist/experimental/generative_agents/generative_agent_memory.d.cts.map +1 -0
  292. package/dist/experimental/generative_agents/generative_agent_memory.d.ts +0 -1
  293. package/dist/experimental/generative_agents/generative_agent_memory.d.ts.map +1 -0
  294. package/dist/experimental/masking/parser.d.cts.map +1 -0
  295. package/dist/experimental/masking/parser.d.ts.map +1 -0
  296. package/dist/experimental/masking/regex_masking_transformer.d.cts.map +1 -0
  297. package/dist/experimental/masking/regex_masking_transformer.d.ts.map +1 -0
  298. package/dist/experimental/masking/transformer.d.cts.map +1 -0
  299. package/dist/experimental/masking/transformer.d.ts.map +1 -0
  300. package/dist/experimental/masking/types.d.cts.map +1 -0
  301. package/dist/experimental/masking/types.d.ts.map +1 -0
  302. package/dist/experimental/openai_assistant/index.d.cts +1 -5
  303. package/dist/experimental/openai_assistant/index.d.cts.map +1 -0
  304. package/dist/experimental/openai_assistant/index.d.ts +1 -5
  305. package/dist/experimental/openai_assistant/index.d.ts.map +1 -0
  306. package/dist/experimental/openai_assistant/schema.d.cts +0 -1
  307. package/dist/experimental/openai_assistant/schema.d.cts.map +1 -0
  308. package/dist/experimental/openai_assistant/schema.d.ts +0 -1
  309. package/dist/experimental/openai_assistant/schema.d.ts.map +1 -0
  310. package/dist/experimental/openai_files/index.d.cts.map +1 -0
  311. package/dist/experimental/openai_files/index.d.ts.map +1 -0
  312. package/dist/experimental/plan_and_execute/agent_executor.d.cts.map +1 -0
  313. package/dist/experimental/plan_and_execute/agent_executor.d.ts.map +1 -0
  314. package/dist/experimental/plan_and_execute/base.d.cts.map +1 -0
  315. package/dist/experimental/plan_and_execute/base.d.ts.map +1 -0
  316. package/dist/experimental/plan_and_execute/outputParser.d.cts.map +1 -0
  317. package/dist/experimental/plan_and_execute/outputParser.d.ts.map +1 -0
  318. package/dist/experimental/prompts/custom_format.d.cts +2 -8
  319. package/dist/experimental/prompts/custom_format.d.cts.map +1 -0
  320. package/dist/experimental/prompts/custom_format.d.ts +2 -8
  321. package/dist/experimental/prompts/custom_format.d.ts.map +1 -0
  322. package/dist/experimental/prompts/handlebars.d.cts +2 -6
  323. package/dist/experimental/prompts/handlebars.d.cts.map +1 -0
  324. package/dist/experimental/prompts/handlebars.d.ts +2 -6
  325. package/dist/experimental/prompts/handlebars.d.ts.map +1 -0
  326. package/dist/hub/base.cjs +1 -1
  327. package/dist/hub/base.cjs.map +1 -1
  328. package/dist/hub/base.d.cts.map +1 -0
  329. package/dist/hub/base.d.ts.map +1 -0
  330. package/dist/hub/base.js +1 -1
  331. package/dist/hub/index.d.cts +0 -1
  332. package/dist/hub/index.d.cts.map +1 -0
  333. package/dist/hub/index.d.ts +0 -1
  334. package/dist/hub/index.d.ts.map +1 -0
  335. package/dist/hub/node.d.cts.map +1 -0
  336. package/dist/hub/node.d.ts.map +1 -0
  337. package/dist/load/import_type.d.cts +0 -1
  338. package/dist/load/import_type.d.cts.map +1 -0
  339. package/dist/load/import_type.d.ts +0 -1
  340. package/dist/load/import_type.d.ts.map +1 -0
  341. package/dist/load/index.d.cts +1 -7
  342. package/dist/load/index.d.cts.map +1 -0
  343. package/dist/load/index.d.ts +1 -7
  344. package/dist/load/index.d.ts.map +1 -0
  345. package/dist/load/map_keys.d.cts +0 -1
  346. package/dist/load/map_keys.d.cts.map +1 -0
  347. package/dist/load/map_keys.d.ts +0 -1
  348. package/dist/load/map_keys.d.ts.map +1 -0
  349. package/dist/load/serializable.d.cts +1 -8
  350. package/dist/load/serializable.d.ts +1 -8
  351. package/dist/memory/buffer_memory.d.cts.map +1 -0
  352. package/dist/memory/buffer_memory.d.ts.map +1 -0
  353. package/dist/memory/buffer_token_memory.d.cts +1 -6
  354. package/dist/memory/buffer_token_memory.d.cts.map +1 -0
  355. package/dist/memory/buffer_token_memory.d.ts +1 -6
  356. package/dist/memory/buffer_token_memory.d.ts.map +1 -0
  357. package/dist/memory/buffer_window_memory.d.cts.map +1 -0
  358. package/dist/memory/buffer_window_memory.d.ts.map +1 -0
  359. package/dist/memory/chat_memory.d.cts.map +1 -0
  360. package/dist/memory/chat_memory.d.ts.map +1 -0
  361. package/dist/memory/combined_memory.d.cts.map +1 -0
  362. package/dist/memory/combined_memory.d.ts.map +1 -0
  363. package/dist/memory/entity_memory.d.cts +0 -5
  364. package/dist/memory/entity_memory.d.cts.map +1 -0
  365. package/dist/memory/entity_memory.d.ts +0 -5
  366. package/dist/memory/entity_memory.d.ts.map +1 -0
  367. package/dist/memory/prompt.d.cts.map +1 -0
  368. package/dist/memory/prompt.d.ts.map +1 -0
  369. package/dist/memory/stores/entity/base.d.cts.map +1 -0
  370. package/dist/memory/stores/entity/base.d.ts.map +1 -0
  371. package/dist/memory/summary.d.cts.map +1 -0
  372. package/dist/memory/summary.d.ts.map +1 -0
  373. package/dist/memory/summary_buffer.d.cts.map +1 -0
  374. package/dist/memory/summary_buffer.d.ts.map +1 -0
  375. package/dist/memory/vector_store.d.cts.map +1 -0
  376. package/dist/memory/vector_store.d.ts.map +1 -0
  377. package/dist/output_parsers/combining.d.cts +0 -1
  378. package/dist/output_parsers/combining.d.cts.map +1 -0
  379. package/dist/output_parsers/combining.d.ts +0 -1
  380. package/dist/output_parsers/combining.d.ts.map +1 -0
  381. package/dist/output_parsers/datetime.d.cts.map +1 -0
  382. package/dist/output_parsers/datetime.d.ts.map +1 -0
  383. package/dist/output_parsers/expression.d.cts.map +1 -0
  384. package/dist/output_parsers/expression.d.ts.map +1 -0
  385. package/dist/output_parsers/expression_type_handlers/base.d.cts +0 -1
  386. package/dist/output_parsers/expression_type_handlers/base.d.cts.map +1 -0
  387. package/dist/output_parsers/expression_type_handlers/base.d.ts +0 -1
  388. package/dist/output_parsers/expression_type_handlers/base.d.ts.map +1 -0
  389. package/dist/output_parsers/expression_type_handlers/factory.d.cts.map +1 -0
  390. package/dist/output_parsers/expression_type_handlers/factory.d.ts.map +1 -0
  391. package/dist/output_parsers/expression_type_handlers/types.d.cts.map +1 -0
  392. package/dist/output_parsers/expression_type_handlers/types.d.ts.map +1 -0
  393. package/dist/output_parsers/fix.d.cts.map +1 -0
  394. package/dist/output_parsers/fix.d.ts.map +1 -0
  395. package/dist/output_parsers/http_response.d.cts.map +1 -0
  396. package/dist/output_parsers/http_response.d.ts.map +1 -0
  397. package/dist/output_parsers/openai_functions.d.cts.map +1 -0
  398. package/dist/output_parsers/openai_functions.d.ts.map +1 -0
  399. package/dist/output_parsers/openai_tools.d.cts +1 -4
  400. package/dist/output_parsers/openai_tools.d.cts.map +1 -0
  401. package/dist/output_parsers/openai_tools.d.ts +1 -4
  402. package/dist/output_parsers/openai_tools.d.ts.map +1 -0
  403. package/dist/output_parsers/regex.d.cts.map +1 -0
  404. package/dist/output_parsers/regex.d.ts.map +1 -0
  405. package/dist/output_parsers/router.d.cts.map +1 -0
  406. package/dist/output_parsers/router.d.ts.map +1 -0
  407. package/dist/output_parsers/structured.d.cts +2 -2
  408. package/dist/output_parsers/structured.d.cts.map +1 -0
  409. package/dist/output_parsers/structured.d.ts +2 -2
  410. package/dist/output_parsers/structured.d.ts.map +1 -0
  411. package/dist/retrievers/contextual_compression.d.cts.map +1 -0
  412. package/dist/retrievers/contextual_compression.d.ts.map +1 -0
  413. package/dist/retrievers/document_compressors/chain_extract.d.cts.map +1 -0
  414. package/dist/retrievers/document_compressors/chain_extract.d.ts.map +1 -0
  415. package/dist/retrievers/document_compressors/embeddings_filter.d.cts.map +1 -0
  416. package/dist/retrievers/document_compressors/embeddings_filter.d.ts.map +1 -0
  417. package/dist/retrievers/document_compressors/index.d.cts +0 -1
  418. package/dist/retrievers/document_compressors/index.d.cts.map +1 -0
  419. package/dist/retrievers/document_compressors/index.d.ts +0 -1
  420. package/dist/retrievers/document_compressors/index.d.ts.map +1 -0
  421. package/dist/retrievers/ensemble.d.cts.map +1 -0
  422. package/dist/retrievers/ensemble.d.ts.map +1 -0
  423. package/dist/retrievers/hyde.d.cts.map +1 -0
  424. package/dist/retrievers/hyde.d.ts.map +1 -0
  425. package/dist/retrievers/matryoshka_retriever.d.cts +0 -1
  426. package/dist/retrievers/matryoshka_retriever.d.cts.map +1 -0
  427. package/dist/retrievers/matryoshka_retriever.d.ts +0 -1
  428. package/dist/retrievers/matryoshka_retriever.d.ts.map +1 -0
  429. package/dist/retrievers/multi_query.d.cts +0 -2
  430. package/dist/retrievers/multi_query.d.cts.map +1 -0
  431. package/dist/retrievers/multi_query.d.ts +0 -2
  432. package/dist/retrievers/multi_query.d.ts.map +1 -0
  433. package/dist/retrievers/multi_vector.d.cts.map +1 -0
  434. package/dist/retrievers/multi_vector.d.ts.map +1 -0
  435. package/dist/retrievers/parent_document.d.cts +0 -1
  436. package/dist/retrievers/parent_document.d.cts.map +1 -0
  437. package/dist/retrievers/parent_document.d.ts +0 -1
  438. package/dist/retrievers/parent_document.d.ts.map +1 -0
  439. package/dist/retrievers/score_threshold.d.cts.map +1 -0
  440. package/dist/retrievers/score_threshold.d.ts.map +1 -0
  441. package/dist/retrievers/self_query/index.d.cts.map +1 -0
  442. package/dist/retrievers/self_query/index.d.ts.map +1 -0
  443. package/dist/retrievers/time_weighted.d.cts.map +1 -0
  444. package/dist/retrievers/time_weighted.d.ts.map +1 -0
  445. package/dist/schema/prompt_template.d.cts +2 -2
  446. package/dist/schema/prompt_template.d.cts.map +1 -0
  447. package/dist/schema/prompt_template.d.ts +2 -2
  448. package/dist/schema/prompt_template.d.ts.map +1 -0
  449. package/dist/schema/query_constructor.d.cts.map +1 -0
  450. package/dist/schema/query_constructor.d.ts.map +1 -0
  451. package/dist/smith/config.d.cts +1 -11
  452. package/dist/smith/config.d.cts.map +1 -0
  453. package/dist/smith/config.d.ts +1 -11
  454. package/dist/smith/config.d.ts.map +1 -0
  455. package/dist/smith/runner_utils.cjs +4 -6
  456. package/dist/smith/runner_utils.cjs.map +1 -1
  457. package/dist/smith/runner_utils.d.cts +2 -7
  458. package/dist/smith/runner_utils.d.cts.map +1 -0
  459. package/dist/smith/runner_utils.d.ts +2 -7
  460. package/dist/smith/runner_utils.d.ts.map +1 -0
  461. package/dist/smith/runner_utils.js +1 -3
  462. package/dist/smith/runner_utils.js.map +1 -1
  463. package/dist/sql_db.d.cts.map +1 -0
  464. package/dist/sql_db.d.ts.map +1 -0
  465. package/dist/storage/encoder_backed.d.cts +0 -1
  466. package/dist/storage/encoder_backed.d.cts.map +1 -0
  467. package/dist/storage/encoder_backed.d.ts +0 -1
  468. package/dist/storage/encoder_backed.d.ts.map +1 -0
  469. package/dist/storage/file_system.d.cts.map +1 -0
  470. package/dist/storage/file_system.d.ts.map +1 -0
  471. package/dist/stores/doc/base.d.cts.map +1 -0
  472. package/dist/stores/doc/base.d.ts.map +1 -0
  473. package/dist/stores/doc/in_memory.d.cts +0 -1
  474. package/dist/stores/doc/in_memory.d.cts.map +1 -0
  475. package/dist/stores/doc/in_memory.d.ts +0 -1
  476. package/dist/stores/doc/in_memory.d.ts.map +1 -0
  477. package/dist/stores/file/base.d.cts.map +1 -0
  478. package/dist/stores/file/base.d.ts.map +1 -0
  479. package/dist/stores/file/in_memory.d.cts.map +1 -0
  480. package/dist/stores/file/in_memory.d.ts.map +1 -0
  481. package/dist/stores/file/node.d.cts.map +1 -0
  482. package/dist/stores/file/node.d.ts.map +1 -0
  483. package/dist/text_splitter.d.cts.map +1 -0
  484. package/dist/text_splitter.d.ts.map +1 -0
  485. package/dist/tools/chain.d.cts.map +1 -0
  486. package/dist/tools/chain.d.ts.map +1 -0
  487. package/dist/tools/fs.d.cts.map +1 -0
  488. package/dist/tools/fs.d.ts.map +1 -0
  489. package/dist/tools/json.d.cts.map +1 -0
  490. package/dist/tools/json.d.ts.map +1 -0
  491. package/dist/tools/render.d.cts.map +1 -0
  492. package/dist/tools/render.d.ts.map +1 -0
  493. package/dist/tools/requests.d.cts.map +1 -0
  494. package/dist/tools/requests.d.ts.map +1 -0
  495. package/dist/tools/retriever.d.cts.map +1 -0
  496. package/dist/tools/retriever.d.ts.map +1 -0
  497. package/dist/tools/sql.d.cts.map +1 -0
  498. package/dist/tools/sql.d.ts.map +1 -0
  499. package/dist/tools/vectorstore.d.cts.map +1 -0
  500. package/dist/tools/vectorstore.d.ts.map +1 -0
  501. package/dist/tools/webbrowser.d.cts +0 -1
  502. package/dist/tools/webbrowser.d.cts.map +1 -0
  503. package/dist/tools/webbrowser.d.ts +0 -1
  504. package/dist/tools/webbrowser.d.ts.map +1 -0
  505. package/dist/types/expression-parser.d.cts +0 -3
  506. package/dist/types/expression-parser.d.cts.map +1 -0
  507. package/dist/types/expression-parser.d.ts +0 -3
  508. package/dist/types/expression-parser.d.ts.map +1 -0
  509. package/dist/types/type-utils.d.cts +0 -2
  510. package/dist/types/type-utils.d.cts.map +1 -0
  511. package/dist/types/type-utils.d.ts +0 -2
  512. package/dist/types/type-utils.d.ts.map +1 -0
  513. package/dist/util/document.d.cts.map +1 -0
  514. package/dist/util/document.d.ts.map +1 -0
  515. package/dist/util/hub.cjs +2 -2
  516. package/dist/util/hub.cjs.map +1 -1
  517. package/dist/util/hub.js +1 -1
  518. package/dist/util/hub.js.map +1 -1
  519. package/dist/util/is-network-error/index.cjs +27 -0
  520. package/dist/util/is-network-error/index.cjs.map +1 -0
  521. package/dist/util/is-network-error/index.js +26 -0
  522. package/dist/util/is-network-error/index.js.map +1 -0
  523. package/dist/util/load.d.cts +0 -1
  524. package/dist/util/load.d.cts.map +1 -0
  525. package/dist/util/load.d.ts +0 -1
  526. package/dist/util/load.d.ts.map +1 -0
  527. package/dist/util/ml-distance/similarities.d.cts.map +1 -0
  528. package/dist/util/ml-distance/similarities.d.ts.map +1 -0
  529. package/dist/util/openapi.d.cts +0 -2
  530. package/dist/util/openapi.d.cts.map +1 -0
  531. package/dist/util/openapi.d.ts +0 -2
  532. package/dist/util/openapi.d.ts.map +1 -0
  533. package/dist/util/p-retry/index.cjs +141 -0
  534. package/dist/util/p-retry/index.cjs.map +1 -0
  535. package/dist/util/p-retry/index.js +141 -0
  536. package/dist/util/p-retry/index.js.map +1 -0
  537. package/dist/util/sql_utils.d.cts.map +1 -0
  538. package/dist/util/sql_utils.d.ts.map +1 -0
  539. package/dist/util/time.d.cts.map +1 -0
  540. package/dist/util/time.d.ts.map +1 -0
  541. package/dist/vectorstores/memory.d.cts +0 -1
  542. package/dist/vectorstores/memory.d.cts.map +1 -0
  543. package/dist/vectorstores/memory.d.ts +0 -1
  544. package/dist/vectorstores/memory.d.ts.map +1 -0
  545. package/package.json +19 -19
  546. package/agents/format_scratchpad/log.cjs +0 -1
  547. package/agents/format_scratchpad/log.d.cts +0 -1
  548. package/agents/format_scratchpad/log.d.ts +0 -1
  549. package/agents/format_scratchpad/log.js +0 -1
  550. package/agents/format_scratchpad/log_to_message.cjs +0 -1
  551. package/agents/format_scratchpad/log_to_message.d.cts +0 -1
  552. package/agents/format_scratchpad/log_to_message.d.ts +0 -1
  553. package/agents/format_scratchpad/log_to_message.js +0 -1
  554. package/agents/format_scratchpad/openai_functions.cjs +0 -1
  555. package/agents/format_scratchpad/openai_functions.d.cts +0 -1
  556. package/agents/format_scratchpad/openai_functions.d.ts +0 -1
  557. package/agents/format_scratchpad/openai_functions.js +0 -1
  558. package/agents/format_scratchpad/openai_tools.cjs +0 -1
  559. package/agents/format_scratchpad/openai_tools.d.cts +0 -1
  560. package/agents/format_scratchpad/openai_tools.d.ts +0 -1
  561. package/agents/format_scratchpad/openai_tools.js +0 -1
  562. package/agents/format_scratchpad/xml.cjs +0 -1
  563. package/agents/format_scratchpad/xml.d.cts +0 -1
  564. package/agents/format_scratchpad/xml.d.ts +0 -1
  565. package/agents/format_scratchpad/xml.js +0 -1
  566. package/agents/load.cjs +0 -1
  567. package/agents/load.d.cts +0 -1
  568. package/agents/load.d.ts +0 -1
  569. package/agents/load.js +0 -1
  570. package/agents/openai/output_parser.cjs +0 -1
  571. package/agents/openai/output_parser.d.cts +0 -1
  572. package/agents/openai/output_parser.d.ts +0 -1
  573. package/agents/openai/output_parser.js +0 -1
  574. package/agents/react/output_parser.cjs +0 -1
  575. package/agents/react/output_parser.d.cts +0 -1
  576. package/agents/react/output_parser.d.ts +0 -1
  577. package/agents/react/output_parser.js +0 -1
  578. package/agents/toolkits/sql.cjs +0 -1
  579. package/agents/toolkits/sql.d.cts +0 -1
  580. package/agents/toolkits/sql.d.ts +0 -1
  581. package/agents/toolkits/sql.js +0 -1
  582. package/agents/toolkits.cjs +0 -1
  583. package/agents/toolkits.d.cts +0 -1
  584. package/agents/toolkits.d.ts +0 -1
  585. package/agents/toolkits.js +0 -1
  586. package/agents/xml/output_parser.cjs +0 -1
  587. package/agents/xml/output_parser.d.cts +0 -1
  588. package/agents/xml/output_parser.d.ts +0 -1
  589. package/agents/xml/output_parser.js +0 -1
  590. package/agents.cjs +0 -1
  591. package/agents.d.cts +0 -1
  592. package/agents.d.ts +0 -1
  593. package/agents.js +0 -1
  594. package/cache/file_system.cjs +0 -1
  595. package/cache/file_system.d.cts +0 -1
  596. package/cache/file_system.d.ts +0 -1
  597. package/cache/file_system.js +0 -1
  598. package/callbacks.cjs +0 -1
  599. package/callbacks.d.cts +0 -1
  600. package/callbacks.d.ts +0 -1
  601. package/callbacks.js +0 -1
  602. package/chains/combine_documents/reduce.cjs +0 -1
  603. package/chains/combine_documents/reduce.d.cts +0 -1
  604. package/chains/combine_documents/reduce.d.ts +0 -1
  605. package/chains/combine_documents/reduce.js +0 -1
  606. package/chains/combine_documents.cjs +0 -1
  607. package/chains/combine_documents.d.cts +0 -1
  608. package/chains/combine_documents.d.ts +0 -1
  609. package/chains/combine_documents.js +0 -1
  610. package/chains/graph_qa/cypher.cjs +0 -1
  611. package/chains/graph_qa/cypher.d.cts +0 -1
  612. package/chains/graph_qa/cypher.d.ts +0 -1
  613. package/chains/graph_qa/cypher.js +0 -1
  614. package/chains/history_aware_retriever.cjs +0 -1
  615. package/chains/history_aware_retriever.d.cts +0 -1
  616. package/chains/history_aware_retriever.d.ts +0 -1
  617. package/chains/history_aware_retriever.js +0 -1
  618. package/chains/load.cjs +0 -1
  619. package/chains/load.d.cts +0 -1
  620. package/chains/load.d.ts +0 -1
  621. package/chains/load.js +0 -1
  622. package/chains/openai_functions.cjs +0 -1
  623. package/chains/openai_functions.d.cts +0 -1
  624. package/chains/openai_functions.d.ts +0 -1
  625. package/chains/openai_functions.js +0 -1
  626. package/chains/query_constructor/ir.cjs +0 -1
  627. package/chains/query_constructor/ir.d.cts +0 -1
  628. package/chains/query_constructor/ir.d.ts +0 -1
  629. package/chains/query_constructor/ir.js +0 -1
  630. package/chains/query_constructor.cjs +0 -1
  631. package/chains/query_constructor.d.cts +0 -1
  632. package/chains/query_constructor.d.ts +0 -1
  633. package/chains/query_constructor.js +0 -1
  634. package/chains/retrieval.cjs +0 -1
  635. package/chains/retrieval.d.cts +0 -1
  636. package/chains/retrieval.d.ts +0 -1
  637. package/chains/retrieval.js +0 -1
  638. package/chains/sql_db.cjs +0 -1
  639. package/chains/sql_db.d.cts +0 -1
  640. package/chains/sql_db.d.ts +0 -1
  641. package/chains/sql_db.js +0 -1
  642. package/chains.cjs +0 -1
  643. package/chains.d.cts +0 -1
  644. package/chains.d.ts +0 -1
  645. package/chains.js +0 -1
  646. package/chat_models/universal.cjs +0 -1
  647. package/chat_models/universal.d.cts +0 -1
  648. package/chat_models/universal.d.ts +0 -1
  649. package/chat_models/universal.js +0 -1
  650. package/dist/langchain-core/dist/load/map_keys.d.cts +0 -10
  651. package/dist/langchain-core/dist/load/serializable.d.cts +0 -82
  652. package/dist/langchain-core/dist/messages/base.d.cts +0 -127
  653. package/dist/langchain-core/dist/messages/content/base.d.cts +0 -22
  654. package/dist/langchain-core/dist/messages/content/data.d.cts +0 -96
  655. package/dist/langchain-core/dist/messages/content/index.d.cts +0 -121
  656. package/dist/langchain-core/dist/messages/content/multimodal.d.cts +0 -110
  657. package/dist/langchain-core/dist/messages/content/tools.d.cts +0 -130
  658. package/dist/langchain-core/dist/messages/format.d.cts +0 -8
  659. package/dist/langchain-core/dist/messages/message.d.cts +0 -598
  660. package/dist/langchain-core/dist/messages/metadata.d.cts +0 -100
  661. package/dist/langchain-core/dist/messages/utils.d.cts +0 -75
  662. package/dist/langchain-core/dist/prompt_values.d.cts +0 -13
  663. package/dist/langchain-core/dist/tools/types.d.cts +0 -28
  664. package/dist/langchain-core/dist/utils/types/index.d.cts +0 -8
  665. package/dist/libs/langchain-core/dist/callbacks/base.d.ts +0 -1
  666. package/dist/libs/langchain-core/dist/callbacks/manager.d.ts +0 -2
  667. package/dist/libs/langchain-core/dist/language_models/base.d.ts +0 -8
  668. package/dist/libs/langchain-core/dist/load/map_keys.d.ts +0 -10
  669. package/dist/libs/langchain-core/dist/load/serializable.d.ts +0 -82
  670. package/dist/libs/langchain-core/dist/messages/base.d.ts +0 -127
  671. package/dist/libs/langchain-core/dist/messages/content/base.d.ts +0 -22
  672. package/dist/libs/langchain-core/dist/messages/content/data.d.ts +0 -96
  673. package/dist/libs/langchain-core/dist/messages/content/index.d.ts +0 -121
  674. package/dist/libs/langchain-core/dist/messages/content/multimodal.d.ts +0 -110
  675. package/dist/libs/langchain-core/dist/messages/content/tools.d.ts +0 -130
  676. package/dist/libs/langchain-core/dist/messages/format.d.ts +0 -8
  677. package/dist/libs/langchain-core/dist/messages/message.d.ts +0 -598
  678. package/dist/libs/langchain-core/dist/messages/metadata.d.ts +0 -100
  679. package/dist/libs/langchain-core/dist/messages/utils.d.ts +0 -75
  680. package/dist/libs/langchain-core/dist/prompt_values.d.ts +0 -13
  681. package/dist/libs/langchain-core/dist/runnables/base.d.ts +0 -8
  682. package/dist/libs/langchain-core/dist/runnables/config.d.ts +0 -2
  683. package/dist/libs/langchain-core/dist/runnables/graph.d.ts +0 -1
  684. package/dist/libs/langchain-core/dist/runnables/types.d.ts +0 -2
  685. package/dist/libs/langchain-core/dist/tools/types.d.ts +0 -36
  686. package/dist/libs/langchain-core/dist/tracers/base.d.ts +0 -2
  687. package/dist/libs/langchain-core/dist/tracers/event_stream.d.ts +0 -2
  688. package/dist/libs/langchain-core/dist/tracers/log_stream.d.ts +0 -3
  689. package/dist/libs/langchain-core/dist/utils/json_schema.d.ts +0 -8
  690. package/dist/libs/langchain-core/dist/utils/types/index.d.ts +0 -10
  691. package/dist/libs/langchain-core/dist/utils/types/zod.d.ts +0 -1
  692. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/Options.d.ts +0 -3
  693. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/Refs.d.ts +0 -3
  694. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/errorMessages.d.ts +0 -2
  695. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/index.d.ts +0 -13
  696. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/parseDef.d.ts +0 -3
  697. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/parseTypes.d.ts +0 -21
  698. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/parsers/any.d.ts +0 -1
  699. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/parsers/array.d.ts +0 -4
  700. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/parsers/bigint.d.ts +0 -3
  701. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/parsers/branded.d.ts +0 -3
  702. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/parsers/catch.d.ts +0 -3
  703. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/parsers/date.d.ts +0 -5
  704. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/parsers/default.d.ts +0 -3
  705. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/parsers/effects.d.ts +0 -3
  706. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/parsers/enum.d.ts +0 -1
  707. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/parsers/intersection.d.ts +0 -3
  708. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/parsers/literal.d.ts +0 -2
  709. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/parsers/map.d.ts +0 -4
  710. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/parsers/nativeEnum.d.ts +0 -1
  711. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/parsers/never.d.ts +0 -2
  712. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/parsers/null.d.ts +0 -1
  713. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/parsers/nullable.d.ts +0 -4
  714. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/parsers/number.d.ts +0 -3
  715. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/parsers/object.d.ts +0 -3
  716. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/parsers/optional.d.ts +0 -3
  717. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/parsers/pipeline.d.ts +0 -4
  718. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/parsers/promise.d.ts +0 -3
  719. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/parsers/readonly.d.ts +0 -3
  720. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/parsers/record.d.ts +0 -5
  721. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/parsers/set.d.ts +0 -4
  722. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/parsers/string.d.ts +0 -3
  723. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/parsers/tuple.d.ts +0 -3
  724. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/parsers/undefined.d.ts +0 -2
  725. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/parsers/union.d.ts +0 -3
  726. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/parsers/unknown.d.ts +0 -2
  727. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/selectParser.d.ts +0 -2
  728. package/dist/libs/langchain-core/dist/utils/zod-to-json-schema/zodToJsonSchema.d.ts +0 -3
  729. package/dist/node_modules/.pnpm/eventemitter3@4.0.7/node_modules/eventemitter3/index.cjs +0 -248
  730. package/dist/node_modules/.pnpm/eventemitter3@4.0.7/node_modules/eventemitter3/index.cjs.map +0 -1
  731. package/dist/node_modules/.pnpm/eventemitter3@4.0.7/node_modules/eventemitter3/index.js +0 -244
  732. package/dist/node_modules/.pnpm/eventemitter3@4.0.7/node_modules/eventemitter3/index.js.map +0 -1
  733. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/client.cjs +0 -3096
  734. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/client.cjs.map +0 -1
  735. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/client.js +0 -3095
  736. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/client.js.map +0 -1
  737. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/env.cjs +0 -12
  738. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/env.cjs.map +0 -1
  739. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/env.js +0 -12
  740. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/env.js.map +0 -1
  741. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/experimental/otel/constants.cjs +0 -71
  742. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/experimental/otel/constants.cjs.map +0 -1
  743. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/experimental/otel/constants.js +0 -38
  744. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/experimental/otel/constants.js.map +0 -1
  745. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/experimental/otel/translator.cjs +0 -221
  746. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/experimental/otel/translator.cjs.map +0 -1
  747. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/experimental/otel/translator.js +0 -221
  748. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/experimental/otel/translator.js.map +0 -1
  749. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/index.cjs +0 -11
  750. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/index.cjs.map +0 -1
  751. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/index.js +0 -11
  752. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/index.js.map +0 -1
  753. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/run_trees.cjs +0 -703
  754. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/run_trees.cjs.map +0 -1
  755. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/run_trees.js +0 -702
  756. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/run_trees.js.map +0 -1
  757. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/singletons/constants.cjs +0 -7
  758. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/singletons/constants.cjs.map +0 -1
  759. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/singletons/constants.js +0 -6
  760. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/singletons/constants.js.map +0 -1
  761. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/singletons/fetch.cjs +0 -29
  762. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/singletons/fetch.cjs.map +0 -1
  763. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/singletons/fetch.js +0 -28
  764. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/singletons/fetch.js.map +0 -1
  765. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/singletons/otel.cjs +0 -115
  766. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/singletons/otel.cjs.map +0 -1
  767. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/singletons/otel.js +0 -113
  768. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/singletons/otel.js.map +0 -1
  769. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/_uuid.cjs +0 -14
  770. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/_uuid.cjs.map +0 -1
  771. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/_uuid.js +0 -13
  772. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/_uuid.js.map +0 -1
  773. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/async_caller.cjs +0 -94
  774. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/async_caller.cjs.map +0 -1
  775. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/async_caller.js +0 -94
  776. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/async_caller.js.map +0 -1
  777. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/env.cjs +0 -136
  778. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/env.cjs.map +0 -1
  779. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/env.js +0 -131
  780. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/env.js.map +0 -1
  781. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/error.cjs +0 -102
  782. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/error.cjs.map +0 -1
  783. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/error.js +0 -99
  784. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/error.js.map +0 -1
  785. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/fast-safe-stringify/index.cjs +0 -140
  786. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/fast-safe-stringify/index.cjs.map +0 -1
  787. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/fast-safe-stringify/index.js +0 -140
  788. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/fast-safe-stringify/index.js.map +0 -1
  789. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/messages.cjs +0 -18
  790. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/messages.cjs.map +0 -1
  791. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/messages.js +0 -16
  792. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/messages.js.map +0 -1
  793. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/project.cjs +0 -10
  794. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/project.cjs.map +0 -1
  795. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/project.js +0 -10
  796. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/project.js.map +0 -1
  797. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/prompts.cjs +0 -30
  798. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/prompts.cjs.map +0 -1
  799. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/prompts.js +0 -30
  800. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/prompts.js.map +0 -1
  801. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/warn.cjs +0 -13
  802. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/warn.cjs.map +0 -1
  803. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/warn.js +0 -12
  804. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/utils/warn.js.map +0 -1
  805. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/index.cjs +0 -6
  806. package/dist/node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/index.js +0 -6
  807. package/dist/node_modules/.pnpm/p-finally@1.0.0/node_modules/p-finally/index.cjs +0 -27
  808. package/dist/node_modules/.pnpm/p-finally@1.0.0/node_modules/p-finally/index.cjs.map +0 -1
  809. package/dist/node_modules/.pnpm/p-finally@1.0.0/node_modules/p-finally/index.js +0 -23
  810. package/dist/node_modules/.pnpm/p-finally@1.0.0/node_modules/p-finally/index.js.map +0 -1
  811. package/dist/node_modules/.pnpm/p-queue@6.6.2/node_modules/p-queue/dist/index.cjs +0 -267
  812. package/dist/node_modules/.pnpm/p-queue@6.6.2/node_modules/p-queue/dist/index.cjs.map +0 -1
  813. package/dist/node_modules/.pnpm/p-queue@6.6.2/node_modules/p-queue/dist/index.js +0 -263
  814. package/dist/node_modules/.pnpm/p-queue@6.6.2/node_modules/p-queue/dist/index.js.map +0 -1
  815. package/dist/node_modules/.pnpm/p-queue@6.6.2/node_modules/p-queue/dist/lower-bound.cjs +0 -32
  816. package/dist/node_modules/.pnpm/p-queue@6.6.2/node_modules/p-queue/dist/lower-bound.cjs.map +0 -1
  817. package/dist/node_modules/.pnpm/p-queue@6.6.2/node_modules/p-queue/dist/lower-bound.js +0 -28
  818. package/dist/node_modules/.pnpm/p-queue@6.6.2/node_modules/p-queue/dist/lower-bound.js.map +0 -1
  819. package/dist/node_modules/.pnpm/p-queue@6.6.2/node_modules/p-queue/dist/priority-queue.cjs +0 -49
  820. package/dist/node_modules/.pnpm/p-queue@6.6.2/node_modules/p-queue/dist/priority-queue.cjs.map +0 -1
  821. package/dist/node_modules/.pnpm/p-queue@6.6.2/node_modules/p-queue/dist/priority-queue.js +0 -45
  822. package/dist/node_modules/.pnpm/p-queue@6.6.2/node_modules/p-queue/dist/priority-queue.js.map +0 -1
  823. package/dist/node_modules/.pnpm/p-timeout@3.2.0/node_modules/p-timeout/index.cjs +0 -52
  824. package/dist/node_modules/.pnpm/p-timeout@3.2.0/node_modules/p-timeout/index.cjs.map +0 -1
  825. package/dist/node_modules/.pnpm/p-timeout@3.2.0/node_modules/p-timeout/index.js +0 -48
  826. package/dist/node_modules/.pnpm/p-timeout@3.2.0/node_modules/p-timeout/index.js.map +0 -1
  827. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/classes/comparator.cjs +0 -90
  828. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/classes/comparator.cjs.map +0 -1
  829. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/classes/comparator.js +0 -86
  830. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/classes/comparator.js.map +0 -1
  831. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/classes/range.cjs +0 -294
  832. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/classes/range.cjs.map +0 -1
  833. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/classes/range.js +0 -290
  834. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/classes/range.js.map +0 -1
  835. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/classes/semver.cjs +0 -191
  836. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/classes/semver.cjs.map +0 -1
  837. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/classes/semver.js +0 -187
  838. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/classes/semver.js.map +0 -1
  839. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/clean.cjs +0 -24
  840. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/clean.cjs.map +0 -1
  841. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/clean.js +0 -20
  842. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/clean.js.map +0 -1
  843. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/cmp.cjs +0 -51
  844. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/cmp.cjs.map +0 -1
  845. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/cmp.js +0 -47
  846. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/cmp.js.map +0 -1
  847. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/coerce.cjs +0 -48
  848. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/coerce.cjs.map +0 -1
  849. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/coerce.js +0 -44
  850. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/coerce.js.map +0 -1
  851. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/compare-build.cjs +0 -25
  852. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/compare-build.cjs.map +0 -1
  853. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/compare-build.js +0 -21
  854. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/compare-build.js.map +0 -1
  855. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/compare-loose.cjs +0 -21
  856. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/compare-loose.cjs.map +0 -1
  857. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/compare-loose.js +0 -17
  858. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/compare-loose.js.map +0 -1
  859. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/compare.cjs +0 -21
  860. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/compare.cjs.map +0 -1
  861. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/compare.js +0 -17
  862. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/compare.js.map +0 -1
  863. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/diff.cjs +0 -43
  864. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/diff.cjs.map +0 -1
  865. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/diff.js +0 -39
  866. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/diff.js.map +0 -1
  867. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/eq.cjs +0 -21
  868. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/eq.cjs.map +0 -1
  869. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/eq.js +0 -17
  870. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/eq.js.map +0 -1
  871. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/gt.cjs +0 -21
  872. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/gt.cjs.map +0 -1
  873. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/gt.js +0 -17
  874. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/gt.js.map +0 -1
  875. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/gte.cjs +0 -21
  876. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/gte.cjs.map +0 -1
  877. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/gte.js +0 -17
  878. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/gte.js.map +0 -1
  879. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/inc.cjs +0 -32
  880. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/inc.cjs.map +0 -1
  881. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/inc.js +0 -28
  882. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/inc.js.map +0 -1
  883. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/lt.cjs +0 -21
  884. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/lt.cjs.map +0 -1
  885. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/lt.js +0 -17
  886. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/lt.js.map +0 -1
  887. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/lte.cjs +0 -21
  888. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/lte.cjs.map +0 -1
  889. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/lte.js +0 -17
  890. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/lte.js.map +0 -1
  891. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/major.cjs +0 -21
  892. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/major.cjs.map +0 -1
  893. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/major.js +0 -17
  894. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/major.js.map +0 -1
  895. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/minor.cjs +0 -21
  896. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/minor.cjs.map +0 -1
  897. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/minor.js +0 -17
  898. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/minor.js.map +0 -1
  899. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/neq.cjs +0 -21
  900. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/neq.cjs.map +0 -1
  901. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/neq.js +0 -17
  902. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/neq.js.map +0 -1
  903. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/parse.cjs +0 -29
  904. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/parse.cjs.map +0 -1
  905. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/parse.js +0 -25
  906. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/parse.js.map +0 -1
  907. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/patch.cjs +0 -21
  908. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/patch.cjs.map +0 -1
  909. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/patch.js +0 -17
  910. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/patch.js.map +0 -1
  911. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/prerelease.cjs +0 -24
  912. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/prerelease.cjs.map +0 -1
  913. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/prerelease.js +0 -20
  914. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/prerelease.js.map +0 -1
  915. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/rcompare.cjs +0 -21
  916. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/rcompare.cjs.map +0 -1
  917. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/rcompare.js +0 -17
  918. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/rcompare.js.map +0 -1
  919. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/rsort.cjs +0 -21
  920. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/rsort.cjs.map +0 -1
  921. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/rsort.js +0 -17
  922. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/rsort.js.map +0 -1
  923. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/satisfies.cjs +0 -28
  924. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/satisfies.cjs.map +0 -1
  925. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/satisfies.js +0 -24
  926. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/satisfies.js.map +0 -1
  927. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/sort.cjs +0 -21
  928. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/sort.cjs.map +0 -1
  929. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/sort.js +0 -17
  930. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/sort.js.map +0 -1
  931. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/valid.cjs +0 -24
  932. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/valid.cjs.map +0 -1
  933. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/valid.js +0 -20
  934. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/functions/valid.js.map +0 -1
  935. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/index.cjs +0 -146
  936. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/index.cjs.map +0 -1
  937. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/index.js +0 -142
  938. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/index.js.map +0 -1
  939. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/internal/constants.cjs +0 -41
  940. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/internal/constants.cjs.map +0 -1
  941. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/internal/constants.js +0 -37
  942. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/internal/constants.js.map +0 -1
  943. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/internal/debug.cjs +0 -19
  944. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/internal/debug.cjs.map +0 -1
  945. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/internal/debug.js +0 -15
  946. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/internal/debug.js.map +0 -1
  947. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/internal/identifiers.cjs +0 -32
  948. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/internal/identifiers.cjs.map +0 -1
  949. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/internal/identifiers.js +0 -28
  950. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/internal/identifiers.js.map +0 -1
  951. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/internal/lrucache.cjs +0 -47
  952. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/internal/lrucache.cjs.map +0 -1
  953. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/internal/lrucache.js +0 -43
  954. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/internal/lrucache.js.map +0 -1
  955. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/internal/parse-options.cjs +0 -25
  956. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/internal/parse-options.cjs.map +0 -1
  957. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/internal/parse-options.js +0 -21
  958. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/internal/parse-options.js.map +0 -1
  959. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/internal/re.cjs +0 -94
  960. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/internal/re.cjs.map +0 -1
  961. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/internal/re.js +0 -90
  962. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/internal/re.js.map +0 -1
  963. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/gtr.cjs +0 -21
  964. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/gtr.cjs.map +0 -1
  965. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/gtr.js +0 -17
  966. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/gtr.js.map +0 -1
  967. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/intersects.cjs +0 -25
  968. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/intersects.cjs.map +0 -1
  969. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/intersects.js +0 -21
  970. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/intersects.js.map +0 -1
  971. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/ltr.cjs +0 -21
  972. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/ltr.cjs.map +0 -1
  973. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/ltr.js +0 -17
  974. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/ltr.js.map +0 -1
  975. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/max-satisfying.cjs +0 -41
  976. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/max-satisfying.cjs.map +0 -1
  977. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/max-satisfying.js +0 -37
  978. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/max-satisfying.js.map +0 -1
  979. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/min-satisfying.cjs +0 -41
  980. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/min-satisfying.cjs.map +0 -1
  981. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/min-satisfying.js +0 -37
  982. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/min-satisfying.js.map +0 -1
  983. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/min-version.cjs +0 -55
  984. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/min-version.cjs.map +0 -1
  985. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/min-version.js +0 -51
  986. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/min-version.js.map +0 -1
  987. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/outside.cjs +0 -74
  988. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/outside.cjs.map +0 -1
  989. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/outside.js +0 -70
  990. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/outside.js.map +0 -1
  991. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/simplify.cjs +0 -48
  992. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/simplify.cjs.map +0 -1
  993. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/simplify.js +0 -44
  994. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/simplify.js.map +0 -1
  995. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/subset.cjs +0 -112
  996. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/subset.cjs.map +0 -1
  997. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/subset.js +0 -108
  998. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/subset.js.map +0 -1
  999. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/to-comparators.cjs +0 -21
  1000. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/to-comparators.cjs.map +0 -1
  1001. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/to-comparators.js +0 -17
  1002. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/to-comparators.js.map +0 -1
  1003. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/valid.cjs +0 -27
  1004. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/valid.cjs.map +0 -1
  1005. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/valid.js +0 -23
  1006. package/dist/node_modules/.pnpm/semver@7.7.2/node_modules/semver/ranges/valid.js.map +0 -1
  1007. package/document.cjs +0 -1
  1008. package/document.d.cts +0 -1
  1009. package/document.d.ts +0 -1
  1010. package/document.js +0 -1
  1011. package/document_loaders/base.cjs +0 -1
  1012. package/document_loaders/base.d.cts +0 -1
  1013. package/document_loaders/base.d.ts +0 -1
  1014. package/document_loaders/base.js +0 -1
  1015. package/document_loaders/fs/buffer.cjs +0 -1
  1016. package/document_loaders/fs/buffer.d.cts +0 -1
  1017. package/document_loaders/fs/buffer.d.ts +0 -1
  1018. package/document_loaders/fs/buffer.js +0 -1
  1019. package/document_loaders/fs/directory.cjs +0 -1
  1020. package/document_loaders/fs/directory.d.cts +0 -1
  1021. package/document_loaders/fs/directory.d.ts +0 -1
  1022. package/document_loaders/fs/directory.js +0 -1
  1023. package/document_loaders/fs/json.cjs +0 -1
  1024. package/document_loaders/fs/json.d.cts +0 -1
  1025. package/document_loaders/fs/json.d.ts +0 -1
  1026. package/document_loaders/fs/json.js +0 -1
  1027. package/document_loaders/fs/multi_file.cjs +0 -1
  1028. package/document_loaders/fs/multi_file.d.cts +0 -1
  1029. package/document_loaders/fs/multi_file.d.ts +0 -1
  1030. package/document_loaders/fs/multi_file.js +0 -1
  1031. package/document_loaders/fs/text.cjs +0 -1
  1032. package/document_loaders/fs/text.d.cts +0 -1
  1033. package/document_loaders/fs/text.d.ts +0 -1
  1034. package/document_loaders/fs/text.js +0 -1
  1035. package/document_transformers/openai_functions.cjs +0 -1
  1036. package/document_transformers/openai_functions.d.cts +0 -1
  1037. package/document_transformers/openai_functions.d.ts +0 -1
  1038. package/document_transformers/openai_functions.js +0 -1
  1039. package/embeddings/cache_backed.cjs +0 -1
  1040. package/embeddings/cache_backed.d.cts +0 -1
  1041. package/embeddings/cache_backed.d.ts +0 -1
  1042. package/embeddings/cache_backed.js +0 -1
  1043. package/embeddings/fake.cjs +0 -1
  1044. package/embeddings/fake.d.cts +0 -1
  1045. package/embeddings/fake.d.ts +0 -1
  1046. package/embeddings/fake.js +0 -1
  1047. package/evaluation.cjs +0 -1
  1048. package/evaluation.d.cts +0 -1
  1049. package/evaluation.d.ts +0 -1
  1050. package/evaluation.js +0 -1
  1051. package/experimental/autogpt.cjs +0 -1
  1052. package/experimental/autogpt.d.cts +0 -1
  1053. package/experimental/autogpt.d.ts +0 -1
  1054. package/experimental/autogpt.js +0 -1
  1055. package/experimental/babyagi.cjs +0 -1
  1056. package/experimental/babyagi.d.cts +0 -1
  1057. package/experimental/babyagi.d.ts +0 -1
  1058. package/experimental/babyagi.js +0 -1
  1059. package/experimental/chains/violation_of_expectations.cjs +0 -1
  1060. package/experimental/chains/violation_of_expectations.d.cts +0 -1
  1061. package/experimental/chains/violation_of_expectations.d.ts +0 -1
  1062. package/experimental/chains/violation_of_expectations.js +0 -1
  1063. package/experimental/generative_agents.cjs +0 -1
  1064. package/experimental/generative_agents.d.cts +0 -1
  1065. package/experimental/generative_agents.d.ts +0 -1
  1066. package/experimental/generative_agents.js +0 -1
  1067. package/experimental/masking.cjs +0 -1
  1068. package/experimental/masking.d.cts +0 -1
  1069. package/experimental/masking.d.ts +0 -1
  1070. package/experimental/masking.js +0 -1
  1071. package/experimental/openai_assistant.cjs +0 -1
  1072. package/experimental/openai_assistant.d.cts +0 -1
  1073. package/experimental/openai_assistant.d.ts +0 -1
  1074. package/experimental/openai_assistant.js +0 -1
  1075. package/experimental/openai_files.cjs +0 -1
  1076. package/experimental/openai_files.d.cts +0 -1
  1077. package/experimental/openai_files.d.ts +0 -1
  1078. package/experimental/openai_files.js +0 -1
  1079. package/experimental/plan_and_execute.cjs +0 -1
  1080. package/experimental/plan_and_execute.d.cts +0 -1
  1081. package/experimental/plan_and_execute.d.ts +0 -1
  1082. package/experimental/plan_and_execute.js +0 -1
  1083. package/experimental/prompts/custom_format.cjs +0 -1
  1084. package/experimental/prompts/custom_format.d.cts +0 -1
  1085. package/experimental/prompts/custom_format.d.ts +0 -1
  1086. package/experimental/prompts/custom_format.js +0 -1
  1087. package/experimental/prompts/handlebars.cjs +0 -1
  1088. package/experimental/prompts/handlebars.d.cts +0 -1
  1089. package/experimental/prompts/handlebars.d.ts +0 -1
  1090. package/experimental/prompts/handlebars.js +0 -1
  1091. package/hub/node.cjs +0 -1
  1092. package/hub/node.d.cts +0 -1
  1093. package/hub/node.d.ts +0 -1
  1094. package/hub/node.js +0 -1
  1095. package/hub.cjs +0 -1
  1096. package/hub.d.cts +0 -1
  1097. package/hub.d.ts +0 -1
  1098. package/hub.js +0 -1
  1099. package/indexes.cjs +0 -1
  1100. package/indexes.d.cts +0 -1
  1101. package/indexes.d.ts +0 -1
  1102. package/indexes.js +0 -1
  1103. package/load/serializable.cjs +0 -1
  1104. package/load/serializable.d.cts +0 -1
  1105. package/load/serializable.d.ts +0 -1
  1106. package/load/serializable.js +0 -1
  1107. package/load.cjs +0 -1
  1108. package/load.d.cts +0 -1
  1109. package/load.d.ts +0 -1
  1110. package/load.js +0 -1
  1111. package/memory/chat_memory.cjs +0 -1
  1112. package/memory/chat_memory.d.cts +0 -1
  1113. package/memory/chat_memory.d.ts +0 -1
  1114. package/memory/chat_memory.js +0 -1
  1115. package/memory.cjs +0 -1
  1116. package/memory.d.cts +0 -1
  1117. package/memory.d.ts +0 -1
  1118. package/memory.js +0 -1
  1119. package/output_parsers/expression.cjs +0 -1
  1120. package/output_parsers/expression.d.cts +0 -1
  1121. package/output_parsers/expression.d.ts +0 -1
  1122. package/output_parsers/expression.js +0 -1
  1123. package/output_parsers.cjs +0 -1
  1124. package/output_parsers.d.cts +0 -1
  1125. package/output_parsers.d.ts +0 -1
  1126. package/output_parsers.js +0 -1
  1127. package/retrievers/contextual_compression.cjs +0 -1
  1128. package/retrievers/contextual_compression.d.cts +0 -1
  1129. package/retrievers/contextual_compression.d.ts +0 -1
  1130. package/retrievers/contextual_compression.js +0 -1
  1131. package/retrievers/document_compressors/chain_extract.cjs +0 -1
  1132. package/retrievers/document_compressors/chain_extract.d.cts +0 -1
  1133. package/retrievers/document_compressors/chain_extract.d.ts +0 -1
  1134. package/retrievers/document_compressors/chain_extract.js +0 -1
  1135. package/retrievers/document_compressors/embeddings_filter.cjs +0 -1
  1136. package/retrievers/document_compressors/embeddings_filter.d.cts +0 -1
  1137. package/retrievers/document_compressors/embeddings_filter.d.ts +0 -1
  1138. package/retrievers/document_compressors/embeddings_filter.js +0 -1
  1139. package/retrievers/document_compressors.cjs +0 -1
  1140. package/retrievers/document_compressors.d.cts +0 -1
  1141. package/retrievers/document_compressors.d.ts +0 -1
  1142. package/retrievers/document_compressors.js +0 -1
  1143. package/retrievers/ensemble.cjs +0 -1
  1144. package/retrievers/ensemble.d.cts +0 -1
  1145. package/retrievers/ensemble.d.ts +0 -1
  1146. package/retrievers/ensemble.js +0 -1
  1147. package/retrievers/hyde.cjs +0 -1
  1148. package/retrievers/hyde.d.cts +0 -1
  1149. package/retrievers/hyde.d.ts +0 -1
  1150. package/retrievers/hyde.js +0 -1
  1151. package/retrievers/matryoshka_retriever.cjs +0 -1
  1152. package/retrievers/matryoshka_retriever.d.cts +0 -1
  1153. package/retrievers/matryoshka_retriever.d.ts +0 -1
  1154. package/retrievers/matryoshka_retriever.js +0 -1
  1155. package/retrievers/multi_query.cjs +0 -1
  1156. package/retrievers/multi_query.d.cts +0 -1
  1157. package/retrievers/multi_query.d.ts +0 -1
  1158. package/retrievers/multi_query.js +0 -1
  1159. package/retrievers/multi_vector.cjs +0 -1
  1160. package/retrievers/multi_vector.d.cts +0 -1
  1161. package/retrievers/multi_vector.d.ts +0 -1
  1162. package/retrievers/multi_vector.js +0 -1
  1163. package/retrievers/parent_document.cjs +0 -1
  1164. package/retrievers/parent_document.d.cts +0 -1
  1165. package/retrievers/parent_document.d.ts +0 -1
  1166. package/retrievers/parent_document.js +0 -1
  1167. package/retrievers/score_threshold.cjs +0 -1
  1168. package/retrievers/score_threshold.d.cts +0 -1
  1169. package/retrievers/score_threshold.d.ts +0 -1
  1170. package/retrievers/score_threshold.js +0 -1
  1171. package/retrievers/self_query/functional.cjs +0 -1
  1172. package/retrievers/self_query/functional.d.cts +0 -1
  1173. package/retrievers/self_query/functional.d.ts +0 -1
  1174. package/retrievers/self_query/functional.js +0 -1
  1175. package/retrievers/self_query.cjs +0 -1
  1176. package/retrievers/self_query.d.cts +0 -1
  1177. package/retrievers/self_query.d.ts +0 -1
  1178. package/retrievers/self_query.js +0 -1
  1179. package/retrievers/time_weighted.cjs +0 -1
  1180. package/retrievers/time_weighted.d.cts +0 -1
  1181. package/retrievers/time_weighted.d.ts +0 -1
  1182. package/retrievers/time_weighted.js +0 -1
  1183. package/schema/prompt_template.cjs +0 -1
  1184. package/schema/prompt_template.d.cts +0 -1
  1185. package/schema/prompt_template.d.ts +0 -1
  1186. package/schema/prompt_template.js +0 -1
  1187. package/schema/query_constructor.cjs +0 -1
  1188. package/schema/query_constructor.d.cts +0 -1
  1189. package/schema/query_constructor.d.ts +0 -1
  1190. package/schema/query_constructor.js +0 -1
  1191. package/smith.cjs +0 -1
  1192. package/smith.d.cts +0 -1
  1193. package/smith.d.ts +0 -1
  1194. package/smith.js +0 -1
  1195. package/sql_db.cjs +0 -1
  1196. package/sql_db.d.cts +0 -1
  1197. package/sql_db.d.ts +0 -1
  1198. package/sql_db.js +0 -1
  1199. package/storage/encoder_backed.cjs +0 -1
  1200. package/storage/encoder_backed.d.cts +0 -1
  1201. package/storage/encoder_backed.d.ts +0 -1
  1202. package/storage/encoder_backed.js +0 -1
  1203. package/storage/file_system.cjs +0 -1
  1204. package/storage/file_system.d.cts +0 -1
  1205. package/storage/file_system.d.ts +0 -1
  1206. package/storage/file_system.js +0 -1
  1207. package/storage/in_memory.cjs +0 -1
  1208. package/storage/in_memory.d.cts +0 -1
  1209. package/storage/in_memory.d.ts +0 -1
  1210. package/storage/in_memory.js +0 -1
  1211. package/stores/doc/base.cjs +0 -1
  1212. package/stores/doc/base.d.cts +0 -1
  1213. package/stores/doc/base.d.ts +0 -1
  1214. package/stores/doc/base.js +0 -1
  1215. package/stores/doc/in_memory.cjs +0 -1
  1216. package/stores/doc/in_memory.d.cts +0 -1
  1217. package/stores/doc/in_memory.d.ts +0 -1
  1218. package/stores/doc/in_memory.js +0 -1
  1219. package/stores/file/in_memory.cjs +0 -1
  1220. package/stores/file/in_memory.d.cts +0 -1
  1221. package/stores/file/in_memory.d.ts +0 -1
  1222. package/stores/file/in_memory.js +0 -1
  1223. package/stores/file/node.cjs +0 -1
  1224. package/stores/file/node.d.cts +0 -1
  1225. package/stores/file/node.d.ts +0 -1
  1226. package/stores/file/node.js +0 -1
  1227. package/stores/message/in_memory.cjs +0 -1
  1228. package/stores/message/in_memory.d.cts +0 -1
  1229. package/stores/message/in_memory.d.ts +0 -1
  1230. package/stores/message/in_memory.js +0 -1
  1231. package/text_splitter.cjs +0 -1
  1232. package/text_splitter.d.cts +0 -1
  1233. package/text_splitter.d.ts +0 -1
  1234. package/text_splitter.js +0 -1
  1235. package/tools/chain.cjs +0 -1
  1236. package/tools/chain.d.cts +0 -1
  1237. package/tools/chain.d.ts +0 -1
  1238. package/tools/chain.js +0 -1
  1239. package/tools/render.cjs +0 -1
  1240. package/tools/render.d.cts +0 -1
  1241. package/tools/render.d.ts +0 -1
  1242. package/tools/render.js +0 -1
  1243. package/tools/retriever.cjs +0 -1
  1244. package/tools/retriever.d.cts +0 -1
  1245. package/tools/retriever.d.ts +0 -1
  1246. package/tools/retriever.js +0 -1
  1247. package/tools/sql.cjs +0 -1
  1248. package/tools/sql.d.cts +0 -1
  1249. package/tools/sql.d.ts +0 -1
  1250. package/tools/sql.js +0 -1
  1251. package/tools/webbrowser.cjs +0 -1
  1252. package/tools/webbrowser.d.cts +0 -1
  1253. package/tools/webbrowser.d.ts +0 -1
  1254. package/tools/webbrowser.js +0 -1
  1255. package/tools.cjs +0 -1
  1256. package/tools.d.cts +0 -1
  1257. package/tools.d.ts +0 -1
  1258. package/tools.js +0 -1
  1259. package/util/document.cjs +0 -1
  1260. package/util/document.d.cts +0 -1
  1261. package/util/document.d.ts +0 -1
  1262. package/util/document.js +0 -1
  1263. package/util/math.cjs +0 -1
  1264. package/util/math.d.cts +0 -1
  1265. package/util/math.d.ts +0 -1
  1266. package/util/math.js +0 -1
  1267. package/util/time.cjs +0 -1
  1268. package/util/time.d.cts +0 -1
  1269. package/util/time.d.ts +0 -1
  1270. package/util/time.js +0 -1
  1271. package/vectorstores/memory.cjs +0 -1
  1272. package/vectorstores/memory.d.cts +0 -1
  1273. package/vectorstores/memory.d.ts +0 -1
  1274. package/vectorstores/memory.js +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.cts","names":["BaseLanguageModel","RunnableConfig","Example","Run","EvaluationResult","RunEvaluator","Criteria","CriteriaType","EmbeddingDistanceEvalChainInput","LoadEvaluatorOptions","EvaluatorType","EvaluatorInputs","EvaluatorInputFormatter","rawInput","rawPrediction","rawReferenceOutput","run","DynamicRunEvaluatorParams","Input","Prediction","Reference","Record","RunEvaluatorLike","Promise","isOffTheShelfEvaluator","T","U","EvalConfig","isCustomEvaluator","RunEvalType","RunEvalConfig","CriteriaEvalChainConfig","LabeledCriteria","Partial","Pick","EmbeddingDistance"],"sources":["../../src/smith/config.d.ts"],"sourcesContent":["import { BaseLanguageModel } from \"@langchain/core/language_models/base\";\nimport { RunnableConfig } from \"@langchain/core/runnables\";\nimport { Example, Run } from \"langsmith\";\nimport { EvaluationResult, RunEvaluator } from \"langsmith/evaluation\";\nimport { Criteria as CriteriaType, type EmbeddingDistanceEvalChainInput } from \"../evaluation/index.js\";\nimport { LoadEvaluatorOptions } from \"../evaluation/loader.js\";\nimport { EvaluatorType } from \"../evaluation/types.js\";\nexport type EvaluatorInputs = {\n input?: string | unknown;\n prediction: string | unknown;\n reference?: string | unknown;\n};\nexport type EvaluatorInputFormatter = ({ rawInput, rawPrediction, rawReferenceOutput, run }: {\n rawInput: any;\n rawPrediction: any;\n rawReferenceOutput?: any;\n run: Run;\n}) => EvaluatorInputs;\nexport type DynamicRunEvaluatorParams<Input extends Record<string, any> = Record<string, unknown>, Prediction extends Record<string, any> = Record<string, unknown>, Reference extends Record<string, any> = Record<string, unknown>> = {\n input: Input;\n prediction?: Prediction;\n reference?: Reference;\n run: Run;\n example?: Example;\n};\n/**\n * Type of a function that can be coerced into a RunEvaluator function.\n * While we have the class-based RunEvaluator, it's often more convenient to directly\n * pass a function to the runner. This type allows us to do that.\n */\nexport type RunEvaluatorLike = ((props: DynamicRunEvaluatorParams, options: RunnableConfig) => Promise<EvaluationResult>) | ((props: DynamicRunEvaluatorParams, options: RunnableConfig) => EvaluationResult);\nexport declare function isOffTheShelfEvaluator<T extends keyof EvaluatorType, U extends RunEvaluator | RunEvaluatorLike = RunEvaluator | RunEvaluatorLike>(evaluator: T | EvalConfig | U): evaluator is T | EvalConfig;\nexport declare function isCustomEvaluator<T extends keyof EvaluatorType, U extends RunEvaluator | RunEvaluatorLike = RunEvaluator | RunEvaluatorLike>(evaluator: T | EvalConfig | U): evaluator is U;\nexport type RunEvalType<T extends keyof EvaluatorType = \"criteria\" | \"labeled_criteria\" | \"embedding_distance\", U extends RunEvaluator | RunEvaluatorLike = RunEvaluator | RunEvaluatorLike> = T | EvalConfig | U;\n/**\n * Configuration class for running evaluations on datasets.\n *\n * @remarks\n * RunEvalConfig in LangSmith is a configuration class for running evaluations on datasets. Its primary purpose is to define the parameters and evaluators that will be applied during the evaluation of a dataset. This configuration can include various evaluators, custom evaluators, and different keys for inputs, predictions, and references.\n *\n * @typeparam T - The type of evaluators.\n * @typeparam U - The type of custom evaluators.\n */\nexport type RunEvalConfig<T extends keyof EvaluatorType = \"criteria\" | \"labeled_criteria\" | \"embedding_distance\", U extends RunEvaluator | RunEvaluatorLike = RunEvaluator | RunEvaluatorLike> = {\n /**\n * Evaluators to apply to a dataset run.\n * You can optionally specify these by name, or by\n * configuring them with an EvalConfig object.\n */\n evaluators?: RunEvalType<T, U>[];\n /**\n * Convert the evaluation data into formats that can be used by the evaluator.\n * This should most commonly be a string.\n * Parameters are the raw input from the run, the raw output, raw reference output, and the raw run.\n * @example\n * ```ts\n * // Chain input: { input: \"some string\" }\n * // Chain output: { output: \"some output\" }\n * // Reference example output format: { output: \"some reference output\" }\n * const formatEvaluatorInputs = ({\n * rawInput,\n * rawPrediction,\n * rawReferenceOutput,\n * }) => {\n * return {\n * input: rawInput.input,\n * prediction: rawPrediction.output,\n * reference: rawReferenceOutput.output,\n * };\n * };\n * ```\n * @returns The prepared data.\n */\n formatEvaluatorInputs?: EvaluatorInputFormatter;\n /**\n * Custom evaluators to apply to a dataset run.\n * Each evaluator is provided with a run trace containing the model\n * outputs, as well as an \"example\" object representing a record\n * in the dataset.\n *\n * @deprecated Use `evaluators` instead.\n */\n customEvaluators?: U[];\n};\nexport interface EvalConfig extends LoadEvaluatorOptions {\n /**\n * The name of the evaluator to use.\n * Example: labeled_criteria, criteria, etc.\n */\n evaluatorType: keyof EvaluatorType;\n /**\n * The feedback (or metric) name to use for the logged\n * evaluation results. If none provided, we default to\n * the evaluationName.\n */\n feedbackKey?: string;\n /**\n * Convert the evaluation data into formats that can be used by the evaluator.\n * This should most commonly be a string.\n * Parameters are the raw input from the run, the raw output, raw reference output, and the raw run.\n * @example\n * ```ts\n * // Chain input: { input: \"some string\" }\n * // Chain output: { output: \"some output\" }\n * // Reference example output format: { output: \"some reference output\" }\n * const formatEvaluatorInputs = ({\n * rawInput,\n * rawPrediction,\n * rawReferenceOutput,\n * }) => {\n * return {\n * input: rawInput.input,\n * prediction: rawPrediction.output,\n * reference: rawReferenceOutput.output,\n * };\n * };\n * ```\n * @returns The prepared data.\n */\n formatEvaluatorInputs: EvaluatorInputFormatter;\n}\n/**\n * Configuration to load a \"CriteriaEvalChain\" evaluator,\n * which prompts an LLM to determine whether the model's\n * prediction complies with the provided criteria.\n * @param criteria - The criteria to use for the evaluator.\n * @param llm - The language model to use for the evaluator.\n * @returns The configuration for the evaluator.\n * @example\n * ```ts\n * const evalConfig = {\n * evaluators: [Criteria(\"helpfulness\")],\n * };\n * @example\n * ```ts\n * const evalConfig = {\n * evaluators: [\n * Criteria({\n * \"isCompliant\": \"Does the submission comply with the requirements of XYZ\"\n * })\n * ],\n * };\n * @example\n * ```ts\n * const evalConfig = {\n * evaluators: [{\n * evaluatorType: \"criteria\",\n * criteria: \"helpfulness\"\n * formatEvaluatorInputs: ...\n * }]\n * };\n * ```\n * @example\n * ```ts\n * const evalConfig = {\n * evaluators: [{\n * evaluatorType: \"criteria\",\n * criteria: { \"isCompliant\": \"Does the submission comply with the requirements of XYZ\" },\n * formatEvaluatorInputs: ...\n * }]\n * };\n */\nexport type Criteria = EvalConfig & {\n evaluatorType: \"criteria\";\n /**\n * The \"criteria\" to insert into the prompt template\n * used for evaluation. See the prompt at\n * https://smith.langchain.com/hub/langchain-ai/criteria-evaluator\n * for more information.\n */\n criteria?: CriteriaType | Record<string, string>;\n /**\n * The language model to use as the evaluator, defaults to GPT-4\n */\n llm?: BaseLanguageModel;\n};\nexport type CriteriaEvalChainConfig = Criteria;\nexport declare function Criteria(criteria: CriteriaType | Record<string, string>, config?: Pick<Partial<LabeledCriteria>, \"formatEvaluatorInputs\" | \"llm\" | \"feedbackKey\">): EvalConfig;\n/**\n * Configuration to load a \"LabeledCriteriaEvalChain\" evaluator,\n * which prompts an LLM to determine whether the model's\n * prediction complies with the provided criteria and also\n * provides a \"ground truth\" label for the evaluator to incorporate\n * in its evaluation.\n * @param criteria - The criteria to use for the evaluator.\n * @param llm - The language model to use for the evaluator.\n * @returns The configuration for the evaluator.\n * @example\n * ```ts\n * const evalConfig = {\n * evaluators: [LabeledCriteria(\"correctness\")],\n * };\n * @example\n * ```ts\n * const evalConfig = {\n * evaluators: [\n * LabeledCriteria({\n * \"mentionsAllFacts\": \"Does the include all facts provided in the reference?\"\n * })\n * ],\n * };\n * @example\n * ```ts\n * const evalConfig = {\n * evaluators: [{\n * evaluatorType: \"labeled_criteria\",\n * criteria: \"correctness\",\n * formatEvaluatorInputs: ...\n * }],\n * };\n * ```\n * @example\n * ```ts\n * const evalConfig = {\n * evaluators: [{\n * evaluatorType: \"labeled_criteria\",\n * criteria: { \"mentionsAllFacts\": \"Does the include all facts provided in the reference?\" },\n * formatEvaluatorInputs: ...\n * }],\n * };\n */\nexport type LabeledCriteria = EvalConfig & {\n evaluatorType: \"labeled_criteria\";\n /**\n * The \"criteria\" to insert into the prompt template\n * used for evaluation. See the prompt at\n * https://smith.langchain.com/hub/langchain-ai/labeled-criteria\n * for more information.\n */\n criteria?: CriteriaType | Record<string, string>;\n /**\n * The language model to use as the evaluator, defaults to GPT-4\n */\n llm?: BaseLanguageModel;\n};\nexport declare function LabeledCriteria(criteria: CriteriaType | Record<string, string>, config?: Pick<Partial<LabeledCriteria>, \"formatEvaluatorInputs\" | \"llm\" | \"feedbackKey\">): LabeledCriteria;\n/**\n * Configuration to load a \"EmbeddingDistanceEvalChain\" evaluator,\n * which embeds distances to score semantic difference between\n * a prediction and reference.\n */\nexport type EmbeddingDistance = EvalConfig & EmbeddingDistanceEvalChainInput & {\n evaluatorType: \"embedding_distance\";\n};\nexport declare function EmbeddingDistance(distanceMetric: EmbeddingDistanceEvalChainInput[\"distanceMetric\"], config?: Pick<Partial<LabeledCriteria>, \"formatEvaluatorInputs\" | \"embedding\" | \"feedbackKey\">): EmbeddingDistance;\n//# sourceMappingURL=config.d.ts.map"],"mappings":"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"}
@@ -20,21 +20,12 @@ type EvaluatorInputFormatter = ({
20
20
  rawReferenceOutput,
21
21
  run
22
22
  }: {
23
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
24
23
  rawInput: any;
25
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
26
24
  rawPrediction: any;
27
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
28
25
  rawReferenceOutput?: any;
29
26
  run: Run;
30
27
  }) => EvaluatorInputs;
31
- type DynamicRunEvaluatorParams<
32
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
33
- Input extends Record<string, any> = Record<string, unknown>,
34
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
35
- Prediction extends Record<string, any> = Record<string, unknown>,
36
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
37
- Reference extends Record<string, any> = Record<string, unknown>> = {
28
+ type DynamicRunEvaluatorParams<Input extends Record<string, any> = Record<string, unknown>, Prediction extends Record<string, any> = Record<string, unknown>, Reference extends Record<string, any> = Record<string, unknown>> = {
38
29
  input: Input;
39
30
  prediction?: Prediction;
40
31
  reference?: Reference;
@@ -192,7 +183,6 @@ type Criteria$1 = EvalConfig & {
192
183
  */
193
184
  llm?: BaseLanguageModel;
194
185
  };
195
- // for compatibility reasons
196
186
  type CriteriaEvalChainConfig = Criteria$1;
197
187
  declare function Criteria$1(criteria: Criteria | Record<string, string>, config?: Pick<Partial<LabeledCriteria>, "formatEvaluatorInputs" | "llm" | "feedbackKey">): EvalConfig;
198
188
  /**
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","names":["BaseLanguageModel","RunnableConfig","Example","Run","EvaluationResult","RunEvaluator","Criteria","CriteriaType","EmbeddingDistanceEvalChainInput","LoadEvaluatorOptions","EvaluatorType","EvaluatorInputs","EvaluatorInputFormatter","rawInput","rawPrediction","rawReferenceOutput","run","DynamicRunEvaluatorParams","Input","Prediction","Reference","Record","RunEvaluatorLike","Promise","isOffTheShelfEvaluator","T","U","EvalConfig","isCustomEvaluator","RunEvalType","RunEvalConfig","CriteriaEvalChainConfig","LabeledCriteria","Partial","Pick","EmbeddingDistance"],"sources":["../../src/smith/config.d.ts"],"sourcesContent":["import { BaseLanguageModel } from \"@langchain/core/language_models/base\";\nimport { RunnableConfig } from \"@langchain/core/runnables\";\nimport { Example, Run } from \"langsmith\";\nimport { EvaluationResult, RunEvaluator } from \"langsmith/evaluation\";\nimport { Criteria as CriteriaType, type EmbeddingDistanceEvalChainInput } from \"../evaluation/index.js\";\nimport { LoadEvaluatorOptions } from \"../evaluation/loader.js\";\nimport { EvaluatorType } from \"../evaluation/types.js\";\nexport type EvaluatorInputs = {\n input?: string | unknown;\n prediction: string | unknown;\n reference?: string | unknown;\n};\nexport type EvaluatorInputFormatter = ({ rawInput, rawPrediction, rawReferenceOutput, run }: {\n rawInput: any;\n rawPrediction: any;\n rawReferenceOutput?: any;\n run: Run;\n}) => EvaluatorInputs;\nexport type DynamicRunEvaluatorParams<Input extends Record<string, any> = Record<string, unknown>, Prediction extends Record<string, any> = Record<string, unknown>, Reference extends Record<string, any> = Record<string, unknown>> = {\n input: Input;\n prediction?: Prediction;\n reference?: Reference;\n run: Run;\n example?: Example;\n};\n/**\n * Type of a function that can be coerced into a RunEvaluator function.\n * While we have the class-based RunEvaluator, it's often more convenient to directly\n * pass a function to the runner. This type allows us to do that.\n */\nexport type RunEvaluatorLike = ((props: DynamicRunEvaluatorParams, options: RunnableConfig) => Promise<EvaluationResult>) | ((props: DynamicRunEvaluatorParams, options: RunnableConfig) => EvaluationResult);\nexport declare function isOffTheShelfEvaluator<T extends keyof EvaluatorType, U extends RunEvaluator | RunEvaluatorLike = RunEvaluator | RunEvaluatorLike>(evaluator: T | EvalConfig | U): evaluator is T | EvalConfig;\nexport declare function isCustomEvaluator<T extends keyof EvaluatorType, U extends RunEvaluator | RunEvaluatorLike = RunEvaluator | RunEvaluatorLike>(evaluator: T | EvalConfig | U): evaluator is U;\nexport type RunEvalType<T extends keyof EvaluatorType = \"criteria\" | \"labeled_criteria\" | \"embedding_distance\", U extends RunEvaluator | RunEvaluatorLike = RunEvaluator | RunEvaluatorLike> = T | EvalConfig | U;\n/**\n * Configuration class for running evaluations on datasets.\n *\n * @remarks\n * RunEvalConfig in LangSmith is a configuration class for running evaluations on datasets. Its primary purpose is to define the parameters and evaluators that will be applied during the evaluation of a dataset. This configuration can include various evaluators, custom evaluators, and different keys for inputs, predictions, and references.\n *\n * @typeparam T - The type of evaluators.\n * @typeparam U - The type of custom evaluators.\n */\nexport type RunEvalConfig<T extends keyof EvaluatorType = \"criteria\" | \"labeled_criteria\" | \"embedding_distance\", U extends RunEvaluator | RunEvaluatorLike = RunEvaluator | RunEvaluatorLike> = {\n /**\n * Evaluators to apply to a dataset run.\n * You can optionally specify these by name, or by\n * configuring them with an EvalConfig object.\n */\n evaluators?: RunEvalType<T, U>[];\n /**\n * Convert the evaluation data into formats that can be used by the evaluator.\n * This should most commonly be a string.\n * Parameters are the raw input from the run, the raw output, raw reference output, and the raw run.\n * @example\n * ```ts\n * // Chain input: { input: \"some string\" }\n * // Chain output: { output: \"some output\" }\n * // Reference example output format: { output: \"some reference output\" }\n * const formatEvaluatorInputs = ({\n * rawInput,\n * rawPrediction,\n * rawReferenceOutput,\n * }) => {\n * return {\n * input: rawInput.input,\n * prediction: rawPrediction.output,\n * reference: rawReferenceOutput.output,\n * };\n * };\n * ```\n * @returns The prepared data.\n */\n formatEvaluatorInputs?: EvaluatorInputFormatter;\n /**\n * Custom evaluators to apply to a dataset run.\n * Each evaluator is provided with a run trace containing the model\n * outputs, as well as an \"example\" object representing a record\n * in the dataset.\n *\n * @deprecated Use `evaluators` instead.\n */\n customEvaluators?: U[];\n};\nexport interface EvalConfig extends LoadEvaluatorOptions {\n /**\n * The name of the evaluator to use.\n * Example: labeled_criteria, criteria, etc.\n */\n evaluatorType: keyof EvaluatorType;\n /**\n * The feedback (or metric) name to use for the logged\n * evaluation results. If none provided, we default to\n * the evaluationName.\n */\n feedbackKey?: string;\n /**\n * Convert the evaluation data into formats that can be used by the evaluator.\n * This should most commonly be a string.\n * Parameters are the raw input from the run, the raw output, raw reference output, and the raw run.\n * @example\n * ```ts\n * // Chain input: { input: \"some string\" }\n * // Chain output: { output: \"some output\" }\n * // Reference example output format: { output: \"some reference output\" }\n * const formatEvaluatorInputs = ({\n * rawInput,\n * rawPrediction,\n * rawReferenceOutput,\n * }) => {\n * return {\n * input: rawInput.input,\n * prediction: rawPrediction.output,\n * reference: rawReferenceOutput.output,\n * };\n * };\n * ```\n * @returns The prepared data.\n */\n formatEvaluatorInputs: EvaluatorInputFormatter;\n}\n/**\n * Configuration to load a \"CriteriaEvalChain\" evaluator,\n * which prompts an LLM to determine whether the model's\n * prediction complies with the provided criteria.\n * @param criteria - The criteria to use for the evaluator.\n * @param llm - The language model to use for the evaluator.\n * @returns The configuration for the evaluator.\n * @example\n * ```ts\n * const evalConfig = {\n * evaluators: [Criteria(\"helpfulness\")],\n * };\n * @example\n * ```ts\n * const evalConfig = {\n * evaluators: [\n * Criteria({\n * \"isCompliant\": \"Does the submission comply with the requirements of XYZ\"\n * })\n * ],\n * };\n * @example\n * ```ts\n * const evalConfig = {\n * evaluators: [{\n * evaluatorType: \"criteria\",\n * criteria: \"helpfulness\"\n * formatEvaluatorInputs: ...\n * }]\n * };\n * ```\n * @example\n * ```ts\n * const evalConfig = {\n * evaluators: [{\n * evaluatorType: \"criteria\",\n * criteria: { \"isCompliant\": \"Does the submission comply with the requirements of XYZ\" },\n * formatEvaluatorInputs: ...\n * }]\n * };\n */\nexport type Criteria = EvalConfig & {\n evaluatorType: \"criteria\";\n /**\n * The \"criteria\" to insert into the prompt template\n * used for evaluation. See the prompt at\n * https://smith.langchain.com/hub/langchain-ai/criteria-evaluator\n * for more information.\n */\n criteria?: CriteriaType | Record<string, string>;\n /**\n * The language model to use as the evaluator, defaults to GPT-4\n */\n llm?: BaseLanguageModel;\n};\nexport type CriteriaEvalChainConfig = Criteria;\nexport declare function Criteria(criteria: CriteriaType | Record<string, string>, config?: Pick<Partial<LabeledCriteria>, \"formatEvaluatorInputs\" | \"llm\" | \"feedbackKey\">): EvalConfig;\n/**\n * Configuration to load a \"LabeledCriteriaEvalChain\" evaluator,\n * which prompts an LLM to determine whether the model's\n * prediction complies with the provided criteria and also\n * provides a \"ground truth\" label for the evaluator to incorporate\n * in its evaluation.\n * @param criteria - The criteria to use for the evaluator.\n * @param llm - The language model to use for the evaluator.\n * @returns The configuration for the evaluator.\n * @example\n * ```ts\n * const evalConfig = {\n * evaluators: [LabeledCriteria(\"correctness\")],\n * };\n * @example\n * ```ts\n * const evalConfig = {\n * evaluators: [\n * LabeledCriteria({\n * \"mentionsAllFacts\": \"Does the include all facts provided in the reference?\"\n * })\n * ],\n * };\n * @example\n * ```ts\n * const evalConfig = {\n * evaluators: [{\n * evaluatorType: \"labeled_criteria\",\n * criteria: \"correctness\",\n * formatEvaluatorInputs: ...\n * }],\n * };\n * ```\n * @example\n * ```ts\n * const evalConfig = {\n * evaluators: [{\n * evaluatorType: \"labeled_criteria\",\n * criteria: { \"mentionsAllFacts\": \"Does the include all facts provided in the reference?\" },\n * formatEvaluatorInputs: ...\n * }],\n * };\n */\nexport type LabeledCriteria = EvalConfig & {\n evaluatorType: \"labeled_criteria\";\n /**\n * The \"criteria\" to insert into the prompt template\n * used for evaluation. See the prompt at\n * https://smith.langchain.com/hub/langchain-ai/labeled-criteria\n * for more information.\n */\n criteria?: CriteriaType | Record<string, string>;\n /**\n * The language model to use as the evaluator, defaults to GPT-4\n */\n llm?: BaseLanguageModel;\n};\nexport declare function LabeledCriteria(criteria: CriteriaType | Record<string, string>, config?: Pick<Partial<LabeledCriteria>, \"formatEvaluatorInputs\" | \"llm\" | \"feedbackKey\">): LabeledCriteria;\n/**\n * Configuration to load a \"EmbeddingDistanceEvalChain\" evaluator,\n * which embeds distances to score semantic difference between\n * a prediction and reference.\n */\nexport type EmbeddingDistance = EvalConfig & EmbeddingDistanceEvalChainInput & {\n evaluatorType: \"embedding_distance\";\n};\nexport declare function EmbeddingDistance(distanceMetric: EmbeddingDistanceEvalChainInput[\"distanceMetric\"], config?: Pick<Partial<LabeledCriteria>, \"formatEvaluatorInputs\" | \"embedding\" | \"feedbackKey\">): EmbeddingDistance;\n//# sourceMappingURL=config.d.ts.map"],"mappings":"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"}
@@ -1,8 +1,5 @@
1
1
  const require_rolldown_runtime = require('../_virtual/rolldown_runtime.cjs');
2
2
  const require_loader = require('../evaluation/loader.cjs');
3
- const require_client = require('../node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/client.cjs');
4
- const require_run_trees = require('../node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/run_trees.cjs');
5
- require('../node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/index.cjs');
6
3
  const require_config = require('./config.cjs');
7
4
  const require_name_generation = require('./name_generation.cjs');
8
5
  const require_progress = require('./progress.cjs');
@@ -11,6 +8,7 @@ const __langchain_core_messages = require_rolldown_runtime.__toESM(require("@lan
11
8
  const __langchain_core_tracers_base = require_rolldown_runtime.__toESM(require("@langchain/core/tracers/base"));
12
9
  const __langchain_core_tracers_tracer_langchain = require_rolldown_runtime.__toESM(require("@langchain/core/tracers/tracer_langchain"));
13
10
  const __langchain_core_utils_async_caller = require_rolldown_runtime.__toESM(require("@langchain/core/utils/async_caller"));
11
+ const langsmith = require_rolldown_runtime.__toESM(require("langsmith"));
14
12
 
15
13
  //#region src/smith/runner_utils.ts
16
14
  var SingleRunIdExtractor = class {
@@ -87,7 +85,7 @@ function isLLMStringEvaluator(evaluator) {
87
85
  * The goal of this class is to ensure seamless interop when intergrated
88
86
  * with other Runnables.
89
87
  */
90
- var CallbackManagerRunTree = class CallbackManagerRunTree extends require_run_trees.RunTree {
88
+ var CallbackManagerRunTree = class CallbackManagerRunTree extends langsmith.RunTree {
91
89
  callbackManager;
92
90
  activeCallbackManager = void 0;
93
91
  constructor(config, callbackManager) {
@@ -136,7 +134,7 @@ var RunnableTraceable = class extends __langchain_core_runnables.Runnable {
136
134
  if (!callbackManager) throw new Error("CallbackManager not found");
137
135
  const runTree = new CallbackManagerRunTree({
138
136
  ...partialConfig,
139
- parent_run: callbackManager?._parentRunId ? new require_run_trees.RunTree({
137
+ parent_run: callbackManager?._parentRunId ? new langsmith.RunTree({
140
138
  name: "<parent>",
141
139
  id: callbackManager?._parentRunId
142
140
  }) : void 0
@@ -356,7 +354,7 @@ async function runOnDataset(chainOrFactory, datasetName, options) {
356
354
  formatEvaluatorInputs: options.formatEvaluatorInputs
357
355
  } : void 0);
358
356
  const wrappedModel = await createWrappedModel(chainOrFactory);
359
- const testClient = client ?? new require_client.Client();
357
+ const testClient = client ?? new langsmith.Client();
360
358
  const testProjectName = projectName ?? require_name_generation.randomName();
361
359
  const dataset = await testClient.readDataset({ datasetName });
362
360
  const datasetId = dataset.id;
@@ -1 +1 @@
1
- {"version":3,"file":"runner_utils.cjs","names":["_chain: Serialized","_inputs: ChainValues","runId: string","BaseTracer","run: Run","evaluator: RunEvaluatorLike","RunnableLambda","example?: Example","LangChainTracer","evaluator: any","RunTree","config: RunTreeConfig","callbackManager: CallbackManager","Runnable","fields: { func: AnyTraceableFunction }","input: RunInput","options?: Partial<RunnableConfig>","evaluator: LLMStringEvaluator","evaluationName: string","formatEvaluatorInputs: EvaluatorInputFormatter","config: EvalConfig | keyof EvaluatorType","loadEvaluator","evaluators: (RunEvaluator | DynamicRunEvaluator)[]","config: RunEvalConfig<keyof EvaluatorType>","isCustomEvaluator","isOffTheShelfEvaluator","modelOrFactory: ChainOrFactory","configs: RunnableConfig[]","ProgressBar","AsyncCaller","examples: Example[]","chainOrFactory: ChainOrFactory","dataType?: DataType","datasetName: string","options?: RunOnDatasetParams","evaluationConfig: RunEvalConfig | undefined","Client","randomName","wrappedRunnable: Runnable","runs: Run[]","evalResults: Record<\n string,\n { run_id: string; execution_time?: number; feedback: Feedback[] }\n >","results: EvalResults","x: unknown"],"sources":["../../src/smith/runner_utils.ts"],"sourcesContent":["import { BaseLanguageModel } from \"@langchain/core/language_models/base\";\nimport { Serialized } from \"@langchain/core/load/serializable\";\nimport { mapStoredMessagesToChatMessages } from \"@langchain/core/messages\";\nimport {\n Runnable,\n RunnableConfig,\n RunnableLambda,\n getCallbackManagerForConfig,\n} from \"@langchain/core/runnables\";\nimport { LangChainTracer } from \"@langchain/core/tracers/tracer_langchain\";\nimport { BaseTracer } from \"@langchain/core/tracers/base\";\nimport { ChainValues } from \"@langchain/core/utils/types\";\nimport { AsyncCaller } from \"@langchain/core/utils/async_caller\";\nimport type {\n CallbackManager,\n CallbackManagerForChainRun,\n} from \"@langchain/core/callbacks/manager\";\nimport {\n Client,\n Example,\n Feedback,\n Run,\n RunTree,\n RunTreeConfig,\n} from \"langsmith\";\nimport { EvaluationResult, RunEvaluator } from \"langsmith/evaluation\";\nimport { DataType } from \"langsmith/schemas\";\nimport type { TraceableFunction } from \"langsmith/singletons/traceable\";\nimport { LLMStringEvaluator } from \"../evaluation/base.js\";\nimport { loadEvaluator } from \"../evaluation/loader.js\";\nimport { EvaluatorType } from \"../evaluation/types.js\";\nimport {\n isOffTheShelfEvaluator,\n type DynamicRunEvaluatorParams,\n type EvalConfig,\n type EvaluatorInputFormatter,\n type RunEvalConfig,\n type RunEvaluatorLike,\n isCustomEvaluator,\n} from \"./config.js\";\nimport { randomName } from \"./name_generation.js\";\nimport { ProgressBar } from \"./progress.js\";\n\nexport type ChainOrFactory =\n | Runnable\n | (() => Runnable)\n | AnyTraceableFunction\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n | ((obj: any) => any)\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n | ((obj: any) => Promise<any>)\n | (() => (obj: unknown) => unknown)\n | (() => (obj: unknown) => Promise<unknown>);\n\nclass SingleRunIdExtractor {\n runIdPromiseResolver: (runId: string) => void;\n\n runIdPromise: Promise<string>;\n\n constructor() {\n this.runIdPromise = new Promise<string>((extract) => {\n this.runIdPromiseResolver = extract;\n });\n }\n\n handleChainStart = (\n _chain: Serialized,\n _inputs: ChainValues,\n runId: string\n ) => {\n this.runIdPromiseResolver(runId);\n };\n\n async extract(): Promise<string> {\n return this.runIdPromise;\n }\n}\n\nclass SingleRunExtractor extends BaseTracer {\n runPromiseResolver: (run: Run) => void;\n\n runPromise: Promise<Run>;\n\n /** The name of the callback handler. */\n name = \"single_run_extractor\";\n\n constructor() {\n super();\n this.runPromise = new Promise<Run>((extract) => {\n this.runPromiseResolver = extract;\n });\n }\n\n async persistRun(run: Run) {\n this.runPromiseResolver(run);\n }\n\n async extract(): Promise<Run> {\n return this.runPromise;\n }\n}\n\n/**\n * Wraps an evaluator function + implements the RunEvaluator interface.\n */\nclass DynamicRunEvaluator implements RunEvaluator {\n evaluator: RunnableLambda<DynamicRunEvaluatorParams, EvaluationResult>;\n\n constructor(evaluator: RunEvaluatorLike) {\n this.evaluator = new RunnableLambda({ func: evaluator });\n }\n\n /**\n * Evaluates a run with an optional example and returns the evaluation result.\n * @param run The run to evaluate.\n * @param example The optional example to use for evaluation.\n * @returns A promise that extracts to the evaluation result.\n */\n async evaluateRun(run: Run, example?: Example): Promise<EvaluationResult> {\n const extractor = new SingleRunIdExtractor();\n const tracer = new LangChainTracer({ projectName: \"evaluators\" });\n const result = await this.evaluator.invoke(\n {\n run,\n example,\n input: run.inputs,\n prediction: run.outputs,\n reference: example?.outputs,\n },\n {\n callbacks: [extractor, tracer],\n }\n );\n const runId = await extractor.extract();\n return {\n sourceRunId: runId,\n ...result,\n };\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction isLLMStringEvaluator(evaluator: any): evaluator is LLMStringEvaluator {\n return evaluator && typeof evaluator.evaluateStrings === \"function\";\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype AnyTraceableFunction = TraceableFunction<(...any: any[]) => any>;\n\n/**\n * Internal implementation of RunTree, which uses the\n * provided callback manager instead of the internal LangSmith client.\n *\n * The goal of this class is to ensure seamless interop when intergrated\n * with other Runnables.\n */\nclass CallbackManagerRunTree extends RunTree {\n callbackManager: CallbackManager;\n\n activeCallbackManager: CallbackManagerForChainRun | undefined = undefined;\n\n constructor(config: RunTreeConfig, callbackManager: CallbackManager) {\n super(config);\n\n this.callbackManager = callbackManager;\n }\n\n createChild(config: RunTreeConfig): CallbackManagerRunTree {\n const child = new CallbackManagerRunTree(\n {\n ...config,\n parent_run: this,\n project_name: this.project_name,\n client: this.client,\n },\n this.activeCallbackManager?.getChild() ?? this.callbackManager\n );\n this.child_runs.push(child);\n return child;\n }\n\n async postRun(): Promise<void> {\n // how it is translated in comparison to basic RunTree?\n this.activeCallbackManager = await this.callbackManager.handleChainStart(\n typeof this.serialized !== \"object\" &&\n this.serialized != null &&\n \"lc\" in this.serialized\n ? this.serialized\n : {\n id: [\"langchain\", \"smith\", \"CallbackManagerRunTree\"],\n lc: 1,\n type: \"not_implemented\",\n },\n this.inputs,\n this.id,\n this.run_type,\n undefined,\n undefined,\n this.name\n );\n }\n\n async patchRun(): Promise<void> {\n if (this.error) {\n await this.activeCallbackManager?.handleChainError(\n this.error,\n this.id,\n this.parent_run?.id,\n undefined,\n undefined\n );\n } else {\n await this.activeCallbackManager?.handleChainEnd(\n this.outputs ?? {},\n this.id,\n this.parent_run?.id,\n undefined,\n undefined\n );\n }\n }\n}\n\nclass RunnableTraceable<RunInput, RunOutput> extends Runnable<\n RunInput,\n RunOutput\n> {\n lc_serializable = false;\n\n lc_namespace = [\"langchain_core\", \"runnables\"];\n\n protected func: AnyTraceableFunction;\n\n constructor(fields: { func: AnyTraceableFunction }) {\n super(fields);\n\n if (!isLangsmithTraceableFunction(fields.func)) {\n throw new Error(\n \"RunnableTraceable requires a function that is wrapped in traceable higher-order function\"\n );\n }\n\n this.func = fields.func;\n }\n\n async invoke(input: RunInput, options?: Partial<RunnableConfig>) {\n const [config] = this._getOptionsList(options ?? {}, 1);\n const callbackManager = await getCallbackManagerForConfig(config);\n\n const partialConfig =\n \"langsmith:traceable\" in this.func\n ? (this.func[\"langsmith:traceable\"] as RunTreeConfig)\n : { name: \"<lambda>\" };\n\n if (!callbackManager) throw new Error(\"CallbackManager not found\");\n const runTree = new CallbackManagerRunTree(\n {\n ...partialConfig,\n parent_run: callbackManager?._parentRunId\n ? new RunTree({ name: \"<parent>\", id: callbackManager?._parentRunId })\n : undefined,\n },\n callbackManager\n );\n\n if (\n typeof input === \"object\" &&\n input != null &&\n Object.keys(input).length === 1\n ) {\n if (\"args\" in input && Array.isArray(input)) {\n return (await this.func(runTree, ...input)) as RunOutput;\n }\n\n if (\n \"input\" in input &&\n !(\n typeof input === \"object\" &&\n input != null &&\n !Array.isArray(input) &&\n // eslint-disable-next-line no-instanceof/no-instanceof\n !(input instanceof Date)\n )\n ) {\n try {\n return (await this.func(runTree, input.input)) as RunOutput;\n } catch {\n return (await this.func(runTree, input)) as RunOutput;\n }\n }\n }\n\n return (await this.func(runTree, input)) as RunOutput;\n }\n}\n\n/**\n * Wraps an off-the-shelf evaluator (loaded using loadEvaluator; of EvaluatorType[T])\n * and composes with a prepareData function so the user can prepare the trace and\n * dataset data for the evaluator.\n */\nclass PreparedRunEvaluator implements RunEvaluator {\n evaluator: LLMStringEvaluator;\n\n formatEvaluatorInputs: EvaluatorInputFormatter;\n\n isStringEvaluator: boolean;\n\n evaluationName: string;\n\n constructor(\n evaluator: LLMStringEvaluator,\n evaluationName: string,\n formatEvaluatorInputs: EvaluatorInputFormatter\n ) {\n this.evaluator = evaluator;\n this.isStringEvaluator = typeof evaluator?.evaluateStrings === \"function\";\n this.evaluationName = evaluationName;\n this.formatEvaluatorInputs = formatEvaluatorInputs;\n }\n\n static async fromEvalConfig(\n config: EvalConfig | keyof EvaluatorType\n ): Promise<PreparedRunEvaluator> {\n const evaluatorType =\n typeof config === \"string\" ? config : config.evaluatorType;\n const evalConfig = typeof config === \"string\" ? ({} as EvalConfig) : config;\n const evaluator = await loadEvaluator(evaluatorType, evalConfig);\n const feedbackKey = evalConfig?.feedbackKey ?? evaluator?.evaluationName;\n if (!isLLMStringEvaluator(evaluator)) {\n throw new Error(\n `Evaluator of type ${evaluatorType} not yet supported. ` +\n \"Please use a string evaluator, or implement your \" +\n \"evaluation logic as a custom evaluator.\"\n );\n }\n if (!feedbackKey) {\n throw new Error(\n `Evaluator of type ${evaluatorType} must have an evaluationName` +\n ` or feedbackKey. Please manually provide a feedbackKey in the EvalConfig.`\n );\n }\n return new PreparedRunEvaluator(\n evaluator as LLMStringEvaluator,\n feedbackKey,\n evalConfig?.formatEvaluatorInputs\n );\n }\n\n /**\n * Evaluates a run with an optional example and returns the evaluation result.\n * @param run The run to evaluate.\n * @param example The optional example to use for evaluation.\n * @returns A promise that extracts to the evaluation result.\n */\n async evaluateRun(run: Run, example?: Example): Promise<EvaluationResult> {\n const { prediction, input, reference } = this.formatEvaluatorInputs({\n rawInput: run.inputs,\n rawPrediction: run.outputs,\n rawReferenceOutput: example?.outputs,\n run,\n });\n const extractor = new SingleRunIdExtractor();\n const tracer = new LangChainTracer({ projectName: \"evaluators\" });\n if (this.isStringEvaluator) {\n const evalResult = await this.evaluator.evaluateStrings(\n {\n prediction: prediction as string,\n reference: reference as string,\n input: input as string,\n },\n {\n callbacks: [extractor, tracer],\n }\n );\n const runId = await extractor.extract();\n return {\n key: this.evaluationName,\n comment: evalResult?.reasoning,\n sourceRunId: runId,\n ...evalResult,\n };\n }\n throw new Error(\n \"Evaluator not yet supported. \" +\n \"Please use a string evaluator, or implement your \" +\n \"evaluation logic as a custom evaluator.\"\n );\n }\n}\n\nclass LoadedEvalConfig {\n constructor(public evaluators: (RunEvaluator | DynamicRunEvaluator)[]) {}\n\n static async fromRunEvalConfig(\n config: RunEvalConfig<keyof EvaluatorType>\n ): Promise<LoadedEvalConfig> {\n // Custom evaluators are applied \"as-is\"\n const customEvaluators = (\n config?.customEvaluators ?? config.evaluators?.filter(isCustomEvaluator)\n )?.map((evaluator) => {\n if (typeof evaluator === \"function\") {\n return new DynamicRunEvaluator(evaluator);\n } else {\n return evaluator;\n }\n });\n\n const offTheShelfEvaluators = await Promise.all(\n config?.evaluators\n ?.filter(isOffTheShelfEvaluator)\n ?.map(\n async (evaluator) =>\n await PreparedRunEvaluator.fromEvalConfig(evaluator)\n ) ?? []\n );\n return new LoadedEvalConfig(\n (customEvaluators ?? []).concat(offTheShelfEvaluators ?? [])\n );\n }\n}\n\nexport interface RunOnDatasetParams\n extends Omit<RunEvalConfig, \"customEvaluators\"> {\n /**\n * Name of the project for logging and tracking.\n */\n projectName?: string;\n\n /**\n * Additional metadata for the project.\n */\n projectMetadata?: Record<string, unknown>;\n\n /**\n * Client instance for LangSmith service interaction.\n */\n client?: Client;\n\n /**\n * Maximum concurrency level for dataset processing.\n */\n maxConcurrency?: number;\n\n /**\n * @deprecated Pass keys directly to the RunOnDatasetParams instead\n */\n evaluationConfig?: RunEvalConfig;\n}\n\n/**\n * Internals expect a constructor () -> Runnable. This function wraps/coerces\n * the provided LangChain object, custom function, or factory function into\n * a constructor of a runnable.\n * @param modelOrFactory The model or factory to create a wrapped model from.\n * @returns A function that returns the wrapped model.\n * @throws Error if the modelOrFactory is invalid.\n */\nconst createWrappedModel = async (modelOrFactory: ChainOrFactory) => {\n if (Runnable.isRunnable(modelOrFactory)) {\n return () => modelOrFactory;\n }\n if (typeof modelOrFactory === \"function\") {\n if (isLangsmithTraceableFunction(modelOrFactory)) {\n const wrappedModel = new RunnableTraceable({ func: modelOrFactory });\n return () => wrappedModel;\n }\n\n try {\n // If it works with no arguments, assume it's a factory\n let res = (modelOrFactory as () => Runnable)();\n if (\n res &&\n typeof (res as unknown as Promise<Runnable>).then === \"function\"\n ) {\n res = await res;\n }\n return modelOrFactory as () => Runnable;\n } catch {\n // Otherwise, it's a custom UDF, and we'll wrap\n // the function in a lambda\n const wrappedModel = new RunnableLambda({ func: modelOrFactory });\n return () => wrappedModel;\n }\n }\n throw new Error(\"Invalid modelOrFactory\");\n};\n\nconst loadExamples = async ({\n datasetName,\n client,\n projectName,\n}: {\n datasetName: string;\n client: Client;\n projectName: string;\n maxConcurrency: number;\n}) => {\n const exampleIterator = client.listExamples({ datasetName });\n const configs: RunnableConfig[] = [];\n const runExtractors = [];\n const examples = [];\n for await (const example of exampleIterator) {\n const runExtractor = new SingleRunExtractor();\n configs.push({\n callbacks: [\n new LangChainTracer({ exampleId: example.id, projectName }),\n runExtractor,\n ],\n });\n examples.push(example);\n runExtractors.push(runExtractor);\n }\n return {\n configs,\n examples,\n runExtractors,\n };\n};\n\nconst applyEvaluators = async ({\n evaluation,\n runs,\n examples,\n client,\n maxConcurrency,\n}: {\n evaluation: LoadedEvalConfig;\n runs: Run[];\n examples: Example[];\n client: Client;\n maxConcurrency: number;\n}): Promise<{\n [key: string]: {\n execution_time?: number;\n run_id: string;\n feedback: Feedback[];\n };\n}> => {\n // TODO: Parallelize and/or put in callbacks to speed up evals.\n const { evaluators } = evaluation;\n const progress = new ProgressBar({\n total: examples.length,\n format: \"Running Evaluators: {bar} {percentage}% | {value}/{total}\\n\",\n });\n const caller = new AsyncCaller({\n maxConcurrency,\n });\n const requests = runs.map(\n async (\n run,\n i\n ): Promise<{\n run_id: string;\n execution_time?: number;\n feedback: Feedback[];\n }> =>\n caller.call(async () => {\n const evaluatorResults = await Promise.allSettled(\n evaluators.map((evaluator) =>\n client.evaluateRun(run, evaluator, {\n referenceExample: examples[i],\n loadChildRuns: false,\n })\n )\n );\n progress.increment();\n return {\n execution_time:\n run?.end_time && run.start_time\n ? new Date(run.end_time).getTime() -\n new Date(run.start_time).getTime()\n : undefined,\n feedback: evaluatorResults.map((evalResult) =>\n evalResult.status === \"fulfilled\"\n ? evalResult.value\n : evalResult.reason\n ),\n run_id: run.id,\n };\n })\n );\n const results = await Promise.all(requests);\n\n return results.reduce(\n (acc, result, i) => ({\n ...acc,\n [examples[i].id]: result,\n }),\n {}\n );\n};\n\nexport type EvalResults = {\n projectName: string;\n results: {\n [key: string]: {\n execution_time?: number;\n run_id: string;\n feedback: Feedback[];\n };\n };\n};\n\nconst getExamplesInputs = (\n examples: Example[],\n chainOrFactory: ChainOrFactory,\n dataType?: DataType\n) => {\n if (dataType === \"chat\") {\n // For some batty reason, we store the chat dataset differently.\n // { type: \"system\", data: { content: inputs.input } },\n // But we need to create AIMesage, SystemMessage, etc.\n return examples.map(({ inputs }) =>\n mapStoredMessagesToChatMessages(inputs.input)\n );\n }\n // If it's a language model and ALL example inputs have a single value,\n // then we can be friendly and flatten the inputs to a list of strings.\n const isLanguageModel =\n typeof chainOrFactory === \"object\" &&\n typeof (chainOrFactory as BaseLanguageModel)._llmType === \"function\";\n if (\n isLanguageModel &&\n examples.every(({ inputs }) => Object.keys(inputs).length === 1)\n ) {\n return examples.map(({ inputs }) => Object.values(inputs)[0]);\n }\n return examples.map(({ inputs }) => inputs);\n};\n\n/**\n * Evaluates a given model or chain against a specified LangSmith dataset.\n *\n * This function fetches example records from the specified dataset,\n * runs the model or chain against each example, and returns the evaluation\n * results.\n *\n * @param chainOrFactory - A model or factory/constructor function to be evaluated. It can be a\n * Runnable instance, a factory function that returns a Runnable, or a user-defined\n * function or factory.\n *\n * @param datasetName - The name of the dataset against which the evaluation will be\n * performed. This dataset should already be defined and contain the relevant data\n * for evaluation.\n *\n * @param options - (Optional) Additional parameters for the evaluation process:\n * - `evaluators` (RunEvalType[]): Evaluators to apply to a dataset run.\n * - `formatEvaluatorInputs` (EvaluatorInputFormatter): Convert the evaluation data into formats that can be used by the evaluator.\n * - `projectName` (string): Name of the project for logging and tracking.\n * - `projectMetadata` (Record<string, unknown>): Additional metadata for the project.\n * - `client` (Client): Client instance for LangSmith service interaction.\n * - `maxConcurrency` (number): Maximum concurrency level for dataset processing.\n *\n * @returns A promise that resolves to an `EvalResults` object. This object includes\n * detailed results of the evaluation, such as execution time, run IDs, and feedback\n * for each entry in the dataset.\n *\n * @example\n * ```typescript\n * // Example usage for evaluating a model on a dataset\n * async function evaluateModel() {\n * const chain = /* ...create your model or chain...*\\//\n * const datasetName = 'example-dataset';\n * const client = new Client(/* ...config... *\\//);\n *\n * const results = await runOnDataset(chain, datasetName, {\n * evaluators: [/* ...evaluators... *\\//],\n * client,\n * });\n *\n * console.log('Evaluation Results:', results);\n * }\n *\n * evaluateModel();\n * ```\n * In this example, `runOnDataset` is used to evaluate a language model (or a chain of models) against\n * a dataset named 'example-dataset'. The evaluation process is configured using `RunOnDatasetParams[\"evaluators\"]`, which can\n * include both standard and custom evaluators. The `Client` instance is used to interact with LangChain services.\n * The function returns the evaluation results, which can be logged or further processed as needed.\n */\n\nexport async function runOnDataset(\n chainOrFactory: ChainOrFactory,\n datasetName: string,\n options?: RunOnDatasetParams\n) {\n const {\n projectName,\n projectMetadata,\n client,\n maxConcurrency,\n }: RunOnDatasetParams = options ?? {};\n\n const evaluationConfig: RunEvalConfig | undefined =\n options?.evaluationConfig ??\n (options?.evaluators != null\n ? {\n evaluators: options.evaluators,\n formatEvaluatorInputs: options.formatEvaluatorInputs,\n }\n : undefined);\n\n const wrappedModel = await createWrappedModel(chainOrFactory);\n const testClient = client ?? new Client();\n const testProjectName = projectName ?? randomName();\n const dataset = await testClient.readDataset({ datasetName });\n const datasetId = dataset.id;\n const testConcurrency = maxConcurrency ?? 5;\n const { configs, examples, runExtractors } = await loadExamples({\n datasetName,\n client: testClient,\n projectName: testProjectName,\n maxConcurrency: testConcurrency,\n });\n\n await testClient.createProject({\n projectName: testProjectName,\n referenceDatasetId: datasetId,\n projectExtra: { metadata: { ...projectMetadata } },\n });\n const wrappedRunnable: Runnable = new RunnableLambda({\n func: wrappedModel,\n }).withConfig({ runName: \"evaluationRun\" });\n const runInputs = getExamplesInputs(\n examples,\n chainOrFactory,\n dataset.data_type\n );\n const progress = new ProgressBar({\n total: runInputs.length,\n format: \"Predicting: {bar} {percentage}% | {value}/{total}\",\n });\n // TODO: Collect the runs as well.\n await wrappedRunnable\n .withListeners({\n onEnd: () => progress.increment(),\n })\n // TODO: Insert evaluation inline for immediate feedback.\n .batch(runInputs, configs, {\n maxConcurrency,\n returnExceptions: true,\n });\n\n progress.complete();\n const runs: Run[] = [];\n for (let i = 0; i < examples.length; i += 1) {\n runs.push(await runExtractors[i].extract());\n }\n let evalResults: Record<\n string,\n { run_id: string; execution_time?: number; feedback: Feedback[] }\n > = {};\n if (evaluationConfig) {\n const loadedEvalConfig = await LoadedEvalConfig.fromRunEvalConfig(\n evaluationConfig\n );\n evalResults = await applyEvaluators({\n evaluation: loadedEvalConfig,\n runs,\n examples,\n client: testClient,\n maxConcurrency: testConcurrency,\n });\n }\n const results: EvalResults = {\n projectName: testProjectName,\n results: evalResults ?? {},\n };\n return results;\n}\n\nfunction isLangsmithTraceableFunction(x: unknown): x is AnyTraceableFunction {\n return typeof x === \"function\" && \"langsmith:traceable\" in x;\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"runner_utils.cjs","names":["_chain: Serialized","_inputs: ChainValues","runId: string","BaseTracer","run: Run","evaluator: RunEvaluatorLike","RunnableLambda","example?: Example","LangChainTracer","evaluator: any","RunTree","config: RunTreeConfig","callbackManager: CallbackManager","Runnable","fields: { func: AnyTraceableFunction }","input: RunInput","options?: Partial<RunnableConfig>","evaluator: LLMStringEvaluator","evaluationName: string","formatEvaluatorInputs: EvaluatorInputFormatter","config: EvalConfig | keyof EvaluatorType","loadEvaluator","evaluators: (RunEvaluator | DynamicRunEvaluator)[]","config: RunEvalConfig<keyof EvaluatorType>","isCustomEvaluator","isOffTheShelfEvaluator","modelOrFactory: ChainOrFactory","configs: RunnableConfig[]","ProgressBar","AsyncCaller","examples: Example[]","chainOrFactory: ChainOrFactory","dataType?: DataType","datasetName: string","options?: RunOnDatasetParams","evaluationConfig: RunEvalConfig | undefined","Client","randomName","wrappedRunnable: Runnable","runs: Run[]","evalResults: Record<\n string,\n { run_id: string; execution_time?: number; feedback: Feedback[] }\n >","results: EvalResults","x: unknown"],"sources":["../../src/smith/runner_utils.ts"],"sourcesContent":["import { BaseLanguageModel } from \"@langchain/core/language_models/base\";\nimport { Serialized } from \"@langchain/core/load/serializable\";\nimport { mapStoredMessagesToChatMessages } from \"@langchain/core/messages\";\nimport {\n Runnable,\n RunnableConfig,\n RunnableLambda,\n getCallbackManagerForConfig,\n} from \"@langchain/core/runnables\";\nimport { LangChainTracer } from \"@langchain/core/tracers/tracer_langchain\";\nimport { BaseTracer } from \"@langchain/core/tracers/base\";\nimport { ChainValues } from \"@langchain/core/utils/types\";\nimport { AsyncCaller } from \"@langchain/core/utils/async_caller\";\nimport type {\n CallbackManager,\n CallbackManagerForChainRun,\n} from \"@langchain/core/callbacks/manager\";\nimport {\n Client,\n Example,\n Feedback,\n Run,\n RunTree,\n RunTreeConfig,\n} from \"langsmith\";\nimport { EvaluationResult, RunEvaluator } from \"langsmith/evaluation\";\nimport { DataType } from \"langsmith/schemas\";\nimport type { TraceableFunction } from \"langsmith/singletons/traceable\";\nimport { LLMStringEvaluator } from \"../evaluation/base.js\";\nimport { loadEvaluator } from \"../evaluation/loader.js\";\nimport { EvaluatorType } from \"../evaluation/types.js\";\nimport {\n isOffTheShelfEvaluator,\n type DynamicRunEvaluatorParams,\n type EvalConfig,\n type EvaluatorInputFormatter,\n type RunEvalConfig,\n type RunEvaluatorLike,\n isCustomEvaluator,\n} from \"./config.js\";\nimport { randomName } from \"./name_generation.js\";\nimport { ProgressBar } from \"./progress.js\";\n\nexport type ChainOrFactory =\n | Runnable\n | (() => Runnable)\n | AnyTraceableFunction\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n | ((obj: any) => any)\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n | ((obj: any) => Promise<any>)\n | (() => (obj: unknown) => unknown)\n | (() => (obj: unknown) => Promise<unknown>);\n\nclass SingleRunIdExtractor {\n runIdPromiseResolver: (runId: string) => void;\n\n runIdPromise: Promise<string>;\n\n constructor() {\n this.runIdPromise = new Promise<string>((extract) => {\n this.runIdPromiseResolver = extract;\n });\n }\n\n handleChainStart = (\n _chain: Serialized,\n _inputs: ChainValues,\n runId: string\n ) => {\n this.runIdPromiseResolver(runId);\n };\n\n async extract(): Promise<string> {\n return this.runIdPromise;\n }\n}\n\nclass SingleRunExtractor extends BaseTracer {\n runPromiseResolver: (run: Run) => void;\n\n runPromise: Promise<Run>;\n\n /** The name of the callback handler. */\n name = \"single_run_extractor\";\n\n constructor() {\n super();\n this.runPromise = new Promise<Run>((extract) => {\n this.runPromiseResolver = extract;\n });\n }\n\n async persistRun(run: Run) {\n this.runPromiseResolver(run);\n }\n\n async extract(): Promise<Run> {\n return this.runPromise;\n }\n}\n\n/**\n * Wraps an evaluator function + implements the RunEvaluator interface.\n */\nclass DynamicRunEvaluator implements RunEvaluator {\n evaluator: RunnableLambda<DynamicRunEvaluatorParams, EvaluationResult>;\n\n constructor(evaluator: RunEvaluatorLike) {\n this.evaluator = new RunnableLambda({ func: evaluator });\n }\n\n /**\n * Evaluates a run with an optional example and returns the evaluation result.\n * @param run The run to evaluate.\n * @param example The optional example to use for evaluation.\n * @returns A promise that extracts to the evaluation result.\n */\n async evaluateRun(run: Run, example?: Example): Promise<EvaluationResult> {\n const extractor = new SingleRunIdExtractor();\n const tracer = new LangChainTracer({ projectName: \"evaluators\" });\n const result = await this.evaluator.invoke(\n {\n run,\n example,\n input: run.inputs,\n prediction: run.outputs,\n reference: example?.outputs,\n },\n {\n callbacks: [extractor, tracer],\n }\n );\n const runId = await extractor.extract();\n return {\n sourceRunId: runId,\n ...result,\n };\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction isLLMStringEvaluator(evaluator: any): evaluator is LLMStringEvaluator {\n return evaluator && typeof evaluator.evaluateStrings === \"function\";\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype AnyTraceableFunction = TraceableFunction<(...any: any[]) => any>;\n\n/**\n * Internal implementation of RunTree, which uses the\n * provided callback manager instead of the internal LangSmith client.\n *\n * The goal of this class is to ensure seamless interop when intergrated\n * with other Runnables.\n */\nclass CallbackManagerRunTree extends RunTree {\n callbackManager: CallbackManager;\n\n activeCallbackManager: CallbackManagerForChainRun | undefined = undefined;\n\n constructor(config: RunTreeConfig, callbackManager: CallbackManager) {\n super(config);\n\n this.callbackManager = callbackManager;\n }\n\n createChild(config: RunTreeConfig): CallbackManagerRunTree {\n const child = new CallbackManagerRunTree(\n {\n ...config,\n parent_run: this,\n project_name: this.project_name,\n client: this.client,\n },\n this.activeCallbackManager?.getChild() ?? this.callbackManager\n );\n this.child_runs.push(child);\n return child;\n }\n\n async postRun(): Promise<void> {\n // how it is translated in comparison to basic RunTree?\n this.activeCallbackManager = await this.callbackManager.handleChainStart(\n typeof this.serialized !== \"object\" &&\n this.serialized != null &&\n \"lc\" in this.serialized\n ? this.serialized\n : {\n id: [\"langchain\", \"smith\", \"CallbackManagerRunTree\"],\n lc: 1,\n type: \"not_implemented\",\n },\n this.inputs,\n this.id,\n this.run_type,\n undefined,\n undefined,\n this.name\n );\n }\n\n async patchRun(): Promise<void> {\n if (this.error) {\n await this.activeCallbackManager?.handleChainError(\n this.error,\n this.id,\n this.parent_run?.id,\n undefined,\n undefined\n );\n } else {\n await this.activeCallbackManager?.handleChainEnd(\n this.outputs ?? {},\n this.id,\n this.parent_run?.id,\n undefined,\n undefined\n );\n }\n }\n}\n\nclass RunnableTraceable<RunInput, RunOutput> extends Runnable<\n RunInput,\n RunOutput\n> {\n lc_serializable = false;\n\n lc_namespace = [\"langchain_core\", \"runnables\"];\n\n protected func: AnyTraceableFunction;\n\n constructor(fields: { func: AnyTraceableFunction }) {\n super(fields);\n\n if (!isLangsmithTraceableFunction(fields.func)) {\n throw new Error(\n \"RunnableTraceable requires a function that is wrapped in traceable higher-order function\"\n );\n }\n\n this.func = fields.func;\n }\n\n async invoke(input: RunInput, options?: Partial<RunnableConfig>) {\n const [config] = this._getOptionsList(options ?? {}, 1);\n const callbackManager = await getCallbackManagerForConfig(config);\n\n const partialConfig =\n \"langsmith:traceable\" in this.func\n ? (this.func[\"langsmith:traceable\"] as RunTreeConfig)\n : { name: \"<lambda>\" };\n\n if (!callbackManager) throw new Error(\"CallbackManager not found\");\n const runTree = new CallbackManagerRunTree(\n {\n ...partialConfig,\n parent_run: callbackManager?._parentRunId\n ? new RunTree({ name: \"<parent>\", id: callbackManager?._parentRunId })\n : undefined,\n },\n callbackManager\n );\n\n if (\n typeof input === \"object\" &&\n input != null &&\n Object.keys(input).length === 1\n ) {\n if (\"args\" in input && Array.isArray(input)) {\n return (await this.func(runTree, ...input)) as RunOutput;\n }\n\n if (\n \"input\" in input &&\n !(\n typeof input === \"object\" &&\n input != null &&\n !Array.isArray(input) &&\n // eslint-disable-next-line no-instanceof/no-instanceof\n !(input instanceof Date)\n )\n ) {\n try {\n return (await this.func(runTree, input.input)) as RunOutput;\n } catch {\n return (await this.func(runTree, input)) as RunOutput;\n }\n }\n }\n\n return (await this.func(runTree, input)) as RunOutput;\n }\n}\n\n/**\n * Wraps an off-the-shelf evaluator (loaded using loadEvaluator; of EvaluatorType[T])\n * and composes with a prepareData function so the user can prepare the trace and\n * dataset data for the evaluator.\n */\nclass PreparedRunEvaluator implements RunEvaluator {\n evaluator: LLMStringEvaluator;\n\n formatEvaluatorInputs: EvaluatorInputFormatter;\n\n isStringEvaluator: boolean;\n\n evaluationName: string;\n\n constructor(\n evaluator: LLMStringEvaluator,\n evaluationName: string,\n formatEvaluatorInputs: EvaluatorInputFormatter\n ) {\n this.evaluator = evaluator;\n this.isStringEvaluator = typeof evaluator?.evaluateStrings === \"function\";\n this.evaluationName = evaluationName;\n this.formatEvaluatorInputs = formatEvaluatorInputs;\n }\n\n static async fromEvalConfig(\n config: EvalConfig | keyof EvaluatorType\n ): Promise<PreparedRunEvaluator> {\n const evaluatorType =\n typeof config === \"string\" ? config : config.evaluatorType;\n const evalConfig = typeof config === \"string\" ? ({} as EvalConfig) : config;\n const evaluator = await loadEvaluator(evaluatorType, evalConfig);\n const feedbackKey = evalConfig?.feedbackKey ?? evaluator?.evaluationName;\n if (!isLLMStringEvaluator(evaluator)) {\n throw new Error(\n `Evaluator of type ${evaluatorType} not yet supported. ` +\n \"Please use a string evaluator, or implement your \" +\n \"evaluation logic as a custom evaluator.\"\n );\n }\n if (!feedbackKey) {\n throw new Error(\n `Evaluator of type ${evaluatorType} must have an evaluationName` +\n ` or feedbackKey. Please manually provide a feedbackKey in the EvalConfig.`\n );\n }\n return new PreparedRunEvaluator(\n evaluator as LLMStringEvaluator,\n feedbackKey,\n evalConfig?.formatEvaluatorInputs\n );\n }\n\n /**\n * Evaluates a run with an optional example and returns the evaluation result.\n * @param run The run to evaluate.\n * @param example The optional example to use for evaluation.\n * @returns A promise that extracts to the evaluation result.\n */\n async evaluateRun(run: Run, example?: Example): Promise<EvaluationResult> {\n const { prediction, input, reference } = this.formatEvaluatorInputs({\n rawInput: run.inputs,\n rawPrediction: run.outputs,\n rawReferenceOutput: example?.outputs,\n run,\n });\n const extractor = new SingleRunIdExtractor();\n const tracer = new LangChainTracer({ projectName: \"evaluators\" });\n if (this.isStringEvaluator) {\n const evalResult = await this.evaluator.evaluateStrings(\n {\n prediction: prediction as string,\n reference: reference as string,\n input: input as string,\n },\n {\n callbacks: [extractor, tracer],\n }\n );\n const runId = await extractor.extract();\n return {\n key: this.evaluationName,\n comment: evalResult?.reasoning,\n sourceRunId: runId,\n ...evalResult,\n };\n }\n throw new Error(\n \"Evaluator not yet supported. \" +\n \"Please use a string evaluator, or implement your \" +\n \"evaluation logic as a custom evaluator.\"\n );\n }\n}\n\nclass LoadedEvalConfig {\n constructor(public evaluators: (RunEvaluator | DynamicRunEvaluator)[]) {}\n\n static async fromRunEvalConfig(\n config: RunEvalConfig<keyof EvaluatorType>\n ): Promise<LoadedEvalConfig> {\n // Custom evaluators are applied \"as-is\"\n const customEvaluators = (\n config?.customEvaluators ?? config.evaluators?.filter(isCustomEvaluator)\n )?.map((evaluator) => {\n if (typeof evaluator === \"function\") {\n return new DynamicRunEvaluator(evaluator);\n } else {\n return evaluator;\n }\n });\n\n const offTheShelfEvaluators = await Promise.all(\n config?.evaluators\n ?.filter(isOffTheShelfEvaluator)\n ?.map(\n async (evaluator) =>\n await PreparedRunEvaluator.fromEvalConfig(evaluator)\n ) ?? []\n );\n return new LoadedEvalConfig(\n (customEvaluators ?? []).concat(offTheShelfEvaluators ?? [])\n );\n }\n}\n\nexport interface RunOnDatasetParams\n extends Omit<RunEvalConfig, \"customEvaluators\"> {\n /**\n * Name of the project for logging and tracking.\n */\n projectName?: string;\n\n /**\n * Additional metadata for the project.\n */\n projectMetadata?: Record<string, unknown>;\n\n /**\n * Client instance for LangSmith service interaction.\n */\n client?: Client;\n\n /**\n * Maximum concurrency level for dataset processing.\n */\n maxConcurrency?: number;\n\n /**\n * @deprecated Pass keys directly to the RunOnDatasetParams instead\n */\n evaluationConfig?: RunEvalConfig;\n}\n\n/**\n * Internals expect a constructor () -> Runnable. This function wraps/coerces\n * the provided LangChain object, custom function, or factory function into\n * a constructor of a runnable.\n * @param modelOrFactory The model or factory to create a wrapped model from.\n * @returns A function that returns the wrapped model.\n * @throws Error if the modelOrFactory is invalid.\n */\nconst createWrappedModel = async (modelOrFactory: ChainOrFactory) => {\n if (Runnable.isRunnable(modelOrFactory)) {\n return () => modelOrFactory;\n }\n if (typeof modelOrFactory === \"function\") {\n if (isLangsmithTraceableFunction(modelOrFactory)) {\n const wrappedModel = new RunnableTraceable({ func: modelOrFactory });\n return () => wrappedModel;\n }\n\n try {\n // If it works with no arguments, assume it's a factory\n let res = (modelOrFactory as () => Runnable)();\n if (\n res &&\n typeof (res as unknown as Promise<Runnable>).then === \"function\"\n ) {\n res = await res;\n }\n return modelOrFactory as () => Runnable;\n } catch {\n // Otherwise, it's a custom UDF, and we'll wrap\n // the function in a lambda\n const wrappedModel = new RunnableLambda({ func: modelOrFactory });\n return () => wrappedModel;\n }\n }\n throw new Error(\"Invalid modelOrFactory\");\n};\n\nconst loadExamples = async ({\n datasetName,\n client,\n projectName,\n}: {\n datasetName: string;\n client: Client;\n projectName: string;\n maxConcurrency: number;\n}) => {\n const exampleIterator = client.listExamples({ datasetName });\n const configs: RunnableConfig[] = [];\n const runExtractors = [];\n const examples = [];\n for await (const example of exampleIterator) {\n const runExtractor = new SingleRunExtractor();\n configs.push({\n callbacks: [\n new LangChainTracer({ exampleId: example.id, projectName }),\n runExtractor,\n ],\n });\n examples.push(example);\n runExtractors.push(runExtractor);\n }\n return {\n configs,\n examples,\n runExtractors,\n };\n};\n\nconst applyEvaluators = async ({\n evaluation,\n runs,\n examples,\n client,\n maxConcurrency,\n}: {\n evaluation: LoadedEvalConfig;\n runs: Run[];\n examples: Example[];\n client: Client;\n maxConcurrency: number;\n}): Promise<{\n [key: string]: {\n execution_time?: number;\n run_id: string;\n feedback: Feedback[];\n };\n}> => {\n // TODO: Parallelize and/or put in callbacks to speed up evals.\n const { evaluators } = evaluation;\n const progress = new ProgressBar({\n total: examples.length,\n format: \"Running Evaluators: {bar} {percentage}% | {value}/{total}\\n\",\n });\n const caller = new AsyncCaller({\n maxConcurrency,\n });\n const requests = runs.map(\n async (\n run,\n i\n ): Promise<{\n run_id: string;\n execution_time?: number;\n feedback: Feedback[];\n }> =>\n caller.call(async () => {\n const evaluatorResults = await Promise.allSettled(\n evaluators.map((evaluator) =>\n client.evaluateRun(run, evaluator, {\n referenceExample: examples[i],\n loadChildRuns: false,\n })\n )\n );\n progress.increment();\n return {\n execution_time:\n run?.end_time && run.start_time\n ? new Date(run.end_time).getTime() -\n new Date(run.start_time).getTime()\n : undefined,\n feedback: evaluatorResults.map((evalResult) =>\n evalResult.status === \"fulfilled\"\n ? evalResult.value\n : evalResult.reason\n ),\n run_id: run.id,\n };\n })\n );\n const results = await Promise.all(requests);\n\n return results.reduce(\n (acc, result, i) => ({\n ...acc,\n [examples[i].id]: result,\n }),\n {}\n );\n};\n\nexport type EvalResults = {\n projectName: string;\n results: {\n [key: string]: {\n execution_time?: number;\n run_id: string;\n feedback: Feedback[];\n };\n };\n};\n\nconst getExamplesInputs = (\n examples: Example[],\n chainOrFactory: ChainOrFactory,\n dataType?: DataType\n) => {\n if (dataType === \"chat\") {\n // For some batty reason, we store the chat dataset differently.\n // { type: \"system\", data: { content: inputs.input } },\n // But we need to create AIMesage, SystemMessage, etc.\n return examples.map(({ inputs }) =>\n mapStoredMessagesToChatMessages(inputs.input)\n );\n }\n // If it's a language model and ALL example inputs have a single value,\n // then we can be friendly and flatten the inputs to a list of strings.\n const isLanguageModel =\n typeof chainOrFactory === \"object\" &&\n typeof (chainOrFactory as BaseLanguageModel)._llmType === \"function\";\n if (\n isLanguageModel &&\n examples.every(({ inputs }) => Object.keys(inputs).length === 1)\n ) {\n return examples.map(({ inputs }) => Object.values(inputs)[0]);\n }\n return examples.map(({ inputs }) => inputs);\n};\n\n/**\n * Evaluates a given model or chain against a specified LangSmith dataset.\n *\n * This function fetches example records from the specified dataset,\n * runs the model or chain against each example, and returns the evaluation\n * results.\n *\n * @param chainOrFactory - A model or factory/constructor function to be evaluated. It can be a\n * Runnable instance, a factory function that returns a Runnable, or a user-defined\n * function or factory.\n *\n * @param datasetName - The name of the dataset against which the evaluation will be\n * performed. This dataset should already be defined and contain the relevant data\n * for evaluation.\n *\n * @param options - (Optional) Additional parameters for the evaluation process:\n * - `evaluators` (RunEvalType[]): Evaluators to apply to a dataset run.\n * - `formatEvaluatorInputs` (EvaluatorInputFormatter): Convert the evaluation data into formats that can be used by the evaluator.\n * - `projectName` (string): Name of the project for logging and tracking.\n * - `projectMetadata` (Record<string, unknown>): Additional metadata for the project.\n * - `client` (Client): Client instance for LangSmith service interaction.\n * - `maxConcurrency` (number): Maximum concurrency level for dataset processing.\n *\n * @returns A promise that resolves to an `EvalResults` object. This object includes\n * detailed results of the evaluation, such as execution time, run IDs, and feedback\n * for each entry in the dataset.\n *\n * @example\n * ```typescript\n * // Example usage for evaluating a model on a dataset\n * async function evaluateModel() {\n * const chain = /* ...create your model or chain...*\\//\n * const datasetName = 'example-dataset';\n * const client = new Client(/* ...config... *\\//);\n *\n * const results = await runOnDataset(chain, datasetName, {\n * evaluators: [/* ...evaluators... *\\//],\n * client,\n * });\n *\n * console.log('Evaluation Results:', results);\n * }\n *\n * evaluateModel();\n * ```\n * In this example, `runOnDataset` is used to evaluate a language model (or a chain of models) against\n * a dataset named 'example-dataset'. The evaluation process is configured using `RunOnDatasetParams[\"evaluators\"]`, which can\n * include both standard and custom evaluators. The `Client` instance is used to interact with LangChain services.\n * The function returns the evaluation results, which can be logged or further processed as needed.\n */\n\nexport async function runOnDataset(\n chainOrFactory: ChainOrFactory,\n datasetName: string,\n options?: RunOnDatasetParams\n) {\n const {\n projectName,\n projectMetadata,\n client,\n maxConcurrency,\n }: RunOnDatasetParams = options ?? {};\n\n const evaluationConfig: RunEvalConfig | undefined =\n options?.evaluationConfig ??\n (options?.evaluators != null\n ? {\n evaluators: options.evaluators,\n formatEvaluatorInputs: options.formatEvaluatorInputs,\n }\n : undefined);\n\n const wrappedModel = await createWrappedModel(chainOrFactory);\n const testClient = client ?? new Client();\n const testProjectName = projectName ?? randomName();\n const dataset = await testClient.readDataset({ datasetName });\n const datasetId = dataset.id;\n const testConcurrency = maxConcurrency ?? 5;\n const { configs, examples, runExtractors } = await loadExamples({\n datasetName,\n client: testClient,\n projectName: testProjectName,\n maxConcurrency: testConcurrency,\n });\n\n await testClient.createProject({\n projectName: testProjectName,\n referenceDatasetId: datasetId,\n projectExtra: { metadata: { ...projectMetadata } },\n });\n const wrappedRunnable: Runnable = new RunnableLambda({\n func: wrappedModel,\n }).withConfig({ runName: \"evaluationRun\" });\n const runInputs = getExamplesInputs(\n examples,\n chainOrFactory,\n dataset.data_type\n );\n const progress = new ProgressBar({\n total: runInputs.length,\n format: \"Predicting: {bar} {percentage}% | {value}/{total}\",\n });\n // TODO: Collect the runs as well.\n await wrappedRunnable\n .withListeners({\n onEnd: () => progress.increment(),\n })\n // TODO: Insert evaluation inline for immediate feedback.\n .batch(runInputs, configs, {\n maxConcurrency,\n returnExceptions: true,\n });\n\n progress.complete();\n const runs: Run[] = [];\n for (let i = 0; i < examples.length; i += 1) {\n runs.push(await runExtractors[i].extract());\n }\n let evalResults: Record<\n string,\n { run_id: string; execution_time?: number; feedback: Feedback[] }\n > = {};\n if (evaluationConfig) {\n const loadedEvalConfig = await LoadedEvalConfig.fromRunEvalConfig(\n evaluationConfig\n );\n evalResults = await applyEvaluators({\n evaluation: loadedEvalConfig,\n runs,\n examples,\n client: testClient,\n maxConcurrency: testConcurrency,\n });\n }\n const results: EvalResults = {\n projectName: testProjectName,\n results: evalResults ?? {},\n };\n return results;\n}\n\nfunction isLangsmithTraceableFunction(x: unknown): x is AnyTraceableFunction {\n return typeof x === \"function\" && \"langsmith:traceable\" in x;\n}\n"],"mappings":"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"}
@@ -1,15 +1,10 @@
1
1
  import { RunEvalConfig } from "./config.cjs";
2
2
  import { Runnable } from "@langchain/core/runnables";
3
- import { TraceableFunction } from "langsmith/singletons/traceable";
4
3
  import { Client, Feedback } from "langsmith";
4
+ import { TraceableFunction } from "langsmith/singletons/traceable";
5
5
 
6
6
  //#region src/smith/runner_utils.d.ts
7
- type ChainOrFactory = Runnable | (() => Runnable) | AnyTraceableFunction
8
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
9
- | ((obj: any) => any)
10
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
11
- | ((obj: any) => Promise<any>) | (() => (obj: unknown) => unknown) | (() => (obj: unknown) => Promise<unknown>);
12
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
7
+ type ChainOrFactory = Runnable | (() => Runnable) | AnyTraceableFunction | ((obj: any) => any) | ((obj: any) => Promise<any>) | (() => (obj: unknown) => unknown) | (() => (obj: unknown) => Promise<unknown>);
13
8
  type AnyTraceableFunction = TraceableFunction<(...any: any[]) => any>;
14
9
  interface RunOnDatasetParams extends Omit<RunEvalConfig, "customEvaluators"> {
15
10
  /**
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runner_utils.d.cts","names":["Runnable","Client","Feedback","TraceableFunction","RunEvalConfig","ChainOrFactory","AnyTraceableFunction","Promise","RunOnDatasetParams","Record","Omit","EvalResults","runOnDataset"],"sources":["../../src/smith/runner_utils.d.ts"],"sourcesContent":["import { Runnable } from \"@langchain/core/runnables\";\nimport { Client, Feedback } from \"langsmith\";\nimport type { TraceableFunction } from \"langsmith/singletons/traceable\";\nimport { type RunEvalConfig } from \"./config.js\";\nexport type ChainOrFactory = Runnable | (() => Runnable) | AnyTraceableFunction | ((obj: any) => any) | ((obj: any) => Promise<any>) | (() => (obj: unknown) => unknown) | (() => (obj: unknown) => Promise<unknown>);\ntype AnyTraceableFunction = TraceableFunction<(...any: any[]) => any>;\nexport interface RunOnDatasetParams extends Omit<RunEvalConfig, \"customEvaluators\"> {\n /**\n * Name of the project for logging and tracking.\n */\n projectName?: string;\n /**\n * Additional metadata for the project.\n */\n projectMetadata?: Record<string, unknown>;\n /**\n * Client instance for LangSmith service interaction.\n */\n client?: Client;\n /**\n * Maximum concurrency level for dataset processing.\n */\n maxConcurrency?: number;\n /**\n * @deprecated Pass keys directly to the RunOnDatasetParams instead\n */\n evaluationConfig?: RunEvalConfig;\n}\nexport type EvalResults = {\n projectName: string;\n results: {\n [key: string]: {\n execution_time?: number;\n run_id: string;\n feedback: Feedback[];\n };\n };\n};\n/**\n * Evaluates a given model or chain against a specified LangSmith dataset.\n *\n * This function fetches example records from the specified dataset,\n * runs the model or chain against each example, and returns the evaluation\n * results.\n *\n * @param chainOrFactory - A model or factory/constructor function to be evaluated. It can be a\n * Runnable instance, a factory function that returns a Runnable, or a user-defined\n * function or factory.\n *\n * @param datasetName - The name of the dataset against which the evaluation will be\n * performed. This dataset should already be defined and contain the relevant data\n * for evaluation.\n *\n * @param options - (Optional) Additional parameters for the evaluation process:\n * - `evaluators` (RunEvalType[]): Evaluators to apply to a dataset run.\n * - `formatEvaluatorInputs` (EvaluatorInputFormatter): Convert the evaluation data into formats that can be used by the evaluator.\n * - `projectName` (string): Name of the project for logging and tracking.\n * - `projectMetadata` (Record<string, unknown>): Additional metadata for the project.\n * - `client` (Client): Client instance for LangSmith service interaction.\n * - `maxConcurrency` (number): Maximum concurrency level for dataset processing.\n *\n * @returns A promise that resolves to an `EvalResults` object. This object includes\n * detailed results of the evaluation, such as execution time, run IDs, and feedback\n * for each entry in the dataset.\n *\n * @example\n * ```typescript\n * // Example usage for evaluating a model on a dataset\n * async function evaluateModel() {\n * const chain = /* ...create your model or chain...*\\//\n * const datasetName = 'example-dataset';\n * const client = new Client(/* ...config... *\\//);\n *\n * const results = await runOnDataset(chain, datasetName, {\n * evaluators: [/* ...evaluators... *\\//],\n * client,\n * });\n *\n * console.log('Evaluation Results:', results);\n * }\n *\n * evaluateModel();\n * ```\n * In this example, `runOnDataset` is used to evaluate a language model (or a chain of models) against\n * a dataset named 'example-dataset'. The evaluation process is configured using `RunOnDatasetParams[\"evaluators\"]`, which can\n * include both standard and custom evaluators. The `Client` instance is used to interact with LangChain services.\n * The function returns the evaluation results, which can be logged or further processed as needed.\n */\nexport declare function runOnDataset(chainOrFactory: ChainOrFactory, datasetName: string, options?: RunOnDatasetParams): Promise<EvalResults>;\nexport {};\n//# sourceMappingURL=runner_utils.d.ts.map"],"mappings":";;;;;;KAIYK,cAAAA,GAAiBL,kBAAkBA,YAAYM,4DAA4DC,6EAA6EA;KAC/LD,oBAAAA,GAAuBH;AADhBE,UAEKG,kBAAAA,SAA2BE,IAFlB,CAEuBN,aAFvB,EAAA,kBAAA,CAAA,CAAA;EAAGJ;;;EAA0FO,WAAAA,CAAAA,EAAAA,MAAAA;EAA6EA;AAAO;AAAW;EAErMC,eAAAA,CAAAA,EAQKC,MARa,CAAA,MAAA,EAAA,OAAA,CAAA;EAAcL;;;EAoB1BA,MAAAA,CAAAA,EARVH,MAQUG;EApBqBM;AAAI;AAsBhD;EA4DwBE,cAAAA,CAAY,EAAA,MAAA;EAAiBP;;;EAAoEE,gBAAAA,CAAAA,EA9DlGH,aA8DkGG;AAAO;KA5DpHI,WAAAA;;;;;;gBAMUT;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAsDEU,YAAAA,iBAA6BP,+CAA+CG,qBAAqBD,QAAQI"}
@@ -1,15 +1,10 @@
1
1
  import { RunEvalConfig } from "./config.js";
2
2
  import { Runnable } from "@langchain/core/runnables";
3
- import { TraceableFunction } from "langsmith/singletons/traceable";
4
3
  import { Client, Feedback } from "langsmith";
4
+ import { TraceableFunction } from "langsmith/singletons/traceable";
5
5
 
6
6
  //#region src/smith/runner_utils.d.ts
7
- type ChainOrFactory = Runnable | (() => Runnable) | AnyTraceableFunction
8
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
9
- | ((obj: any) => any)
10
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
11
- | ((obj: any) => Promise<any>) | (() => (obj: unknown) => unknown) | (() => (obj: unknown) => Promise<unknown>);
12
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
7
+ type ChainOrFactory = Runnable | (() => Runnable) | AnyTraceableFunction | ((obj: any) => any) | ((obj: any) => Promise<any>) | (() => (obj: unknown) => unknown) | (() => (obj: unknown) => Promise<unknown>);
13
8
  type AnyTraceableFunction = TraceableFunction<(...any: any[]) => any>;
14
9
  interface RunOnDatasetParams extends Omit<RunEvalConfig, "customEvaluators"> {
15
10
  /**
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runner_utils.d.ts","names":["Runnable","Client","Feedback","TraceableFunction","RunEvalConfig","ChainOrFactory","AnyTraceableFunction","Promise","RunOnDatasetParams","Record","Omit","EvalResults","runOnDataset"],"sources":["../../src/smith/runner_utils.d.ts"],"sourcesContent":["import { Runnable } from \"@langchain/core/runnables\";\nimport { Client, Feedback } from \"langsmith\";\nimport type { TraceableFunction } from \"langsmith/singletons/traceable\";\nimport { type RunEvalConfig } from \"./config.js\";\nexport type ChainOrFactory = Runnable | (() => Runnable) | AnyTraceableFunction | ((obj: any) => any) | ((obj: any) => Promise<any>) | (() => (obj: unknown) => unknown) | (() => (obj: unknown) => Promise<unknown>);\ntype AnyTraceableFunction = TraceableFunction<(...any: any[]) => any>;\nexport interface RunOnDatasetParams extends Omit<RunEvalConfig, \"customEvaluators\"> {\n /**\n * Name of the project for logging and tracking.\n */\n projectName?: string;\n /**\n * Additional metadata for the project.\n */\n projectMetadata?: Record<string, unknown>;\n /**\n * Client instance for LangSmith service interaction.\n */\n client?: Client;\n /**\n * Maximum concurrency level for dataset processing.\n */\n maxConcurrency?: number;\n /**\n * @deprecated Pass keys directly to the RunOnDatasetParams instead\n */\n evaluationConfig?: RunEvalConfig;\n}\nexport type EvalResults = {\n projectName: string;\n results: {\n [key: string]: {\n execution_time?: number;\n run_id: string;\n feedback: Feedback[];\n };\n };\n};\n/**\n * Evaluates a given model or chain against a specified LangSmith dataset.\n *\n * This function fetches example records from the specified dataset,\n * runs the model or chain against each example, and returns the evaluation\n * results.\n *\n * @param chainOrFactory - A model or factory/constructor function to be evaluated. It can be a\n * Runnable instance, a factory function that returns a Runnable, or a user-defined\n * function or factory.\n *\n * @param datasetName - The name of the dataset against which the evaluation will be\n * performed. This dataset should already be defined and contain the relevant data\n * for evaluation.\n *\n * @param options - (Optional) Additional parameters for the evaluation process:\n * - `evaluators` (RunEvalType[]): Evaluators to apply to a dataset run.\n * - `formatEvaluatorInputs` (EvaluatorInputFormatter): Convert the evaluation data into formats that can be used by the evaluator.\n * - `projectName` (string): Name of the project for logging and tracking.\n * - `projectMetadata` (Record<string, unknown>): Additional metadata for the project.\n * - `client` (Client): Client instance for LangSmith service interaction.\n * - `maxConcurrency` (number): Maximum concurrency level for dataset processing.\n *\n * @returns A promise that resolves to an `EvalResults` object. This object includes\n * detailed results of the evaluation, such as execution time, run IDs, and feedback\n * for each entry in the dataset.\n *\n * @example\n * ```typescript\n * // Example usage for evaluating a model on a dataset\n * async function evaluateModel() {\n * const chain = /* ...create your model or chain...*\\//\n * const datasetName = 'example-dataset';\n * const client = new Client(/* ...config... *\\//);\n *\n * const results = await runOnDataset(chain, datasetName, {\n * evaluators: [/* ...evaluators... *\\//],\n * client,\n * });\n *\n * console.log('Evaluation Results:', results);\n * }\n *\n * evaluateModel();\n * ```\n * In this example, `runOnDataset` is used to evaluate a language model (or a chain of models) against\n * a dataset named 'example-dataset'. The evaluation process is configured using `RunOnDatasetParams[\"evaluators\"]`, which can\n * include both standard and custom evaluators. The `Client` instance is used to interact with LangChain services.\n * The function returns the evaluation results, which can be logged or further processed as needed.\n */\nexport declare function runOnDataset(chainOrFactory: ChainOrFactory, datasetName: string, options?: RunOnDatasetParams): Promise<EvalResults>;\nexport {};\n//# sourceMappingURL=runner_utils.d.ts.map"],"mappings":";;;;;;KAIYK,cAAAA,GAAiBL,kBAAkBA,YAAYM,4DAA4DC,6EAA6EA;KAC/LD,oBAAAA,GAAuBH;AADhBE,UAEKG,kBAAAA,SAA2BE,IAFlB,CAEuBN,aAFvB,EAAA,kBAAA,CAAA,CAAA;EAAGJ;;;EAA0FO,WAAAA,CAAAA,EAAAA,MAAAA;EAA6EA;AAAO;AAAW;EAErMC,eAAAA,CAAAA,EAQKC,MARa,CAAA,MAAA,EAAA,OAAA,CAAA;EAAcL;;;EAoB1BA,MAAAA,CAAAA,EARVH,MAQUG;EApBqBM;AAAI;AAsBhD;EA4DwBE,cAAAA,CAAY,EAAA,MAAA;EAAiBP;;;EAAoEE,gBAAAA,CAAAA,EA9DlGH,aA8DkGG;AAAO;KA5DpHI,WAAAA;;;;;;gBAMUT;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAsDEU,YAAAA,iBAA6BP,+CAA+CG,qBAAqBD,QAAQI"}
@@ -1,7 +1,4 @@
1
1
  import { loadEvaluator } from "../evaluation/loader.js";
2
- import { Client } from "../node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/client.js";
3
- import { RunTree } from "../node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/dist/run_trees.js";
4
- import "../node_modules/.pnpm/langsmith@0.3.74_@opentelemetry_api@1.9.0_openai@5.12.2_ws@8.18.3_bufferutil@4.0.9_utf-8-validate@6.0.5__zod@3.25.76_/node_modules/langsmith/index.js";
5
2
  import { isCustomEvaluator, isOffTheShelfEvaluator } from "./config.js";
6
3
  import { randomName } from "./name_generation.js";
7
4
  import { ProgressBar } from "./progress.js";
@@ -10,6 +7,7 @@ import { mapStoredMessagesToChatMessages } from "@langchain/core/messages";
10
7
  import { BaseTracer } from "@langchain/core/tracers/base";
11
8
  import { LangChainTracer } from "@langchain/core/tracers/tracer_langchain";
12
9
  import { AsyncCaller } from "@langchain/core/utils/async_caller";
10
+ import { Client, RunTree } from "langsmith";
13
11
 
14
12
  //#region src/smith/runner_utils.ts
15
13
  var SingleRunIdExtractor = class {
@@ -1 +1 @@
1
- {"version":3,"file":"runner_utils.js","names":["_chain: Serialized","_inputs: ChainValues","runId: string","run: Run","evaluator: RunEvaluatorLike","example?: Example","evaluator: any","config: RunTreeConfig","callbackManager: CallbackManager","fields: { func: AnyTraceableFunction }","input: RunInput","options?: Partial<RunnableConfig>","evaluator: LLMStringEvaluator","evaluationName: string","formatEvaluatorInputs: EvaluatorInputFormatter","config: EvalConfig | keyof EvaluatorType","evaluators: (RunEvaluator | DynamicRunEvaluator)[]","config: RunEvalConfig<keyof EvaluatorType>","modelOrFactory: ChainOrFactory","configs: RunnableConfig[]","examples: Example[]","chainOrFactory: ChainOrFactory","dataType?: DataType","datasetName: string","options?: RunOnDatasetParams","evaluationConfig: RunEvalConfig | undefined","wrappedRunnable: Runnable","runs: Run[]","evalResults: Record<\n string,\n { run_id: string; execution_time?: number; feedback: Feedback[] }\n >","results: EvalResults","x: unknown"],"sources":["../../src/smith/runner_utils.ts"],"sourcesContent":["import { BaseLanguageModel } from \"@langchain/core/language_models/base\";\nimport { Serialized } from \"@langchain/core/load/serializable\";\nimport { mapStoredMessagesToChatMessages } from \"@langchain/core/messages\";\nimport {\n Runnable,\n RunnableConfig,\n RunnableLambda,\n getCallbackManagerForConfig,\n} from \"@langchain/core/runnables\";\nimport { LangChainTracer } from \"@langchain/core/tracers/tracer_langchain\";\nimport { BaseTracer } from \"@langchain/core/tracers/base\";\nimport { ChainValues } from \"@langchain/core/utils/types\";\nimport { AsyncCaller } from \"@langchain/core/utils/async_caller\";\nimport type {\n CallbackManager,\n CallbackManagerForChainRun,\n} from \"@langchain/core/callbacks/manager\";\nimport {\n Client,\n Example,\n Feedback,\n Run,\n RunTree,\n RunTreeConfig,\n} from \"langsmith\";\nimport { EvaluationResult, RunEvaluator } from \"langsmith/evaluation\";\nimport { DataType } from \"langsmith/schemas\";\nimport type { TraceableFunction } from \"langsmith/singletons/traceable\";\nimport { LLMStringEvaluator } from \"../evaluation/base.js\";\nimport { loadEvaluator } from \"../evaluation/loader.js\";\nimport { EvaluatorType } from \"../evaluation/types.js\";\nimport {\n isOffTheShelfEvaluator,\n type DynamicRunEvaluatorParams,\n type EvalConfig,\n type EvaluatorInputFormatter,\n type RunEvalConfig,\n type RunEvaluatorLike,\n isCustomEvaluator,\n} from \"./config.js\";\nimport { randomName } from \"./name_generation.js\";\nimport { ProgressBar } from \"./progress.js\";\n\nexport type ChainOrFactory =\n | Runnable\n | (() => Runnable)\n | AnyTraceableFunction\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n | ((obj: any) => any)\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n | ((obj: any) => Promise<any>)\n | (() => (obj: unknown) => unknown)\n | (() => (obj: unknown) => Promise<unknown>);\n\nclass SingleRunIdExtractor {\n runIdPromiseResolver: (runId: string) => void;\n\n runIdPromise: Promise<string>;\n\n constructor() {\n this.runIdPromise = new Promise<string>((extract) => {\n this.runIdPromiseResolver = extract;\n });\n }\n\n handleChainStart = (\n _chain: Serialized,\n _inputs: ChainValues,\n runId: string\n ) => {\n this.runIdPromiseResolver(runId);\n };\n\n async extract(): Promise<string> {\n return this.runIdPromise;\n }\n}\n\nclass SingleRunExtractor extends BaseTracer {\n runPromiseResolver: (run: Run) => void;\n\n runPromise: Promise<Run>;\n\n /** The name of the callback handler. */\n name = \"single_run_extractor\";\n\n constructor() {\n super();\n this.runPromise = new Promise<Run>((extract) => {\n this.runPromiseResolver = extract;\n });\n }\n\n async persistRun(run: Run) {\n this.runPromiseResolver(run);\n }\n\n async extract(): Promise<Run> {\n return this.runPromise;\n }\n}\n\n/**\n * Wraps an evaluator function + implements the RunEvaluator interface.\n */\nclass DynamicRunEvaluator implements RunEvaluator {\n evaluator: RunnableLambda<DynamicRunEvaluatorParams, EvaluationResult>;\n\n constructor(evaluator: RunEvaluatorLike) {\n this.evaluator = new RunnableLambda({ func: evaluator });\n }\n\n /**\n * Evaluates a run with an optional example and returns the evaluation result.\n * @param run The run to evaluate.\n * @param example The optional example to use for evaluation.\n * @returns A promise that extracts to the evaluation result.\n */\n async evaluateRun(run: Run, example?: Example): Promise<EvaluationResult> {\n const extractor = new SingleRunIdExtractor();\n const tracer = new LangChainTracer({ projectName: \"evaluators\" });\n const result = await this.evaluator.invoke(\n {\n run,\n example,\n input: run.inputs,\n prediction: run.outputs,\n reference: example?.outputs,\n },\n {\n callbacks: [extractor, tracer],\n }\n );\n const runId = await extractor.extract();\n return {\n sourceRunId: runId,\n ...result,\n };\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction isLLMStringEvaluator(evaluator: any): evaluator is LLMStringEvaluator {\n return evaluator && typeof evaluator.evaluateStrings === \"function\";\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype AnyTraceableFunction = TraceableFunction<(...any: any[]) => any>;\n\n/**\n * Internal implementation of RunTree, which uses the\n * provided callback manager instead of the internal LangSmith client.\n *\n * The goal of this class is to ensure seamless interop when intergrated\n * with other Runnables.\n */\nclass CallbackManagerRunTree extends RunTree {\n callbackManager: CallbackManager;\n\n activeCallbackManager: CallbackManagerForChainRun | undefined = undefined;\n\n constructor(config: RunTreeConfig, callbackManager: CallbackManager) {\n super(config);\n\n this.callbackManager = callbackManager;\n }\n\n createChild(config: RunTreeConfig): CallbackManagerRunTree {\n const child = new CallbackManagerRunTree(\n {\n ...config,\n parent_run: this,\n project_name: this.project_name,\n client: this.client,\n },\n this.activeCallbackManager?.getChild() ?? this.callbackManager\n );\n this.child_runs.push(child);\n return child;\n }\n\n async postRun(): Promise<void> {\n // how it is translated in comparison to basic RunTree?\n this.activeCallbackManager = await this.callbackManager.handleChainStart(\n typeof this.serialized !== \"object\" &&\n this.serialized != null &&\n \"lc\" in this.serialized\n ? this.serialized\n : {\n id: [\"langchain\", \"smith\", \"CallbackManagerRunTree\"],\n lc: 1,\n type: \"not_implemented\",\n },\n this.inputs,\n this.id,\n this.run_type,\n undefined,\n undefined,\n this.name\n );\n }\n\n async patchRun(): Promise<void> {\n if (this.error) {\n await this.activeCallbackManager?.handleChainError(\n this.error,\n this.id,\n this.parent_run?.id,\n undefined,\n undefined\n );\n } else {\n await this.activeCallbackManager?.handleChainEnd(\n this.outputs ?? {},\n this.id,\n this.parent_run?.id,\n undefined,\n undefined\n );\n }\n }\n}\n\nclass RunnableTraceable<RunInput, RunOutput> extends Runnable<\n RunInput,\n RunOutput\n> {\n lc_serializable = false;\n\n lc_namespace = [\"langchain_core\", \"runnables\"];\n\n protected func: AnyTraceableFunction;\n\n constructor(fields: { func: AnyTraceableFunction }) {\n super(fields);\n\n if (!isLangsmithTraceableFunction(fields.func)) {\n throw new Error(\n \"RunnableTraceable requires a function that is wrapped in traceable higher-order function\"\n );\n }\n\n this.func = fields.func;\n }\n\n async invoke(input: RunInput, options?: Partial<RunnableConfig>) {\n const [config] = this._getOptionsList(options ?? {}, 1);\n const callbackManager = await getCallbackManagerForConfig(config);\n\n const partialConfig =\n \"langsmith:traceable\" in this.func\n ? (this.func[\"langsmith:traceable\"] as RunTreeConfig)\n : { name: \"<lambda>\" };\n\n if (!callbackManager) throw new Error(\"CallbackManager not found\");\n const runTree = new CallbackManagerRunTree(\n {\n ...partialConfig,\n parent_run: callbackManager?._parentRunId\n ? new RunTree({ name: \"<parent>\", id: callbackManager?._parentRunId })\n : undefined,\n },\n callbackManager\n );\n\n if (\n typeof input === \"object\" &&\n input != null &&\n Object.keys(input).length === 1\n ) {\n if (\"args\" in input && Array.isArray(input)) {\n return (await this.func(runTree, ...input)) as RunOutput;\n }\n\n if (\n \"input\" in input &&\n !(\n typeof input === \"object\" &&\n input != null &&\n !Array.isArray(input) &&\n // eslint-disable-next-line no-instanceof/no-instanceof\n !(input instanceof Date)\n )\n ) {\n try {\n return (await this.func(runTree, input.input)) as RunOutput;\n } catch {\n return (await this.func(runTree, input)) as RunOutput;\n }\n }\n }\n\n return (await this.func(runTree, input)) as RunOutput;\n }\n}\n\n/**\n * Wraps an off-the-shelf evaluator (loaded using loadEvaluator; of EvaluatorType[T])\n * and composes with a prepareData function so the user can prepare the trace and\n * dataset data for the evaluator.\n */\nclass PreparedRunEvaluator implements RunEvaluator {\n evaluator: LLMStringEvaluator;\n\n formatEvaluatorInputs: EvaluatorInputFormatter;\n\n isStringEvaluator: boolean;\n\n evaluationName: string;\n\n constructor(\n evaluator: LLMStringEvaluator,\n evaluationName: string,\n formatEvaluatorInputs: EvaluatorInputFormatter\n ) {\n this.evaluator = evaluator;\n this.isStringEvaluator = typeof evaluator?.evaluateStrings === \"function\";\n this.evaluationName = evaluationName;\n this.formatEvaluatorInputs = formatEvaluatorInputs;\n }\n\n static async fromEvalConfig(\n config: EvalConfig | keyof EvaluatorType\n ): Promise<PreparedRunEvaluator> {\n const evaluatorType =\n typeof config === \"string\" ? config : config.evaluatorType;\n const evalConfig = typeof config === \"string\" ? ({} as EvalConfig) : config;\n const evaluator = await loadEvaluator(evaluatorType, evalConfig);\n const feedbackKey = evalConfig?.feedbackKey ?? evaluator?.evaluationName;\n if (!isLLMStringEvaluator(evaluator)) {\n throw new Error(\n `Evaluator of type ${evaluatorType} not yet supported. ` +\n \"Please use a string evaluator, or implement your \" +\n \"evaluation logic as a custom evaluator.\"\n );\n }\n if (!feedbackKey) {\n throw new Error(\n `Evaluator of type ${evaluatorType} must have an evaluationName` +\n ` or feedbackKey. Please manually provide a feedbackKey in the EvalConfig.`\n );\n }\n return new PreparedRunEvaluator(\n evaluator as LLMStringEvaluator,\n feedbackKey,\n evalConfig?.formatEvaluatorInputs\n );\n }\n\n /**\n * Evaluates a run with an optional example and returns the evaluation result.\n * @param run The run to evaluate.\n * @param example The optional example to use for evaluation.\n * @returns A promise that extracts to the evaluation result.\n */\n async evaluateRun(run: Run, example?: Example): Promise<EvaluationResult> {\n const { prediction, input, reference } = this.formatEvaluatorInputs({\n rawInput: run.inputs,\n rawPrediction: run.outputs,\n rawReferenceOutput: example?.outputs,\n run,\n });\n const extractor = new SingleRunIdExtractor();\n const tracer = new LangChainTracer({ projectName: \"evaluators\" });\n if (this.isStringEvaluator) {\n const evalResult = await this.evaluator.evaluateStrings(\n {\n prediction: prediction as string,\n reference: reference as string,\n input: input as string,\n },\n {\n callbacks: [extractor, tracer],\n }\n );\n const runId = await extractor.extract();\n return {\n key: this.evaluationName,\n comment: evalResult?.reasoning,\n sourceRunId: runId,\n ...evalResult,\n };\n }\n throw new Error(\n \"Evaluator not yet supported. \" +\n \"Please use a string evaluator, or implement your \" +\n \"evaluation logic as a custom evaluator.\"\n );\n }\n}\n\nclass LoadedEvalConfig {\n constructor(public evaluators: (RunEvaluator | DynamicRunEvaluator)[]) {}\n\n static async fromRunEvalConfig(\n config: RunEvalConfig<keyof EvaluatorType>\n ): Promise<LoadedEvalConfig> {\n // Custom evaluators are applied \"as-is\"\n const customEvaluators = (\n config?.customEvaluators ?? config.evaluators?.filter(isCustomEvaluator)\n )?.map((evaluator) => {\n if (typeof evaluator === \"function\") {\n return new DynamicRunEvaluator(evaluator);\n } else {\n return evaluator;\n }\n });\n\n const offTheShelfEvaluators = await Promise.all(\n config?.evaluators\n ?.filter(isOffTheShelfEvaluator)\n ?.map(\n async (evaluator) =>\n await PreparedRunEvaluator.fromEvalConfig(evaluator)\n ) ?? []\n );\n return new LoadedEvalConfig(\n (customEvaluators ?? []).concat(offTheShelfEvaluators ?? [])\n );\n }\n}\n\nexport interface RunOnDatasetParams\n extends Omit<RunEvalConfig, \"customEvaluators\"> {\n /**\n * Name of the project for logging and tracking.\n */\n projectName?: string;\n\n /**\n * Additional metadata for the project.\n */\n projectMetadata?: Record<string, unknown>;\n\n /**\n * Client instance for LangSmith service interaction.\n */\n client?: Client;\n\n /**\n * Maximum concurrency level for dataset processing.\n */\n maxConcurrency?: number;\n\n /**\n * @deprecated Pass keys directly to the RunOnDatasetParams instead\n */\n evaluationConfig?: RunEvalConfig;\n}\n\n/**\n * Internals expect a constructor () -> Runnable. This function wraps/coerces\n * the provided LangChain object, custom function, or factory function into\n * a constructor of a runnable.\n * @param modelOrFactory The model or factory to create a wrapped model from.\n * @returns A function that returns the wrapped model.\n * @throws Error if the modelOrFactory is invalid.\n */\nconst createWrappedModel = async (modelOrFactory: ChainOrFactory) => {\n if (Runnable.isRunnable(modelOrFactory)) {\n return () => modelOrFactory;\n }\n if (typeof modelOrFactory === \"function\") {\n if (isLangsmithTraceableFunction(modelOrFactory)) {\n const wrappedModel = new RunnableTraceable({ func: modelOrFactory });\n return () => wrappedModel;\n }\n\n try {\n // If it works with no arguments, assume it's a factory\n let res = (modelOrFactory as () => Runnable)();\n if (\n res &&\n typeof (res as unknown as Promise<Runnable>).then === \"function\"\n ) {\n res = await res;\n }\n return modelOrFactory as () => Runnable;\n } catch {\n // Otherwise, it's a custom UDF, and we'll wrap\n // the function in a lambda\n const wrappedModel = new RunnableLambda({ func: modelOrFactory });\n return () => wrappedModel;\n }\n }\n throw new Error(\"Invalid modelOrFactory\");\n};\n\nconst loadExamples = async ({\n datasetName,\n client,\n projectName,\n}: {\n datasetName: string;\n client: Client;\n projectName: string;\n maxConcurrency: number;\n}) => {\n const exampleIterator = client.listExamples({ datasetName });\n const configs: RunnableConfig[] = [];\n const runExtractors = [];\n const examples = [];\n for await (const example of exampleIterator) {\n const runExtractor = new SingleRunExtractor();\n configs.push({\n callbacks: [\n new LangChainTracer({ exampleId: example.id, projectName }),\n runExtractor,\n ],\n });\n examples.push(example);\n runExtractors.push(runExtractor);\n }\n return {\n configs,\n examples,\n runExtractors,\n };\n};\n\nconst applyEvaluators = async ({\n evaluation,\n runs,\n examples,\n client,\n maxConcurrency,\n}: {\n evaluation: LoadedEvalConfig;\n runs: Run[];\n examples: Example[];\n client: Client;\n maxConcurrency: number;\n}): Promise<{\n [key: string]: {\n execution_time?: number;\n run_id: string;\n feedback: Feedback[];\n };\n}> => {\n // TODO: Parallelize and/or put in callbacks to speed up evals.\n const { evaluators } = evaluation;\n const progress = new ProgressBar({\n total: examples.length,\n format: \"Running Evaluators: {bar} {percentage}% | {value}/{total}\\n\",\n });\n const caller = new AsyncCaller({\n maxConcurrency,\n });\n const requests = runs.map(\n async (\n run,\n i\n ): Promise<{\n run_id: string;\n execution_time?: number;\n feedback: Feedback[];\n }> =>\n caller.call(async () => {\n const evaluatorResults = await Promise.allSettled(\n evaluators.map((evaluator) =>\n client.evaluateRun(run, evaluator, {\n referenceExample: examples[i],\n loadChildRuns: false,\n })\n )\n );\n progress.increment();\n return {\n execution_time:\n run?.end_time && run.start_time\n ? new Date(run.end_time).getTime() -\n new Date(run.start_time).getTime()\n : undefined,\n feedback: evaluatorResults.map((evalResult) =>\n evalResult.status === \"fulfilled\"\n ? evalResult.value\n : evalResult.reason\n ),\n run_id: run.id,\n };\n })\n );\n const results = await Promise.all(requests);\n\n return results.reduce(\n (acc, result, i) => ({\n ...acc,\n [examples[i].id]: result,\n }),\n {}\n );\n};\n\nexport type EvalResults = {\n projectName: string;\n results: {\n [key: string]: {\n execution_time?: number;\n run_id: string;\n feedback: Feedback[];\n };\n };\n};\n\nconst getExamplesInputs = (\n examples: Example[],\n chainOrFactory: ChainOrFactory,\n dataType?: DataType\n) => {\n if (dataType === \"chat\") {\n // For some batty reason, we store the chat dataset differently.\n // { type: \"system\", data: { content: inputs.input } },\n // But we need to create AIMesage, SystemMessage, etc.\n return examples.map(({ inputs }) =>\n mapStoredMessagesToChatMessages(inputs.input)\n );\n }\n // If it's a language model and ALL example inputs have a single value,\n // then we can be friendly and flatten the inputs to a list of strings.\n const isLanguageModel =\n typeof chainOrFactory === \"object\" &&\n typeof (chainOrFactory as BaseLanguageModel)._llmType === \"function\";\n if (\n isLanguageModel &&\n examples.every(({ inputs }) => Object.keys(inputs).length === 1)\n ) {\n return examples.map(({ inputs }) => Object.values(inputs)[0]);\n }\n return examples.map(({ inputs }) => inputs);\n};\n\n/**\n * Evaluates a given model or chain against a specified LangSmith dataset.\n *\n * This function fetches example records from the specified dataset,\n * runs the model or chain against each example, and returns the evaluation\n * results.\n *\n * @param chainOrFactory - A model or factory/constructor function to be evaluated. It can be a\n * Runnable instance, a factory function that returns a Runnable, or a user-defined\n * function or factory.\n *\n * @param datasetName - The name of the dataset against which the evaluation will be\n * performed. This dataset should already be defined and contain the relevant data\n * for evaluation.\n *\n * @param options - (Optional) Additional parameters for the evaluation process:\n * - `evaluators` (RunEvalType[]): Evaluators to apply to a dataset run.\n * - `formatEvaluatorInputs` (EvaluatorInputFormatter): Convert the evaluation data into formats that can be used by the evaluator.\n * - `projectName` (string): Name of the project for logging and tracking.\n * - `projectMetadata` (Record<string, unknown>): Additional metadata for the project.\n * - `client` (Client): Client instance for LangSmith service interaction.\n * - `maxConcurrency` (number): Maximum concurrency level for dataset processing.\n *\n * @returns A promise that resolves to an `EvalResults` object. This object includes\n * detailed results of the evaluation, such as execution time, run IDs, and feedback\n * for each entry in the dataset.\n *\n * @example\n * ```typescript\n * // Example usage for evaluating a model on a dataset\n * async function evaluateModel() {\n * const chain = /* ...create your model or chain...*\\//\n * const datasetName = 'example-dataset';\n * const client = new Client(/* ...config... *\\//);\n *\n * const results = await runOnDataset(chain, datasetName, {\n * evaluators: [/* ...evaluators... *\\//],\n * client,\n * });\n *\n * console.log('Evaluation Results:', results);\n * }\n *\n * evaluateModel();\n * ```\n * In this example, `runOnDataset` is used to evaluate a language model (or a chain of models) against\n * a dataset named 'example-dataset'. The evaluation process is configured using `RunOnDatasetParams[\"evaluators\"]`, which can\n * include both standard and custom evaluators. The `Client` instance is used to interact with LangChain services.\n * The function returns the evaluation results, which can be logged or further processed as needed.\n */\n\nexport async function runOnDataset(\n chainOrFactory: ChainOrFactory,\n datasetName: string,\n options?: RunOnDatasetParams\n) {\n const {\n projectName,\n projectMetadata,\n client,\n maxConcurrency,\n }: RunOnDatasetParams = options ?? {};\n\n const evaluationConfig: RunEvalConfig | undefined =\n options?.evaluationConfig ??\n (options?.evaluators != null\n ? {\n evaluators: options.evaluators,\n formatEvaluatorInputs: options.formatEvaluatorInputs,\n }\n : undefined);\n\n const wrappedModel = await createWrappedModel(chainOrFactory);\n const testClient = client ?? new Client();\n const testProjectName = projectName ?? randomName();\n const dataset = await testClient.readDataset({ datasetName });\n const datasetId = dataset.id;\n const testConcurrency = maxConcurrency ?? 5;\n const { configs, examples, runExtractors } = await loadExamples({\n datasetName,\n client: testClient,\n projectName: testProjectName,\n maxConcurrency: testConcurrency,\n });\n\n await testClient.createProject({\n projectName: testProjectName,\n referenceDatasetId: datasetId,\n projectExtra: { metadata: { ...projectMetadata } },\n });\n const wrappedRunnable: Runnable = new RunnableLambda({\n func: wrappedModel,\n }).withConfig({ runName: \"evaluationRun\" });\n const runInputs = getExamplesInputs(\n examples,\n chainOrFactory,\n dataset.data_type\n );\n const progress = new ProgressBar({\n total: runInputs.length,\n format: \"Predicting: {bar} {percentage}% | {value}/{total}\",\n });\n // TODO: Collect the runs as well.\n await wrappedRunnable\n .withListeners({\n onEnd: () => progress.increment(),\n })\n // TODO: Insert evaluation inline for immediate feedback.\n .batch(runInputs, configs, {\n maxConcurrency,\n returnExceptions: true,\n });\n\n progress.complete();\n const runs: Run[] = [];\n for (let i = 0; i < examples.length; i += 1) {\n runs.push(await runExtractors[i].extract());\n }\n let evalResults: Record<\n string,\n { run_id: string; execution_time?: number; feedback: Feedback[] }\n > = {};\n if (evaluationConfig) {\n const loadedEvalConfig = await LoadedEvalConfig.fromRunEvalConfig(\n evaluationConfig\n );\n evalResults = await applyEvaluators({\n evaluation: loadedEvalConfig,\n runs,\n examples,\n client: testClient,\n maxConcurrency: testConcurrency,\n });\n }\n const results: EvalResults = {\n projectName: testProjectName,\n results: evalResults ?? {},\n };\n return results;\n}\n\nfunction isLangsmithTraceableFunction(x: unknown): x is AnyTraceableFunction {\n return typeof x === \"function\" && \"langsmith:traceable\" in x;\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"runner_utils.js","names":["_chain: Serialized","_inputs: ChainValues","runId: string","run: Run","evaluator: RunEvaluatorLike","example?: Example","evaluator: any","config: RunTreeConfig","callbackManager: CallbackManager","fields: { func: AnyTraceableFunction }","input: RunInput","options?: Partial<RunnableConfig>","evaluator: LLMStringEvaluator","evaluationName: string","formatEvaluatorInputs: EvaluatorInputFormatter","config: EvalConfig | keyof EvaluatorType","evaluators: (RunEvaluator | DynamicRunEvaluator)[]","config: RunEvalConfig<keyof EvaluatorType>","modelOrFactory: ChainOrFactory","configs: RunnableConfig[]","examples: Example[]","chainOrFactory: ChainOrFactory","dataType?: DataType","datasetName: string","options?: RunOnDatasetParams","evaluationConfig: RunEvalConfig | undefined","wrappedRunnable: Runnable","runs: Run[]","evalResults: Record<\n string,\n { run_id: string; execution_time?: number; feedback: Feedback[] }\n >","results: EvalResults","x: unknown"],"sources":["../../src/smith/runner_utils.ts"],"sourcesContent":["import { BaseLanguageModel } from \"@langchain/core/language_models/base\";\nimport { Serialized } from \"@langchain/core/load/serializable\";\nimport { mapStoredMessagesToChatMessages } from \"@langchain/core/messages\";\nimport {\n Runnable,\n RunnableConfig,\n RunnableLambda,\n getCallbackManagerForConfig,\n} from \"@langchain/core/runnables\";\nimport { LangChainTracer } from \"@langchain/core/tracers/tracer_langchain\";\nimport { BaseTracer } from \"@langchain/core/tracers/base\";\nimport { ChainValues } from \"@langchain/core/utils/types\";\nimport { AsyncCaller } from \"@langchain/core/utils/async_caller\";\nimport type {\n CallbackManager,\n CallbackManagerForChainRun,\n} from \"@langchain/core/callbacks/manager\";\nimport {\n Client,\n Example,\n Feedback,\n Run,\n RunTree,\n RunTreeConfig,\n} from \"langsmith\";\nimport { EvaluationResult, RunEvaluator } from \"langsmith/evaluation\";\nimport { DataType } from \"langsmith/schemas\";\nimport type { TraceableFunction } from \"langsmith/singletons/traceable\";\nimport { LLMStringEvaluator } from \"../evaluation/base.js\";\nimport { loadEvaluator } from \"../evaluation/loader.js\";\nimport { EvaluatorType } from \"../evaluation/types.js\";\nimport {\n isOffTheShelfEvaluator,\n type DynamicRunEvaluatorParams,\n type EvalConfig,\n type EvaluatorInputFormatter,\n type RunEvalConfig,\n type RunEvaluatorLike,\n isCustomEvaluator,\n} from \"./config.js\";\nimport { randomName } from \"./name_generation.js\";\nimport { ProgressBar } from \"./progress.js\";\n\nexport type ChainOrFactory =\n | Runnable\n | (() => Runnable)\n | AnyTraceableFunction\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n | ((obj: any) => any)\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n | ((obj: any) => Promise<any>)\n | (() => (obj: unknown) => unknown)\n | (() => (obj: unknown) => Promise<unknown>);\n\nclass SingleRunIdExtractor {\n runIdPromiseResolver: (runId: string) => void;\n\n runIdPromise: Promise<string>;\n\n constructor() {\n this.runIdPromise = new Promise<string>((extract) => {\n this.runIdPromiseResolver = extract;\n });\n }\n\n handleChainStart = (\n _chain: Serialized,\n _inputs: ChainValues,\n runId: string\n ) => {\n this.runIdPromiseResolver(runId);\n };\n\n async extract(): Promise<string> {\n return this.runIdPromise;\n }\n}\n\nclass SingleRunExtractor extends BaseTracer {\n runPromiseResolver: (run: Run) => void;\n\n runPromise: Promise<Run>;\n\n /** The name of the callback handler. */\n name = \"single_run_extractor\";\n\n constructor() {\n super();\n this.runPromise = new Promise<Run>((extract) => {\n this.runPromiseResolver = extract;\n });\n }\n\n async persistRun(run: Run) {\n this.runPromiseResolver(run);\n }\n\n async extract(): Promise<Run> {\n return this.runPromise;\n }\n}\n\n/**\n * Wraps an evaluator function + implements the RunEvaluator interface.\n */\nclass DynamicRunEvaluator implements RunEvaluator {\n evaluator: RunnableLambda<DynamicRunEvaluatorParams, EvaluationResult>;\n\n constructor(evaluator: RunEvaluatorLike) {\n this.evaluator = new RunnableLambda({ func: evaluator });\n }\n\n /**\n * Evaluates a run with an optional example and returns the evaluation result.\n * @param run The run to evaluate.\n * @param example The optional example to use for evaluation.\n * @returns A promise that extracts to the evaluation result.\n */\n async evaluateRun(run: Run, example?: Example): Promise<EvaluationResult> {\n const extractor = new SingleRunIdExtractor();\n const tracer = new LangChainTracer({ projectName: \"evaluators\" });\n const result = await this.evaluator.invoke(\n {\n run,\n example,\n input: run.inputs,\n prediction: run.outputs,\n reference: example?.outputs,\n },\n {\n callbacks: [extractor, tracer],\n }\n );\n const runId = await extractor.extract();\n return {\n sourceRunId: runId,\n ...result,\n };\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction isLLMStringEvaluator(evaluator: any): evaluator is LLMStringEvaluator {\n return evaluator && typeof evaluator.evaluateStrings === \"function\";\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype AnyTraceableFunction = TraceableFunction<(...any: any[]) => any>;\n\n/**\n * Internal implementation of RunTree, which uses the\n * provided callback manager instead of the internal LangSmith client.\n *\n * The goal of this class is to ensure seamless interop when intergrated\n * with other Runnables.\n */\nclass CallbackManagerRunTree extends RunTree {\n callbackManager: CallbackManager;\n\n activeCallbackManager: CallbackManagerForChainRun | undefined = undefined;\n\n constructor(config: RunTreeConfig, callbackManager: CallbackManager) {\n super(config);\n\n this.callbackManager = callbackManager;\n }\n\n createChild(config: RunTreeConfig): CallbackManagerRunTree {\n const child = new CallbackManagerRunTree(\n {\n ...config,\n parent_run: this,\n project_name: this.project_name,\n client: this.client,\n },\n this.activeCallbackManager?.getChild() ?? this.callbackManager\n );\n this.child_runs.push(child);\n return child;\n }\n\n async postRun(): Promise<void> {\n // how it is translated in comparison to basic RunTree?\n this.activeCallbackManager = await this.callbackManager.handleChainStart(\n typeof this.serialized !== \"object\" &&\n this.serialized != null &&\n \"lc\" in this.serialized\n ? this.serialized\n : {\n id: [\"langchain\", \"smith\", \"CallbackManagerRunTree\"],\n lc: 1,\n type: \"not_implemented\",\n },\n this.inputs,\n this.id,\n this.run_type,\n undefined,\n undefined,\n this.name\n );\n }\n\n async patchRun(): Promise<void> {\n if (this.error) {\n await this.activeCallbackManager?.handleChainError(\n this.error,\n this.id,\n this.parent_run?.id,\n undefined,\n undefined\n );\n } else {\n await this.activeCallbackManager?.handleChainEnd(\n this.outputs ?? {},\n this.id,\n this.parent_run?.id,\n undefined,\n undefined\n );\n }\n }\n}\n\nclass RunnableTraceable<RunInput, RunOutput> extends Runnable<\n RunInput,\n RunOutput\n> {\n lc_serializable = false;\n\n lc_namespace = [\"langchain_core\", \"runnables\"];\n\n protected func: AnyTraceableFunction;\n\n constructor(fields: { func: AnyTraceableFunction }) {\n super(fields);\n\n if (!isLangsmithTraceableFunction(fields.func)) {\n throw new Error(\n \"RunnableTraceable requires a function that is wrapped in traceable higher-order function\"\n );\n }\n\n this.func = fields.func;\n }\n\n async invoke(input: RunInput, options?: Partial<RunnableConfig>) {\n const [config] = this._getOptionsList(options ?? {}, 1);\n const callbackManager = await getCallbackManagerForConfig(config);\n\n const partialConfig =\n \"langsmith:traceable\" in this.func\n ? (this.func[\"langsmith:traceable\"] as RunTreeConfig)\n : { name: \"<lambda>\" };\n\n if (!callbackManager) throw new Error(\"CallbackManager not found\");\n const runTree = new CallbackManagerRunTree(\n {\n ...partialConfig,\n parent_run: callbackManager?._parentRunId\n ? new RunTree({ name: \"<parent>\", id: callbackManager?._parentRunId })\n : undefined,\n },\n callbackManager\n );\n\n if (\n typeof input === \"object\" &&\n input != null &&\n Object.keys(input).length === 1\n ) {\n if (\"args\" in input && Array.isArray(input)) {\n return (await this.func(runTree, ...input)) as RunOutput;\n }\n\n if (\n \"input\" in input &&\n !(\n typeof input === \"object\" &&\n input != null &&\n !Array.isArray(input) &&\n // eslint-disable-next-line no-instanceof/no-instanceof\n !(input instanceof Date)\n )\n ) {\n try {\n return (await this.func(runTree, input.input)) as RunOutput;\n } catch {\n return (await this.func(runTree, input)) as RunOutput;\n }\n }\n }\n\n return (await this.func(runTree, input)) as RunOutput;\n }\n}\n\n/**\n * Wraps an off-the-shelf evaluator (loaded using loadEvaluator; of EvaluatorType[T])\n * and composes with a prepareData function so the user can prepare the trace and\n * dataset data for the evaluator.\n */\nclass PreparedRunEvaluator implements RunEvaluator {\n evaluator: LLMStringEvaluator;\n\n formatEvaluatorInputs: EvaluatorInputFormatter;\n\n isStringEvaluator: boolean;\n\n evaluationName: string;\n\n constructor(\n evaluator: LLMStringEvaluator,\n evaluationName: string,\n formatEvaluatorInputs: EvaluatorInputFormatter\n ) {\n this.evaluator = evaluator;\n this.isStringEvaluator = typeof evaluator?.evaluateStrings === \"function\";\n this.evaluationName = evaluationName;\n this.formatEvaluatorInputs = formatEvaluatorInputs;\n }\n\n static async fromEvalConfig(\n config: EvalConfig | keyof EvaluatorType\n ): Promise<PreparedRunEvaluator> {\n const evaluatorType =\n typeof config === \"string\" ? config : config.evaluatorType;\n const evalConfig = typeof config === \"string\" ? ({} as EvalConfig) : config;\n const evaluator = await loadEvaluator(evaluatorType, evalConfig);\n const feedbackKey = evalConfig?.feedbackKey ?? evaluator?.evaluationName;\n if (!isLLMStringEvaluator(evaluator)) {\n throw new Error(\n `Evaluator of type ${evaluatorType} not yet supported. ` +\n \"Please use a string evaluator, or implement your \" +\n \"evaluation logic as a custom evaluator.\"\n );\n }\n if (!feedbackKey) {\n throw new Error(\n `Evaluator of type ${evaluatorType} must have an evaluationName` +\n ` or feedbackKey. Please manually provide a feedbackKey in the EvalConfig.`\n );\n }\n return new PreparedRunEvaluator(\n evaluator as LLMStringEvaluator,\n feedbackKey,\n evalConfig?.formatEvaluatorInputs\n );\n }\n\n /**\n * Evaluates a run with an optional example and returns the evaluation result.\n * @param run The run to evaluate.\n * @param example The optional example to use for evaluation.\n * @returns A promise that extracts to the evaluation result.\n */\n async evaluateRun(run: Run, example?: Example): Promise<EvaluationResult> {\n const { prediction, input, reference } = this.formatEvaluatorInputs({\n rawInput: run.inputs,\n rawPrediction: run.outputs,\n rawReferenceOutput: example?.outputs,\n run,\n });\n const extractor = new SingleRunIdExtractor();\n const tracer = new LangChainTracer({ projectName: \"evaluators\" });\n if (this.isStringEvaluator) {\n const evalResult = await this.evaluator.evaluateStrings(\n {\n prediction: prediction as string,\n reference: reference as string,\n input: input as string,\n },\n {\n callbacks: [extractor, tracer],\n }\n );\n const runId = await extractor.extract();\n return {\n key: this.evaluationName,\n comment: evalResult?.reasoning,\n sourceRunId: runId,\n ...evalResult,\n };\n }\n throw new Error(\n \"Evaluator not yet supported. \" +\n \"Please use a string evaluator, or implement your \" +\n \"evaluation logic as a custom evaluator.\"\n );\n }\n}\n\nclass LoadedEvalConfig {\n constructor(public evaluators: (RunEvaluator | DynamicRunEvaluator)[]) {}\n\n static async fromRunEvalConfig(\n config: RunEvalConfig<keyof EvaluatorType>\n ): Promise<LoadedEvalConfig> {\n // Custom evaluators are applied \"as-is\"\n const customEvaluators = (\n config?.customEvaluators ?? config.evaluators?.filter(isCustomEvaluator)\n )?.map((evaluator) => {\n if (typeof evaluator === \"function\") {\n return new DynamicRunEvaluator(evaluator);\n } else {\n return evaluator;\n }\n });\n\n const offTheShelfEvaluators = await Promise.all(\n config?.evaluators\n ?.filter(isOffTheShelfEvaluator)\n ?.map(\n async (evaluator) =>\n await PreparedRunEvaluator.fromEvalConfig(evaluator)\n ) ?? []\n );\n return new LoadedEvalConfig(\n (customEvaluators ?? []).concat(offTheShelfEvaluators ?? [])\n );\n }\n}\n\nexport interface RunOnDatasetParams\n extends Omit<RunEvalConfig, \"customEvaluators\"> {\n /**\n * Name of the project for logging and tracking.\n */\n projectName?: string;\n\n /**\n * Additional metadata for the project.\n */\n projectMetadata?: Record<string, unknown>;\n\n /**\n * Client instance for LangSmith service interaction.\n */\n client?: Client;\n\n /**\n * Maximum concurrency level for dataset processing.\n */\n maxConcurrency?: number;\n\n /**\n * @deprecated Pass keys directly to the RunOnDatasetParams instead\n */\n evaluationConfig?: RunEvalConfig;\n}\n\n/**\n * Internals expect a constructor () -> Runnable. This function wraps/coerces\n * the provided LangChain object, custom function, or factory function into\n * a constructor of a runnable.\n * @param modelOrFactory The model or factory to create a wrapped model from.\n * @returns A function that returns the wrapped model.\n * @throws Error if the modelOrFactory is invalid.\n */\nconst createWrappedModel = async (modelOrFactory: ChainOrFactory) => {\n if (Runnable.isRunnable(modelOrFactory)) {\n return () => modelOrFactory;\n }\n if (typeof modelOrFactory === \"function\") {\n if (isLangsmithTraceableFunction(modelOrFactory)) {\n const wrappedModel = new RunnableTraceable({ func: modelOrFactory });\n return () => wrappedModel;\n }\n\n try {\n // If it works with no arguments, assume it's a factory\n let res = (modelOrFactory as () => Runnable)();\n if (\n res &&\n typeof (res as unknown as Promise<Runnable>).then === \"function\"\n ) {\n res = await res;\n }\n return modelOrFactory as () => Runnable;\n } catch {\n // Otherwise, it's a custom UDF, and we'll wrap\n // the function in a lambda\n const wrappedModel = new RunnableLambda({ func: modelOrFactory });\n return () => wrappedModel;\n }\n }\n throw new Error(\"Invalid modelOrFactory\");\n};\n\nconst loadExamples = async ({\n datasetName,\n client,\n projectName,\n}: {\n datasetName: string;\n client: Client;\n projectName: string;\n maxConcurrency: number;\n}) => {\n const exampleIterator = client.listExamples({ datasetName });\n const configs: RunnableConfig[] = [];\n const runExtractors = [];\n const examples = [];\n for await (const example of exampleIterator) {\n const runExtractor = new SingleRunExtractor();\n configs.push({\n callbacks: [\n new LangChainTracer({ exampleId: example.id, projectName }),\n runExtractor,\n ],\n });\n examples.push(example);\n runExtractors.push(runExtractor);\n }\n return {\n configs,\n examples,\n runExtractors,\n };\n};\n\nconst applyEvaluators = async ({\n evaluation,\n runs,\n examples,\n client,\n maxConcurrency,\n}: {\n evaluation: LoadedEvalConfig;\n runs: Run[];\n examples: Example[];\n client: Client;\n maxConcurrency: number;\n}): Promise<{\n [key: string]: {\n execution_time?: number;\n run_id: string;\n feedback: Feedback[];\n };\n}> => {\n // TODO: Parallelize and/or put in callbacks to speed up evals.\n const { evaluators } = evaluation;\n const progress = new ProgressBar({\n total: examples.length,\n format: \"Running Evaluators: {bar} {percentage}% | {value}/{total}\\n\",\n });\n const caller = new AsyncCaller({\n maxConcurrency,\n });\n const requests = runs.map(\n async (\n run,\n i\n ): Promise<{\n run_id: string;\n execution_time?: number;\n feedback: Feedback[];\n }> =>\n caller.call(async () => {\n const evaluatorResults = await Promise.allSettled(\n evaluators.map((evaluator) =>\n client.evaluateRun(run, evaluator, {\n referenceExample: examples[i],\n loadChildRuns: false,\n })\n )\n );\n progress.increment();\n return {\n execution_time:\n run?.end_time && run.start_time\n ? new Date(run.end_time).getTime() -\n new Date(run.start_time).getTime()\n : undefined,\n feedback: evaluatorResults.map((evalResult) =>\n evalResult.status === \"fulfilled\"\n ? evalResult.value\n : evalResult.reason\n ),\n run_id: run.id,\n };\n })\n );\n const results = await Promise.all(requests);\n\n return results.reduce(\n (acc, result, i) => ({\n ...acc,\n [examples[i].id]: result,\n }),\n {}\n );\n};\n\nexport type EvalResults = {\n projectName: string;\n results: {\n [key: string]: {\n execution_time?: number;\n run_id: string;\n feedback: Feedback[];\n };\n };\n};\n\nconst getExamplesInputs = (\n examples: Example[],\n chainOrFactory: ChainOrFactory,\n dataType?: DataType\n) => {\n if (dataType === \"chat\") {\n // For some batty reason, we store the chat dataset differently.\n // { type: \"system\", data: { content: inputs.input } },\n // But we need to create AIMesage, SystemMessage, etc.\n return examples.map(({ inputs }) =>\n mapStoredMessagesToChatMessages(inputs.input)\n );\n }\n // If it's a language model and ALL example inputs have a single value,\n // then we can be friendly and flatten the inputs to a list of strings.\n const isLanguageModel =\n typeof chainOrFactory === \"object\" &&\n typeof (chainOrFactory as BaseLanguageModel)._llmType === \"function\";\n if (\n isLanguageModel &&\n examples.every(({ inputs }) => Object.keys(inputs).length === 1)\n ) {\n return examples.map(({ inputs }) => Object.values(inputs)[0]);\n }\n return examples.map(({ inputs }) => inputs);\n};\n\n/**\n * Evaluates a given model or chain against a specified LangSmith dataset.\n *\n * This function fetches example records from the specified dataset,\n * runs the model or chain against each example, and returns the evaluation\n * results.\n *\n * @param chainOrFactory - A model or factory/constructor function to be evaluated. It can be a\n * Runnable instance, a factory function that returns a Runnable, or a user-defined\n * function or factory.\n *\n * @param datasetName - The name of the dataset against which the evaluation will be\n * performed. This dataset should already be defined and contain the relevant data\n * for evaluation.\n *\n * @param options - (Optional) Additional parameters for the evaluation process:\n * - `evaluators` (RunEvalType[]): Evaluators to apply to a dataset run.\n * - `formatEvaluatorInputs` (EvaluatorInputFormatter): Convert the evaluation data into formats that can be used by the evaluator.\n * - `projectName` (string): Name of the project for logging and tracking.\n * - `projectMetadata` (Record<string, unknown>): Additional metadata for the project.\n * - `client` (Client): Client instance for LangSmith service interaction.\n * - `maxConcurrency` (number): Maximum concurrency level for dataset processing.\n *\n * @returns A promise that resolves to an `EvalResults` object. This object includes\n * detailed results of the evaluation, such as execution time, run IDs, and feedback\n * for each entry in the dataset.\n *\n * @example\n * ```typescript\n * // Example usage for evaluating a model on a dataset\n * async function evaluateModel() {\n * const chain = /* ...create your model or chain...*\\//\n * const datasetName = 'example-dataset';\n * const client = new Client(/* ...config... *\\//);\n *\n * const results = await runOnDataset(chain, datasetName, {\n * evaluators: [/* ...evaluators... *\\//],\n * client,\n * });\n *\n * console.log('Evaluation Results:', results);\n * }\n *\n * evaluateModel();\n * ```\n * In this example, `runOnDataset` is used to evaluate a language model (or a chain of models) against\n * a dataset named 'example-dataset'. The evaluation process is configured using `RunOnDatasetParams[\"evaluators\"]`, which can\n * include both standard and custom evaluators. The `Client` instance is used to interact with LangChain services.\n * The function returns the evaluation results, which can be logged or further processed as needed.\n */\n\nexport async function runOnDataset(\n chainOrFactory: ChainOrFactory,\n datasetName: string,\n options?: RunOnDatasetParams\n) {\n const {\n projectName,\n projectMetadata,\n client,\n maxConcurrency,\n }: RunOnDatasetParams = options ?? {};\n\n const evaluationConfig: RunEvalConfig | undefined =\n options?.evaluationConfig ??\n (options?.evaluators != null\n ? {\n evaluators: options.evaluators,\n formatEvaluatorInputs: options.formatEvaluatorInputs,\n }\n : undefined);\n\n const wrappedModel = await createWrappedModel(chainOrFactory);\n const testClient = client ?? new Client();\n const testProjectName = projectName ?? randomName();\n const dataset = await testClient.readDataset({ datasetName });\n const datasetId = dataset.id;\n const testConcurrency = maxConcurrency ?? 5;\n const { configs, examples, runExtractors } = await loadExamples({\n datasetName,\n client: testClient,\n projectName: testProjectName,\n maxConcurrency: testConcurrency,\n });\n\n await testClient.createProject({\n projectName: testProjectName,\n referenceDatasetId: datasetId,\n projectExtra: { metadata: { ...projectMetadata } },\n });\n const wrappedRunnable: Runnable = new RunnableLambda({\n func: wrappedModel,\n }).withConfig({ runName: \"evaluationRun\" });\n const runInputs = getExamplesInputs(\n examples,\n chainOrFactory,\n dataset.data_type\n );\n const progress = new ProgressBar({\n total: runInputs.length,\n format: \"Predicting: {bar} {percentage}% | {value}/{total}\",\n });\n // TODO: Collect the runs as well.\n await wrappedRunnable\n .withListeners({\n onEnd: () => progress.increment(),\n })\n // TODO: Insert evaluation inline for immediate feedback.\n .batch(runInputs, configs, {\n maxConcurrency,\n returnExceptions: true,\n });\n\n progress.complete();\n const runs: Run[] = [];\n for (let i = 0; i < examples.length; i += 1) {\n runs.push(await runExtractors[i].extract());\n }\n let evalResults: Record<\n string,\n { run_id: string; execution_time?: number; feedback: Feedback[] }\n > = {};\n if (evaluationConfig) {\n const loadedEvalConfig = await LoadedEvalConfig.fromRunEvalConfig(\n evaluationConfig\n );\n evalResults = await applyEvaluators({\n evaluation: loadedEvalConfig,\n runs,\n examples,\n client: testClient,\n maxConcurrency: testConcurrency,\n });\n }\n const results: EvalResults = {\n projectName: testProjectName,\n results: evalResults ?? {},\n };\n return results;\n}\n\nfunction isLangsmithTraceableFunction(x: unknown): x is AnyTraceableFunction {\n return typeof x === \"function\" && \"langsmith:traceable\" in x;\n}\n"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sql_db.d.cts","names":["DataSource","DataSourceT","DataSourceOptions","Serializable","SerializedSqlDatabase","SqlDatabaseDataSourceParams","SqlDatabaseOptionsParams","SqlTable","SqlDatabase","_langchain_core_load_serializable0","SerializedNotImplemented","Array","Record","Promise"],"sources":["../src/sql_db.d.ts"],"sourcesContent":["import type { DataSource as DataSourceT, DataSourceOptions } from \"typeorm\";\nimport { Serializable } from \"@langchain/core/load/serializable\";\nimport { SerializedSqlDatabase, SqlDatabaseDataSourceParams, SqlDatabaseOptionsParams, SqlTable } from \"./util/sql_utils.js\";\nexport type { SqlDatabaseDataSourceParams, SqlDatabaseOptionsParams };\n/**\n * Class that represents a SQL database in the LangChain framework.\n *\n * @security **Security Notice**\n * This class generates SQL queries for the given database.\n * The SQLDatabase class provides a getTableInfo method that can be used\n * to get column information as well as sample data from the table.\n * To mitigate risk of leaking sensitive data, limit permissions\n * to read and scope to the tables that are needed.\n * Optionally, use the includesTables or ignoreTables class parameters\n * to limit which tables can/cannot be accessed.\n *\n * @link See https://js.langchain.com/docs/security for more information.\n */\nexport declare class SqlDatabase extends Serializable implements SqlDatabaseOptionsParams, SqlDatabaseDataSourceParams {\n lc_namespace: string[];\n toJSON(): import(\"@langchain/core/load/serializable\").SerializedNotImplemented;\n appDataSourceOptions: DataSourceOptions;\n appDataSource: DataSourceT;\n allTables: Array<SqlTable>;\n includesTables: Array<string>;\n ignoreTables: Array<string>;\n sampleRowsInTableInfo: number;\n customDescription?: Record<string, string>;\n protected constructor(fields: SqlDatabaseDataSourceParams);\n static fromDataSourceParams(fields: SqlDatabaseDataSourceParams): Promise<SqlDatabase>;\n static fromOptionsParams(fields: SqlDatabaseOptionsParams): Promise<SqlDatabase>;\n /**\n * Get information about specified tables.\n *\n * Follows best practices as specified in: Rajkumar et al, 2022\n * (https://arxiv.org/abs/2204.00498)\n *\n * If `sample_rows_in_table_info`, the specified number of sample rows will be\n * appended to each table description. This can increase performance as\n * demonstrated in the paper.\n */\n getTableInfo(targetTables?: Array<string>): Promise<string>;\n /**\n * Execute a SQL command and return a string representing the results.\n * If the statement returns rows, a string of the results is returned.\n * If the statement returns no rows, an empty string is returned.\n */\n run(command: string, fetch?: \"all\" | \"one\"): Promise<string>;\n serialize(): SerializedSqlDatabase;\n /** @ignore */\n static imports(): Promise<{\n DataSource: typeof DataSourceT;\n }>;\n}\n//# sourceMappingURL=sql_db.d.ts.map"],"mappings":";;;;;;;;;AAkBA;;;;;;;;;;;;AAWsEa,cAXjDL,WAAAA,SAAoBL,YAAAA,YAAwBG,wBAWKO,EAXqBR,2BAWrBQ,CAAAA;EACjCP,YAAAA,EAAAA,MAAAA,EAAAA;EAAmCE,MAAAA,CAAAA,CAAAA,EAZxCC,kCAAAA,CAE0BC,wBAUcF;EAARK,oBAAAA,EATtCX,iBASsCW;EAWhCF,aAAAA,EAnBbV,UAmBaU;EAAgBE,SAAAA,EAlBjCF,KAkBiCE,CAlB3BN,QAkB2BM,CAAAA;EAMCA,cAAAA,EAvB7BF,KAuB6BE,CAAAA,MAAAA,CAAAA;EAChCT,YAAAA,EAvBCO,KAuBDP,CAAAA,MAAAA,CAAAA;EAGUH,qBAAAA,EAAAA,MAAAA;EADLY,iBAAAA,CAAAA,EAvBED,MAuBFC,CAAAA,MAAAA,EAAAA,MAAAA,CAAAA;EAhCmBV,UAAAA,WAAAA,CAAAA,MAAAA,EAUPE,2BAVOF;EAAwBG,OAAAA,oBAAAA,CAAAA,MAAAA,EAWzBD,2BAXyBC,CAAAA,EAWKO,OAXLP,CAWaE,WAXbF,CAAAA;EAA0BD,OAAAA,iBAAAA,CAAAA,MAAAA,EAYtDC,wBAZsDD,CAAAA,EAY3BQ,OAZ2BR,CAYnBG,WAZmBH,CAAAA;EAA2B;;;;;;;;;;8BAuBtFM,gBAAgBE;;;;;;+CAMCA;eAChCT;;oBAEKS;uBACKZ"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sql_db.d.ts","names":["DataSource","DataSourceT","DataSourceOptions","Serializable","SerializedSqlDatabase","SqlDatabaseDataSourceParams","SqlDatabaseOptionsParams","SqlTable","SqlDatabase","_langchain_core_load_serializable0","SerializedNotImplemented","Array","Record","Promise"],"sources":["../src/sql_db.d.ts"],"sourcesContent":["import type { DataSource as DataSourceT, DataSourceOptions } from \"typeorm\";\nimport { Serializable } from \"@langchain/core/load/serializable\";\nimport { SerializedSqlDatabase, SqlDatabaseDataSourceParams, SqlDatabaseOptionsParams, SqlTable } from \"./util/sql_utils.js\";\nexport type { SqlDatabaseDataSourceParams, SqlDatabaseOptionsParams };\n/**\n * Class that represents a SQL database in the LangChain framework.\n *\n * @security **Security Notice**\n * This class generates SQL queries for the given database.\n * The SQLDatabase class provides a getTableInfo method that can be used\n * to get column information as well as sample data from the table.\n * To mitigate risk of leaking sensitive data, limit permissions\n * to read and scope to the tables that are needed.\n * Optionally, use the includesTables or ignoreTables class parameters\n * to limit which tables can/cannot be accessed.\n *\n * @link See https://js.langchain.com/docs/security for more information.\n */\nexport declare class SqlDatabase extends Serializable implements SqlDatabaseOptionsParams, SqlDatabaseDataSourceParams {\n lc_namespace: string[];\n toJSON(): import(\"@langchain/core/load/serializable\").SerializedNotImplemented;\n appDataSourceOptions: DataSourceOptions;\n appDataSource: DataSourceT;\n allTables: Array<SqlTable>;\n includesTables: Array<string>;\n ignoreTables: Array<string>;\n sampleRowsInTableInfo: number;\n customDescription?: Record<string, string>;\n protected constructor(fields: SqlDatabaseDataSourceParams);\n static fromDataSourceParams(fields: SqlDatabaseDataSourceParams): Promise<SqlDatabase>;\n static fromOptionsParams(fields: SqlDatabaseOptionsParams): Promise<SqlDatabase>;\n /**\n * Get information about specified tables.\n *\n * Follows best practices as specified in: Rajkumar et al, 2022\n * (https://arxiv.org/abs/2204.00498)\n *\n * If `sample_rows_in_table_info`, the specified number of sample rows will be\n * appended to each table description. This can increase performance as\n * demonstrated in the paper.\n */\n getTableInfo(targetTables?: Array<string>): Promise<string>;\n /**\n * Execute a SQL command and return a string representing the results.\n * If the statement returns rows, a string of the results is returned.\n * If the statement returns no rows, an empty string is returned.\n */\n run(command: string, fetch?: \"all\" | \"one\"): Promise<string>;\n serialize(): SerializedSqlDatabase;\n /** @ignore */\n static imports(): Promise<{\n DataSource: typeof DataSourceT;\n }>;\n}\n//# sourceMappingURL=sql_db.d.ts.map"],"mappings":";;;;;;;;;AAkBA;;;;;;;;;;;;AAWsEa,cAXjDL,WAAAA,SAAoBL,YAAAA,YAAwBG,wBAWKO,EAXqBR,2BAWrBQ,CAAAA;EACjCP,YAAAA,EAAAA,MAAAA,EAAAA;EAAmCE,MAAAA,CAAAA,CAAAA,EAZxCC,kCAAAA,CAE0BC,wBAUcF;EAARK,oBAAAA,EATtCX,iBASsCW;EAWhCF,aAAAA,EAnBbV,UAmBaU;EAAgBE,SAAAA,EAlBjCF,KAkBiCE,CAlB3BN,QAkB2BM,CAAAA;EAMCA,cAAAA,EAvB7BF,KAuB6BE,CAAAA,MAAAA,CAAAA;EAChCT,YAAAA,EAvBCO,KAuBDP,CAAAA,MAAAA,CAAAA;EAGUH,qBAAAA,EAAAA,MAAAA;EADLY,iBAAAA,CAAAA,EAvBED,MAuBFC,CAAAA,MAAAA,EAAAA,MAAAA,CAAAA;EAhCmBV,UAAAA,WAAAA,CAAAA,MAAAA,EAUPE,2BAVOF;EAAwBG,OAAAA,oBAAAA,CAAAA,MAAAA,EAWzBD,2BAXyBC,CAAAA,EAWKO,OAXLP,CAWaE,WAXbF,CAAAA;EAA0BD,OAAAA,iBAAAA,CAAAA,MAAAA,EAYtDC,wBAZsDD,CAAAA,EAY3BQ,OAZ2BR,CAYnBG,WAZmBH,CAAAA;EAA2B;;;;;;;;;;8BAuBtFM,gBAAgBE;;;;;;+CAMCA;eAChCT;;oBAEKS;uBACKZ"}
@@ -8,7 +8,6 @@ import { BaseStore } from "@langchain/core/stores";
8
8
  * allowing for the encoding and decoding of keys and values. It extends
9
9
  * the BaseStore class.
10
10
  */
11
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
12
11
  declare class EncoderBackedStore<K, V, SerializedType = any> extends BaseStore<K, V> {
13
12
  lc_namespace: string[];
14
13
  store: BaseStore<string, SerializedType>;