langchain 0.0.131 → 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 (804) 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 +25 -0
  5. package/dist/agents/chat/index.d.ts +32 -0
  6. package/dist/agents/chat/index.js +25 -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 +22 -0
  11. package/dist/agents/chat_convo/index.d.ts +31 -0
  12. package/dist/agents/chat_convo/index.js +22 -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 +6 -0
  17. package/dist/agents/executor.d.ts +11 -0
  18. package/dist/agents/executor.js +6 -0
  19. package/dist/agents/initialize.d.ts +5 -0
  20. package/dist/agents/mrkl/index.cjs +17 -0
  21. package/dist/agents/mrkl/index.d.ts +24 -0
  22. package/dist/agents/mrkl/index.js +17 -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 +43 -0
  27. package/dist/agents/openai/index.d.ts +39 -0
  28. package/dist/agents/openai/index.js +43 -0
  29. package/dist/agents/structured_chat/index.cjs +32 -0
  30. package/dist/agents/structured_chat/index.d.ts +40 -0
  31. package/dist/agents/structured_chat/index.js +32 -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 +11 -0
  75. package/dist/callbacks/base.d.ts +20 -0
  76. package/dist/callbacks/base.js +11 -0
  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.d.ts +4 -0
  90. package/dist/chains/api/api_chain.cjs +12 -0
  91. package/dist/chains/api/api_chain.d.ts +19 -0
  92. package/dist/chains/api/api_chain.js +12 -0
  93. package/dist/chains/base.cjs +6 -0
  94. package/dist/chains/base.d.ts +6 -0
  95. package/dist/chains/base.js +6 -0
  96. package/dist/chains/chat_vector_db_chain.cjs +8 -0
  97. package/dist/chains/chat_vector_db_chain.d.ts +11 -0
  98. package/dist/chains/chat_vector_db_chain.js +8 -0
  99. package/dist/chains/combine_docs_chain.d.ts +10 -0
  100. package/dist/chains/constitutional_ai/constitutional_chain.cjs +17 -0
  101. package/dist/chains/constitutional_ai/constitutional_chain.d.ts +20 -0
  102. package/dist/chains/constitutional_ai/constitutional_chain.js +17 -0
  103. package/dist/chains/constitutional_ai/constitutional_principle.cjs +4 -0
  104. package/dist/chains/constitutional_ai/constitutional_principle.d.ts +4 -0
  105. package/dist/chains/constitutional_ai/constitutional_principle.js +4 -0
  106. package/dist/chains/conversation.cjs +4 -0
  107. package/dist/chains/conversation.d.ts +4 -0
  108. package/dist/chains/conversation.js +4 -0
  109. package/dist/chains/conversational_retrieval_chain.cjs +21 -0
  110. package/dist/chains/conversational_retrieval_chain.d.ts +26 -1
  111. package/dist/chains/conversational_retrieval_chain.js +21 -0
  112. package/dist/chains/llm_chain.d.ts +3 -0
  113. package/dist/chains/openai_functions/extraction.cjs +21 -0
  114. package/dist/chains/openai_functions/extraction.d.ts +15 -0
  115. package/dist/chains/openai_functions/extraction.js +21 -0
  116. package/dist/chains/openai_functions/openapi.cjs +27 -0
  117. package/dist/chains/openai_functions/openapi.d.ts +3 -0
  118. package/dist/chains/openai_functions/openapi.js +27 -0
  119. package/dist/chains/openai_functions/structured_output.cjs +12 -0
  120. package/dist/chains/openai_functions/structured_output.d.ts +18 -0
  121. package/dist/chains/openai_functions/structured_output.js +12 -0
  122. package/dist/chains/openai_functions/tagging.cjs +24 -0
  123. package/dist/chains/openai_functions/tagging.d.ts +21 -0
  124. package/dist/chains/openai_functions/tagging.js +24 -0
  125. package/dist/chains/openai_moderation.cjs +5 -0
  126. package/dist/chains/openai_moderation.d.ts +8 -0
  127. package/dist/chains/openai_moderation.js +5 -0
  128. package/dist/chains/query_constructor/index.cjs +17 -0
  129. package/dist/chains/query_constructor/index.d.ts +20 -0
  130. package/dist/chains/query_constructor/index.js +17 -0
  131. package/dist/chains/query_constructor/ir.cjs +24 -0
  132. package/dist/chains/query_constructor/ir.d.ts +71 -0
  133. package/dist/chains/query_constructor/ir.js +24 -0
  134. package/dist/chains/query_constructor/parser.cjs +21 -0
  135. package/dist/chains/query_constructor/parser.d.ts +25 -0
  136. package/dist/chains/query_constructor/parser.js +21 -0
  137. package/dist/chains/question_answering/load.cjs +21 -0
  138. package/dist/chains/question_answering/load.d.ts +34 -0
  139. package/dist/chains/question_answering/load.js +21 -0
  140. package/dist/chains/retrieval_qa.cjs +12 -0
  141. package/dist/chains/retrieval_qa.d.ts +15 -0
  142. package/dist/chains/retrieval_qa.js +12 -0
  143. package/dist/chains/router/llm_router.cjs +16 -0
  144. package/dist/chains/router/llm_router.d.ts +24 -0
  145. package/dist/chains/router/llm_router.js +16 -0
  146. package/dist/chains/router/multi_prompt.cjs +19 -0
  147. package/dist/chains/router/multi_prompt.d.ts +19 -0
  148. package/dist/chains/router/multi_prompt.js +19 -0
  149. package/dist/chains/router/multi_retrieval_qa.cjs +22 -0
  150. package/dist/chains/router/multi_retrieval_qa.d.ts +27 -0
  151. package/dist/chains/router/multi_retrieval_qa.js +22 -0
  152. package/dist/chains/router/multi_route.cjs +10 -0
  153. package/dist/chains/router/multi_route.d.ts +25 -0
  154. package/dist/chains/router/multi_route.js +10 -0
  155. package/dist/chains/sequential_chain.d.ts +6 -0
  156. package/dist/chains/serde.d.ts +58 -0
  157. package/dist/chains/sql_db/sql_db_chain.cjs +13 -0
  158. package/dist/chains/sql_db/sql_db_chain.d.ts +18 -0
  159. package/dist/chains/sql_db/sql_db_chain.js +13 -0
  160. package/dist/chains/summarization/load.d.ts +4 -0
  161. package/dist/chains/transform.cjs +6 -0
  162. package/dist/chains/transform.d.ts +11 -0
  163. package/dist/chains/transform.js +6 -0
  164. package/dist/chains/vector_db_qa.cjs +15 -0
  165. package/dist/chains/vector_db_qa.d.ts +21 -0
  166. package/dist/chains/vector_db_qa.js +15 -0
  167. package/dist/chat_models/anthropic.cjs +24 -4
  168. package/dist/chat_models/anthropic.d.ts +14 -0
  169. package/dist/chat_models/anthropic.js +24 -4
  170. package/dist/chat_models/baiduwenxin.cjs +16 -0
  171. package/dist/chat_models/baiduwenxin.d.ts +18 -0
  172. package/dist/chat_models/baiduwenxin.js +16 -0
  173. package/dist/chat_models/base.cjs +61 -0
  174. package/dist/chat_models/base.d.ts +73 -0
  175. package/dist/chat_models/base.js +61 -0
  176. package/dist/chat_models/googlepalm.cjs +3 -0
  177. package/dist/chat_models/googlepalm.d.ts +6 -0
  178. package/dist/chat_models/googlepalm.js +3 -0
  179. package/dist/chat_models/googlevertexai.cjs +32 -0
  180. package/dist/chat_models/googlevertexai.d.ts +49 -0
  181. package/dist/chat_models/googlevertexai.js +32 -0
  182. package/dist/chat_models/ollama.cjs +11 -0
  183. package/dist/chat_models/ollama.d.ts +15 -0
  184. package/dist/chat_models/ollama.js +11 -0
  185. package/dist/document_loaders/base.cjs +10 -0
  186. package/dist/document_loaders/base.d.ts +17 -0
  187. package/dist/document_loaders/base.js +10 -0
  188. package/dist/document_loaders/fs/buffer.cjs +21 -0
  189. package/dist/document_loaders/fs/buffer.d.ts +28 -0
  190. package/dist/document_loaders/fs/buffer.js +21 -0
  191. package/dist/document_loaders/fs/csv.cjs +19 -0
  192. package/dist/document_loaders/fs/csv.d.ts +19 -0
  193. package/dist/document_loaders/fs/csv.js +19 -0
  194. package/dist/document_loaders/fs/directory.cjs +21 -0
  195. package/dist/document_loaders/fs/directory.d.ts +29 -0
  196. package/dist/document_loaders/fs/directory.js +21 -0
  197. package/dist/document_loaders/fs/docx.cjs +16 -0
  198. package/dist/document_loaders/fs/docx.d.ts +16 -0
  199. package/dist/document_loaders/fs/docx.js +16 -0
  200. package/dist/document_loaders/fs/epub.cjs +16 -0
  201. package/dist/document_loaders/fs/epub.d.ts +16 -0
  202. package/dist/document_loaders/fs/epub.js +16 -0
  203. package/dist/document_loaders/fs/json.cjs +40 -0
  204. package/dist/document_loaders/fs/json.d.ts +40 -0
  205. package/dist/document_loaders/fs/json.js +40 -0
  206. package/dist/document_loaders/fs/notion.cjs +6 -0
  207. package/dist/document_loaders/fs/notion.d.ts +6 -0
  208. package/dist/document_loaders/fs/notion.js +6 -0
  209. package/dist/document_loaders/fs/pdf.cjs +21 -0
  210. package/dist/document_loaders/fs/pdf.d.ts +21 -0
  211. package/dist/document_loaders/fs/pdf.js +21 -0
  212. package/dist/document_loaders/fs/srt.cjs +19 -0
  213. package/dist/document_loaders/fs/srt.d.ts +19 -0
  214. package/dist/document_loaders/fs/srt.js +19 -0
  215. package/dist/document_loaders/fs/text.cjs +34 -0
  216. package/dist/document_loaders/fs/text.d.ts +34 -0
  217. package/dist/document_loaders/fs/text.js +34 -0
  218. package/dist/document_loaders/fs/unstructured.cjs +14 -0
  219. package/dist/document_loaders/fs/unstructured.d.ts +26 -0
  220. package/dist/document_loaders/fs/unstructured.js +14 -0
  221. package/dist/document_loaders/web/apify_dataset.cjs +11 -0
  222. package/dist/document_loaders/web/apify_dataset.d.ts +15 -0
  223. package/dist/document_loaders/web/apify_dataset.js +11 -0
  224. package/dist/document_loaders/web/azure_blob_storage_container.cjs +13 -0
  225. package/dist/document_loaders/web/azure_blob_storage_container.d.ts +26 -0
  226. package/dist/document_loaders/web/azure_blob_storage_container.js +13 -0
  227. package/dist/document_loaders/web/azure_blob_storage_file.cjs +12 -0
  228. package/dist/document_loaders/web/azure_blob_storage_file.d.ts +21 -0
  229. package/dist/document_loaders/web/azure_blob_storage_file.js +12 -0
  230. package/dist/document_loaders/web/cheerio.cjs +21 -0
  231. package/dist/document_loaders/web/cheerio.d.ts +26 -0
  232. package/dist/document_loaders/web/cheerio.js +21 -0
  233. package/dist/document_loaders/web/college_confidential.cjs +11 -0
  234. package/dist/document_loaders/web/college_confidential.d.ts +11 -0
  235. package/dist/document_loaders/web/college_confidential.js +11 -0
  236. package/dist/document_loaders/web/confluence.cjs +23 -0
  237. package/dist/document_loaders/web/confluence.d.ts +33 -0
  238. package/dist/document_loaders/web/confluence.js +23 -0
  239. package/dist/document_loaders/web/figma.cjs +21 -0
  240. package/dist/document_loaders/web/figma.d.ts +32 -0
  241. package/dist/document_loaders/web/figma.js +21 -0
  242. package/dist/document_loaders/web/gitbook.cjs +33 -0
  243. package/dist/document_loaders/web/gitbook.d.ts +38 -0
  244. package/dist/document_loaders/web/gitbook.js +33 -0
  245. package/dist/document_loaders/web/github.cjs +50 -0
  246. package/dist/document_loaders/web/github.d.ts +53 -0
  247. package/dist/document_loaders/web/github.js +50 -0
  248. package/dist/document_loaders/web/hn.cjs +31 -0
  249. package/dist/document_loaders/web/hn.d.ts +31 -0
  250. package/dist/document_loaders/web/hn.js +31 -0
  251. package/dist/document_loaders/web/imsdb.cjs +14 -0
  252. package/dist/document_loaders/web/imsdb.d.ts +14 -0
  253. package/dist/document_loaders/web/imsdb.js +14 -0
  254. package/dist/document_loaders/web/notionapi.cjs +39 -0
  255. package/dist/document_loaders/web/notionapi.d.ts +43 -0
  256. package/dist/document_loaders/web/notionapi.js +39 -0
  257. package/dist/document_loaders/web/notiondb.cjs +19 -0
  258. package/dist/document_loaders/web/notiondb.d.ts +24 -0
  259. package/dist/document_loaders/web/notiondb.js +19 -0
  260. package/dist/document_loaders/web/playwright.cjs +22 -0
  261. package/dist/document_loaders/web/playwright.d.ts +27 -0
  262. package/dist/document_loaders/web/playwright.js +22 -0
  263. package/dist/document_loaders/web/puppeteer.cjs +20 -0
  264. package/dist/document_loaders/web/puppeteer.d.ts +25 -0
  265. package/dist/document_loaders/web/puppeteer.js +20 -0
  266. package/dist/document_loaders/web/s3.cjs +9 -0
  267. package/dist/document_loaders/web/s3.d.ts +21 -0
  268. package/dist/document_loaders/web/s3.js +9 -0
  269. package/dist/document_loaders/web/serpapi.cjs +4 -0
  270. package/dist/document_loaders/web/serpapi.d.ts +8 -0
  271. package/dist/document_loaders/web/serpapi.js +4 -0
  272. package/dist/document_loaders/web/sonix_audio.cjs +10 -0
  273. package/dist/document_loaders/web/sonix_audio.d.ts +10 -0
  274. package/dist/document_loaders/web/sonix_audio.js +10 -0
  275. package/dist/document_loaders/web/sort_xyz_blockchain.cjs +10 -0
  276. package/dist/document_loaders/web/sort_xyz_blockchain.d.ts +17 -0
  277. package/dist/document_loaders/web/sort_xyz_blockchain.js +10 -0
  278. package/dist/document_loaders/web/youtube.cjs +23 -0
  279. package/dist/document_loaders/web/youtube.d.ts +27 -0
  280. package/dist/document_loaders/web/youtube.js +23 -0
  281. package/dist/document_transformers/html_to_text.cjs +3 -0
  282. package/dist/document_transformers/html_to_text.d.ts +3 -0
  283. package/dist/document_transformers/html_to_text.js +3 -0
  284. package/dist/document_transformers/mozilla_readability.cjs +4 -0
  285. package/dist/document_transformers/mozilla_readability.d.ts +4 -0
  286. package/dist/document_transformers/mozilla_readability.js +4 -0
  287. package/dist/document_transformers/openai_functions.cjs +3 -0
  288. package/dist/document_transformers/openai_functions.d.ts +3 -0
  289. package/dist/document_transformers/openai_functions.js +3 -0
  290. package/dist/embeddings/base.cjs +4 -0
  291. package/dist/embeddings/base.d.ts +21 -0
  292. package/dist/embeddings/base.js +4 -0
  293. package/dist/embeddings/cache_backed.d.ts +4 -0
  294. package/dist/embeddings/cohere.d.ts +4 -0
  295. package/dist/embeddings/fake.cjs +33 -0
  296. package/dist/embeddings/fake.d.ts +37 -0
  297. package/dist/embeddings/fake.js +33 -0
  298. package/dist/embeddings/googlepalm.cjs +18 -0
  299. package/dist/embeddings/googlepalm.d.ts +22 -0
  300. package/dist/embeddings/googlepalm.js +18 -0
  301. package/dist/embeddings/googlevertexai.cjs +15 -0
  302. package/dist/embeddings/googlevertexai.d.ts +20 -0
  303. package/dist/embeddings/googlevertexai.js +15 -0
  304. package/dist/embeddings/hf.cjs +20 -0
  305. package/dist/embeddings/hf.d.ts +24 -0
  306. package/dist/embeddings/hf.js +20 -0
  307. package/dist/embeddings/openai.cjs +25 -0
  308. package/dist/embeddings/openai.d.ts +29 -0
  309. package/dist/embeddings/openai.js +25 -0
  310. package/dist/embeddings/tensorflow.cjs +27 -0
  311. package/dist/embeddings/tensorflow.d.ts +31 -0
  312. package/dist/embeddings/tensorflow.js +27 -0
  313. package/dist/experimental/autogpt/agent.cjs +21 -0
  314. package/dist/experimental/autogpt/agent.d.ts +24 -0
  315. package/dist/experimental/autogpt/agent.js +21 -0
  316. package/dist/experimental/autogpt/output_parser.cjs +24 -0
  317. package/dist/experimental/autogpt/output_parser.d.ts +24 -0
  318. package/dist/experimental/autogpt/output_parser.js +24 -0
  319. package/dist/experimental/autogpt/prompt.cjs +25 -0
  320. package/dist/experimental/autogpt/prompt.d.ts +28 -0
  321. package/dist/experimental/autogpt/prompt.js +25 -0
  322. package/dist/experimental/autogpt/prompt_generator.cjs +32 -0
  323. package/dist/experimental/autogpt/prompt_generator.d.ts +32 -0
  324. package/dist/experimental/autogpt/prompt_generator.js +32 -0
  325. package/dist/experimental/autogpt/schema.d.ts +11 -0
  326. package/dist/experimental/babyagi/agent.cjs +65 -0
  327. package/dist/experimental/babyagi/agent.d.ts +75 -0
  328. package/dist/experimental/babyagi/agent.js +65 -0
  329. package/dist/experimental/babyagi/task_creation.cjs +10 -0
  330. package/dist/experimental/babyagi/task_creation.d.ts +10 -0
  331. package/dist/experimental/babyagi/task_creation.js +10 -0
  332. package/dist/experimental/babyagi/task_execution.cjs +9 -0
  333. package/dist/experimental/babyagi/task_execution.d.ts +9 -0
  334. package/dist/experimental/babyagi/task_execution.js +9 -0
  335. package/dist/experimental/babyagi/task_prioritization.cjs +8 -0
  336. package/dist/experimental/babyagi/task_prioritization.d.ts +8 -0
  337. package/dist/experimental/babyagi/task_prioritization.js +8 -0
  338. package/dist/experimental/generative_agents/generative_agent.cjs +74 -0
  339. package/dist/experimental/generative_agents/generative_agent.d.ts +79 -0
  340. package/dist/experimental/generative_agents/generative_agent.js +74 -0
  341. package/dist/experimental/generative_agents/generative_agent_memory.cjs +113 -0
  342. package/dist/experimental/generative_agents/generative_agent_memory.d.ts +113 -0
  343. package/dist/experimental/generative_agents/generative_agent_memory.js +113 -0
  344. package/dist/experimental/multimodal_embeddings/googlevertexai.cjs +46 -0
  345. package/dist/experimental/multimodal_embeddings/googlevertexai.d.ts +58 -0
  346. package/dist/experimental/multimodal_embeddings/googlevertexai.js +46 -0
  347. package/dist/experimental/plan_and_execute/agent_executor.cjs +32 -0
  348. package/dist/experimental/plan_and_execute/agent_executor.d.ts +37 -0
  349. package/dist/experimental/plan_and_execute/agent_executor.js +32 -0
  350. package/dist/experimental/plan_and_execute/base.cjs +26 -0
  351. package/dist/experimental/plan_and_execute/base.d.ts +38 -0
  352. package/dist/experimental/plan_and_execute/base.js +26 -0
  353. package/dist/experimental/plan_and_execute/outputParser.cjs +18 -0
  354. package/dist/experimental/plan_and_execute/outputParser.d.ts +18 -0
  355. package/dist/experimental/plan_and_execute/outputParser.js +18 -0
  356. package/dist/llms/ai21.cjs +13 -0
  357. package/dist/llms/ai21.d.ts +19 -0
  358. package/dist/llms/ai21.js +13 -0
  359. package/dist/llms/aleph_alpha.cjs +10 -0
  360. package/dist/llms/aleph_alpha.d.ts +13 -0
  361. package/dist/llms/aleph_alpha.js +10 -0
  362. package/dist/llms/base.cjs +32 -0
  363. package/dist/llms/base.d.ts +32 -0
  364. package/dist/llms/base.js +32 -0
  365. package/dist/llms/bedrock.cjs +21 -0
  366. package/dist/llms/bedrock.d.ts +9 -0
  367. package/dist/llms/bedrock.js +21 -0
  368. package/dist/llms/cohere.cjs +4 -0
  369. package/dist/llms/cohere.d.ts +7 -0
  370. package/dist/llms/cohere.js +4 -0
  371. package/dist/llms/googlevertexai.cjs +23 -0
  372. package/dist/llms/googlevertexai.d.ts +38 -0
  373. package/dist/llms/googlevertexai.js +23 -0
  374. package/dist/llms/hf.cjs +4 -0
  375. package/dist/llms/hf.d.ts +8 -0
  376. package/dist/llms/hf.js +4 -0
  377. package/dist/llms/ollama.cjs +4 -0
  378. package/dist/llms/ollama.d.ts +4 -0
  379. package/dist/llms/ollama.js +4 -0
  380. package/dist/llms/openai-chat.cjs +17 -0
  381. package/dist/llms/openai-chat.d.ts +22 -0
  382. package/dist/llms/openai-chat.js +17 -0
  383. package/dist/llms/openai.cjs +6 -0
  384. package/dist/llms/openai.d.ts +6 -0
  385. package/dist/llms/openai.js +6 -0
  386. package/dist/llms/replicate.cjs +6 -0
  387. package/dist/llms/replicate.d.ts +11 -0
  388. package/dist/llms/replicate.js +6 -0
  389. package/dist/llms/sagemaker_endpoint.cjs +11 -0
  390. package/dist/llms/sagemaker_endpoint.d.ts +17 -0
  391. package/dist/llms/sagemaker_endpoint.js +11 -0
  392. package/dist/memory/base.cjs +11 -0
  393. package/dist/memory/base.d.ts +40 -0
  394. package/dist/memory/base.js +11 -0
  395. package/dist/memory/buffer_memory.cjs +19 -0
  396. package/dist/memory/buffer_memory.d.ts +22 -0
  397. package/dist/memory/buffer_memory.js +19 -0
  398. package/dist/memory/buffer_window_memory.cjs +15 -0
  399. package/dist/memory/buffer_window_memory.d.ts +18 -0
  400. package/dist/memory/buffer_window_memory.js +15 -0
  401. package/dist/memory/chat_memory.cjs +16 -0
  402. package/dist/memory/chat_memory.d.ts +19 -0
  403. package/dist/memory/chat_memory.js +16 -0
  404. package/dist/memory/combined_memory.cjs +28 -0
  405. package/dist/memory/combined_memory.d.ts +33 -0
  406. package/dist/memory/combined_memory.js +28 -0
  407. package/dist/memory/entity_memory.cjs +21 -0
  408. package/dist/memory/entity_memory.d.ts +24 -0
  409. package/dist/memory/entity_memory.js +21 -0
  410. package/dist/memory/motorhead_memory.cjs +25 -0
  411. package/dist/memory/motorhead_memory.d.ts +29 -0
  412. package/dist/memory/motorhead_memory.js +25 -0
  413. package/dist/memory/stores/entity/in_memory.cjs +29 -0
  414. package/dist/memory/stores/entity/in_memory.d.ts +29 -0
  415. package/dist/memory/stores/entity/in_memory.js +29 -0
  416. package/dist/memory/summary.cjs +31 -0
  417. package/dist/memory/summary.d.ts +39 -0
  418. package/dist/memory/summary.js +31 -0
  419. package/dist/memory/summary_buffer.cjs +33 -0
  420. package/dist/memory/summary_buffer.d.ts +37 -0
  421. package/dist/memory/summary_buffer.js +33 -0
  422. package/dist/memory/vector_store.cjs +22 -0
  423. package/dist/memory/vector_store.d.ts +26 -0
  424. package/dist/memory/vector_store.js +22 -0
  425. package/dist/memory/zep.cjs +22 -0
  426. package/dist/memory/zep.d.ts +27 -0
  427. package/dist/memory/zep.js +22 -0
  428. package/dist/output_parsers/combining.cjs +12 -0
  429. package/dist/output_parsers/combining.d.ts +18 -0
  430. package/dist/output_parsers/combining.js +12 -0
  431. package/dist/output_parsers/expression.cjs +12 -0
  432. package/dist/output_parsers/expression.d.ts +12 -0
  433. package/dist/output_parsers/expression.js +12 -0
  434. package/dist/output_parsers/expression_type_handlers/array_literal_expression_handler.cjs +18 -0
  435. package/dist/output_parsers/expression_type_handlers/array_literal_expression_handler.d.ts +18 -0
  436. package/dist/output_parsers/expression_type_handlers/array_literal_expression_handler.js +18 -0
  437. package/dist/output_parsers/expression_type_handlers/base.cjs +68 -0
  438. package/dist/output_parsers/expression_type_handlers/base.d.ts +79 -0
  439. package/dist/output_parsers/expression_type_handlers/base.js +68 -0
  440. package/dist/output_parsers/expression_type_handlers/boolean_literal_handler.cjs +18 -0
  441. package/dist/output_parsers/expression_type_handlers/boolean_literal_handler.d.ts +18 -0
  442. package/dist/output_parsers/expression_type_handlers/boolean_literal_handler.js +18 -0
  443. package/dist/output_parsers/expression_type_handlers/call_expression_handler.cjs +22 -0
  444. package/dist/output_parsers/expression_type_handlers/call_expression_handler.d.ts +22 -0
  445. package/dist/output_parsers/expression_type_handlers/call_expression_handler.js +22 -0
  446. package/dist/output_parsers/expression_type_handlers/factory.cjs +20 -0
  447. package/dist/output_parsers/expression_type_handlers/factory.d.ts +20 -0
  448. package/dist/output_parsers/expression_type_handlers/factory.js +20 -0
  449. package/dist/output_parsers/expression_type_handlers/identifier_handler.cjs +19 -0
  450. package/dist/output_parsers/expression_type_handlers/identifier_handler.d.ts +19 -0
  451. package/dist/output_parsers/expression_type_handlers/identifier_handler.js +19 -0
  452. package/dist/output_parsers/expression_type_handlers/member_expression_handler.cjs +17 -0
  453. package/dist/output_parsers/expression_type_handlers/member_expression_handler.d.ts +17 -0
  454. package/dist/output_parsers/expression_type_handlers/member_expression_handler.js +17 -0
  455. package/dist/output_parsers/expression_type_handlers/numeric_literal_handler.cjs +16 -0
  456. package/dist/output_parsers/expression_type_handlers/numeric_literal_handler.d.ts +16 -0
  457. package/dist/output_parsers/expression_type_handlers/numeric_literal_handler.js +16 -0
  458. package/dist/output_parsers/expression_type_handlers/object_literal_expression_handler.cjs +16 -0
  459. package/dist/output_parsers/expression_type_handlers/object_literal_expression_handler.d.ts +16 -0
  460. package/dist/output_parsers/expression_type_handlers/object_literal_expression_handler.js +16 -0
  461. package/dist/output_parsers/expression_type_handlers/property_assignment_handler.cjs +17 -0
  462. package/dist/output_parsers/expression_type_handlers/property_assignment_handler.d.ts +17 -0
  463. package/dist/output_parsers/expression_type_handlers/property_assignment_handler.js +17 -0
  464. package/dist/output_parsers/expression_type_handlers/string_literal_handler.cjs +16 -0
  465. package/dist/output_parsers/expression_type_handlers/string_literal_handler.d.ts +16 -0
  466. package/dist/output_parsers/expression_type_handlers/string_literal_handler.js +16 -0
  467. package/dist/output_parsers/expression_type_handlers/types.d.ts +50 -0
  468. package/dist/output_parsers/fix.cjs +25 -0
  469. package/dist/output_parsers/fix.d.ts +25 -0
  470. package/dist/output_parsers/fix.js +25 -0
  471. package/dist/output_parsers/list.cjs +24 -0
  472. package/dist/output_parsers/list.d.ts +24 -0
  473. package/dist/output_parsers/list.js +24 -0
  474. package/dist/output_parsers/noop.cjs +18 -0
  475. package/dist/output_parsers/noop.d.ts +18 -0
  476. package/dist/output_parsers/noop.js +18 -0
  477. package/dist/output_parsers/openai_functions.cjs +31 -0
  478. package/dist/output_parsers/openai_functions.d.ts +34 -0
  479. package/dist/output_parsers/openai_functions.js +31 -0
  480. package/dist/output_parsers/regex.cjs +12 -0
  481. package/dist/output_parsers/regex.d.ts +15 -0
  482. package/dist/output_parsers/regex.js +12 -0
  483. package/dist/output_parsers/router.cjs +15 -0
  484. package/dist/output_parsers/router.d.ts +19 -0
  485. package/dist/output_parsers/router.js +15 -0
  486. package/dist/output_parsers/structured.cjs +30 -0
  487. package/dist/output_parsers/structured.d.ts +36 -0
  488. package/dist/output_parsers/structured.js +30 -0
  489. package/dist/prompts/base.cjs +26 -0
  490. package/dist/prompts/base.d.ts +36 -0
  491. package/dist/prompts/base.js +26 -0
  492. package/dist/prompts/chat.cjs +48 -0
  493. package/dist/prompts/chat.d.ts +69 -0
  494. package/dist/prompts/chat.js +48 -0
  495. package/dist/prompts/few_shot.cjs +5 -0
  496. package/dist/prompts/few_shot.d.ts +5 -0
  497. package/dist/prompts/few_shot.js +5 -0
  498. package/dist/prompts/pipeline.cjs +26 -0
  499. package/dist/prompts/pipeline.d.ts +34 -0
  500. package/dist/prompts/pipeline.js +26 -0
  501. package/dist/prompts/prompt.cjs +10 -0
  502. package/dist/prompts/prompt.d.ts +10 -0
  503. package/dist/prompts/prompt.js +10 -0
  504. package/dist/prompts/selectors/LengthBasedExampleSelector.cjs +32 -0
  505. package/dist/prompts/selectors/LengthBasedExampleSelector.d.ts +33 -0
  506. package/dist/prompts/selectors/LengthBasedExampleSelector.js +32 -0
  507. package/dist/prompts/selectors/SemanticSimilarityExampleSelector.cjs +31 -0
  508. package/dist/prompts/selectors/SemanticSimilarityExampleSelector.d.ts +35 -0
  509. package/dist/prompts/selectors/SemanticSimilarityExampleSelector.js +31 -0
  510. package/dist/prompts/selectors/conditional.cjs +30 -0
  511. package/dist/prompts/selectors/conditional.d.ts +37 -0
  512. package/dist/prompts/selectors/conditional.js +30 -0
  513. package/dist/prompts/serde.d.ts +24 -0
  514. package/dist/prompts/template.d.ts +17 -0
  515. package/dist/retrievers/amazon_kendra.cjs +62 -0
  516. package/dist/retrievers/amazon_kendra.d.ts +66 -0
  517. package/dist/retrievers/amazon_kendra.js +62 -0
  518. package/dist/retrievers/contextual_compression.cjs +5 -0
  519. package/dist/retrievers/contextual_compression.d.ts +10 -0
  520. package/dist/retrievers/contextual_compression.js +5 -0
  521. package/dist/retrievers/databerry.cjs +5 -0
  522. package/dist/retrievers/databerry.d.ts +9 -0
  523. package/dist/retrievers/databerry.js +5 -0
  524. package/dist/retrievers/document_compressors/chain_extract.cjs +18 -0
  525. package/dist/retrievers/document_compressors/chain_extract.d.ts +22 -0
  526. package/dist/retrievers/document_compressors/chain_extract.js +18 -0
  527. package/dist/retrievers/document_compressors/index.d.ts +9 -0
  528. package/dist/retrievers/hyde.cjs +9 -0
  529. package/dist/retrievers/hyde.d.ts +17 -0
  530. package/dist/retrievers/hyde.js +9 -0
  531. package/dist/retrievers/metal.cjs +7 -0
  532. package/dist/retrievers/metal.d.ts +12 -0
  533. package/dist/retrievers/metal.js +7 -0
  534. package/dist/retrievers/parent_document.cjs +17 -1
  535. package/dist/retrievers/parent_document.d.ts +15 -0
  536. package/dist/retrievers/parent_document.js +17 -1
  537. package/dist/retrievers/remote/base.cjs +4 -0
  538. package/dist/retrievers/remote/base.d.ts +28 -0
  539. package/dist/retrievers/remote/base.js +4 -0
  540. package/dist/retrievers/remote/chatgpt-plugin.cjs +17 -0
  541. package/dist/retrievers/remote/chatgpt-plugin.d.ts +21 -0
  542. package/dist/retrievers/remote/chatgpt-plugin.js +17 -0
  543. package/dist/retrievers/remote/remote-retriever.cjs +20 -0
  544. package/dist/retrievers/remote/remote-retriever.d.ts +20 -0
  545. package/dist/retrievers/remote/remote-retriever.js +20 -0
  546. package/dist/retrievers/self_query/base.cjs +28 -0
  547. package/dist/retrievers/self_query/base.d.ts +45 -0
  548. package/dist/retrievers/self_query/base.js +28 -0
  549. package/dist/retrievers/self_query/chroma.cjs +6 -0
  550. package/dist/retrievers/self_query/chroma.d.ts +6 -0
  551. package/dist/retrievers/self_query/chroma.js +6 -0
  552. package/dist/retrievers/self_query/functional.cjs +40 -0
  553. package/dist/retrievers/self_query/functional.d.ts +49 -0
  554. package/dist/retrievers/self_query/functional.js +40 -0
  555. package/dist/retrievers/self_query/index.cjs +14 -0
  556. package/dist/retrievers/self_query/index.d.ts +18 -0
  557. package/dist/retrievers/self_query/index.js +14 -0
  558. package/dist/retrievers/self_query/pinecone.cjs +7 -0
  559. package/dist/retrievers/self_query/pinecone.d.ts +7 -0
  560. package/dist/retrievers/self_query/pinecone.js +7 -0
  561. package/dist/retrievers/self_query/supabase.cjs +63 -0
  562. package/dist/retrievers/self_query/supabase.d.ts +67 -0
  563. package/dist/retrievers/self_query/supabase.js +63 -0
  564. package/dist/retrievers/self_query/supabase_utils.cjs +78 -0
  565. package/dist/retrievers/self_query/supabase_utils.d.ts +78 -0
  566. package/dist/retrievers/self_query/supabase_utils.js +78 -0
  567. package/dist/retrievers/self_query/utils.cjs +17 -0
  568. package/dist/retrievers/self_query/utils.d.ts +17 -0
  569. package/dist/retrievers/self_query/utils.js +17 -0
  570. package/dist/retrievers/self_query/weaviate.cjs +42 -0
  571. package/dist/retrievers/self_query/weaviate.d.ts +42 -0
  572. package/dist/retrievers/self_query/weaviate.js +42 -0
  573. package/dist/retrievers/supabase.cjs +30 -0
  574. package/dist/retrievers/supabase.d.ts +30 -0
  575. package/dist/retrievers/supabase.js +30 -0
  576. package/dist/retrievers/time_weighted.cjs +8 -0
  577. package/dist/retrievers/time_weighted.d.ts +12 -0
  578. package/dist/retrievers/time_weighted.js +8 -0
  579. package/dist/retrievers/vespa.cjs +18 -0
  580. package/dist/retrievers/vespa.d.ts +18 -0
  581. package/dist/retrievers/vespa.js +18 -0
  582. package/dist/retrievers/zep.cjs +4 -0
  583. package/dist/retrievers/zep.d.ts +8 -0
  584. package/dist/retrievers/zep.js +4 -0
  585. package/dist/schema/document.cjs +7 -0
  586. package/dist/schema/document.d.ts +7 -0
  587. package/dist/schema/document.js +7 -0
  588. package/dist/schema/index.cjs +70 -0
  589. package/dist/schema/index.d.ts +70 -0
  590. package/dist/schema/index.js +70 -0
  591. package/dist/schema/output_parser.cjs +43 -0
  592. package/dist/schema/output_parser.d.ts +51 -0
  593. package/dist/schema/output_parser.js +43 -0
  594. package/dist/schema/query_constructor.cjs +5 -0
  595. package/dist/schema/query_constructor.d.ts +5 -0
  596. package/dist/schema/query_constructor.js +5 -0
  597. package/dist/schema/retriever.cjs +18 -0
  598. package/dist/schema/retriever.d.ts +18 -0
  599. package/dist/schema/retriever.js +18 -0
  600. package/dist/schema/storage.d.ts +20 -0
  601. package/dist/storage/encoder_backed.cjs +27 -0
  602. package/dist/storage/encoder_backed.d.ts +27 -0
  603. package/dist/storage/encoder_backed.js +27 -0
  604. package/dist/storage/in_memory.cjs +25 -0
  605. package/dist/storage/in_memory.d.ts +25 -0
  606. package/dist/storage/in_memory.js +25 -0
  607. package/dist/storage/ioredis.cjs +25 -0
  608. package/dist/storage/ioredis.d.ts +25 -0
  609. package/dist/storage/ioredis.js +25 -0
  610. package/dist/stores/doc/gcs.cjs +28 -0
  611. package/dist/stores/doc/gcs.d.ts +33 -0
  612. package/dist/stores/doc/gcs.js +28 -0
  613. package/dist/stores/doc/in_memory.cjs +27 -0
  614. package/dist/stores/doc/in_memory.d.ts +27 -0
  615. package/dist/stores/doc/in_memory.js +27 -0
  616. package/dist/stores/file/in_memory.cjs +20 -0
  617. package/dist/stores/file/in_memory.d.ts +20 -0
  618. package/dist/stores/file/in_memory.js +20 -0
  619. package/dist/stores/file/node.cjs +15 -0
  620. package/dist/stores/file/node.d.ts +15 -0
  621. package/dist/stores/file/node.js +15 -0
  622. package/dist/stores/message/dynamodb.cjs +17 -0
  623. package/dist/stores/message/dynamodb.d.ts +23 -0
  624. package/dist/stores/message/dynamodb.js +17 -0
  625. package/dist/stores/message/firestore.cjs +19 -0
  626. package/dist/stores/message/firestore.d.ts +24 -0
  627. package/dist/stores/message/firestore.js +19 -0
  628. package/dist/stores/message/in_memory.cjs +19 -0
  629. package/dist/stores/message/in_memory.d.ts +19 -0
  630. package/dist/stores/message/in_memory.js +19 -0
  631. package/dist/stores/message/ioredis.cjs +17 -0
  632. package/dist/stores/message/ioredis.d.ts +22 -0
  633. package/dist/stores/message/ioredis.js +17 -0
  634. package/dist/stores/message/momento.cjs +18 -0
  635. package/dist/stores/message/momento.d.ts +18 -0
  636. package/dist/stores/message/momento.js +18 -0
  637. package/dist/stores/message/planetscale.cjs +26 -0
  638. package/dist/stores/message/planetscale.d.ts +30 -0
  639. package/dist/stores/message/planetscale.js +26 -0
  640. package/dist/stores/message/redis.cjs +24 -0
  641. package/dist/stores/message/redis.d.ts +27 -0
  642. package/dist/stores/message/redis.js +24 -0
  643. package/dist/stores/message/upstash_redis.cjs +17 -0
  644. package/dist/stores/message/upstash_redis.d.ts +21 -0
  645. package/dist/stores/message/upstash_redis.js +17 -0
  646. package/dist/stores/message/utils.cjs +21 -0
  647. package/dist/stores/message/utils.d.ts +21 -0
  648. package/dist/stores/message/utils.js +21 -0
  649. package/dist/stores/message/xata.cjs +25 -0
  650. package/dist/stores/message/xata.d.ts +29 -0
  651. package/dist/stores/message/xata.js +25 -0
  652. package/dist/tools/IFTTTWebhook.cjs +6 -0
  653. package/dist/tools/IFTTTWebhook.d.ts +6 -0
  654. package/dist/tools/IFTTTWebhook.js +6 -0
  655. package/dist/tools/aiplugin.cjs +12 -0
  656. package/dist/tools/aiplugin.d.ts +16 -0
  657. package/dist/tools/aiplugin.js +12 -0
  658. package/dist/tools/aws_lambda.cjs +9 -0
  659. package/dist/tools/aws_lambda.d.ts +7 -0
  660. package/dist/tools/aws_lambda.js +9 -0
  661. package/dist/tools/aws_sfn.cjs +19 -0
  662. package/dist/tools/aws_sfn.d.ts +19 -0
  663. package/dist/tools/aws_sfn.js +19 -0
  664. package/dist/tools/base.cjs +22 -0
  665. package/dist/tools/base.d.ts +25 -0
  666. package/dist/tools/base.js +22 -0
  667. package/dist/tools/bingserpapi.cjs +10 -0
  668. package/dist/tools/bingserpapi.d.ts +10 -0
  669. package/dist/tools/bingserpapi.js +10 -0
  670. package/dist/tools/brave_search.cjs +6 -0
  671. package/dist/tools/brave_search.d.ts +10 -0
  672. package/dist/tools/brave_search.js +6 -0
  673. package/dist/tools/calculator.cjs +4 -0
  674. package/dist/tools/calculator.d.ts +4 -0
  675. package/dist/tools/calculator.js +4 -0
  676. package/dist/tools/chain.cjs +6 -0
  677. package/dist/tools/chain.d.ts +11 -0
  678. package/dist/tools/chain.js +6 -0
  679. package/dist/tools/convert_to_openai.cjs +6 -0
  680. package/dist/tools/convert_to_openai.d.ts +6 -0
  681. package/dist/tools/convert_to_openai.js +6 -0
  682. package/dist/tools/dadjokeapi.cjs +6 -0
  683. package/dist/tools/dadjokeapi.d.ts +6 -0
  684. package/dist/tools/dadjokeapi.js +6 -0
  685. package/dist/tools/dataforseo_api_search.d.ts +9 -0
  686. package/dist/tools/dynamic.cjs +6 -0
  687. package/dist/tools/dynamic.d.ts +12 -0
  688. package/dist/tools/dynamic.js +6 -0
  689. package/dist/tools/fs.cjs +8 -0
  690. package/dist/tools/fs.d.ts +14 -0
  691. package/dist/tools/fs.js +8 -0
  692. package/dist/tools/google_custom_search.cjs +5 -0
  693. package/dist/tools/google_custom_search.d.ts +8 -0
  694. package/dist/tools/google_custom_search.js +5 -0
  695. package/dist/tools/json.cjs +22 -0
  696. package/dist/tools/json.d.ts +22 -0
  697. package/dist/tools/json.js +22 -0
  698. package/dist/tools/requests.cjs +11 -0
  699. package/dist/tools/requests.d.ts +15 -0
  700. package/dist/tools/requests.js +11 -0
  701. package/dist/tools/searxng_search.cjs +7 -0
  702. package/dist/tools/searxng_search.d.ts +10 -0
  703. package/dist/tools/searxng_search.js +7 -0
  704. package/dist/tools/serpapi.cjs +7 -0
  705. package/dist/tools/serpapi.d.ts +7 -0
  706. package/dist/tools/serpapi.js +7 -0
  707. package/dist/tools/serper.cjs +5 -0
  708. package/dist/tools/serper.d.ts +9 -0
  709. package/dist/tools/serper.js +5 -0
  710. package/dist/tools/sql.cjs +25 -0
  711. package/dist/tools/sql.d.ts +32 -0
  712. package/dist/tools/sql.js +25 -0
  713. package/dist/tools/vectorstore.cjs +11 -0
  714. package/dist/tools/vectorstore.d.ts +14 -0
  715. package/dist/tools/vectorstore.js +11 -0
  716. package/dist/tools/webbrowser.cjs +6 -0
  717. package/dist/tools/webbrowser.d.ts +12 -0
  718. package/dist/tools/webbrowser.js +6 -0
  719. package/dist/tools/wikipedia_query_run.cjs +16 -0
  720. package/dist/tools/wikipedia_query_run.d.ts +24 -0
  721. package/dist/tools/wikipedia_query_run.js +16 -0
  722. package/dist/tools/zapier.cjs +12 -0
  723. package/dist/tools/zapier.d.ts +12 -0
  724. package/dist/tools/zapier.js +12 -0
  725. package/dist/vectorstores/analyticdb.cjs +76 -0
  726. package/dist/vectorstores/analyticdb.d.ts +80 -0
  727. package/dist/vectorstores/analyticdb.js +76 -0
  728. package/dist/vectorstores/base.cjs +13 -0
  729. package/dist/vectorstores/base.d.ts +26 -0
  730. package/dist/vectorstores/base.js +13 -0
  731. package/dist/vectorstores/chroma.cjs +73 -0
  732. package/dist/vectorstores/chroma.d.ts +84 -0
  733. package/dist/vectorstores/chroma.js +73 -0
  734. package/dist/vectorstores/elasticsearch.cjs +73 -0
  735. package/dist/vectorstores/elasticsearch.d.ts +90 -0
  736. package/dist/vectorstores/elasticsearch.js +73 -0
  737. package/dist/vectorstores/faiss.cjs +65 -0
  738. package/dist/vectorstores/faiss.d.ts +69 -0
  739. package/dist/vectorstores/faiss.js +65 -0
  740. package/dist/vectorstores/hnswlib.cjs +71 -0
  741. package/dist/vectorstores/hnswlib.d.ts +80 -0
  742. package/dist/vectorstores/hnswlib.js +71 -0
  743. package/dist/vectorstores/lancedb.cjs +38 -0
  744. package/dist/vectorstores/lancedb.d.ts +42 -0
  745. package/dist/vectorstores/lancedb.js +38 -0
  746. package/dist/vectorstores/memory.cjs +56 -0
  747. package/dist/vectorstores/memory.d.ts +66 -0
  748. package/dist/vectorstores/memory.js +56 -0
  749. package/dist/vectorstores/milvus.cjs +91 -7
  750. package/dist/vectorstores/milvus.d.ts +80 -1
  751. package/dist/vectorstores/milvus.js +91 -7
  752. package/dist/vectorstores/mongo.cjs +45 -0
  753. package/dist/vectorstores/mongo.d.ts +49 -0
  754. package/dist/vectorstores/mongo.js +45 -0
  755. package/dist/vectorstores/mongodb_atlas.cjs +48 -0
  756. package/dist/vectorstores/mongodb_atlas.d.ts +59 -0
  757. package/dist/vectorstores/mongodb_atlas.js +48 -0
  758. package/dist/vectorstores/myscale.cjs +66 -0
  759. package/dist/vectorstores/myscale.d.ts +80 -0
  760. package/dist/vectorstores/myscale.js +66 -0
  761. package/dist/vectorstores/opensearch.cjs +60 -0
  762. package/dist/vectorstores/opensearch.d.ts +74 -0
  763. package/dist/vectorstores/opensearch.js +60 -0
  764. package/dist/vectorstores/pinecone.cjs +54 -0
  765. package/dist/vectorstores/pinecone.d.ts +58 -0
  766. package/dist/vectorstores/pinecone.js +54 -0
  767. package/dist/vectorstores/prisma.cjs +66 -0
  768. package/dist/vectorstores/prisma.d.ts +66 -0
  769. package/dist/vectorstores/prisma.js +66 -0
  770. package/dist/vectorstores/qdrant.cjs +60 -0
  771. package/dist/vectorstores/qdrant.d.ts +66 -0
  772. package/dist/vectorstores/qdrant.js +60 -0
  773. package/dist/vectorstores/redis.cjs +62 -0
  774. package/dist/vectorstores/redis.d.ts +88 -0
  775. package/dist/vectorstores/redis.js +62 -0
  776. package/dist/vectorstores/singlestore.cjs +46 -0
  777. package/dist/vectorstores/singlestore.d.ts +46 -0
  778. package/dist/vectorstores/singlestore.js +46 -0
  779. package/dist/vectorstores/supabase.cjs +50 -0
  780. package/dist/vectorstores/supabase.d.ts +53 -0
  781. package/dist/vectorstores/supabase.js +50 -0
  782. package/dist/vectorstores/tigris.cjs +49 -0
  783. package/dist/vectorstores/tigris.d.ts +53 -0
  784. package/dist/vectorstores/tigris.js +49 -0
  785. package/dist/vectorstores/typeorm.cjs +71 -0
  786. package/dist/vectorstores/typeorm.d.ts +76 -0
  787. package/dist/vectorstores/typeorm.js +71 -0
  788. package/dist/vectorstores/typesense.cjs +5 -0
  789. package/dist/vectorstores/typesense.d.ts +5 -0
  790. package/dist/vectorstores/typesense.js +5 -0
  791. package/dist/vectorstores/usearch.cjs +50 -0
  792. package/dist/vectorstores/usearch.d.ts +55 -0
  793. package/dist/vectorstores/usearch.js +50 -0
  794. package/dist/vectorstores/vectara.cjs +104 -0
  795. package/dist/vectorstores/vectara.d.ts +72 -0
  796. package/dist/vectorstores/vectara.js +104 -0
  797. package/dist/vectorstores/weaviate.cjs +61 -0
  798. package/dist/vectorstores/weaviate.d.ts +70 -0
  799. package/dist/vectorstores/weaviate.js +61 -0
  800. package/dist/vectorstores/xata.cjs +36 -0
  801. package/dist/vectorstores/xata.d.ts +43 -0
  802. package/dist/vectorstores/xata.js +36 -0
  803. package/dist/vectorstores/zep.d.ts +11 -0
  804. package/package.json +2 -2
