langchain 0.0.130 → 0.0.132

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 (831) hide show
  1. package/dist/agents/agent.cjs +23 -0
  2. package/dist/agents/agent.d.ts +28 -0
  3. package/dist/agents/agent.js +23 -0
  4. package/dist/agents/chat/index.cjs +28 -0
  5. package/dist/agents/chat/index.d.ts +33 -0
  6. package/dist/agents/chat/index.js +28 -0
  7. package/dist/agents/chat/outputParser.cjs +19 -0
  8. package/dist/agents/chat/outputParser.d.ts +19 -0
  9. package/dist/agents/chat/outputParser.js +19 -0
  10. package/dist/agents/chat_convo/index.cjs +25 -0
  11. package/dist/agents/chat_convo/index.d.ts +32 -0
  12. package/dist/agents/chat_convo/index.js +25 -0
  13. package/dist/agents/chat_convo/outputParser.cjs +42 -0
  14. package/dist/agents/chat_convo/outputParser.d.ts +42 -0
  15. package/dist/agents/chat_convo/outputParser.js +42 -0
  16. package/dist/agents/executor.cjs +9 -0
  17. package/dist/agents/executor.d.ts +12 -0
  18. package/dist/agents/executor.js +9 -0
  19. package/dist/agents/initialize.d.ts +5 -0
  20. package/dist/agents/mrkl/index.cjs +20 -0
  21. package/dist/agents/mrkl/index.d.ts +25 -0
  22. package/dist/agents/mrkl/index.js +20 -0
  23. package/dist/agents/mrkl/outputParser.cjs +15 -0
  24. package/dist/agents/mrkl/outputParser.d.ts +15 -0
  25. package/dist/agents/mrkl/outputParser.js +15 -0
  26. package/dist/agents/openai/index.cjs +46 -0
  27. package/dist/agents/openai/index.d.ts +40 -0
  28. package/dist/agents/openai/index.js +46 -0
  29. package/dist/agents/structured_chat/index.cjs +35 -0
  30. package/dist/agents/structured_chat/index.d.ts +41 -0
  31. package/dist/agents/structured_chat/index.js +35 -0
  32. package/dist/agents/structured_chat/outputParser.cjs +44 -0
  33. package/dist/agents/structured_chat/outputParser.d.ts +48 -0
  34. package/dist/agents/structured_chat/outputParser.js +44 -0
  35. package/dist/agents/toolkits/aws_sfn.cjs +5 -0
  36. package/dist/agents/toolkits/aws_sfn.d.ts +9 -0
  37. package/dist/agents/toolkits/aws_sfn.js +5 -0
  38. package/dist/agents/toolkits/base.cjs +5 -0
  39. package/dist/agents/toolkits/base.d.ts +5 -0
  40. package/dist/agents/toolkits/base.js +5 -0
  41. package/dist/agents/toolkits/conversational_retrieval/openai_functions.cjs +10 -0
  42. package/dist/agents/toolkits/conversational_retrieval/openai_functions.d.ts +10 -0
  43. package/dist/agents/toolkits/conversational_retrieval/openai_functions.js +10 -0
  44. package/dist/agents/toolkits/conversational_retrieval/token_buffer_memory.cjs +17 -0
  45. package/dist/agents/toolkits/conversational_retrieval/token_buffer_memory.d.ts +21 -0
  46. package/dist/agents/toolkits/conversational_retrieval/token_buffer_memory.js +17 -0
  47. package/dist/agents/toolkits/json/json.cjs +15 -0
  48. package/dist/agents/toolkits/json/json.d.ts +15 -0
  49. package/dist/agents/toolkits/json/json.js +15 -0
  50. package/dist/agents/toolkits/openapi/openapi.cjs +21 -0
  51. package/dist/agents/toolkits/openapi/openapi.d.ts +21 -0
  52. package/dist/agents/toolkits/openapi/openapi.js +21 -0
  53. package/dist/agents/toolkits/sql/sql.cjs +4 -0
  54. package/dist/agents/toolkits/sql/sql.d.ts +8 -0
  55. package/dist/agents/toolkits/sql/sql.js +4 -0
  56. package/dist/agents/toolkits/vectorstore/vectorstore.cjs +10 -0
  57. package/dist/agents/toolkits/vectorstore/vectorstore.d.ts +14 -0
  58. package/dist/agents/toolkits/vectorstore/vectorstore.js +10 -0
  59. package/dist/agents/toolkits/zapier/zapier.cjs +12 -0
  60. package/dist/agents/toolkits/zapier/zapier.d.ts +12 -0
  61. package/dist/agents/toolkits/zapier/zapier.js +12 -0
  62. package/dist/agents/types.cjs +5 -0
  63. package/dist/agents/types.d.ts +28 -0
  64. package/dist/agents/types.js +5 -0
  65. package/dist/cache/index.cjs +21 -0
  66. package/dist/cache/index.d.ts +21 -0
  67. package/dist/cache/index.js +21 -0
  68. package/dist/cache/ioredis.cjs +16 -0
  69. package/dist/cache/ioredis.d.ts +16 -0
  70. package/dist/cache/ioredis.js +16 -0
  71. package/dist/cache/redis.cjs +21 -0
  72. package/dist/cache/redis.d.ts +25 -0
  73. package/dist/cache/redis.js +21 -0
  74. package/dist/callbacks/base.cjs +29 -0
  75. package/dist/callbacks/base.d.ts +35 -0
  76. package/dist/callbacks/base.js +30 -1
  77. package/dist/callbacks/handlers/console.cjs +87 -0
  78. package/dist/callbacks/handlers/console.d.ts +87 -0
  79. package/dist/callbacks/handlers/console.js +87 -0
  80. package/dist/callbacks/handlers/initialize.cjs +12 -0
  81. package/dist/callbacks/handlers/initialize.d.ts +12 -0
  82. package/dist/callbacks/handlers/initialize.js +12 -0
  83. package/dist/callbacks/manager.cjs +9 -0
  84. package/dist/callbacks/manager.d.ts +9 -0
  85. package/dist/callbacks/manager.js +9 -0
  86. package/dist/callbacks/promises.cjs +9 -0
  87. package/dist/callbacks/promises.d.ts +4 -0
  88. package/dist/callbacks/promises.js +9 -0
  89. package/dist/chains/analyze_documents_chain.cjs +3 -0
  90. package/dist/chains/analyze_documents_chain.d.ts +5 -0
  91. package/dist/chains/analyze_documents_chain.js +3 -0
  92. package/dist/chains/api/api_chain.cjs +12 -0
  93. package/dist/chains/api/api_chain.d.ts +19 -0
  94. package/dist/chains/api/api_chain.js +12 -0
  95. package/dist/chains/base.cjs +6 -0
  96. package/dist/chains/base.d.ts +6 -0
  97. package/dist/chains/base.js +6 -0
  98. package/dist/chains/chat_vector_db_chain.cjs +8 -0
  99. package/dist/chains/chat_vector_db_chain.d.ts +11 -0
  100. package/dist/chains/chat_vector_db_chain.js +8 -0
  101. package/dist/chains/combine_docs_chain.cjs +9 -0
  102. package/dist/chains/combine_docs_chain.d.ts +13 -0
  103. package/dist/chains/combine_docs_chain.js +9 -0
  104. package/dist/chains/constitutional_ai/constitutional_chain.cjs +20 -0
  105. package/dist/chains/constitutional_ai/constitutional_chain.d.ts +21 -0
  106. package/dist/chains/constitutional_ai/constitutional_chain.js +20 -0
  107. package/dist/chains/constitutional_ai/constitutional_principle.cjs +4 -0
  108. package/dist/chains/constitutional_ai/constitutional_principle.d.ts +4 -0
  109. package/dist/chains/constitutional_ai/constitutional_principle.js +4 -0
  110. package/dist/chains/conversation.cjs +7 -0
  111. package/dist/chains/conversation.d.ts +5 -0
  112. package/dist/chains/conversation.js +7 -0
  113. package/dist/chains/conversational_retrieval_chain.cjs +24 -0
  114. package/dist/chains/conversational_retrieval_chain.d.ts +27 -1
  115. package/dist/chains/conversational_retrieval_chain.js +24 -0
  116. package/dist/chains/llm_chain.cjs +3 -0
  117. package/dist/chains/llm_chain.d.ts +4 -0
  118. package/dist/chains/llm_chain.js +3 -0
  119. package/dist/chains/openai_functions/extraction.cjs +21 -0
  120. package/dist/chains/openai_functions/extraction.d.ts +15 -0
  121. package/dist/chains/openai_functions/extraction.js +21 -0
  122. package/dist/chains/openai_functions/openapi.cjs +30 -0
  123. package/dist/chains/openai_functions/openapi.d.ts +3 -0
  124. package/dist/chains/openai_functions/openapi.js +30 -0
  125. package/dist/chains/openai_functions/structured_output.cjs +12 -0
  126. package/dist/chains/openai_functions/structured_output.d.ts +18 -0
  127. package/dist/chains/openai_functions/structured_output.js +12 -0
  128. package/dist/chains/openai_functions/tagging.cjs +24 -0
  129. package/dist/chains/openai_functions/tagging.d.ts +21 -0
  130. package/dist/chains/openai_functions/tagging.js +24 -0
  131. package/dist/chains/openai_moderation.cjs +8 -0
  132. package/dist/chains/openai_moderation.d.ts +9 -0
  133. package/dist/chains/openai_moderation.js +8 -0
  134. package/dist/chains/query_constructor/index.cjs +17 -0
  135. package/dist/chains/query_constructor/index.d.ts +20 -0
  136. package/dist/chains/query_constructor/index.js +17 -0
  137. package/dist/chains/query_constructor/ir.cjs +24 -0
  138. package/dist/chains/query_constructor/ir.d.ts +71 -0
  139. package/dist/chains/query_constructor/ir.js +24 -0
  140. package/dist/chains/query_constructor/parser.cjs +21 -0
  141. package/dist/chains/query_constructor/parser.d.ts +25 -0
  142. package/dist/chains/query_constructor/parser.js +21 -0
  143. package/dist/chains/question_answering/load.cjs +21 -0
  144. package/dist/chains/question_answering/load.d.ts +34 -0
  145. package/dist/chains/question_answering/load.js +21 -0
  146. package/dist/chains/retrieval_qa.cjs +15 -0
  147. package/dist/chains/retrieval_qa.d.ts +16 -0
  148. package/dist/chains/retrieval_qa.js +15 -0
  149. package/dist/chains/router/llm_router.cjs +16 -0
  150. package/dist/chains/router/llm_router.d.ts +24 -0
  151. package/dist/chains/router/llm_router.js +16 -0
  152. package/dist/chains/router/multi_prompt.cjs +19 -0
  153. package/dist/chains/router/multi_prompt.d.ts +19 -0
  154. package/dist/chains/router/multi_prompt.js +19 -0
  155. package/dist/chains/router/multi_retrieval_qa.cjs +22 -0
  156. package/dist/chains/router/multi_retrieval_qa.d.ts +27 -0
  157. package/dist/chains/router/multi_retrieval_qa.js +22 -0
  158. package/dist/chains/router/multi_route.cjs +13 -0
  159. package/dist/chains/router/multi_route.d.ts +26 -0
  160. package/dist/chains/router/multi_route.js +13 -0
  161. package/dist/chains/sequential_chain.cjs +6 -0
  162. package/dist/chains/sequential_chain.d.ts +8 -0
  163. package/dist/chains/sequential_chain.js +6 -0
  164. package/dist/chains/serde.d.ts +58 -0
  165. package/dist/chains/sql_db/sql_db_chain.cjs +16 -0
  166. package/dist/chains/sql_db/sql_db_chain.d.ts +19 -0
  167. package/dist/chains/sql_db/sql_db_chain.js +16 -0
  168. package/dist/chains/summarization/load.d.ts +4 -0
  169. package/dist/chains/transform.cjs +9 -0
  170. package/dist/chains/transform.d.ts +12 -0
  171. package/dist/chains/transform.js +9 -0
  172. package/dist/chains/vector_db_qa.cjs +18 -0
  173. package/dist/chains/vector_db_qa.d.ts +22 -0
  174. package/dist/chains/vector_db_qa.js +18 -0
  175. package/dist/chat_models/anthropic.cjs +27 -4
  176. package/dist/chat_models/anthropic.d.ts +15 -0
  177. package/dist/chat_models/anthropic.js +27 -4
  178. package/dist/chat_models/baiduwenxin.cjs +19 -13
  179. package/dist/chat_models/baiduwenxin.d.ts +19 -3
  180. package/dist/chat_models/baiduwenxin.js +19 -13
  181. package/dist/chat_models/base.cjs +61 -0
  182. package/dist/chat_models/base.d.ts +73 -0
  183. package/dist/chat_models/base.js +61 -0
  184. package/dist/chat_models/googlepalm.cjs +12 -0
  185. package/dist/chat_models/googlepalm.d.ts +8 -0
  186. package/dist/chat_models/googlepalm.js +12 -0
  187. package/dist/chat_models/googlevertexai.cjs +41 -0
  188. package/dist/chat_models/googlevertexai.d.ts +51 -0
  189. package/dist/chat_models/googlevertexai.js +41 -0
  190. package/dist/chat_models/ollama.cjs +14 -0
  191. package/dist/chat_models/ollama.d.ts +16 -0
  192. package/dist/chat_models/ollama.js +14 -0
  193. package/dist/chat_models/openai.cjs +19 -5
  194. package/dist/chat_models/openai.d.ts +7 -5
  195. package/dist/chat_models/openai.js +19 -5
  196. package/dist/document_loaders/base.cjs +10 -0
  197. package/dist/document_loaders/base.d.ts +17 -0
  198. package/dist/document_loaders/base.js +10 -0
  199. package/dist/document_loaders/fs/buffer.cjs +21 -0
  200. package/dist/document_loaders/fs/buffer.d.ts +28 -0
  201. package/dist/document_loaders/fs/buffer.js +21 -0
  202. package/dist/document_loaders/fs/csv.cjs +19 -0
  203. package/dist/document_loaders/fs/csv.d.ts +19 -0
  204. package/dist/document_loaders/fs/csv.js +19 -0
  205. package/dist/document_loaders/fs/directory.cjs +21 -0
  206. package/dist/document_loaders/fs/directory.d.ts +29 -0
  207. package/dist/document_loaders/fs/directory.js +21 -0
  208. package/dist/document_loaders/fs/docx.cjs +16 -0
  209. package/dist/document_loaders/fs/docx.d.ts +16 -0
  210. package/dist/document_loaders/fs/docx.js +16 -0
  211. package/dist/document_loaders/fs/epub.cjs +16 -0
  212. package/dist/document_loaders/fs/epub.d.ts +16 -0
  213. package/dist/document_loaders/fs/epub.js +16 -0
  214. package/dist/document_loaders/fs/json.cjs +40 -0
  215. package/dist/document_loaders/fs/json.d.ts +40 -0
  216. package/dist/document_loaders/fs/json.js +40 -0
  217. package/dist/document_loaders/fs/notion.cjs +6 -0
  218. package/dist/document_loaders/fs/notion.d.ts +6 -0
  219. package/dist/document_loaders/fs/notion.js +6 -0
  220. package/dist/document_loaders/fs/pdf.cjs +21 -0
  221. package/dist/document_loaders/fs/pdf.d.ts +21 -0
  222. package/dist/document_loaders/fs/pdf.js +21 -0
  223. package/dist/document_loaders/fs/srt.cjs +19 -0
  224. package/dist/document_loaders/fs/srt.d.ts +19 -0
  225. package/dist/document_loaders/fs/srt.js +19 -0
  226. package/dist/document_loaders/fs/text.cjs +34 -0
  227. package/dist/document_loaders/fs/text.d.ts +34 -0
  228. package/dist/document_loaders/fs/text.js +34 -0
  229. package/dist/document_loaders/fs/unstructured.cjs +14 -0
  230. package/dist/document_loaders/fs/unstructured.d.ts +26 -0
  231. package/dist/document_loaders/fs/unstructured.js +14 -0
  232. package/dist/document_loaders/web/apify_dataset.cjs +11 -0
  233. package/dist/document_loaders/web/apify_dataset.d.ts +15 -0
  234. package/dist/document_loaders/web/apify_dataset.js +11 -0
  235. package/dist/document_loaders/web/azure_blob_storage_container.cjs +13 -0
  236. package/dist/document_loaders/web/azure_blob_storage_container.d.ts +26 -0
  237. package/dist/document_loaders/web/azure_blob_storage_container.js +13 -0
  238. package/dist/document_loaders/web/azure_blob_storage_file.cjs +12 -0
  239. package/dist/document_loaders/web/azure_blob_storage_file.d.ts +21 -0
  240. package/dist/document_loaders/web/azure_blob_storage_file.js +12 -0
  241. package/dist/document_loaders/web/cheerio.cjs +21 -0
  242. package/dist/document_loaders/web/cheerio.d.ts +26 -0
  243. package/dist/document_loaders/web/cheerio.js +21 -0
  244. package/dist/document_loaders/web/college_confidential.cjs +11 -0
  245. package/dist/document_loaders/web/college_confidential.d.ts +11 -0
  246. package/dist/document_loaders/web/college_confidential.js +11 -0
  247. package/dist/document_loaders/web/confluence.cjs +23 -0
  248. package/dist/document_loaders/web/confluence.d.ts +33 -0
  249. package/dist/document_loaders/web/confluence.js +23 -0
  250. package/dist/document_loaders/web/figma.cjs +21 -0
  251. package/dist/document_loaders/web/figma.d.ts +32 -0
  252. package/dist/document_loaders/web/figma.js +21 -0
  253. package/dist/document_loaders/web/gitbook.cjs +33 -0
  254. package/dist/document_loaders/web/gitbook.d.ts +38 -0
  255. package/dist/document_loaders/web/gitbook.js +33 -0
  256. package/dist/document_loaders/web/github.cjs +50 -0
  257. package/dist/document_loaders/web/github.d.ts +53 -0
  258. package/dist/document_loaders/web/github.js +50 -0
  259. package/dist/document_loaders/web/hn.cjs +31 -0
  260. package/dist/document_loaders/web/hn.d.ts +31 -0
  261. package/dist/document_loaders/web/hn.js +31 -0
  262. package/dist/document_loaders/web/imsdb.cjs +14 -0
  263. package/dist/document_loaders/web/imsdb.d.ts +14 -0
  264. package/dist/document_loaders/web/imsdb.js +14 -0
  265. package/dist/document_loaders/web/notionapi.cjs +39 -0
  266. package/dist/document_loaders/web/notionapi.d.ts +43 -0
  267. package/dist/document_loaders/web/notionapi.js +39 -0
  268. package/dist/document_loaders/web/notiondb.cjs +19 -0
  269. package/dist/document_loaders/web/notiondb.d.ts +24 -0
  270. package/dist/document_loaders/web/notiondb.js +19 -0
  271. package/dist/document_loaders/web/playwright.cjs +22 -0
  272. package/dist/document_loaders/web/playwright.d.ts +27 -0
  273. package/dist/document_loaders/web/playwright.js +22 -0
  274. package/dist/document_loaders/web/puppeteer.cjs +20 -0
  275. package/dist/document_loaders/web/puppeteer.d.ts +25 -0
  276. package/dist/document_loaders/web/puppeteer.js +20 -0
  277. package/dist/document_loaders/web/s3.cjs +9 -0
  278. package/dist/document_loaders/web/s3.d.ts +21 -0
  279. package/dist/document_loaders/web/s3.js +9 -0
  280. package/dist/document_loaders/web/serpapi.cjs +4 -0
  281. package/dist/document_loaders/web/serpapi.d.ts +8 -0
  282. package/dist/document_loaders/web/serpapi.js +4 -0
  283. package/dist/document_loaders/web/sonix_audio.cjs +10 -0
  284. package/dist/document_loaders/web/sonix_audio.d.ts +10 -0
  285. package/dist/document_loaders/web/sonix_audio.js +10 -0
  286. package/dist/document_loaders/web/sort_xyz_blockchain.cjs +10 -0
  287. package/dist/document_loaders/web/sort_xyz_blockchain.d.ts +17 -0
  288. package/dist/document_loaders/web/sort_xyz_blockchain.js +10 -0
  289. package/dist/document_loaders/web/youtube.cjs +23 -0
  290. package/dist/document_loaders/web/youtube.d.ts +27 -0
  291. package/dist/document_loaders/web/youtube.js +23 -0
  292. package/dist/document_transformers/html_to_text.cjs +6 -0
  293. package/dist/document_transformers/html_to_text.d.ts +4 -0
  294. package/dist/document_transformers/html_to_text.js +6 -0
  295. package/dist/document_transformers/mozilla_readability.cjs +7 -0
  296. package/dist/document_transformers/mozilla_readability.d.ts +5 -0
  297. package/dist/document_transformers/mozilla_readability.js +7 -0
  298. package/dist/document_transformers/openai_functions.cjs +6 -0
  299. package/dist/document_transformers/openai_functions.d.ts +4 -0
  300. package/dist/document_transformers/openai_functions.js +6 -0
  301. package/dist/embeddings/base.cjs +4 -0
  302. package/dist/embeddings/base.d.ts +21 -0
  303. package/dist/embeddings/base.js +4 -0
  304. package/dist/embeddings/cache_backed.d.ts +4 -0
  305. package/dist/embeddings/cohere.d.ts +4 -0
  306. package/dist/embeddings/fake.cjs +33 -0
  307. package/dist/embeddings/fake.d.ts +37 -0
  308. package/dist/embeddings/fake.js +33 -0
  309. package/dist/embeddings/googlepalm.cjs +18 -0
  310. package/dist/embeddings/googlepalm.d.ts +22 -0
  311. package/dist/embeddings/googlepalm.js +18 -0
  312. package/dist/embeddings/googlevertexai.cjs +15 -0
  313. package/dist/embeddings/googlevertexai.d.ts +20 -0
  314. package/dist/embeddings/googlevertexai.js +15 -0
  315. package/dist/embeddings/hf.cjs +20 -0
  316. package/dist/embeddings/hf.d.ts +24 -0
  317. package/dist/embeddings/hf.js +20 -0
  318. package/dist/embeddings/openai.cjs +25 -0
  319. package/dist/embeddings/openai.d.ts +29 -0
  320. package/dist/embeddings/openai.js +25 -0
  321. package/dist/embeddings/tensorflow.cjs +27 -0
  322. package/dist/embeddings/tensorflow.d.ts +31 -0
  323. package/dist/embeddings/tensorflow.js +27 -0
  324. package/dist/evaluation/qa/eval_chain.cjs +3 -0
  325. package/dist/evaluation/qa/eval_chain.d.ts +1 -0
  326. package/dist/evaluation/qa/eval_chain.js +3 -0
  327. package/dist/experimental/autogpt/agent.cjs +21 -0
  328. package/dist/experimental/autogpt/agent.d.ts +24 -0
  329. package/dist/experimental/autogpt/agent.js +21 -0
  330. package/dist/experimental/autogpt/output_parser.cjs +24 -0
  331. package/dist/experimental/autogpt/output_parser.d.ts +24 -0
  332. package/dist/experimental/autogpt/output_parser.js +24 -0
  333. package/dist/experimental/autogpt/prompt.cjs +25 -0
  334. package/dist/experimental/autogpt/prompt.d.ts +28 -0
  335. package/dist/experimental/autogpt/prompt.js +25 -0
  336. package/dist/experimental/autogpt/prompt_generator.cjs +32 -0
  337. package/dist/experimental/autogpt/prompt_generator.d.ts +32 -0
  338. package/dist/experimental/autogpt/prompt_generator.js +32 -0
  339. package/dist/experimental/autogpt/schema.d.ts +11 -0
  340. package/dist/experimental/babyagi/agent.cjs +68 -0
  341. package/dist/experimental/babyagi/agent.d.ts +76 -0
  342. package/dist/experimental/babyagi/agent.js +68 -0
  343. package/dist/experimental/babyagi/task_creation.cjs +13 -0
  344. package/dist/experimental/babyagi/task_creation.d.ts +11 -0
  345. package/dist/experimental/babyagi/task_creation.js +13 -0
  346. package/dist/experimental/babyagi/task_execution.cjs +12 -0
  347. package/dist/experimental/babyagi/task_execution.d.ts +10 -0
  348. package/dist/experimental/babyagi/task_execution.js +12 -0
  349. package/dist/experimental/babyagi/task_prioritization.cjs +11 -0
  350. package/dist/experimental/babyagi/task_prioritization.d.ts +9 -0
  351. package/dist/experimental/babyagi/task_prioritization.js +11 -0
  352. package/dist/experimental/generative_agents/generative_agent.cjs +77 -0
  353. package/dist/experimental/generative_agents/generative_agent.d.ts +80 -0
  354. package/dist/experimental/generative_agents/generative_agent.js +77 -0
  355. package/dist/experimental/generative_agents/generative_agent_memory.cjs +116 -0
  356. package/dist/experimental/generative_agents/generative_agent_memory.d.ts +114 -0
  357. package/dist/experimental/generative_agents/generative_agent_memory.js +116 -0
  358. package/dist/experimental/multimodal_embeddings/googlevertexai.cjs +46 -0
  359. package/dist/experimental/multimodal_embeddings/googlevertexai.d.ts +58 -0
  360. package/dist/experimental/multimodal_embeddings/googlevertexai.js +46 -0
  361. package/dist/experimental/plan_and_execute/agent_executor.cjs +35 -0
  362. package/dist/experimental/plan_and_execute/agent_executor.d.ts +38 -0
  363. package/dist/experimental/plan_and_execute/agent_executor.js +35 -0
  364. package/dist/experimental/plan_and_execute/base.cjs +26 -0
  365. package/dist/experimental/plan_and_execute/base.d.ts +38 -0
  366. package/dist/experimental/plan_and_execute/base.js +26 -0
  367. package/dist/experimental/plan_and_execute/outputParser.cjs +18 -0
  368. package/dist/experimental/plan_and_execute/outputParser.d.ts +18 -0
  369. package/dist/experimental/plan_and_execute/outputParser.js +18 -0
  370. package/dist/llms/ai21.cjs +13 -0
  371. package/dist/llms/ai21.d.ts +19 -0
  372. package/dist/llms/ai21.js +13 -0
  373. package/dist/llms/aleph_alpha.cjs +10 -0
  374. package/dist/llms/aleph_alpha.d.ts +13 -0
  375. package/dist/llms/aleph_alpha.js +10 -0
  376. package/dist/llms/base.cjs +32 -0
  377. package/dist/llms/base.d.ts +32 -0
  378. package/dist/llms/base.js +32 -0
  379. package/dist/llms/bedrock.cjs +21 -0
  380. package/dist/llms/bedrock.d.ts +9 -0
  381. package/dist/llms/bedrock.js +21 -0
  382. package/dist/llms/cohere.cjs +7 -0
  383. package/dist/llms/cohere.d.ts +8 -0
  384. package/dist/llms/cohere.js +7 -0
  385. package/dist/llms/googlevertexai.cjs +23 -0
  386. package/dist/llms/googlevertexai.d.ts +38 -0
  387. package/dist/llms/googlevertexai.js +23 -0
  388. package/dist/llms/hf.cjs +4 -0
  389. package/dist/llms/hf.d.ts +8 -0
  390. package/dist/llms/hf.js +4 -0
  391. package/dist/llms/ollama.cjs +7 -0
  392. package/dist/llms/ollama.d.ts +5 -0
  393. package/dist/llms/ollama.js +7 -0
  394. package/dist/llms/openai-chat.cjs +35 -4
  395. package/dist/llms/openai-chat.d.ts +28 -4
  396. package/dist/llms/openai-chat.js +35 -4
  397. package/dist/llms/openai.cjs +26 -6
  398. package/dist/llms/openai.d.ts +11 -3
  399. package/dist/llms/openai.js +26 -6
  400. package/dist/llms/replicate.cjs +9 -0
  401. package/dist/llms/replicate.d.ts +12 -0
  402. package/dist/llms/replicate.js +9 -0
  403. package/dist/llms/sagemaker_endpoint.cjs +11 -0
  404. package/dist/llms/sagemaker_endpoint.d.ts +17 -0
  405. package/dist/llms/sagemaker_endpoint.js +11 -0
  406. package/dist/load/index.cjs +7 -1
  407. package/dist/load/index.js +7 -1
  408. package/dist/load/serializable.cjs +42 -3
  409. package/dist/load/serializable.d.ts +16 -0
  410. package/dist/load/serializable.js +40 -2
  411. package/dist/memory/base.cjs +11 -0
  412. package/dist/memory/base.d.ts +40 -0
  413. package/dist/memory/base.js +11 -0
  414. package/dist/memory/buffer_memory.cjs +19 -0
  415. package/dist/memory/buffer_memory.d.ts +22 -0
  416. package/dist/memory/buffer_memory.js +19 -0
  417. package/dist/memory/buffer_window_memory.cjs +15 -0
  418. package/dist/memory/buffer_window_memory.d.ts +18 -0
  419. package/dist/memory/buffer_window_memory.js +15 -0
  420. package/dist/memory/chat_memory.cjs +16 -0
  421. package/dist/memory/chat_memory.d.ts +19 -0
  422. package/dist/memory/chat_memory.js +16 -0
  423. package/dist/memory/combined_memory.cjs +28 -0
  424. package/dist/memory/combined_memory.d.ts +33 -0
  425. package/dist/memory/combined_memory.js +28 -0
  426. package/dist/memory/entity_memory.cjs +21 -0
  427. package/dist/memory/entity_memory.d.ts +24 -0
  428. package/dist/memory/entity_memory.js +21 -0
  429. package/dist/memory/motorhead_memory.cjs +25 -0
  430. package/dist/memory/motorhead_memory.d.ts +29 -0
  431. package/dist/memory/motorhead_memory.js +25 -0
  432. package/dist/memory/stores/entity/in_memory.cjs +29 -0
  433. package/dist/memory/stores/entity/in_memory.d.ts +29 -0
  434. package/dist/memory/stores/entity/in_memory.js +29 -0
  435. package/dist/memory/summary.cjs +31 -0
  436. package/dist/memory/summary.d.ts +39 -0
  437. package/dist/memory/summary.js +31 -0
  438. package/dist/memory/summary_buffer.cjs +33 -0
  439. package/dist/memory/summary_buffer.d.ts +37 -0
  440. package/dist/memory/summary_buffer.js +33 -0
  441. package/dist/memory/vector_store.cjs +22 -0
  442. package/dist/memory/vector_store.d.ts +26 -0
  443. package/dist/memory/vector_store.js +22 -0
  444. package/dist/memory/zep.cjs +22 -0
  445. package/dist/memory/zep.d.ts +27 -0
  446. package/dist/memory/zep.js +22 -0
  447. package/dist/output_parsers/combining.cjs +15 -0
  448. package/dist/output_parsers/combining.d.ts +19 -0
  449. package/dist/output_parsers/combining.js +15 -0
  450. package/dist/output_parsers/expression.cjs +12 -0
  451. package/dist/output_parsers/expression.d.ts +12 -0
  452. package/dist/output_parsers/expression.js +12 -0
  453. package/dist/output_parsers/expression_type_handlers/array_literal_expression_handler.cjs +18 -0
  454. package/dist/output_parsers/expression_type_handlers/array_literal_expression_handler.d.ts +18 -0
  455. package/dist/output_parsers/expression_type_handlers/array_literal_expression_handler.js +18 -0
  456. package/dist/output_parsers/expression_type_handlers/base.cjs +68 -0
  457. package/dist/output_parsers/expression_type_handlers/base.d.ts +79 -0
  458. package/dist/output_parsers/expression_type_handlers/base.js +68 -0
  459. package/dist/output_parsers/expression_type_handlers/boolean_literal_handler.cjs +18 -0
  460. package/dist/output_parsers/expression_type_handlers/boolean_literal_handler.d.ts +18 -0
  461. package/dist/output_parsers/expression_type_handlers/boolean_literal_handler.js +18 -0
  462. package/dist/output_parsers/expression_type_handlers/call_expression_handler.cjs +22 -0
  463. package/dist/output_parsers/expression_type_handlers/call_expression_handler.d.ts +22 -0
  464. package/dist/output_parsers/expression_type_handlers/call_expression_handler.js +22 -0
  465. package/dist/output_parsers/expression_type_handlers/factory.cjs +20 -0
  466. package/dist/output_parsers/expression_type_handlers/factory.d.ts +20 -0
  467. package/dist/output_parsers/expression_type_handlers/factory.js +20 -0
  468. package/dist/output_parsers/expression_type_handlers/identifier_handler.cjs +19 -0
  469. package/dist/output_parsers/expression_type_handlers/identifier_handler.d.ts +19 -0
  470. package/dist/output_parsers/expression_type_handlers/identifier_handler.js +19 -0
  471. package/dist/output_parsers/expression_type_handlers/member_expression_handler.cjs +17 -0
  472. package/dist/output_parsers/expression_type_handlers/member_expression_handler.d.ts +17 -0
  473. package/dist/output_parsers/expression_type_handlers/member_expression_handler.js +17 -0
  474. package/dist/output_parsers/expression_type_handlers/numeric_literal_handler.cjs +16 -0
  475. package/dist/output_parsers/expression_type_handlers/numeric_literal_handler.d.ts +16 -0
  476. package/dist/output_parsers/expression_type_handlers/numeric_literal_handler.js +16 -0
  477. package/dist/output_parsers/expression_type_handlers/object_literal_expression_handler.cjs +16 -0
  478. package/dist/output_parsers/expression_type_handlers/object_literal_expression_handler.d.ts +16 -0
  479. package/dist/output_parsers/expression_type_handlers/object_literal_expression_handler.js +16 -0
  480. package/dist/output_parsers/expression_type_handlers/property_assignment_handler.cjs +17 -0
  481. package/dist/output_parsers/expression_type_handlers/property_assignment_handler.d.ts +17 -0
  482. package/dist/output_parsers/expression_type_handlers/property_assignment_handler.js +17 -0
  483. package/dist/output_parsers/expression_type_handlers/string_literal_handler.cjs +16 -0
  484. package/dist/output_parsers/expression_type_handlers/string_literal_handler.d.ts +16 -0
  485. package/dist/output_parsers/expression_type_handlers/string_literal_handler.js +16 -0
  486. package/dist/output_parsers/expression_type_handlers/types.d.ts +50 -0
  487. package/dist/output_parsers/fix.cjs +28 -0
  488. package/dist/output_parsers/fix.d.ts +26 -0
  489. package/dist/output_parsers/fix.js +28 -0
  490. package/dist/output_parsers/list.cjs +27 -0
  491. package/dist/output_parsers/list.d.ts +25 -0
  492. package/dist/output_parsers/list.js +27 -0
  493. package/dist/output_parsers/noop.cjs +21 -0
  494. package/dist/output_parsers/noop.d.ts +19 -0
  495. package/dist/output_parsers/noop.js +21 -0
  496. package/dist/output_parsers/openai_functions.cjs +40 -0
  497. package/dist/output_parsers/openai_functions.d.ts +37 -0
  498. package/dist/output_parsers/openai_functions.js +40 -0
  499. package/dist/output_parsers/regex.cjs +15 -0
  500. package/dist/output_parsers/regex.d.ts +16 -0
  501. package/dist/output_parsers/regex.js +15 -0
  502. package/dist/output_parsers/router.cjs +15 -0
  503. package/dist/output_parsers/router.d.ts +19 -0
  504. package/dist/output_parsers/router.js +15 -0
  505. package/dist/output_parsers/structured.cjs +36 -0
  506. package/dist/output_parsers/structured.d.ts +38 -0
  507. package/dist/output_parsers/structured.js +36 -0
  508. package/dist/prompts/base.cjs +26 -0
  509. package/dist/prompts/base.d.ts +36 -0
  510. package/dist/prompts/base.js +26 -0
  511. package/dist/prompts/chat.cjs +69 -0
  512. package/dist/prompts/chat.d.ts +76 -0
  513. package/dist/prompts/chat.js +69 -0
  514. package/dist/prompts/few_shot.cjs +5 -0
  515. package/dist/prompts/few_shot.d.ts +5 -0
  516. package/dist/prompts/few_shot.js +5 -0
  517. package/dist/prompts/pipeline.cjs +29 -0
  518. package/dist/prompts/pipeline.d.ts +35 -0
  519. package/dist/prompts/pipeline.js +29 -0
  520. package/dist/prompts/prompt.cjs +13 -0
  521. package/dist/prompts/prompt.d.ts +11 -0
  522. package/dist/prompts/prompt.js +13 -0
  523. package/dist/prompts/selectors/LengthBasedExampleSelector.cjs +32 -0
  524. package/dist/prompts/selectors/LengthBasedExampleSelector.d.ts +33 -0
  525. package/dist/prompts/selectors/LengthBasedExampleSelector.js +32 -0
  526. package/dist/prompts/selectors/SemanticSimilarityExampleSelector.cjs +31 -0
  527. package/dist/prompts/selectors/SemanticSimilarityExampleSelector.d.ts +35 -0
  528. package/dist/prompts/selectors/SemanticSimilarityExampleSelector.js +31 -0
  529. package/dist/prompts/selectors/conditional.cjs +30 -0
  530. package/dist/prompts/selectors/conditional.d.ts +37 -0
  531. package/dist/prompts/selectors/conditional.js +30 -0
  532. package/dist/prompts/serde.d.ts +24 -0
  533. package/dist/prompts/template.d.ts +17 -0
  534. package/dist/retrievers/amazon_kendra.cjs +65 -0
  535. package/dist/retrievers/amazon_kendra.d.ts +67 -0
  536. package/dist/retrievers/amazon_kendra.js +65 -0
  537. package/dist/retrievers/contextual_compression.cjs +8 -0
  538. package/dist/retrievers/contextual_compression.d.ts +11 -0
  539. package/dist/retrievers/contextual_compression.js +8 -0
  540. package/dist/retrievers/databerry.cjs +8 -0
  541. package/dist/retrievers/databerry.d.ts +10 -0
  542. package/dist/retrievers/databerry.js +8 -0
  543. package/dist/retrievers/document_compressors/chain_extract.cjs +18 -0
  544. package/dist/retrievers/document_compressors/chain_extract.d.ts +22 -0
  545. package/dist/retrievers/document_compressors/chain_extract.js +18 -0
  546. package/dist/retrievers/document_compressors/index.d.ts +9 -0
  547. package/dist/retrievers/hyde.cjs +12 -0
  548. package/dist/retrievers/hyde.d.ts +18 -0
  549. package/dist/retrievers/hyde.js +12 -0
  550. package/dist/retrievers/metal.cjs +10 -0
  551. package/dist/retrievers/metal.d.ts +13 -0
  552. package/dist/retrievers/metal.js +10 -0
  553. package/dist/retrievers/parent_document.cjs +20 -1
  554. package/dist/retrievers/parent_document.d.ts +16 -0
  555. package/dist/retrievers/parent_document.js +20 -1
  556. package/dist/retrievers/remote/base.cjs +4 -0
  557. package/dist/retrievers/remote/base.d.ts +28 -0
  558. package/dist/retrievers/remote/base.js +4 -0
  559. package/dist/retrievers/remote/chatgpt-plugin.cjs +17 -0
  560. package/dist/retrievers/remote/chatgpt-plugin.d.ts +21 -0
  561. package/dist/retrievers/remote/chatgpt-plugin.js +17 -0
  562. package/dist/retrievers/remote/remote-retriever.cjs +20 -0
  563. package/dist/retrievers/remote/remote-retriever.d.ts +20 -0
  564. package/dist/retrievers/remote/remote-retriever.js +20 -0
  565. package/dist/retrievers/self_query/base.cjs +28 -0
  566. package/dist/retrievers/self_query/base.d.ts +45 -0
  567. package/dist/retrievers/self_query/base.js +28 -0
  568. package/dist/retrievers/self_query/chroma.cjs +6 -0
  569. package/dist/retrievers/self_query/chroma.d.ts +6 -0
  570. package/dist/retrievers/self_query/chroma.js +6 -0
  571. package/dist/retrievers/self_query/functional.cjs +40 -0
  572. package/dist/retrievers/self_query/functional.d.ts +49 -0
  573. package/dist/retrievers/self_query/functional.js +40 -0
  574. package/dist/retrievers/self_query/index.cjs +17 -0
  575. package/dist/retrievers/self_query/index.d.ts +19 -0
  576. package/dist/retrievers/self_query/index.js +17 -0
  577. package/dist/retrievers/self_query/pinecone.cjs +7 -0
  578. package/dist/retrievers/self_query/pinecone.d.ts +7 -0
  579. package/dist/retrievers/self_query/pinecone.js +7 -0
  580. package/dist/retrievers/self_query/supabase.cjs +91 -7
  581. package/dist/retrievers/self_query/supabase.d.ts +69 -2
  582. package/dist/retrievers/self_query/supabase.js +92 -8
  583. package/dist/retrievers/self_query/supabase_utils.cjs +255 -0
  584. package/dist/retrievers/self_query/supabase_utils.d.ts +102 -0
  585. package/dist/retrievers/self_query/supabase_utils.js +250 -0
  586. package/dist/retrievers/self_query/utils.cjs +36 -3
  587. package/dist/retrievers/self_query/utils.d.ts +20 -0
  588. package/dist/retrievers/self_query/utils.js +32 -2
  589. package/dist/retrievers/self_query/weaviate.cjs +45 -14
  590. package/dist/retrievers/self_query/weaviate.d.ts +42 -0
  591. package/dist/retrievers/self_query/weaviate.js +43 -12
  592. package/dist/retrievers/supabase.cjs +33 -0
  593. package/dist/retrievers/supabase.d.ts +31 -0
  594. package/dist/retrievers/supabase.js +33 -0
  595. package/dist/retrievers/time_weighted.cjs +11 -0
  596. package/dist/retrievers/time_weighted.d.ts +13 -0
  597. package/dist/retrievers/time_weighted.js +11 -0
  598. package/dist/retrievers/vespa.cjs +21 -0
  599. package/dist/retrievers/vespa.d.ts +19 -0
  600. package/dist/retrievers/vespa.js +21 -0
  601. package/dist/retrievers/zep.cjs +7 -0
  602. package/dist/retrievers/zep.d.ts +9 -0
  603. package/dist/retrievers/zep.js +7 -0
  604. package/dist/schema/document.cjs +7 -0
  605. package/dist/schema/document.d.ts +7 -0
  606. package/dist/schema/document.js +7 -0
  607. package/dist/schema/index.cjs +100 -0
  608. package/dist/schema/index.d.ts +80 -0
  609. package/dist/schema/index.js +100 -0
  610. package/dist/schema/output_parser.cjs +49 -0
  611. package/dist/schema/output_parser.d.ts +53 -0
  612. package/dist/schema/output_parser.js +49 -0
  613. package/dist/schema/query_constructor.cjs +5 -0
  614. package/dist/schema/query_constructor.d.ts +5 -0
  615. package/dist/schema/query_constructor.js +5 -0
  616. package/dist/schema/retriever.cjs +18 -0
  617. package/dist/schema/retriever.d.ts +18 -0
  618. package/dist/schema/retriever.js +18 -0
  619. package/dist/schema/runnable.cjs +25 -7
  620. package/dist/schema/runnable.d.ts +6 -0
  621. package/dist/schema/runnable.js +25 -7
  622. package/dist/schema/storage.d.ts +20 -0
  623. package/dist/storage/encoder_backed.cjs +27 -0
  624. package/dist/storage/encoder_backed.d.ts +27 -0
  625. package/dist/storage/encoder_backed.js +27 -0
  626. package/dist/storage/in_memory.cjs +25 -0
  627. package/dist/storage/in_memory.d.ts +25 -0
  628. package/dist/storage/in_memory.js +25 -0
  629. package/dist/storage/ioredis.cjs +25 -0
  630. package/dist/storage/ioredis.d.ts +25 -0
  631. package/dist/storage/ioredis.js +25 -0
  632. package/dist/stores/doc/gcs.cjs +28 -0
  633. package/dist/stores/doc/gcs.d.ts +33 -0
  634. package/dist/stores/doc/gcs.js +28 -0
  635. package/dist/stores/doc/in_memory.cjs +27 -0
  636. package/dist/stores/doc/in_memory.d.ts +27 -0
  637. package/dist/stores/doc/in_memory.js +27 -0
  638. package/dist/stores/file/in_memory.cjs +20 -0
  639. package/dist/stores/file/in_memory.d.ts +20 -0
  640. package/dist/stores/file/in_memory.js +20 -0
  641. package/dist/stores/file/node.cjs +15 -0
  642. package/dist/stores/file/node.d.ts +15 -0
  643. package/dist/stores/file/node.js +15 -0
  644. package/dist/stores/message/dynamodb.cjs +17 -0
  645. package/dist/stores/message/dynamodb.d.ts +23 -0
  646. package/dist/stores/message/dynamodb.js +17 -0
  647. package/dist/stores/message/firestore.cjs +19 -0
  648. package/dist/stores/message/firestore.d.ts +24 -0
  649. package/dist/stores/message/firestore.js +19 -0
  650. package/dist/stores/message/in_memory.cjs +19 -0
  651. package/dist/stores/message/in_memory.d.ts +19 -0
  652. package/dist/stores/message/in_memory.js +19 -0
  653. package/dist/stores/message/ioredis.cjs +17 -0
  654. package/dist/stores/message/ioredis.d.ts +22 -0
  655. package/dist/stores/message/ioredis.js +17 -0
  656. package/dist/stores/message/momento.cjs +18 -0
  657. package/dist/stores/message/momento.d.ts +18 -0
  658. package/dist/stores/message/momento.js +18 -0
  659. package/dist/stores/message/planetscale.cjs +26 -0
  660. package/dist/stores/message/planetscale.d.ts +30 -0
  661. package/dist/stores/message/planetscale.js +26 -0
  662. package/dist/stores/message/redis.cjs +24 -0
  663. package/dist/stores/message/redis.d.ts +27 -0
  664. package/dist/stores/message/redis.js +24 -0
  665. package/dist/stores/message/upstash_redis.cjs +17 -0
  666. package/dist/stores/message/upstash_redis.d.ts +21 -0
  667. package/dist/stores/message/upstash_redis.js +17 -0
  668. package/dist/stores/message/utils.cjs +21 -0
  669. package/dist/stores/message/utils.d.ts +21 -0
  670. package/dist/stores/message/utils.js +21 -0
  671. package/dist/stores/message/xata.cjs +25 -0
  672. package/dist/stores/message/xata.d.ts +29 -0
  673. package/dist/stores/message/xata.js +25 -0
  674. package/dist/text_splitter.cjs +9 -0
  675. package/dist/text_splitter.d.ts +3 -0
  676. package/dist/text_splitter.js +9 -0
  677. package/dist/tools/IFTTTWebhook.cjs +9 -0
  678. package/dist/tools/IFTTTWebhook.d.ts +7 -0
  679. package/dist/tools/IFTTTWebhook.js +9 -0
  680. package/dist/tools/aiplugin.cjs +15 -0
  681. package/dist/tools/aiplugin.d.ts +17 -0
  682. package/dist/tools/aiplugin.js +15 -0
  683. package/dist/tools/aws_lambda.cjs +9 -0
  684. package/dist/tools/aws_lambda.d.ts +7 -0
  685. package/dist/tools/aws_lambda.js +9 -0
  686. package/dist/tools/aws_sfn.cjs +28 -0
  687. package/dist/tools/aws_sfn.d.ts +22 -0
  688. package/dist/tools/aws_sfn.js +28 -0
  689. package/dist/tools/base.cjs +22 -0
  690. package/dist/tools/base.d.ts +25 -0
  691. package/dist/tools/base.js +22 -0
  692. package/dist/tools/bingserpapi.cjs +13 -0
  693. package/dist/tools/bingserpapi.d.ts +11 -0
  694. package/dist/tools/bingserpapi.js +13 -0
  695. package/dist/tools/brave_search.cjs +9 -0
  696. package/dist/tools/brave_search.d.ts +11 -0
  697. package/dist/tools/brave_search.js +9 -0
  698. package/dist/tools/calculator.cjs +7 -0
  699. package/dist/tools/calculator.d.ts +5 -0
  700. package/dist/tools/calculator.js +7 -0
  701. package/dist/tools/chain.cjs +9 -0
  702. package/dist/tools/chain.d.ts +12 -0
  703. package/dist/tools/chain.js +9 -0
  704. package/dist/tools/convert_to_openai.cjs +6 -0
  705. package/dist/tools/convert_to_openai.d.ts +6 -0
  706. package/dist/tools/convert_to_openai.js +6 -0
  707. package/dist/tools/dadjokeapi.cjs +9 -0
  708. package/dist/tools/dadjokeapi.d.ts +7 -0
  709. package/dist/tools/dadjokeapi.js +9 -0
  710. package/dist/tools/dataforseo_api_search.cjs +3 -0
  711. package/dist/tools/dataforseo_api_search.d.ts +10 -0
  712. package/dist/tools/dataforseo_api_search.js +3 -0
  713. package/dist/tools/dynamic.cjs +12 -0
  714. package/dist/tools/dynamic.d.ts +14 -0
  715. package/dist/tools/dynamic.js +12 -0
  716. package/dist/tools/fs.cjs +14 -0
  717. package/dist/tools/fs.d.ts +16 -0
  718. package/dist/tools/fs.js +14 -0
  719. package/dist/tools/google_custom_search.cjs +8 -0
  720. package/dist/tools/google_custom_search.d.ts +9 -0
  721. package/dist/tools/google_custom_search.js +8 -0
  722. package/dist/tools/json.cjs +29 -1
  723. package/dist/tools/json.d.ts +24 -0
  724. package/dist/tools/json.js +29 -1
  725. package/dist/tools/requests.cjs +19 -2
  726. package/dist/tools/requests.d.ts +17 -0
  727. package/dist/tools/requests.js +19 -2
  728. package/dist/tools/searxng_search.cjs +10 -0
  729. package/dist/tools/searxng_search.d.ts +11 -0
  730. package/dist/tools/searxng_search.js +10 -0
  731. package/dist/tools/serpapi.cjs +10 -0
  732. package/dist/tools/serpapi.d.ts +8 -0
  733. package/dist/tools/serpapi.js +10 -0
  734. package/dist/tools/serper.cjs +8 -0
  735. package/dist/tools/serper.d.ts +10 -0
  736. package/dist/tools/serper.js +8 -0
  737. package/dist/tools/sql.cjs +37 -0
  738. package/dist/tools/sql.d.ts +36 -0
  739. package/dist/tools/sql.js +37 -0
  740. package/dist/tools/vectorstore.cjs +14 -0
  741. package/dist/tools/vectorstore.d.ts +15 -0
  742. package/dist/tools/vectorstore.js +14 -0
  743. package/dist/tools/webbrowser.cjs +9 -0
  744. package/dist/tools/webbrowser.d.ts +13 -0
  745. package/dist/tools/webbrowser.js +9 -0
  746. package/dist/tools/wikipedia_query_run.cjs +19 -0
  747. package/dist/tools/wikipedia_query_run.d.ts +25 -0
  748. package/dist/tools/wikipedia_query_run.js +19 -0
  749. package/dist/tools/zapier.cjs +15 -0
  750. package/dist/tools/zapier.d.ts +13 -0
  751. package/dist/tools/zapier.js +15 -0
  752. package/dist/vectorstores/analyticdb.cjs +76 -0
  753. package/dist/vectorstores/analyticdb.d.ts +80 -0
  754. package/dist/vectorstores/analyticdb.js +76 -0
  755. package/dist/vectorstores/base.cjs +16 -0
  756. package/dist/vectorstores/base.d.ts +27 -0
  757. package/dist/vectorstores/base.js +16 -0
  758. package/dist/vectorstores/chroma.cjs +73 -0
  759. package/dist/vectorstores/chroma.d.ts +84 -0
  760. package/dist/vectorstores/chroma.js +73 -0
  761. package/dist/vectorstores/elasticsearch.cjs +74 -0
  762. package/dist/vectorstores/elasticsearch.d.ts +90 -0
  763. package/dist/vectorstores/elasticsearch.js +74 -0
  764. package/dist/vectorstores/faiss.cjs +65 -0
  765. package/dist/vectorstores/faiss.d.ts +69 -0
  766. package/dist/vectorstores/faiss.js +65 -0
  767. package/dist/vectorstores/hnswlib.cjs +71 -0
  768. package/dist/vectorstores/hnswlib.d.ts +80 -0
  769. package/dist/vectorstores/hnswlib.js +71 -0
  770. package/dist/vectorstores/lancedb.cjs +38 -0
  771. package/dist/vectorstores/lancedb.d.ts +42 -0
  772. package/dist/vectorstores/lancedb.js +38 -0
  773. package/dist/vectorstores/memory.cjs +56 -0
  774. package/dist/vectorstores/memory.d.ts +66 -0
  775. package/dist/vectorstores/memory.js +56 -0
  776. package/dist/vectorstores/milvus.cjs +91 -7
  777. package/dist/vectorstores/milvus.d.ts +80 -1
  778. package/dist/vectorstores/milvus.js +91 -7
  779. package/dist/vectorstores/mongo.cjs +45 -0
  780. package/dist/vectorstores/mongo.d.ts +49 -0
  781. package/dist/vectorstores/mongo.js +45 -0
  782. package/dist/vectorstores/mongodb_atlas.cjs +48 -0
  783. package/dist/vectorstores/mongodb_atlas.d.ts +59 -0
  784. package/dist/vectorstores/mongodb_atlas.js +48 -0
  785. package/dist/vectorstores/myscale.cjs +66 -0
  786. package/dist/vectorstores/myscale.d.ts +80 -0
  787. package/dist/vectorstores/myscale.js +66 -0
  788. package/dist/vectorstores/opensearch.cjs +60 -0
  789. package/dist/vectorstores/opensearch.d.ts +74 -0
  790. package/dist/vectorstores/opensearch.js +60 -0
  791. package/dist/vectorstores/pinecone.cjs +54 -0
  792. package/dist/vectorstores/pinecone.d.ts +58 -0
  793. package/dist/vectorstores/pinecone.js +54 -0
  794. package/dist/vectorstores/prisma.cjs +66 -0
  795. package/dist/vectorstores/prisma.d.ts +66 -0
  796. package/dist/vectorstores/prisma.js +66 -0
  797. package/dist/vectorstores/qdrant.cjs +60 -0
  798. package/dist/vectorstores/qdrant.d.ts +66 -0
  799. package/dist/vectorstores/qdrant.js +60 -0
  800. package/dist/vectorstores/redis.cjs +62 -0
  801. package/dist/vectorstores/redis.d.ts +88 -0
  802. package/dist/vectorstores/redis.js +62 -0
  803. package/dist/vectorstores/singlestore.cjs +46 -0
  804. package/dist/vectorstores/singlestore.d.ts +46 -0
  805. package/dist/vectorstores/singlestore.js +46 -0
  806. package/dist/vectorstores/supabase.cjs +50 -0
  807. package/dist/vectorstores/supabase.d.ts +54 -2
  808. package/dist/vectorstores/supabase.js +50 -0
  809. package/dist/vectorstores/tigris.cjs +49 -0
  810. package/dist/vectorstores/tigris.d.ts +53 -0
  811. package/dist/vectorstores/tigris.js +49 -0
  812. package/dist/vectorstores/typeorm.cjs +71 -0
  813. package/dist/vectorstores/typeorm.d.ts +76 -0
  814. package/dist/vectorstores/typeorm.js +71 -0
  815. package/dist/vectorstores/typesense.cjs +5 -0
  816. package/dist/vectorstores/typesense.d.ts +5 -0
  817. package/dist/vectorstores/typesense.js +5 -0
  818. package/dist/vectorstores/usearch.cjs +50 -0
  819. package/dist/vectorstores/usearch.d.ts +55 -0
  820. package/dist/vectorstores/usearch.js +50 -0
  821. package/dist/vectorstores/vectara.cjs +104 -0
  822. package/dist/vectorstores/vectara.d.ts +72 -0
  823. package/dist/vectorstores/vectara.js +104 -0
  824. package/dist/vectorstores/weaviate.cjs +61 -0
  825. package/dist/vectorstores/weaviate.d.ts +70 -0
  826. package/dist/vectorstores/weaviate.js +61 -0
  827. package/dist/vectorstores/xata.cjs +36 -0
  828. package/dist/vectorstores/xata.d.ts +43 -0
  829. package/dist/vectorstores/xata.js +36 -0
  830. package/dist/vectorstores/zep.d.ts +11 -0
  831. package/package.json +2 -2
