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
@@ -29,10 +29,25 @@ export class MongoVectorStore extends VectorStore {
29
29
  this.client = args.client;
30
30
  this.indexName = args.indexName || "default";
31
31
  }
32
+ /**
33
+ * Method that adds documents to the MongoDB collection. It first converts
34
+ * the documents into vectors using the `embedDocuments` method of the
35
+ * `embeddings` instance, and then adds these vectors to the collection.
36
+ * @param documents Array of Document instances to be added to the MongoDB collection.
37
+ * @returns Promise that resolves when the documents have been added to the collection.
38
+ */
32
39
  async addDocuments(documents) {
33
40
  const texts = documents.map(({ pageContent }) => pageContent);
34
41
  return this.addVectors(await this.embeddings.embedDocuments(texts), documents);
35
42
  }
43
+ /**
44
+ * Method that adds vectors to the MongoDB collection. It creates an array
45
+ * of items, each containing the content, embedding, and metadata of a
46
+ * document, and then inserts these items into the collection.
47
+ * @param vectors Array of vectors to be added to the MongoDB collection.
48
+ * @param documents Array of Document instances corresponding to the vectors.
49
+ * @returns Promise that resolves when the vectors have been added to the collection.
50
+ */
36
51
  async addVectors(vectors, documents) {
37
52
  const items = vectors.map((embedding, idx) => ({
38
53
  content: documents[idx].pageContent,
@@ -41,6 +56,16 @@ export class MongoVectorStore extends VectorStore {
41
56
  }));
42
57
  await this.collection.insertMany(items);
43
58
  }
59
+ /**
60
+ * Method that performs a similarity search on vectors and returns the
61
+ * documents and their similarity scores. It constructs a MongoDB
62
+ * aggregation pipeline, applies any post-query pipeline steps if
63
+ * provided, and then executes the pipeline to retrieve the results.
64
+ * @param query Query vector for the similarity search.
65
+ * @param k Number of nearest neighbors to return.
66
+ * @param filter Optional filter for the query, which can include post-query pipeline steps.
67
+ * @returns Promise that resolves to an array of tuples, each containing a Document instance and its similarity score.
68
+ */
44
69
  async similaritySearchVectorWithScore(query, k, filter) {
45
70
  // Search has to be the first pipeline step (https://www.mongodb.com/docs/atlas/atlas-search/query-syntax/#behavior)
46
71
  // We hopefully this changes in the future
@@ -94,6 +119,17 @@ export class MongoVectorStore extends VectorStore {
94
119
  }
95
120
  return ret;
96
121
  }
122
+ /**
123
+ * Static method that creates a `MongoVectorStore` instance from an array
124
+ * of texts. It creates Document instances from the texts and their
125
+ * corresponding metadata, and then calls the `fromDocuments` method to
126
+ * create the `MongoVectorStore` instance.
127
+ * @param texts Array of texts to be converted into Document instances.
128
+ * @param metadatas Array or single object of metadata corresponding to the texts.
129
+ * @param embeddings Embeddings instance used to convert the texts into vectors.
130
+ * @param dbConfig Configuration for the MongoDB database.
131
+ * @returns Promise that resolves to a new MongoVectorStore instance.
132
+ */
97
133
  static async fromTexts(texts, metadatas, embeddings, dbConfig) {
98
134
  const docs = [];
99
135
  for (let i = 0; i < texts.length; i += 1) {
@@ -106,6 +142,15 @@ export class MongoVectorStore extends VectorStore {
106
142
  }
107
143
  return MongoVectorStore.fromDocuments(docs, embeddings, dbConfig);
108
144
  }
145
+ /**
146
+ * Static method that creates a `MongoVectorStore` instance from an array
147
+ * of Document instances. It creates a new `MongoVectorStore` instance,
148
+ * adds the documents to it, and then returns the instance.
149
+ * @param docs Array of Document instances to be added to the `MongoVectorStore`.
150
+ * @param embeddings Embeddings instance used to convert the documents into vectors.
151
+ * @param dbConfig Configuration for the MongoDB database.
152
+ * @returns Promise that resolves to a new MongoVectorStore instance.
153
+ */
109
154
  static async fromDocuments(docs, embeddings, dbConfig) {
110
155
  const instance = new this(embeddings, dbConfig);
111
156
  await instance.addDocuments(docs);
@@ -4,6 +4,12 @@ exports.MongoDBAtlasVectorSearch = void 0;
4
4
  const base_js_1 = require("./base.cjs");
5
5
  const document_js_1 = require("../document.cjs");
6
6
  const math_js_1 = require("../util/math.cjs");
7
+ /**
8
+ * Class that is a wrapper around MongoDB Atlas Vector Search. It is used
9
+ * to store embeddings in MongoDB documents, create a vector search index,
10
+ * and perform K-Nearest Neighbors (KNN) search with an approximate
11
+ * nearest neighbor algorithm.
12
+ */
7
13
  class MongoDBAtlasVectorSearch extends base_js_1.VectorStore {
8
14
  _vectorstoreType() {
9
15
  return "mongodb_atlas";
@@ -39,6 +45,13 @@ class MongoDBAtlasVectorSearch extends base_js_1.VectorStore {
39
45
  this.textKey = args.textKey ?? "text";
40
46
  this.embeddingKey = args.embeddingKey ?? "embedding";
41
47
  }
48
+ /**
49
+ * Method to add vectors and their corresponding documents to the MongoDB
50
+ * collection.
51
+ * @param vectors Vectors to be added.
52
+ * @param documents Corresponding documents to be added.
53
+ * @returns Promise that resolves when the vectors and documents have been added.
54
+ */
42
55
  async addVectors(vectors, documents) {
43
56
  const docs = vectors.map((embedding, idx) => ({
44
57
  [this.textKey]: documents[idx].pageContent,
@@ -47,10 +60,26 @@ class MongoDBAtlasVectorSearch extends base_js_1.VectorStore {
47
60
  }));
48
61
  await this.collection.insertMany(docs);
49
62
  }
63
+ /**
64
+ * Method to add documents to the MongoDB collection. It first converts
65
+ * the documents to vectors using the embeddings and then calls the
66
+ * addVectors method.
67
+ * @param documents Documents to be added.
68
+ * @returns Promise that resolves when the documents have been added.
69
+ */
50
70
  async addDocuments(documents) {
51
71
  const texts = documents.map(({ pageContent }) => pageContent);
52
72
  return this.addVectors(await this.embeddings.embedDocuments(texts), documents);
53
73
  }
74
+ /**
75
+ * Method that performs a similarity search on the vectors stored in the
76
+ * MongoDB collection. It returns a list of documents and their
77
+ * corresponding similarity scores.
78
+ * @param query Query vector for the similarity search.
79
+ * @param k Number of nearest neighbors to return.
80
+ * @param filter Optional filter to be applied.
81
+ * @returns Promise that resolves to a list of documents and their corresponding similarity scores.
82
+ */
54
83
  async similaritySearchVectorWithScore(query, k, filter) {
55
84
  const knnBeta = {
56
85
  vector: query,
@@ -141,6 +170,16 @@ class MongoDBAtlasVectorSearch extends base_js_1.VectorStore {
141
170
  return doc;
142
171
  });
143
172
  }
173
+ /**
174
+ * Static method to create an instance of MongoDBAtlasVectorSearch from a
175
+ * list of texts. It first converts the texts to vectors and then adds
176
+ * them to the MongoDB collection.
177
+ * @param texts List of texts to be converted to vectors.
178
+ * @param metadatas Metadata for the texts.
179
+ * @param embeddings Embeddings to be used for conversion.
180
+ * @param dbConfig Database configuration for MongoDB Atlas.
181
+ * @returns Promise that resolves to a new instance of MongoDBAtlasVectorSearch.
182
+ */
144
183
  static async fromTexts(texts, metadatas, embeddings, dbConfig) {
145
184
  const docs = [];
146
185
  for (let i = 0; i < texts.length; i += 1) {
@@ -153,6 +192,15 @@ class MongoDBAtlasVectorSearch extends base_js_1.VectorStore {
153
192
  }
154
193
  return MongoDBAtlasVectorSearch.fromDocuments(docs, embeddings, dbConfig);
155
194
  }
195
+ /**
196
+ * Static method to create an instance of MongoDBAtlasVectorSearch from a
197
+ * list of documents. It first converts the documents to vectors and then
198
+ * adds them to the MongoDB collection.
199
+ * @param docs List of documents to be converted to vectors.
200
+ * @param embeddings Embeddings to be used for conversion.
201
+ * @param dbConfig Database configuration for MongoDB Atlas.
202
+ * @returns Promise that resolves to a new instance of MongoDBAtlasVectorSearch.
203
+ */
156
204
  static async fromDocuments(docs, embeddings, dbConfig) {
157
205
  const instance = new this(embeddings, dbConfig);
158
206
  await instance.addDocuments(docs);
@@ -2,17 +2,34 @@ import type { Collection, Document as MongoDBDocument } from "mongodb";
2
2
  import { MaxMarginalRelevanceSearchOptions, VectorStore } from "./base.js";
3
3
  import { Embeddings } from "../embeddings/base.js";
4
4
  import { Document } from "../document.js";
5
+ /**
6
+ * Type that defines the arguments required to initialize the
7
+ * MongoDBAtlasVectorSearch class. It includes the MongoDB collection,
8
+ * index name, text key, and embedding key.
9
+ */
5
10
  export type MongoDBAtlasVectorSearchLibArgs = {
6
11
  readonly collection: Collection<MongoDBDocument>;
7
12
  readonly indexName?: string;
8
13
  readonly textKey?: string;
9
14
  readonly embeddingKey?: string;
10
15
  };
16
+ /**
17
+ * Type that defines the filter used in the
18
+ * similaritySearchVectorWithScore and maxMarginalRelevanceSearch methods.
19
+ * It includes pre-filter, post-filter pipeline, and a flag to include
20
+ * embeddings.
21
+ */
11
22
  type MongoDBAtlasFilter = {
12
23
  preFilter?: MongoDBDocument;
13
24
  postFilterPipeline?: MongoDBDocument[];
14
25
  includeEmbeddings?: boolean;
15
26
  } & MongoDBDocument;
27
+ /**
28
+ * Class that is a wrapper around MongoDB Atlas Vector Search. It is used
29
+ * to store embeddings in MongoDB documents, create a vector search index,
30
+ * and perform K-Nearest Neighbors (KNN) search with an approximate
31
+ * nearest neighbor algorithm.
32
+ */
16
33
  export declare class MongoDBAtlasVectorSearch extends VectorStore {
17
34
  FilterType: MongoDBAtlasFilter;
18
35
  private readonly collection;
@@ -21,8 +38,31 @@ export declare class MongoDBAtlasVectorSearch extends VectorStore {
21
38
  private readonly embeddingKey;
22
39
  _vectorstoreType(): string;
23
40
  constructor(embeddings: Embeddings, args: MongoDBAtlasVectorSearchLibArgs);
41
+ /**
42
+ * Method to add vectors and their corresponding documents to the MongoDB
43
+ * collection.
44
+ * @param vectors Vectors to be added.
45
+ * @param documents Corresponding documents to be added.
46
+ * @returns Promise that resolves when the vectors and documents have been added.
47
+ */
24
48
  addVectors(vectors: number[][], documents: Document[]): Promise<void>;
49
+ /**
50
+ * Method to add documents to the MongoDB collection. It first converts
51
+ * the documents to vectors using the embeddings and then calls the
52
+ * addVectors method.
53
+ * @param documents Documents to be added.
54
+ * @returns Promise that resolves when the documents have been added.
55
+ */
25
56
  addDocuments(documents: Document[]): Promise<void>;
57
+ /**
58
+ * Method that performs a similarity search on the vectors stored in the
59
+ * MongoDB collection. It returns a list of documents and their
60
+ * corresponding similarity scores.
61
+ * @param query Query vector for the similarity search.
62
+ * @param k Number of nearest neighbors to return.
63
+ * @param filter Optional filter to be applied.
64
+ * @returns Promise that resolves to a list of documents and their corresponding similarity scores.
65
+ */
26
66
  similaritySearchVectorWithScore(query: number[], k: number, filter?: MongoDBAtlasFilter): Promise<[Document, number][]>;
27
67
  /**
28
68
  * Return documents selected using the maximal marginal relevance.
@@ -40,7 +80,26 @@ export declare class MongoDBAtlasVectorSearch extends VectorStore {
40
80
  * @returns {Promise<Document[]>} - List of documents selected by maximal marginal relevance.
41
81
  */
42
82
  maxMarginalRelevanceSearch(query: string, options: MaxMarginalRelevanceSearchOptions<this["FilterType"]>): Promise<Document[]>;
83
+ /**
84
+ * Static method to create an instance of MongoDBAtlasVectorSearch from a
85
+ * list of texts. It first converts the texts to vectors and then adds
86
+ * them to the MongoDB collection.
87
+ * @param texts List of texts to be converted to vectors.
88
+ * @param metadatas Metadata for the texts.
89
+ * @param embeddings Embeddings to be used for conversion.
90
+ * @param dbConfig Database configuration for MongoDB Atlas.
91
+ * @returns Promise that resolves to a new instance of MongoDBAtlasVectorSearch.
92
+ */
43
93
  static fromTexts(texts: string[], metadatas: object[] | object, embeddings: Embeddings, dbConfig: MongoDBAtlasVectorSearchLibArgs): Promise<MongoDBAtlasVectorSearch>;
94
+ /**
95
+ * Static method to create an instance of MongoDBAtlasVectorSearch from a
96
+ * list of documents. It first converts the documents to vectors and then
97
+ * adds them to the MongoDB collection.
98
+ * @param docs List of documents to be converted to vectors.
99
+ * @param embeddings Embeddings to be used for conversion.
100
+ * @param dbConfig Database configuration for MongoDB Atlas.
101
+ * @returns Promise that resolves to a new instance of MongoDBAtlasVectorSearch.
102
+ */
44
103
  static fromDocuments(docs: Document[], embeddings: Embeddings, dbConfig: MongoDBAtlasVectorSearchLibArgs): Promise<MongoDBAtlasVectorSearch>;
45
104
  }
46
105
  export {};
@@ -1,6 +1,12 @@
1
1
  import { VectorStore } from "./base.js";
2
2
  import { Document } from "../document.js";
3
3
  import { maximalMarginalRelevance } from "../util/math.js";
4
+ /**
5
+ * Class that is a wrapper around MongoDB Atlas Vector Search. It is used
6
+ * to store embeddings in MongoDB documents, create a vector search index,
7
+ * and perform K-Nearest Neighbors (KNN) search with an approximate
8
+ * nearest neighbor algorithm.
9
+ */
4
10
  export class MongoDBAtlasVectorSearch extends VectorStore {
5
11
  _vectorstoreType() {
6
12
  return "mongodb_atlas";
@@ -36,6 +42,13 @@ export class MongoDBAtlasVectorSearch extends VectorStore {
36
42
  this.textKey = args.textKey ?? "text";
37
43
  this.embeddingKey = args.embeddingKey ?? "embedding";
38
44
  }
45
+ /**
46
+ * Method to add vectors and their corresponding documents to the MongoDB
47
+ * collection.
48
+ * @param vectors Vectors to be added.
49
+ * @param documents Corresponding documents to be added.
50
+ * @returns Promise that resolves when the vectors and documents have been added.
51
+ */
39
52
  async addVectors(vectors, documents) {
40
53
  const docs = vectors.map((embedding, idx) => ({
41
54
  [this.textKey]: documents[idx].pageContent,
@@ -44,10 +57,26 @@ export class MongoDBAtlasVectorSearch extends VectorStore {
44
57
  }));
45
58
  await this.collection.insertMany(docs);
46
59
  }
60
+ /**
61
+ * Method to add documents to the MongoDB collection. It first converts
62
+ * the documents to vectors using the embeddings and then calls the
63
+ * addVectors method.
64
+ * @param documents Documents to be added.
65
+ * @returns Promise that resolves when the documents have been added.
66
+ */
47
67
  async addDocuments(documents) {
48
68
  const texts = documents.map(({ pageContent }) => pageContent);
49
69
  return this.addVectors(await this.embeddings.embedDocuments(texts), documents);
50
70
  }
71
+ /**
72
+ * Method that performs a similarity search on the vectors stored in the
73
+ * MongoDB collection. It returns a list of documents and their
74
+ * corresponding similarity scores.
75
+ * @param query Query vector for the similarity search.
76
+ * @param k Number of nearest neighbors to return.
77
+ * @param filter Optional filter to be applied.
78
+ * @returns Promise that resolves to a list of documents and their corresponding similarity scores.
79
+ */
51
80
  async similaritySearchVectorWithScore(query, k, filter) {
52
81
  const knnBeta = {
53
82
  vector: query,
@@ -138,6 +167,16 @@ export class MongoDBAtlasVectorSearch extends VectorStore {
138
167
  return doc;
139
168
  });
140
169
  }
170
+ /**
171
+ * Static method to create an instance of MongoDBAtlasVectorSearch from a
172
+ * list of texts. It first converts the texts to vectors and then adds
173
+ * them to the MongoDB collection.
174
+ * @param texts List of texts to be converted to vectors.
175
+ * @param metadatas Metadata for the texts.
176
+ * @param embeddings Embeddings to be used for conversion.
177
+ * @param dbConfig Database configuration for MongoDB Atlas.
178
+ * @returns Promise that resolves to a new instance of MongoDBAtlasVectorSearch.
179
+ */
141
180
  static async fromTexts(texts, metadatas, embeddings, dbConfig) {
142
181
  const docs = [];
143
182
  for (let i = 0; i < texts.length; i += 1) {
@@ -150,6 +189,15 @@ export class MongoDBAtlasVectorSearch extends VectorStore {
150
189
  }
151
190
  return MongoDBAtlasVectorSearch.fromDocuments(docs, embeddings, dbConfig);
152
191
  }
192
+ /**
193
+ * Static method to create an instance of MongoDBAtlasVectorSearch from a
194
+ * list of documents. It first converts the documents to vectors and then
195
+ * adds them to the MongoDB collection.
196
+ * @param docs List of documents to be converted to vectors.
197
+ * @param embeddings Embeddings to be used for conversion.
198
+ * @param dbConfig Database configuration for MongoDB Atlas.
199
+ * @returns Promise that resolves to a new instance of MongoDBAtlasVectorSearch.
200
+ */
153
201
  static async fromDocuments(docs, embeddings, dbConfig) {
154
202
  const instance = new this(embeddings, dbConfig);
155
203
  await instance.addDocuments(docs);
@@ -28,6 +28,12 @@ const uuid = __importStar(require("uuid"));
28
28
  const client_1 = require("@clickhouse/client");
29
29
  const base_js_1 = require("./base.cjs");
30
30
  const document_js_1 = require("../document.cjs");
31
+ /**
32
+ * Class for interacting with the MyScale database. It extends the
33
+ * VectorStore class and provides methods for adding vectors and
34
+ * documents, searching for similar vectors, and creating instances from
35
+ * texts or documents.
36
+ */
31
37
  class MyScaleStore extends base_js_1.VectorStore {
32
38
  _vectorstoreType() {
33
39
  return "myscale";
@@ -100,6 +106,12 @@ class MyScaleStore extends base_js_1.VectorStore {
100
106
  session_id: uuid.v4(),
101
107
  });
102
108
  }
109
+ /**
110
+ * Method to add vectors to the MyScale database.
111
+ * @param vectors The vectors to add.
112
+ * @param documents The documents associated with the vectors.
113
+ * @returns Promise that resolves when the vectors have been added.
114
+ */
103
115
  async addVectors(vectors, documents) {
104
116
  if (vectors.length === 0) {
105
117
  return;
@@ -110,9 +122,21 @@ class MyScaleStore extends base_js_1.VectorStore {
110
122
  const queryStr = this.buildInsertQuery(vectors, documents);
111
123
  await this.client.exec({ query: queryStr });
112
124
  }
125
+ /**
126
+ * Method to add documents to the MyScale database.
127
+ * @param documents The documents to add.
128
+ * @returns Promise that resolves when the documents have been added.
129
+ */
113
130
  async addDocuments(documents) {
114
131
  return this.addVectors(await this.embeddings.embedDocuments(documents.map((d) => d.pageContent)), documents);
115
132
  }
133
+ /**
134
+ * Method to search for vectors that are similar to a given query vector.
135
+ * @param query The query vector.
136
+ * @param k The number of similar vectors to return.
137
+ * @param filter Optional filter for the search results.
138
+ * @returns Promise that resolves with an array of tuples, each containing a Document and a score.
139
+ */
116
140
  async similaritySearchVectorWithScore(query, k, filter) {
117
141
  if (!this.isInitialized) {
118
142
  await this.initialize(query.length);
@@ -126,6 +150,14 @@ class MyScaleStore extends base_js_1.VectorStore {
126
150
  ]);
127
151
  return result;
128
152
  }
153
+ /**
154
+ * Static method to create an instance of MyScaleStore from texts.
155
+ * @param texts The texts to use.
156
+ * @param metadatas The metadata associated with the texts.
157
+ * @param embeddings The embeddings to use.
158
+ * @param args The arguments for the MyScaleStore.
159
+ * @returns Promise that resolves with a new instance of MyScaleStore.
160
+ */
129
161
  static async fromTexts(texts, metadatas, embeddings, args) {
130
162
  const docs = [];
131
163
  for (let i = 0; i < texts.length; i += 1) {
@@ -138,16 +170,35 @@ class MyScaleStore extends base_js_1.VectorStore {
138
170
  }
139
171
  return MyScaleStore.fromDocuments(docs, embeddings, args);
140
172
  }
173
+ /**
174
+ * Static method to create an instance of MyScaleStore from documents.
175
+ * @param docs The documents to use.
176
+ * @param embeddings The embeddings to use.
177
+ * @param args The arguments for the MyScaleStore.
178
+ * @returns Promise that resolves with a new instance of MyScaleStore.
179
+ */
141
180
  static async fromDocuments(docs, embeddings, args) {
142
181
  const instance = new this(embeddings, args);
143
182
  await instance.addDocuments(docs);
144
183
  return instance;
145
184
  }
185
+ /**
186
+ * Static method to create an instance of MyScaleStore from an existing
187
+ * index.
188
+ * @param embeddings The embeddings to use.
189
+ * @param args The arguments for the MyScaleStore.
190
+ * @returns Promise that resolves with a new instance of MyScaleStore.
191
+ */
146
192
  static async fromExistingIndex(embeddings, args) {
147
193
  const instance = new this(embeddings, args);
148
194
  await instance.initialize();
149
195
  return instance;
150
196
  }
197
+ /**
198
+ * Method to initialize the MyScale database.
199
+ * @param dimension Optional dimension of the vectors.
200
+ * @returns Promise that resolves when the database has been initialized.
201
+ */
151
202
  async initialize(dimension) {
152
203
  const dim = dimension ?? (await this.embeddings.embedQuery("test")).length;
153
204
  let indexParamStr = "";
@@ -171,6 +222,13 @@ class MyScaleStore extends base_js_1.VectorStore {
171
222
  await this.client.exec({ query });
172
223
  this.isInitialized = true;
173
224
  }
225
+ /**
226
+ * Method to build an SQL query for inserting vectors and documents into
227
+ * the MyScale database.
228
+ * @param vectors The vectors to insert.
229
+ * @param documents The documents to insert.
230
+ * @returns The SQL query string.
231
+ */
174
232
  buildInsertQuery(vectors, documents) {
175
233
  const columnsStr = Object.values(this.columnMap).join(", ");
176
234
  const data = [];
@@ -196,6 +254,14 @@ class MyScaleStore extends base_js_1.VectorStore {
196
254
  escapeString(str) {
197
255
  return str.replace(/\\/g, "\\\\").replace(/'/g, "\\'");
198
256
  }
257
+ /**
258
+ * Method to build an SQL query for searching for similar vectors in the
259
+ * MyScale database.
260
+ * @param query The query vector.
261
+ * @param k The number of similar vectors to return.
262
+ * @param filter Optional filter for the search results.
263
+ * @returns The SQL query string.
264
+ */
199
265
  buildSearchQuery(query, k, filter) {
200
266
  const order = this.metric === "ip" ? "DESC" : "ASC";
201
267
  const whereStr = filter ? `PREWHERE ${filter.whereStr}` : "";
@@ -1,6 +1,11 @@
1
1
  import { Embeddings } from "../embeddings/base.js";
2
2
  import { VectorStore } from "./base.js";
3
3
  import { Document } from "../document.js";
4
+ /**
5
+ * Arguments for the MyScaleStore class, which include the host, port,
6
+ * protocol, username, password, index type, index parameters, column map,
7
+ * database, table, and metric.
8
+ */
4
9
  export interface MyScaleLibArgs {
5
10
  host: string;
6
11
  port: string | number;
@@ -14,16 +19,31 @@ export interface MyScaleLibArgs {
14
19
  table?: string;
15
20
  metric?: metric;
16
21
  }
22
+ /**
23
+ * Mapping of columns in the MyScale database.
24
+ */
17
25
  export interface ColumnMap {
18
26
  id: string;
19
27
  text: string;
20
28
  vector: string;
21
29
  metadata: string;
22
30
  }
31
+ /**
32
+ * Type of metric used in the MyScale database.
33
+ */
23
34
  export type metric = "ip" | "cosine" | "l2";
35
+ /**
36
+ * Type for filtering search results in the MyScale database.
37
+ */
24
38
  export interface MyScaleFilter {
25
39
  whereStr: string;
26
40
  }
41
+ /**
42
+ * Class for interacting with the MyScale database. It extends the
43
+ * VectorStore class and provides methods for adding vectors and
44
+ * documents, searching for similar vectors, and creating instances from
45
+ * texts or documents.
46
+ */
27
47
  export declare class MyScaleStore extends VectorStore {
28
48
  FilterType: MyScaleFilter;
29
49
  private client;
@@ -36,14 +56,74 @@ export declare class MyScaleStore extends VectorStore {
36
56
  private isInitialized;
37
57
  _vectorstoreType(): string;
38
58
  constructor(embeddings: Embeddings, args: MyScaleLibArgs);
59
+ /**
60
+ * Method to add vectors to the MyScale database.
61
+ * @param vectors The vectors to add.
62
+ * @param documents The documents associated with the vectors.
63
+ * @returns Promise that resolves when the vectors have been added.
64
+ */
39
65
  addVectors(vectors: number[][], documents: Document[]): Promise<void>;
66
+ /**
67
+ * Method to add documents to the MyScale database.
68
+ * @param documents The documents to add.
69
+ * @returns Promise that resolves when the documents have been added.
70
+ */
40
71
  addDocuments(documents: Document[]): Promise<void>;
72
+ /**
73
+ * Method to search for vectors that are similar to a given query vector.
74
+ * @param query The query vector.
75
+ * @param k The number of similar vectors to return.
76
+ * @param filter Optional filter for the search results.
77
+ * @returns Promise that resolves with an array of tuples, each containing a Document and a score.
78
+ */
41
79
  similaritySearchVectorWithScore(query: number[], k: number, filter?: this["FilterType"]): Promise<[Document, number][]>;
80
+ /**
81
+ * Static method to create an instance of MyScaleStore from texts.
82
+ * @param texts The texts to use.
83
+ * @param metadatas The metadata associated with the texts.
84
+ * @param embeddings The embeddings to use.
85
+ * @param args The arguments for the MyScaleStore.
86
+ * @returns Promise that resolves with a new instance of MyScaleStore.
87
+ */
42
88
  static fromTexts(texts: string[], metadatas: object | object[], embeddings: Embeddings, args: MyScaleLibArgs): Promise<MyScaleStore>;
89
+ /**
90
+ * Static method to create an instance of MyScaleStore from documents.
91
+ * @param docs The documents to use.
92
+ * @param embeddings The embeddings to use.
93
+ * @param args The arguments for the MyScaleStore.
94
+ * @returns Promise that resolves with a new instance of MyScaleStore.
95
+ */
43
96
  static fromDocuments(docs: Document[], embeddings: Embeddings, args: MyScaleLibArgs): Promise<MyScaleStore>;
97
+ /**
98
+ * Static method to create an instance of MyScaleStore from an existing
99
+ * index.
100
+ * @param embeddings The embeddings to use.
101
+ * @param args The arguments for the MyScaleStore.
102
+ * @returns Promise that resolves with a new instance of MyScaleStore.
103
+ */
44
104
  static fromExistingIndex(embeddings: Embeddings, args: MyScaleLibArgs): Promise<MyScaleStore>;
105
+ /**
106
+ * Method to initialize the MyScale database.
107
+ * @param dimension Optional dimension of the vectors.
108
+ * @returns Promise that resolves when the database has been initialized.
109
+ */
45
110
  private initialize;
111
+ /**
112
+ * Method to build an SQL query for inserting vectors and documents into
113
+ * the MyScale database.
114
+ * @param vectors The vectors to insert.
115
+ * @param documents The documents to insert.
116
+ * @returns The SQL query string.
117
+ */
46
118
  private buildInsertQuery;
47
119
  private escapeString;
120
+ /**
121
+ * Method to build an SQL query for searching for similar vectors in the
122
+ * MyScale database.
123
+ * @param query The query vector.
124
+ * @param k The number of similar vectors to return.
125
+ * @param filter Optional filter for the search results.
126
+ * @returns The SQL query string.
127
+ */
48
128
  private buildSearchQuery;
49
129
  }