@@ -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
  }
@@ -2,6 +2,12 @@ import * as uuid from "uuid";
2
2
  import { createClient } from "@clickhouse/client";
3
3
  import { VectorStore } from "./base.js";
4
4
  import { Document } from "../document.js";
5
+ /**
6
+ * Class for interacting with the MyScale database. It extends the
7
+ * VectorStore class and provides methods for adding vectors and
8
+ * documents, searching for similar vectors, and creating instances from
9
+ * texts or documents.
10
+ */
5
11
  export class MyScaleStore extends VectorStore {
6
12
  _vectorstoreType() {
7
13
  return "myscale";
@@ -74,6 +80,12 @@ export class MyScaleStore extends VectorStore {
74
80
  session_id: uuid.v4(),
75
81
  });
76
82
  }
83
+ /**
84
+ * Method to add vectors to the MyScale database.
85
+ * @param vectors The vectors to add.
86
+ * @param documents The documents associated with the vectors.
87
+ * @returns Promise that resolves when the vectors have been added.
88
+ */
77
89
  async addVectors(vectors, documents) {
78
90
  if (vectors.length === 0) {
79
91
  return;
@@ -84,9 +96,21 @@ export class MyScaleStore extends VectorStore {
84
96
  const queryStr = this.buildInsertQuery(vectors, documents);
85
97
  await this.client.exec({ query: queryStr });
86
98
  }
99
+ /**
100
+ * Method to add documents to the MyScale database.
101
+ * @param documents The documents to add.
102
+ * @returns Promise that resolves when the documents have been added.
103
+ */
87
104
  async addDocuments(documents) {
88
105
  return this.addVectors(await this.embeddings.embedDocuments(documents.map((d) => d.pageContent)), documents);
89
106
  }
107
+ /**
108
+ * Method to search for vectors that are similar to a given query vector.
109
+ * @param query The query vector.
110
+ * @param k The number of similar vectors to return.
111
+ * @param filter Optional filter for the search results.
112
+ * @returns Promise that resolves with an array of tuples, each containing a Document and a score.
113
+ */
90
114
  async similaritySearchVectorWithScore(query, k, filter) {
91
115
  if (!this.isInitialized) {
92
116
  await this.initialize(query.length);
@@ -100,6 +124,14 @@ export class MyScaleStore extends VectorStore {
100
124
  ]);
101
125
  return result;
102
126
  }
127
+ /**
128
+ * Static method to create an instance of MyScaleStore from texts.
129
+ * @param texts The texts to use.
130
+ * @param metadatas The metadata associated with the texts.
131
+ * @param embeddings The embeddings to use.
132
+ * @param args The arguments for the MyScaleStore.
133
+ * @returns Promise that resolves with a new instance of MyScaleStore.
134
+ */
103
135
  static async fromTexts(texts, metadatas, embeddings, args) {
104
136
  const docs = [];
105
137
  for (let i = 0; i < texts.length; i += 1) {
@@ -112,16 +144,35 @@ export class MyScaleStore extends VectorStore {
112
144
  }
113
145
  return MyScaleStore.fromDocuments(docs, embeddings, args);
114
146
  }
147
+ /**
148
+ * Static method to create an instance of MyScaleStore from documents.
149
+ * @param docs The documents to use.
150
+ * @param embeddings The embeddings to use.
151
+ * @param args The arguments for the MyScaleStore.
152
+ * @returns Promise that resolves with a new instance of MyScaleStore.
153
+ */
115
154
  static async fromDocuments(docs, embeddings, args) {
116
155
  const instance = new this(embeddings, args);
117
156
  await instance.addDocuments(docs);
118
157
  return instance;
119
158
  }
159
+ /**
160
+ * Static method to create an instance of MyScaleStore from an existing
161
+ * index.
162
+ * @param embeddings The embeddings to use.
163
+ * @param args The arguments for the MyScaleStore.
164
+ * @returns Promise that resolves with a new instance of MyScaleStore.
165
+ */
120
166
  static async fromExistingIndex(embeddings, args) {
121
167
  const instance = new this(embeddings, args);
122
168
  await instance.initialize();
123
169
  return instance;
124
170
  }
171
+ /**
172
+ * Method to initialize the MyScale database.
173
+ * @param dimension Optional dimension of the vectors.
174
+ * @returns Promise that resolves when the database has been initialized.
175
+ */
125
176
  async initialize(dimension) {
126
177
  const dim = dimension ?? (await this.embeddings.embedQuery("test")).length;
127
178
  let indexParamStr = "";
@@ -145,6 +196,13 @@ export class MyScaleStore extends VectorStore {
145
196
  await this.client.exec({ query });
146
197
  this.isInitialized = true;
147
198
  }
199
+ /**
200
+ * Method to build an SQL query for inserting vectors and documents into
201
+ * the MyScale database.
202
+ * @param vectors The vectors to insert.
203
+ * @param documents The documents to insert.
204
+ * @returns The SQL query string.
205
+ */
148
206
  buildInsertQuery(vectors, documents) {
149
207
  const columnsStr = Object.values(this.columnMap).join(", ");
150
208
  const data = [];
@@ -170,6 +228,14 @@ export class MyScaleStore extends VectorStore {
170
228
  escapeString(str) {
171
229
  return str.replace(/\\/g, "\\\\").replace(/'/g, "\\'");
172
230
  }
231
+ /**
232
+ * Method to build an SQL query for searching for similar vectors in the
233
+ * MyScale database.
234
+ * @param query The query vector.
235
+ * @param k The number of similar vectors to return.
236
+ * @param filter Optional filter for the search results.
237
+ * @returns The SQL query string.
238
+ */
173
239
  buildSearchQuery(query, k, filter) {
174
240
  const order = this.metric === "ip" ? "DESC" : "ASC";
175
241
  const whereStr = filter ? `PREWHERE ${filter.whereStr}` : "";
@@ -28,6 +28,12 @@ const opensearch_1 = require("@opensearch-project/opensearch");
28
28
  const uuid = __importStar(require("uuid"));
29
29
  const document_js_1 = require("../document.cjs");
30
30
  const base_js_1 = require("./base.cjs");
31
+ /**
32
+ * Class that provides a wrapper around the OpenSearch service for vector
33
+ * search. It provides methods for adding documents and vectors to the
34
+ * OpenSearch index, searching for similar vectors, and managing the
35
+ * OpenSearch index.
36
+ */
31
37
  class OpenSearchVectorStore extends base_js_1.VectorStore {
32
38
  _vectorstoreType() {
33
39
  return "opensearch";
@@ -84,10 +90,24 @@ class OpenSearchVectorStore extends base_js_1.VectorStore {
84
90
  this.client = args.client;
85
91
  this.indexName = args.indexName ?? "documents";
86
92
  }
93
+ /**
94
+ * Method to add documents to the OpenSearch index. It first converts the
95
+ * documents to vectors using the embeddings, then adds the vectors to the
96
+ * index.
97
+ * @param documents The documents to be added to the OpenSearch index.
98
+ * @returns Promise resolving to void.
99
+ */
87
100
  async addDocuments(documents) {
88
101
  const texts = documents.map(({ pageContent }) => pageContent);
89
102
  return this.addVectors(await this.embeddings.embedDocuments(texts), documents);
90
103
  }
104
+ /**
105
+ * Method to add vectors to the OpenSearch index. It ensures the index
106
+ * exists, then adds the vectors and associated documents to the index.
107
+ * @param vectors The vectors to be added to the OpenSearch index.
108
+ * @param documents The documents associated with the vectors.
109
+ * @returns Promise resolving to void.
110
+ */
91
111
  async addVectors(vectors, documents) {
92
112
  await this.ensureIndexExists(vectors[0].length, this.engine, this.spaceType, this.efSearch, this.efConstruction, this.m);
93
113
  const operations = vectors.flatMap((embedding, idx) => [
@@ -106,6 +126,14 @@ class OpenSearchVectorStore extends base_js_1.VectorStore {
106
126
  await this.client.bulk({ body: operations });
107
127
  await this.client.indices.refresh({ index: this.indexName });
108
128
  }
129
+ /**
130
+ * Method to perform a similarity search on the OpenSearch index using a
131
+ * query vector. It returns the k most similar documents and their scores.
132
+ * @param query The query vector.
133
+ * @param k The number of similar documents to return.
134
+ * @param filter Optional filter for the OpenSearch query.
135
+ * @returns Promise resolving to an array of tuples, each containing a Document and its score.
136
+ */
109
137
  async similaritySearchVectorWithScore(query, k, filter) {
110
138
  const search = {
111
139
  index: this.indexName,
@@ -135,6 +163,15 @@ class OpenSearchVectorStore extends base_js_1.VectorStore {
135
163
  hit._score,
136
164
  ]);
137
165
  }
166
+ /**
167
+ * Static method to create a new OpenSearchVectorStore from an array of
168
+ * texts, their metadata, embeddings, and OpenSearch client arguments.
169
+ * @param texts The texts to be converted into documents and added to the OpenSearch index.
170
+ * @param metadatas The metadata associated with the texts. Can be an array of objects or a single object.
171
+ * @param embeddings The embeddings used to convert the texts into vectors.
172
+ * @param args The OpenSearch client arguments.
173
+ * @returns Promise resolving to a new instance of OpenSearchVectorStore.
174
+ */
138
175
  static fromTexts(texts, metadatas, embeddings, args) {
139
176
  const documents = texts.map((text, idx) => {
140
177
  const metadata = Array.isArray(metadatas) ? metadatas[idx] : metadatas;
@@ -142,11 +179,26 @@ class OpenSearchVectorStore extends base_js_1.VectorStore {
142
179
  });
143
180
  return OpenSearchVectorStore.fromDocuments(documents, embeddings, args);
144
181
  }
182
+ /**
183
+ * Static method to create a new OpenSearchVectorStore from an array of
184
+ * Documents, embeddings, and OpenSearch client arguments.
185
+ * @param docs The documents to be added to the OpenSearch index.
186
+ * @param embeddings The embeddings used to convert the documents into vectors.
187
+ * @param dbConfig The OpenSearch client arguments.
188
+ * @returns Promise resolving to a new instance of OpenSearchVectorStore.
189
+ */
145
190
  static async fromDocuments(docs, embeddings, dbConfig) {
146
191
  const store = new OpenSearchVectorStore(embeddings, dbConfig);
147
192
  await store.addDocuments(docs).then(() => store);
148
193
  return store;
149
194
  }
195
+ /**
196
+ * Static method to create a new OpenSearchVectorStore from an existing
197
+ * OpenSearch index, embeddings, and OpenSearch client arguments.
198
+ * @param embeddings The embeddings used to convert the documents into vectors.
199
+ * @param dbConfig The OpenSearch client arguments.
200
+ * @returns Promise resolving to a new instance of OpenSearchVectorStore.
201
+ */
150
202
  static async fromExistingIndex(embeddings, dbConfig) {
151
203
  const store = new OpenSearchVectorStore(embeddings, dbConfig);
152
204
  await store.client.cat.indices({ index: store.indexName });
@@ -202,6 +254,10 @@ class OpenSearchVectorStore extends base_js_1.VectorStore {
202
254
  }
203
255
  return result;
204
256
  }
257
+ /**
258
+ * Method to check if the OpenSearch index exists.
259
+ * @returns Promise resolving to a boolean indicating whether the index exists.
260
+ */
205
261
  async doesIndexExist() {
206
262
  try {
207
263
  await this.client.cat.indices({ index: this.indexName });
@@ -215,6 +271,10 @@ class OpenSearchVectorStore extends base_js_1.VectorStore {
215
271
  throw err;
216
272
  }
217
273
  }
274
+ /**
275
+ * Method to delete the OpenSearch index if it exists.
276
+ * @returns Promise resolving to void.
277
+ */
218
278
  async deleteIfExists() {
219
279
  const indexExists = await this.doesIndexExist();
220
280
  if (!indexExists)