@@ -25,7 +25,45 @@ function replaceSecrets(root, secretsMap) {
25
25
  }
26
26
  return result;
27
27
  }
28
+ /**
29
+ * Get a unique name for the module, rather than parent class implementations.
30
+ * Should not be subclassed, subclass lc_name above instead.
31
+ */
32
+ export function get_lc_unique_name(
33
+ // eslint-disable-next-line @typescript-eslint/no-use-before-define
34
+ serializableClass) {
35
+ // "super" here would refer to the parent class of Serializable,
36
+ // when we want the parent class of the module actually calling this method.
37
+ const parentClass = Object.getPrototypeOf(serializableClass);
38
+ const lcNameIsSubclassed = typeof serializableClass.lc_name === "function" &&
39
+ (typeof parentClass.lc_name !== "function" ||
40
+ serializableClass.lc_name() !== parentClass.lc_name());
41
+ if (lcNameIsSubclassed) {
42
+ return serializableClass.lc_name();
43
+ }
44
+ else {
45
+ return serializableClass.name;
46
+ }
47
+ }
28
48
  export class Serializable {
49
+ /**
50
+ * The name of the serializable. Override to provide an alias or
51
+ * to preserve the serialized module name in minified environments.
52
+ *
53
+ * Implemented as a static method to support loading logic.
54
+ */
55
+ static lc_name() {
56
+ return this.name;
57
+ }
58
+ /**
59
+ * The final serialized identifier for the module.
60
+ */
61
+ get lc_id() {
62
+ return [
63
+ ...this.lc_namespace,
64
+ get_lc_unique_name(this.constructor),
65
+ ];
66
+ }
29
67
  /**
30
68
  * A map of secrets, which will be omitted from serialization.
31
69
  * Keys are paths to the secret in constructor args, e.g. "foo.bar.baz".
@@ -104,7 +142,7 @@ export class Serializable {
104
142
  return {
105
143
  lc: 1,
106
144
  type: "constructor",
107
- id: [...this.lc_namespace, this.constructor.name],
145
+ id: this.lc_id,
108
146
  kwargs: mapKeys(Object.keys(secrets).length ? replaceSecrets(kwargs, secrets) : kwargs, keyToJson, aliases),
109
147
  };
110
148
  }
@@ -112,7 +150,7 @@ export class Serializable {
112
150
  return {
113
151
  lc: 1,
114
152
  type: "not_implemented",
115
- id: [...this.lc_namespace, this.constructor.name],
153
+ id: this.lc_id,
116
154
  };
117
155
  }
118
156
  }
@@ -1,6 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getPromptInputKey = exports.getBufferString = exports.getOutputValue = exports.getInputValue = exports.BaseMemory = void 0;
4
+ /**
5
+ * Abstract base class for memory in LangChain's Chains. Memory refers to
6
+ * the state in Chains. It can be used to store information about past
7
+ * executions of a Chain and inject that information into the inputs of
8
+ * future executions of the Chain.
9
+ */
4
10
  class BaseMemory {
5
11
  }
6
12
  exports.BaseMemory = BaseMemory;
@@ -74,6 +80,11 @@ function getBufferString(messages, humanPrefix = "Human", aiPrefix = "AI") {
74
80
  return string_messages.join("\n");
75
81
  }
76
82
  exports.getBufferString = getBufferString;
83
+ /**
84
+ * Function used by memory classes to get the key of the prompt input,
85
+ * excluding any keys that are memory variables or the "stop" key. If
86
+ * there is not exactly one prompt input key, an error is thrown.
87
+ */
77
88
  function getPromptInputKey(inputs, memoryVariables) {
78
89
  const promptInputKeys = Object.keys(inputs).filter((key) => !memoryVariables.includes(key) && key !== "stop");
79
90
  if (promptInputKeys.length !== 1) {
@@ -1,10 +1,45 @@
1
1
  import { BaseMessage } from "../schema/index.js";
2
+ /**
3
+ * Type alias for a record where the keys are strings and the values can
4
+ * be any type. This is used to represent the input values for a Chain.
5
+ */
2
6
  export type InputValues = Record<string, any>;
7
+ /**
8
+ * Type alias for a record where the keys are strings and the values can
9
+ * be any type. This is used to represent the output values from a Chain.
10
+ */
3
11
  export type OutputValues = Record<string, any>;
12
+ /**
13
+ * Type alias for a record where the keys are strings and the values can
14
+ * be any type. This is used to represent the memory variables in a Chain.
15
+ */
4
16
  export type MemoryVariables = Record<string, any>;
17
+ /**
18
+ * Abstract base class for memory in LangChain's Chains. Memory refers to
19
+ * the state in Chains. It can be used to store information about past
20
+ * executions of a Chain and inject that information into the inputs of
21
+ * future executions of the Chain.
22
+ */
5
23
  export declare abstract class BaseMemory {
6
24
  abstract get memoryKeys(): string[];
25
+ /**
26
+ * Abstract method that should take an object of input values and return a
27
+ * Promise that resolves with an object of memory variables. The
28
+ * implementation of this method should load the memory variables from the
29
+ * provided input values.
30
+ * @param values An object of input values.
31
+ * @returns Promise that resolves with an object of memory variables.
32
+ */
7
33
  abstract loadMemoryVariables(values: InputValues): Promise<MemoryVariables>;
34
+ /**
35
+ * Abstract method that should take two objects, one of input values and
36
+ * one of output values, and return a Promise that resolves when the
37
+ * context has been saved. The implementation of this method should save
38
+ * the context based on the provided input and output values.
39
+ * @param inputValues An object of input values.
40
+ * @param outputValues An object of output values.
41
+ * @returns Promise that resolves when the context has been saved.
42
+ */
8
43
  abstract saveContext(inputValues: InputValues, outputValues: OutputValues): Promise<void>;
9
44
  }
10
45
  /**
@@ -25,4 +60,9 @@ export declare const getOutputValue: (outputValues: OutputValues, outputKey?: st
25
60
  * of the chat message history, based on the message content and role.
26
61
  */
27
62
  export declare function getBufferString(messages: BaseMessage[], humanPrefix?: string, aiPrefix?: string): string;
63
+ /**
64
+ * Function used by memory classes to get the key of the prompt input,
65
+ * excluding any keys that are memory variables or the "stop" key. If
66
+ * there is not exactly one prompt input key, an error is thrown.
67
+ */
28
68
  export declare function getPromptInputKey(inputs: Record<string, unknown>, memoryVariables: string[]): string;
@@ -1,3 +1,9 @@
1
+ /**
2
+ * Abstract base class for memory in LangChain's Chains. Memory refers to
3
+ * the state in Chains. It can be used to store information about past
4
+ * executions of a Chain and inject that information into the inputs of
5
+ * future executions of the Chain.
6
+ */
1
7
  export class BaseMemory {
2
8
  }
3
9
  const getValue = (values, key) => {
@@ -67,6 +73,11 @@ export function getBufferString(messages, humanPrefix = "Human", aiPrefix = "AI"
67
73
  }
68
74
  return string_messages.join("\n");
69
75
  }
76
+ /**
77
+ * Function used by memory classes to get the key of the prompt input,
78
+ * excluding any keys that are memory variables or the "stop" key. If
79
+ * there is not exactly one prompt input key, an error is thrown.
80
+ */
70
81
  export function getPromptInputKey(inputs, memoryVariables) {
71
82
  const promptInputKeys = Object.keys(inputs).filter((key) => !memoryVariables.includes(key) && key !== "stop");
72
83
  if (promptInputKeys.length !== 1) {
@@ -3,6 +3,18 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BufferMemory = void 0;
4
4
  const base_js_1 = require("./base.cjs");
5
5
  const chat_memory_js_1 = require("./chat_memory.cjs");
6
+ /**
7
+ * The `BufferMemory` class is a type of memory component used for storing
8
+ * and managing previous chat messages. It is a wrapper around
9
+ * `ChatMessageHistory` that extracts the messages into an input variable.
10
+ * This class is particularly useful in applications like chatbots where
11
+ * it is essential to remember previous interactions. Note: The memory
12
+ * instance represents the history of a single conversation. Therefore, it
13
+ * is not recommended to share the same history or memory instance between
14
+ * two different chains. If you deploy your LangChain app on a serverless
15
+ * environment, do not store memory instances in a variable, as your
16
+ * hosting provider may reset it by the next time the function is called.
17
+ */
6
18
  class BufferMemory extends chat_memory_js_1.BaseChatMemory {
7
19
  constructor(fields) {
8
20
  super({
@@ -36,6 +48,13 @@ class BufferMemory extends chat_memory_js_1.BaseChatMemory {
36
48
  get memoryKeys() {
37
49
  return [this.memoryKey];
38
50
  }
51
+ /**
52
+ * Loads the memory variables. It takes an `InputValues` object as a
53
+ * parameter and returns a `Promise` that resolves with a
54
+ * `MemoryVariables` object.
55
+ * @param _values `InputValues` object.
56
+ * @returns A `Promise` that resolves with a `MemoryVariables` object.
57
+ */
39
58
  async loadMemoryVariables(_values) {
40
59
  const messages = await this.chatHistory.getMessages();
41
60
  if (this.returnMessages) {
@@ -1,15 +1,37 @@
1
1
  import { InputValues, MemoryVariables } from "./base.js";
2
2
  import { BaseChatMemory, BaseChatMemoryInput } from "./chat_memory.js";
3
+ /**
4
+ * Interface for the input parameters of the `BufferMemory` class.
5
+ */
3
6
  export interface BufferMemoryInput extends BaseChatMemoryInput {
4
7
  humanPrefix?: string;
5
8
  aiPrefix?: string;
6
9
  memoryKey?: string;
7
10
  }
11
+ /**
12
+ * The `BufferMemory` class is a type of memory component used for storing
13
+ * and managing previous chat messages. It is a wrapper around
14
+ * `ChatMessageHistory` that extracts the messages into an input variable.
15
+ * This class is particularly useful in applications like chatbots where
16
+ * it is essential to remember previous interactions. Note: The memory
17
+ * instance represents the history of a single conversation. Therefore, it
18
+ * is not recommended to share the same history or memory instance between
19
+ * two different chains. If you deploy your LangChain app on a serverless
20
+ * environment, do not store memory instances in a variable, as your
21
+ * hosting provider may reset it by the next time the function is called.
22
+ */
8
23
  export declare class BufferMemory extends BaseChatMemory implements BufferMemoryInput {
9
24
  humanPrefix: string;
10
25
  aiPrefix: string;
11
26
  memoryKey: string;
12
27
  constructor(fields?: BufferMemoryInput);
13
28
  get memoryKeys(): string[];
29
+ /**
30
+ * Loads the memory variables. It takes an `InputValues` object as a
31
+ * parameter and returns a `Promise` that resolves with a
32
+ * `MemoryVariables` object.
33
+ * @param _values `InputValues` object.
34
+ * @returns A `Promise` that resolves with a `MemoryVariables` object.
35
+ */
14
36
  loadMemoryVariables(_values: InputValues): Promise<MemoryVariables>;
15
37
  }
@@ -1,5 +1,17 @@
1
1
  import { getBufferString } from "./base.js";
2
2
  import { BaseChatMemory } from "./chat_memory.js";
3
+ /**
4
+ * The `BufferMemory` class is a type of memory component used for storing
5
+ * and managing previous chat messages. It is a wrapper around
6
+ * `ChatMessageHistory` that extracts the messages into an input variable.
7
+ * This class is particularly useful in applications like chatbots where
8
+ * it is essential to remember previous interactions. Note: The memory
9
+ * instance represents the history of a single conversation. Therefore, it
10
+ * is not recommended to share the same history or memory instance between
11
+ * two different chains. If you deploy your LangChain app on a serverless
12
+ * environment, do not store memory instances in a variable, as your
13
+ * hosting provider may reset it by the next time the function is called.
14
+ */
3
15
  export class BufferMemory extends BaseChatMemory {
4
16
  constructor(fields) {
5
17
  super({
@@ -33,6 +45,13 @@ export class BufferMemory extends BaseChatMemory {
33
45
  get memoryKeys() {
34
46
  return [this.memoryKey];
35
47
  }
48
+ /**
49
+ * Loads the memory variables. It takes an `InputValues` object as a
50
+ * parameter and returns a `Promise` that resolves with a
51
+ * `MemoryVariables` object.
52
+ * @param _values `InputValues` object.
53
+ * @returns A `Promise` that resolves with a `MemoryVariables` object.
54
+ */
36
55
  async loadMemoryVariables(_values) {
37
56
  const messages = await this.chatHistory.getMessages();
38
57
  if (this.returnMessages) {
@@ -3,6 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BufferWindowMemory = void 0;
4
4
  const base_js_1 = require("./base.cjs");
5
5
  const chat_memory_js_1 = require("./chat_memory.cjs");
6
+ /**
7
+ * Class for managing and storing previous chat messages. It extends the
8
+ * BaseChatMemory class and implements the BufferWindowMemoryInput
9
+ * interface. This class is stateful and stores messages in a buffer. When
10
+ * called in a chain, it returns all of the messages it has stored.
11
+ */
6
12
  class BufferWindowMemory extends chat_memory_js_1.BaseChatMemory {
7
13
  constructor(fields) {
8
14
  super({
@@ -43,6 +49,15 @@ class BufferWindowMemory extends chat_memory_js_1.BaseChatMemory {
43
49
  get memoryKeys() {
44
50
  return [this.memoryKey];
45
51
  }
52
+ /**
53
+ * Method to load the memory variables. Retrieves the chat messages from
54
+ * the history, slices the last 'k' messages, and stores them in the
55
+ * memory under the memoryKey. If the returnMessages property is set to
56
+ * true, the method returns the messages as they are. Otherwise, it
57
+ * returns a string representation of the messages.
58
+ * @param _values InputValues object.
59
+ * @returns Promise that resolves to a MemoryVariables object.
60
+ */
46
61
  async loadMemoryVariables(_values) {
47
62
  const messages = await this.chatHistory.getMessages();
48
63
  if (this.returnMessages) {
@@ -1,11 +1,20 @@
1
1
  import { InputValues, MemoryVariables } from "./base.js";
2
2
  import { BaseChatMemory, BaseChatMemoryInput } from "./chat_memory.js";
3
+ /**
4
+ * Interface for the input parameters of the BufferWindowMemory class.
5
+ */
3
6
  export interface BufferWindowMemoryInput extends BaseChatMemoryInput {
4
7
  humanPrefix?: string;
5
8
  aiPrefix?: string;
6
9
  memoryKey?: string;
7
10
  k?: number;
8
11
  }
12
+ /**
13
+ * Class for managing and storing previous chat messages. It extends the
14
+ * BaseChatMemory class and implements the BufferWindowMemoryInput
15
+ * interface. This class is stateful and stores messages in a buffer. When
16
+ * called in a chain, it returns all of the messages it has stored.
17
+ */
9
18
  export declare class BufferWindowMemory extends BaseChatMemory implements BufferWindowMemoryInput {
10
19
  humanPrefix: string;
11
20
  aiPrefix: string;
@@ -13,5 +22,14 @@ export declare class BufferWindowMemory extends BaseChatMemory implements Buffer
13
22
  k: number;
14
23
  constructor(fields?: BufferWindowMemoryInput);
15
24
  get memoryKeys(): string[];
25
+ /**
26
+ * Method to load the memory variables. Retrieves the chat messages from
27
+ * the history, slices the last 'k' messages, and stores them in the
28
+ * memory under the memoryKey. If the returnMessages property is set to
29
+ * true, the method returns the messages as they are. Otherwise, it
30
+ * returns a string representation of the messages.
31
+ * @param _values InputValues object.
32
+ * @returns Promise that resolves to a MemoryVariables object.
33
+ */
16
34
  loadMemoryVariables(_values: InputValues): Promise<MemoryVariables>;
17
35
  }
@@ -1,5 +1,11 @@
1
1
  import { getBufferString } from "./base.js";
2
2
  import { BaseChatMemory } from "./chat_memory.js";
3
+ /**
4
+ * Class for managing and storing previous chat messages. It extends the
5
+ * BaseChatMemory class and implements the BufferWindowMemoryInput
6
+ * interface. This class is stateful and stores messages in a buffer. When
7
+ * called in a chain, it returns all of the messages it has stored.
8
+ */
3
9
  export class BufferWindowMemory extends BaseChatMemory {
4
10
  constructor(fields) {
5
11
  super({
@@ -40,6 +46,15 @@ export class BufferWindowMemory extends BaseChatMemory {
40
46
  get memoryKeys() {
41
47
  return [this.memoryKey];
42
48
  }
49
+ /**
50
+ * Method to load the memory variables. Retrieves the chat messages from
51
+ * the history, slices the last 'k' messages, and stores them in the
52
+ * memory under the memoryKey. If the returnMessages property is set to
53
+ * true, the method returns the messages as they are. Otherwise, it
54
+ * returns a string representation of the messages.
55
+ * @param _values InputValues object.
56
+ * @returns Promise that resolves to a MemoryVariables object.
57
+ */
43
58
  async loadMemoryVariables(_values) {
44
59
  const messages = await this.chatHistory.getMessages();
45
60
  if (this.returnMessages) {
@@ -3,6 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BaseChatMemory = void 0;
4
4
  const base_js_1 = require("./base.cjs");
5
5
  const in_memory_js_1 = require("../stores/message/in_memory.cjs");
6
+ /**
7
+ * Abstract class that provides a base for implementing different types of
8
+ * memory systems. It is designed to maintain the state of an application,
9
+ * specifically the history of a conversation. This class is typically
10
+ * extended by other classes to create specific types of memory systems.
11
+ */
6
12
  class BaseChatMemory extends base_js_1.BaseMemory {
7
13
  constructor(fields) {
8
14
  super();
@@ -35,11 +41,21 @@ class BaseChatMemory extends base_js_1.BaseMemory {
35
41
  this.inputKey = fields?.inputKey ?? this.inputKey;
36
42
  this.outputKey = fields?.outputKey ?? this.outputKey;
37
43
  }
44
+ /**
45
+ * Method to add user and AI messages to the chat history in sequence.
46
+ * @param inputValues The input values from the user.
47
+ * @param outputValues The output values from the AI.
48
+ * @returns Promise that resolves when the context has been saved.
49
+ */
38
50
  async saveContext(inputValues, outputValues) {
39
51
  // this is purposefully done in sequence so they're saved in order
40
52
  await this.chatHistory.addUserMessage((0, base_js_1.getInputValue)(inputValues, this.inputKey));
41
53
  await this.chatHistory.addAIChatMessage((0, base_js_1.getOutputValue)(outputValues, this.outputKey));
42
54
  }
55
+ /**
56
+ * Method to clear the chat history.
57
+ * @returns Promise that resolves when the chat history has been cleared.
58
+ */
43
59
  async clear() {
44
60
  await this.chatHistory.clear();
45
61
  }
@@ -1,17 +1,36 @@
1
1
  import { BaseChatMessageHistory } from "../schema/index.js";
2
2
  import { BaseMemory, InputValues, OutputValues } from "./base.js";
3
+ /**
4
+ * Interface for the input parameters of the BaseChatMemory class.
5
+ */
3
6
  export interface BaseChatMemoryInput {
4
7
  chatHistory?: BaseChatMessageHistory;
5
8
  returnMessages?: boolean;
6
9
  inputKey?: string;
7
10
  outputKey?: string;
8
11
  }
12
+ /**
13
+ * Abstract class that provides a base for implementing different types of
14
+ * memory systems. It is designed to maintain the state of an application,
15
+ * specifically the history of a conversation. This class is typically
16
+ * extended by other classes to create specific types of memory systems.
17
+ */
9
18
  export declare abstract class BaseChatMemory extends BaseMemory {
10
19
  chatHistory: BaseChatMessageHistory;
11
20
  returnMessages: boolean;
12
21
  inputKey?: string;
13
22
  outputKey?: string;
14
23
  constructor(fields?: BaseChatMemoryInput);
24
+ /**
25
+ * Method to add user and AI messages to the chat history in sequence.
26
+ * @param inputValues The input values from the user.
27
+ * @param outputValues The output values from the AI.
28
+ * @returns Promise that resolves when the context has been saved.
29
+ */
15
30
  saveContext(inputValues: InputValues, outputValues: OutputValues): Promise<void>;
31
+ /**
32
+ * Method to clear the chat history.
33
+ * @returns Promise that resolves when the chat history has been cleared.
34
+ */
16
35
  clear(): Promise<void>;
17
36
  }
@@ -1,5 +1,11 @@
1
1
  import { BaseMemory, getInputValue, getOutputValue, } from "./base.js";
2
2
  import { ChatMessageHistory } from "../stores/message/in_memory.js";
3
+ /**
4
+ * Abstract class that provides a base for implementing different types of
5
+ * memory systems. It is designed to maintain the state of an application,
6
+ * specifically the history of a conversation. This class is typically
7
+ * extended by other classes to create specific types of memory systems.
8
+ */
3
9
  export class BaseChatMemory extends BaseMemory {
4
10
  constructor(fields) {
5
11
  super();
@@ -32,11 +38,21 @@ export class BaseChatMemory extends BaseMemory {
32
38
  this.inputKey = fields?.inputKey ?? this.inputKey;
33
39
  this.outputKey = fields?.outputKey ?? this.outputKey;
34
40
  }
41
+ /**
42
+ * Method to add user and AI messages to the chat history in sequence.
43
+ * @param inputValues The input values from the user.
44
+ * @param outputValues The output values from the AI.
45
+ * @returns Promise that resolves when the context has been saved.
46
+ */
35
47
  async saveContext(inputValues, outputValues) {
36
48
  // this is purposefully done in sequence so they're saved in order
37
49
  await this.chatHistory.addUserMessage(getInputValue(inputValues, this.inputKey));
38
50
  await this.chatHistory.addAIChatMessage(getOutputValue(outputValues, this.outputKey));
39
51
  }
52
+ /**
53
+ * Method to clear the chat history.
54
+ * @returns Promise that resolves when the chat history has been cleared.
55
+ */
40
56
  async clear() {
41
57
  await this.chatHistory.clear();
42
58
  }
@@ -2,6 +2,11 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CombinedMemory = void 0;
4
4
  const chat_memory_js_1 = require("./chat_memory.cjs");
5
+ /**
6
+ * Class that manages and manipulates previous chat messages. It extends
7
+ * from the BaseChatMemory class and implements the CombinedMemoryInput
8
+ * interface.
9
+ */
5
10
  class CombinedMemory extends chat_memory_js_1.BaseChatMemory {
6
11
  constructor(fields) {
7
12
  super({
@@ -41,6 +46,10 @@ class CombinedMemory extends chat_memory_js_1.BaseChatMemory {
41
46
  this.checkRepeatedMemoryVariable();
42
47
  this.checkInputKey();
43
48
  }
49
+ /**
50
+ * Checks for repeated memory variables across all memory objects. Throws
51
+ * an error if any are found.
52
+ */
44
53
  checkRepeatedMemoryVariable() {
45
54
  const allVariables = [];
46
55
  for (const memory of this.memories) {
@@ -53,6 +62,10 @@ class CombinedMemory extends chat_memory_js_1.BaseChatMemory {
53
62
  allVariables.push(...memory.memoryKeys);
54
63
  }
55
64
  }
65
+ /**
66
+ * Checks if input keys are set for all memory objects. Logs a warning if
67
+ * any are missing.
68
+ */
56
69
  checkInputKey() {
57
70
  for (const memory of this.memories) {
58
71
  if (memory.chatHistory !== undefined &&
@@ -61,6 +74,11 @@ class CombinedMemory extends chat_memory_js_1.BaseChatMemory {
61
74
  }
62
75
  }
63
76
  }
77
+ /**
78
+ * Loads memory variables from all memory objects.
79
+ * @param inputValues Input values to load memory variables from.
80
+ * @returns Promise that resolves with an object containing the loaded memory variables.
81
+ */
64
82
  async loadMemoryVariables(inputValues) {
65
83
  let memoryData = {};
66
84
  for (const memory of this.memories) {
@@ -72,11 +90,21 @@ class CombinedMemory extends chat_memory_js_1.BaseChatMemory {
72
90
  }
73
91
  return memoryData;
74
92
  }
93
+ /**
94
+ * Saves the context to all memory objects.
95
+ * @param inputValues Input values to save.
96
+ * @param outputValues Output values to save.
97
+ * @returns Promise that resolves when the context has been saved to all memory objects.
98
+ */
75
99
  async saveContext(inputValues, outputValues) {
76
100
  for (const memory of this.memories) {
77
101
  await memory.saveContext(inputValues, outputValues);
78
102
  }
79
103
  }
104
+ /**
105
+ * Clears all memory objects.
106
+ * @returns Promise that resolves when all memory objects have been cleared.
107
+ */
80
108
  async clear() {
81
109
  for (const memory of this.memories) {
82
110
  if (typeof memory.clear === "function") {
@@ -1,21 +1,54 @@
1
1
  import { InputValues, MemoryVariables, BaseMemory, OutputValues } from "./base.js";
2
2
  import { BaseChatMemory, BaseChatMemoryInput } from "./chat_memory.js";
3
+ /**
4
+ * Interface that defines the shape of the input object that the
5
+ * CombinedMemory constructor accepts. It extends the BaseChatMemoryInput
6
+ * interface and adds additional properties.
7
+ */
3
8
  export interface CombinedMemoryInput extends BaseChatMemoryInput {
4
9
  memories: BaseMemory[];
5
10
  humanPrefix?: string;
6
11
  aiPrefix?: string;
7
12
  memoryKey?: string;
8
13
  }
14
+ /**
15
+ * Class that manages and manipulates previous chat messages. It extends
16
+ * from the BaseChatMemory class and implements the CombinedMemoryInput
17
+ * interface.
18
+ */
9
19
  export declare class CombinedMemory extends BaseChatMemory implements CombinedMemoryInput {
10
20
  humanPrefix: string;
11
21
  aiPrefix: string;
12
22
  memoryKey: string;
13
23
  memories: BaseMemory[];
14
24
  constructor(fields?: CombinedMemoryInput);
25
+ /**
26
+ * Checks for repeated memory variables across all memory objects. Throws
27
+ * an error if any are found.
28
+ */
15
29
  checkRepeatedMemoryVariable(): void;
30
+ /**
31
+ * Checks if input keys are set for all memory objects. Logs a warning if
32
+ * any are missing.
33
+ */
16
34
  checkInputKey(): void;
35
+ /**
36
+ * Loads memory variables from all memory objects.
37
+ * @param inputValues Input values to load memory variables from.
38
+ * @returns Promise that resolves with an object containing the loaded memory variables.
39
+ */
17
40
  loadMemoryVariables(inputValues: InputValues): Promise<MemoryVariables>;
41
+ /**
42
+ * Saves the context to all memory objects.
43
+ * @param inputValues Input values to save.
44
+ * @param outputValues Output values to save.
45
+ * @returns Promise that resolves when the context has been saved to all memory objects.
46
+ */
18
47
  saveContext(inputValues: InputValues, outputValues: OutputValues): Promise<void>;
48
+ /**
49
+ * Clears all memory objects.
50
+ * @returns Promise that resolves when all memory objects have been cleared.
51
+ */
19
52
  clear(): Promise<void>;
20
53
  get memoryKeys(): string[];
21
54
  }
@@ -1,4 +1,9 @@
1
1
  import { BaseChatMemory } from "./chat_memory.js";
2
+ /**
3
+ * Class that manages and manipulates previous chat messages. It extends
4
+ * from the BaseChatMemory class and implements the CombinedMemoryInput
5
+ * interface.
6
+ */
2
7
  export class CombinedMemory extends BaseChatMemory {
3
8
  constructor(fields) {
4
9
  super({
@@ -38,6 +43,10 @@ export class CombinedMemory extends BaseChatMemory {
38
43
  this.checkRepeatedMemoryVariable();
39
44
  this.checkInputKey();
40
45
  }
46
+ /**
47
+ * Checks for repeated memory variables across all memory objects. Throws
48
+ * an error if any are found.
49
+ */
41
50
  checkRepeatedMemoryVariable() {
42
51
  const allVariables = [];
43
52
  for (const memory of this.memories) {
@@ -50,6 +59,10 @@ export class CombinedMemory extends BaseChatMemory {
50
59
  allVariables.push(...memory.memoryKeys);
51
60
  }
52
61
  }
62
+ /**
63
+ * Checks if input keys are set for all memory objects. Logs a warning if
64
+ * any are missing.
65
+ */
53
66
  checkInputKey() {
54
67
  for (const memory of this.memories) {
55
68
  if (memory.chatHistory !== undefined &&
@@ -58,6 +71,11 @@ export class CombinedMemory extends BaseChatMemory {
58
71
  }
59
72
  }
60
73
  }
74
+ /**
75
+ * Loads memory variables from all memory objects.
76
+ * @param inputValues Input values to load memory variables from.
77
+ * @returns Promise that resolves with an object containing the loaded memory variables.
78
+ */
61
79
  async loadMemoryVariables(inputValues) {
62
80
  let memoryData = {};
63
81
  for (const memory of this.memories) {
@@ -69,11 +87,21 @@ export class CombinedMemory extends BaseChatMemory {
69
87
  }
70
88
  return memoryData;
71
89
  }
90
+ /**
91
+ * Saves the context to all memory objects.
92
+ * @param inputValues Input values to save.
93
+ * @param outputValues Output values to save.
94
+ * @returns Promise that resolves when the context has been saved to all memory objects.
95
+ */
72
96
  async saveContext(inputValues, outputValues) {
73
97
  for (const memory of this.memories) {
74
98
  await memory.saveContext(inputValues, outputValues);
75
99
  }
76
100
  }
101
+ /**
102
+ * Clears all memory objects.
103
+ * @returns Promise that resolves when all memory objects have been cleared.
104
+ */
77
105
  async clear() {
78
106
  for (const memory of this.memories) {
79
107
  if (typeof memory.clear === "function") {