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
@@ -7,6 +7,12 @@ import { VectorStore } from "./base.js";
7
7
  import { Document } from "../document.js";
8
8
  const _LANGCHAIN_DEFAULT_EMBEDDING_DIM = 1536;
9
9
  const _LANGCHAIN_DEFAULT_COLLECTION_NAME = "langchain_document";
10
+ /**
11
+ * Class that provides methods for creating and managing a collection of
12
+ * documents in an AnalyticDB, adding documents or vectors to the
13
+ * collection, performing similarity search on vectors, and creating an
14
+ * instance of `AnalyticDBVectorStore` from texts or documents.
15
+ */
10
16
  export class AnalyticDBVectorStore extends VectorStore {
11
17
  _vectorstoreType() {
12
18
  return "analyticdb";
@@ -56,9 +62,20 @@ export class AnalyticDBVectorStore extends VectorStore {
56
62
  args.collectionName || _LANGCHAIN_DEFAULT_COLLECTION_NAME;
57
63
  this.preDeleteCollection = args.preDeleteCollection || false;
58
64
  }
65
+ /**
66
+ * Closes all the clients in the pool and terminates the pool.
67
+ * @returns Promise that resolves when all clients are closed and the pool is terminated.
68
+ */
59
69
  async end() {
60
70
  return this.pool.end();
61
71
  }
72
+ /**
73
+ * Creates a new table in the database if it does not already exist. The
74
+ * table is created with columns for id, embedding, document, and
75
+ * metadata. An index is also created on the embedding column if it does
76
+ * not already exist.
77
+ * @returns Promise that resolves when the table and index are created.
78
+ */
62
79
  async createTableIfNotExists() {
63
80
  const client = await this.pool.connect();
64
81
  try {
@@ -102,10 +119,20 @@ export class AnalyticDBVectorStore extends VectorStore {
102
119
  client.release();
103
120
  }
104
121
  }
122
+ /**
123
+ * Deletes the collection from the database if it exists.
124
+ * @returns Promise that resolves when the collection is deleted.
125
+ */
105
126
  async deleteCollection() {
106
127
  const dropStatement = `DROP TABLE IF EXISTS ${this.collectionName};`;
107
128
  await this.pool.query(dropStatement);
108
129
  }
130
+ /**
131
+ * Creates a new collection in the database. If `preDeleteCollection` is
132
+ * true, any existing collection with the same name is deleted before the
133
+ * new collection is created.
134
+ * @returns Promise that resolves when the collection is created.
135
+ */
109
136
  async createCollection() {
110
137
  if (this.preDeleteCollection) {
111
138
  await this.deleteCollection();
@@ -113,10 +140,24 @@ export class AnalyticDBVectorStore extends VectorStore {
113
140
  await this.createTableIfNotExists();
114
141
  this.isCreateCollection = true;
115
142
  }
143
+ /**
144
+ * Adds an array of documents to the collection. The documents are first
145
+ * converted to vectors using the `embedDocuments` method of the
146
+ * `embeddings` instance.
147
+ * @param documents Array of Document instances to be added to the collection.
148
+ * @returns Promise that resolves when the documents are added.
149
+ */
116
150
  async addDocuments(documents) {
117
151
  const texts = documents.map(({ pageContent }) => pageContent);
118
152
  return this.addVectors(await this.embeddings.embedDocuments(texts), documents);
119
153
  }
154
+ /**
155
+ * Adds an array of vectors and corresponding documents to the collection.
156
+ * The vectors and documents are batch inserted into the database.
157
+ * @param vectors Array of vectors to be added to the collection.
158
+ * @param documents Array of Document instances corresponding to the vectors.
159
+ * @returns Promise that resolves when the vectors and documents are added.
160
+ */
120
161
  async addVectors(vectors, documents) {
121
162
  if (vectors.length === 0) {
122
163
  return;
@@ -183,6 +224,16 @@ export class AnalyticDBVectorStore extends VectorStore {
183
224
  client.release();
184
225
  }
185
226
  }
227
+ /**
228
+ * Performs a similarity search on the vectors in the collection. The
229
+ * search is performed using the given query vector and returns the top k
230
+ * most similar vectors along with their corresponding documents and
231
+ * similarity scores.
232
+ * @param query Query vector for the similarity search.
233
+ * @param k Number of top similar vectors to return.
234
+ * @param filter Optional. Filter to apply on the metadata of the documents.
235
+ * @returns Promise that resolves to an array of tuples, each containing a Document instance and its similarity score.
236
+ */
186
237
  async similaritySearchVectorWithScore(query, k, filter) {
187
238
  if (!this.isCreateCollection) {
188
239
  await this.createCollection();
@@ -212,6 +263,16 @@ export class AnalyticDBVectorStore extends VectorStore {
212
263
  ]);
213
264
  return result;
214
265
  }
266
+ /**
267
+ * Creates an instance of `AnalyticDBVectorStore` from an array of texts
268
+ * and corresponding metadata. The texts are first converted to Document
269
+ * instances before being added to the collection.
270
+ * @param texts Array of texts to be added to the collection.
271
+ * @param metadatas Array or object of metadata corresponding to the texts.
272
+ * @param embeddings Embeddings instance used to convert the texts to vectors.
273
+ * @param dbConfig Configuration for the AnalyticDB.
274
+ * @returns Promise that resolves to an instance of `AnalyticDBVectorStore`.
275
+ */
215
276
  static async fromTexts(texts, metadatas, embeddings, dbConfig) {
216
277
  const docs = [];
217
278
  for (let i = 0; i < texts.length; i += 1) {
@@ -224,11 +285,26 @@ export class AnalyticDBVectorStore extends VectorStore {
224
285
  }
225
286
  return AnalyticDBVectorStore.fromDocuments(docs, embeddings, dbConfig);
226
287
  }
288
+ /**
289
+ * Creates an instance of `AnalyticDBVectorStore` from an array of
290
+ * Document instances. The documents are added to the collection.
291
+ * @param docs Array of Document instances to be added to the collection.
292
+ * @param embeddings Embeddings instance used to convert the documents to vectors.
293
+ * @param dbConfig Configuration for the AnalyticDB.
294
+ * @returns Promise that resolves to an instance of `AnalyticDBVectorStore`.
295
+ */
227
296
  static async fromDocuments(docs, embeddings, dbConfig) {
228
297
  const instance = new this(embeddings, dbConfig);
229
298
  await instance.addDocuments(docs);
230
299
  return instance;
231
300
  }
301
+ /**
302
+ * Creates an instance of `AnalyticDBVectorStore` from an existing index
303
+ * in the database. A new collection is created in the database.
304
+ * @param embeddings Embeddings instance used to convert the documents to vectors.
305
+ * @param dbConfig Configuration for the AnalyticDB.
306
+ * @returns Promise that resolves to an instance of `AnalyticDBVectorStore`.
307
+ */
232
308
  static async fromExistingIndex(embeddings, dbConfig) {
233
309
  const instance = new this(embeddings, dbConfig);
234
310
  await instance.createCollection();
@@ -3,6 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SaveableVectorStore = exports.VectorStore = exports.VectorStoreRetriever = void 0;
4
4
  const retriever_js_1 = require("../schema/retriever.cjs");
5
5
  const serializable_js_1 = require("../load/serializable.cjs");
6
+ /**
7
+ * Class for performing document retrieval from a VectorStore. Can perform
8
+ * similarity search or maximal marginal relevance search.
9
+ */
6
10
  class VectorStoreRetriever extends retriever_js_1.BaseRetriever {
7
11
  static lc_name() {
8
12
  return "VectorStoreRetriever";
@@ -71,6 +75,11 @@ class VectorStoreRetriever extends retriever_js_1.BaseRetriever {
71
75
  }
72
76
  }
73
77
  exports.VectorStoreRetriever = VectorStoreRetriever;
78
+ /**
79
+ * Abstract class representing a store of vectors. Provides methods for
80
+ * adding vectors and documents, deleting from the store, and searching
81
+ * the store.
82
+ */
74
83
  class VectorStore extends serializable_js_1.Serializable {
75
84
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
76
85
  constructor(embeddings, dbConfig) {
@@ -146,6 +155,10 @@ class VectorStore extends serializable_js_1.Serializable {
146
155
  }
147
156
  }
148
157
  exports.VectorStore = VectorStore;
158
+ /**
159
+ * Abstract class extending VectorStore with functionality for saving and
160
+ * loading the vector store.
161
+ */
149
162
  class SaveableVectorStore extends VectorStore {
150
163
  static load(_directory, _embeddings) {
151
164
  throw new Error("Not implemented");
@@ -3,17 +3,30 @@ import { Document } from "../document.js";
3
3
  import { BaseRetriever, BaseRetrieverInput } from "../schema/retriever.js";
4
4
  import { Serializable } from "../load/serializable.js";
5
5
  import { CallbackManagerForRetrieverRun, Callbacks } from "../callbacks/manager.js";
6
+ /**
7
+ * Type for options when adding a document to the VectorStore.
8
+ */
6
9
  type AddDocumentOptions = Record<string, any>;
10
+ /**
11
+ * Type for options when performing a maximal marginal relevance search.
12
+ */
7
13
  export type MaxMarginalRelevanceSearchOptions<FilterType> = {
8
14
  k: number;
9
15
  fetchK?: number;
10
16
  lambda?: number;
11
17
  filter?: FilterType;
12
18
  };
19
+ /**
20
+ * Type for options when performing a maximal marginal relevance search
21
+ * with the VectorStoreRetriever.
22
+ */
13
23
  export type VectorStoreRetrieverMMRSearchKwargs = {
14
24
  fetchK?: number;
15
25
  lambda?: number;
16
26
  };
27
+ /**
28
+ * Type for input when creating a VectorStoreRetriever instance.
29
+ */
17
30
  export type VectorStoreRetrieverInput<V extends VectorStore> = BaseRetrieverInput & ({
18
31
  vectorStore: V;
19
32
  k?: number;
@@ -26,6 +39,10 @@ export type VectorStoreRetrieverInput<V extends VectorStore> = BaseRetrieverInpu
26
39
  searchType: "mmr";
27
40
  searchKwargs?: VectorStoreRetrieverMMRSearchKwargs;
28
41
  });
42
+ /**
43
+ * Class for performing document retrieval from a VectorStore. Can perform
44
+ * similarity search or maximal marginal relevance search.
45
+ */
29
46
  export declare class VectorStoreRetriever<V extends VectorStore = VectorStore> extends BaseRetriever {
30
47
  static lc_name(): string;
31
48
  get lc_namespace(): string[];
@@ -39,6 +56,11 @@ export declare class VectorStoreRetriever<V extends VectorStore = VectorStore> e
39
56
  _getRelevantDocuments(query: string, runManager?: CallbackManagerForRetrieverRun): Promise<Document[]>;
40
57
  addDocuments(documents: Document[], options?: AddDocumentOptions): Promise<string[] | void>;
41
58
  }
59
+ /**
60
+ * Abstract class representing a store of vectors. Provides methods for
61
+ * adding vectors and documents, deleting from the store, and searching
62
+ * the store.
63
+ */
42
64
  export declare abstract class VectorStore extends Serializable {
43
65
  FilterType: object | string;
44
66
  lc_namespace: string[];
@@ -71,6 +93,10 @@ export declare abstract class VectorStore extends Serializable {
71
93
  static fromDocuments(_docs: Document[], _embeddings: Embeddings, _dbConfig: Record<string, any>): Promise<VectorStore>;
72
94
  asRetriever(kOrFields?: number | Partial<VectorStoreRetrieverInput<this>>, filter?: this["FilterType"], callbacks?: Callbacks, tags?: string[], metadata?: Record<string, unknown>, verbose?: boolean): VectorStoreRetriever<this>;
73
95
  }
96
+ /**
97
+ * Abstract class extending VectorStore with functionality for saving and
98
+ * loading the vector store.
99
+ */
74
100
  export declare abstract class SaveableVectorStore extends VectorStore {
75
101
  abstract save(directory: string): Promise<void>;
76
102
  static load(_directory: string, _embeddings: Embeddings): Promise<SaveableVectorStore>;
@@ -1,5 +1,9 @@
1
1
  import { BaseRetriever } from "../schema/retriever.js";
2
2
  import { Serializable } from "../load/serializable.js";
3
+ /**
4
+ * Class for performing document retrieval from a VectorStore. Can perform
5
+ * similarity search or maximal marginal relevance search.
6
+ */
3
7
  export class VectorStoreRetriever extends BaseRetriever {
4
8
  static lc_name() {
5
9
  return "VectorStoreRetriever";
@@ -67,6 +71,11 @@ export class VectorStoreRetriever extends BaseRetriever {
67
71
  return this.vectorStore.addDocuments(documents, options);
68
72
  }
69
73
  }
74
+ /**
75
+ * Abstract class representing a store of vectors. Provides methods for
76
+ * adding vectors and documents, deleting from the store, and searching
77
+ * the store.
78
+ */
70
79
  export class VectorStore extends Serializable {
71
80
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
72
81
  constructor(embeddings, dbConfig) {
@@ -141,6 +150,10 @@ export class VectorStore extends Serializable {
141
150
  }
142
151
  }
143
152
  }
153
+ /**
154
+ * Abstract class extending VectorStore with functionality for saving and
155
+ * loading the vector store.
156
+ */
144
157
  export class SaveableVectorStore extends VectorStore {
145
158
  static load(_directory, _embeddings) {
146
159
  throw new Error("Not implemented");
@@ -27,6 +27,11 @@ exports.Chroma = void 0;
27
27
  const uuid = __importStar(require("uuid"));
28
28
  const base_js_1 = require("./base.cjs");
29
29
  const document_js_1 = require("../document.cjs");
30
+ /**
31
+ * The main class that extends the `VectorStore` class. It provides
32
+ * methods for interacting with the Chroma database, such as adding
33
+ * documents, deleting documents, and searching for similar vectors.
34
+ */
30
35
  class Chroma extends base_js_1.VectorStore {
31
36
  _vectorstoreType() {
32
37
  return "chroma";
@@ -80,10 +85,23 @@ class Chroma extends base_js_1.VectorStore {
80
85
  }
81
86
  this.filter = args.filter;
82
87
  }
88
+ /**
89
+ * Adds documents to the Chroma database. The documents are first
90
+ * converted to vectors using the `embeddings` instance, and then added to
91
+ * the database.
92
+ * @param documents An array of `Document` instances to be added to the database.
93
+ * @param options Optional. An object containing an array of `ids` for the documents.
94
+ * @returns A promise that resolves when the documents have been added to the database.
95
+ */
83
96
  async addDocuments(documents, options) {
84
97
  const texts = documents.map(({ pageContent }) => pageContent);
85
98
  return this.addVectors(await this.embeddings.embedDocuments(texts), documents, options);
86
99
  }
100
+ /**
101
+ * Ensures that a collection exists in the Chroma database. If the
102
+ * collection does not exist, it is created.
103
+ * @returns A promise that resolves with the `Collection` instance.
104
+ */
87
105
  async ensureCollection() {
88
106
  if (!this.collection) {
89
107
  if (!this.index) {
@@ -101,6 +119,14 @@ class Chroma extends base_js_1.VectorStore {
101
119
  }
102
120
  return this.collection;
103
121
  }
122
+ /**
123
+ * Adds vectors to the Chroma database. The vectors are associated with
124
+ * the provided documents.
125
+ * @param vectors An array of vectors to be added to the database.
126
+ * @param documents An array of `Document` instances associated with the vectors.
127
+ * @param options Optional. An object containing an array of `ids` for the vectors.
128
+ * @returns A promise that resolves with an array of document IDs when the vectors have been added to the database.
129
+ */
104
130
  async addVectors(vectors, documents, options) {
105
131
  if (vectors.length === 0) {
106
132
  return [];
@@ -142,6 +168,12 @@ class Chroma extends base_js_1.VectorStore {
142
168
  });
143
169
  return documentIds;
144
170
  }
171
+ /**
172
+ * Deletes documents from the Chroma database. The documents to be deleted
173
+ * can be specified by providing an array of `ids` or a `filter` object.
174
+ * @param params An object containing either an array of `ids` of the documents to be deleted or a `filter` object to specify the documents to be deleted.
175
+ * @returns A promise that resolves when the specified documents have been deleted from the database.
176
+ */
145
177
  async delete(params) {
146
178
  const collection = await this.ensureCollection();
147
179
  if (Array.isArray(params.ids)) {
@@ -156,6 +188,15 @@ class Chroma extends base_js_1.VectorStore {
156
188
  throw new Error(`You must provide one of "ids or "filter".`);
157
189
  }
158
190
  }
191
+ /**
192
+ * Searches for vectors in the Chroma database that are similar to the
193
+ * provided query vector. The search can be filtered using the provided
194
+ * `filter` object or the `filter` property of the `Chroma` instance.
195
+ * @param query The query vector.
196
+ * @param k The number of similar vectors to return.
197
+ * @param filter Optional. A `filter` object to filter the search results.
198
+ * @returns A promise that resolves with an array of tuples, each containing a `Document` instance and a similarity score.
199
+ */
159
200
  async similaritySearchVectorWithScore(query, k, filter) {
160
201
  if (filter && this.filter) {
161
202
  throw new Error("cannot provide both `filter` and `this.filter`");
@@ -204,6 +245,16 @@ class Chroma extends base_js_1.VectorStore {
204
245
  }
205
246
  return results;
206
247
  }
248
+ /**
249
+ * Creates a new `Chroma` instance from an array of text strings. The text
250
+ * strings are converted to `Document` instances and added to the Chroma
251
+ * database.
252
+ * @param texts An array of text strings.
253
+ * @param metadatas An array of metadata objects or a single metadata object. If an array is provided, it must have the same length as the `texts` array.
254
+ * @param embeddings An `Embeddings` instance used to generate embeddings for the documents.
255
+ * @param dbConfig A `ChromaLibArgs` object containing the configuration for the Chroma database.
256
+ * @returns A promise that resolves with a new `Chroma` instance.
257
+ */
207
258
  static async fromTexts(texts, metadatas, embeddings, dbConfig) {
208
259
  const docs = [];
209
260
  for (let i = 0; i < texts.length; i += 1) {
@@ -216,16 +267,35 @@ class Chroma extends base_js_1.VectorStore {
216
267
  }
217
268
  return this.fromDocuments(docs, embeddings, dbConfig);
218
269
  }
270
+ /**
271
+ * Creates a new `Chroma` instance from an array of `Document` instances.
272
+ * The documents are added to the Chroma database.
273
+ * @param docs An array of `Document` instances.
274
+ * @param embeddings An `Embeddings` instance used to generate embeddings for the documents.
275
+ * @param dbConfig A `ChromaLibArgs` object containing the configuration for the Chroma database.
276
+ * @returns A promise that resolves with a new `Chroma` instance.
277
+ */
219
278
  static async fromDocuments(docs, embeddings, dbConfig) {
220
279
  const instance = new this(embeddings, dbConfig);
221
280
  await instance.addDocuments(docs);
222
281
  return instance;
223
282
  }
283
+ /**
284
+ * Creates a new `Chroma` instance from an existing collection in the
285
+ * Chroma database.
286
+ * @param embeddings An `Embeddings` instance used to generate embeddings for the documents.
287
+ * @param dbConfig A `ChromaLibArgs` object containing the configuration for the Chroma database.
288
+ * @returns A promise that resolves with a new `Chroma` instance.
289
+ */
224
290
  static async fromExistingCollection(embeddings, dbConfig) {
225
291
  const instance = new this(embeddings, dbConfig);
226
292
  await instance.ensureCollection();
227
293
  return instance;
228
294
  }
295
+ /**
296
+ * Imports the `ChromaClient` from the `chromadb` module.
297
+ * @returns A promise that resolves with an object containing the `ChromaClient` constructor.
298
+ */
229
299
  static async imports() {
230
300
  try {
231
301
  const { ChromaClient } = await import("chromadb");
@@ -237,6 +307,9 @@ class Chroma extends base_js_1.VectorStore {
237
307
  }
238
308
  }
239
309
  exports.Chroma = Chroma;
310
+ /**
311
+ * Generates a unique collection name if none is provided.
312
+ */
240
313
  function ensureCollectionName(collectionName) {
241
314
  if (!collectionName) {
242
315
  return `langchain-${uuid.v4()}`;
@@ -3,6 +3,15 @@ import type { Where } from "chromadb/dist/main/types.js";
3
3
  import { Embeddings } from "../embeddings/base.js";
4
4
  import { VectorStore } from "./base.js";
5
5
  import { Document } from "../document.js";
6
+ /**
7
+ * Defines the arguments that can be passed to the `Chroma` class
8
+ * constructor. It can either contain a `url` for the Chroma database, the
9
+ * number of dimensions for the vectors (`numDimensions`), a
10
+ * `collectionName` for the collection to be used in the database, and a
11
+ * `filter` object; or it can contain an `index` which is an instance of
12
+ * `ChromaClientT`, along with the `numDimensions`, `collectionName`, and
13
+ * `filter`.
14
+ */
6
15
  export type ChromaLibArgs = {
7
16
  url?: string;
8
17
  numDimensions?: number;
@@ -14,10 +23,20 @@ export type ChromaLibArgs = {
14
23
  collectionName?: string;
15
24
  filter?: object;
16
25
  };
26
+ /**
27
+ * Defines the parameters for the `delete` method in the `Chroma` class.
28
+ * It can either contain an array of `ids` of the documents to be deleted
29
+ * or a `filter` object to specify the documents to be deleted.
30
+ */
17
31
  export interface ChromaDeleteParams<T> {
18
32
  ids?: string[];
19
33
  filter?: T;
20
34
  }
35
+ /**
36
+ * The main class that extends the `VectorStore` class. It provides
37
+ * methods for interacting with the Chroma database, such as adding
38
+ * documents, deleting documents, and searching for similar vectors.
39
+ */
21
40
  export declare class Chroma extends VectorStore {
22
41
  FilterType: Where;
23
42
  index?: ChromaClientT;
@@ -28,18 +47,83 @@ export declare class Chroma extends VectorStore {
28
47
  filter?: object;
29
48
  _vectorstoreType(): string;
30
49
  constructor(embeddings: Embeddings, args: ChromaLibArgs);
50
+ /**
51
+ * Adds documents to the Chroma database. The documents are first
52
+ * converted to vectors using the `embeddings` instance, and then added to
53
+ * the database.
54
+ * @param documents An array of `Document` instances to be added to the database.
55
+ * @param options Optional. An object containing an array of `ids` for the documents.
56
+ * @returns A promise that resolves when the documents have been added to the database.
57
+ */
31
58
  addDocuments(documents: Document[], options?: {
32
59
  ids?: string[];
33
60
  }): Promise<string[]>;
61
+ /**
62
+ * Ensures that a collection exists in the Chroma database. If the
63
+ * collection does not exist, it is created.
64
+ * @returns A promise that resolves with the `Collection` instance.
65
+ */
34
66
  ensureCollection(): Promise<Collection>;
67
+ /**
68
+ * Adds vectors to the Chroma database. The vectors are associated with
69
+ * the provided documents.
70
+ * @param vectors An array of vectors to be added to the database.
71
+ * @param documents An array of `Document` instances associated with the vectors.
72
+ * @param options Optional. An object containing an array of `ids` for the vectors.
73
+ * @returns A promise that resolves with an array of document IDs when the vectors have been added to the database.
74
+ */
35
75
  addVectors(vectors: number[][], documents: Document[], options?: {
36
76
  ids?: string[];
37
77
  }): Promise<string[]>;
78
+ /**
79
+ * Deletes documents from the Chroma database. The documents to be deleted
80
+ * can be specified by providing an array of `ids` or a `filter` object.
81
+ * @param params An object containing either an array of `ids` of the documents to be deleted or a `filter` object to specify the documents to be deleted.
82
+ * @returns A promise that resolves when the specified documents have been deleted from the database.
83
+ */
38
84
  delete(params: ChromaDeleteParams<this["FilterType"]>): Promise<void>;
85
+ /**
86
+ * Searches for vectors in the Chroma database that are similar to the
87
+ * provided query vector. The search can be filtered using the provided
88
+ * `filter` object or the `filter` property of the `Chroma` instance.
89
+ * @param query The query vector.
90
+ * @param k The number of similar vectors to return.
91
+ * @param filter Optional. A `filter` object to filter the search results.
92
+ * @returns A promise that resolves with an array of tuples, each containing a `Document` instance and a similarity score.
93
+ */
39
94
  similaritySearchVectorWithScore(query: number[], k: number, filter?: this["FilterType"]): Promise<[Document<Record<string, any>>, number][]>;
95
+ /**
96
+ * Creates a new `Chroma` instance from an array of text strings. The text
97
+ * strings are converted to `Document` instances and added to the Chroma
98
+ * database.
99
+ * @param texts An array of text strings.
100
+ * @param metadatas An array of metadata objects or a single metadata object. If an array is provided, it must have the same length as the `texts` array.
101
+ * @param embeddings An `Embeddings` instance used to generate embeddings for the documents.
102
+ * @param dbConfig A `ChromaLibArgs` object containing the configuration for the Chroma database.
103
+ * @returns A promise that resolves with a new `Chroma` instance.
104
+ */
40
105
  static fromTexts(texts: string[], metadatas: object[] | object, embeddings: Embeddings, dbConfig: ChromaLibArgs): Promise<Chroma>;
106
+ /**
107
+ * Creates a new `Chroma` instance from an array of `Document` instances.
108
+ * The documents are added to the Chroma database.
109
+ * @param docs An array of `Document` instances.
110
+ * @param embeddings An `Embeddings` instance used to generate embeddings for the documents.
111
+ * @param dbConfig A `ChromaLibArgs` object containing the configuration for the Chroma database.
112
+ * @returns A promise that resolves with a new `Chroma` instance.
113
+ */
41
114
  static fromDocuments(docs: Document[], embeddings: Embeddings, dbConfig: ChromaLibArgs): Promise<Chroma>;
115
+ /**
116
+ * Creates a new `Chroma` instance from an existing collection in the
117
+ * Chroma database.
118
+ * @param embeddings An `Embeddings` instance used to generate embeddings for the documents.
119
+ * @param dbConfig A `ChromaLibArgs` object containing the configuration for the Chroma database.
120
+ * @returns A promise that resolves with a new `Chroma` instance.
121
+ */
42
122
  static fromExistingCollection(embeddings: Embeddings, dbConfig: ChromaLibArgs): Promise<Chroma>;
123
+ /**
124
+ * Imports the `ChromaClient` from the `chromadb` module.
125
+ * @returns A promise that resolves with an object containing the `ChromaClient` constructor.
126
+ */
43
127
  static imports(): Promise<{
44
128
  ChromaClient: typeof ChromaClientT;
45
129
  }>;
@@ -1,6 +1,11 @@
1
1
  import * as uuid from "uuid";
2
2
  import { VectorStore } from "./base.js";
3
3
  import { Document } from "../document.js";
4
+ /**
5
+ * The main class that extends the `VectorStore` class. It provides
6
+ * methods for interacting with the Chroma database, such as adding
7
+ * documents, deleting documents, and searching for similar vectors.
8
+ */
4
9
  export class Chroma extends VectorStore {
5
10
  _vectorstoreType() {
6
11
  return "chroma";
@@ -54,10 +59,23 @@ export class Chroma extends VectorStore {
54
59
  }
55
60
  this.filter = args.filter;
56
61
  }
62
+ /**
63
+ * Adds documents to the Chroma database. The documents are first
64
+ * converted to vectors using the `embeddings` instance, and then added to
65
+ * the database.
66
+ * @param documents An array of `Document` instances to be added to the database.
67
+ * @param options Optional. An object containing an array of `ids` for the documents.
68
+ * @returns A promise that resolves when the documents have been added to the database.
69
+ */
57
70
  async addDocuments(documents, options) {
58
71
  const texts = documents.map(({ pageContent }) => pageContent);
59
72
  return this.addVectors(await this.embeddings.embedDocuments(texts), documents, options);
60
73
  }
74
+ /**
75
+ * Ensures that a collection exists in the Chroma database. If the
76
+ * collection does not exist, it is created.
77
+ * @returns A promise that resolves with the `Collection` instance.
78
+ */
61
79
  async ensureCollection() {
62
80
  if (!this.collection) {
63
81
  if (!this.index) {
@@ -75,6 +93,14 @@ export class Chroma extends VectorStore {
75
93
  }
76
94
  return this.collection;
77
95
  }
96
+ /**
97
+ * Adds vectors to the Chroma database. The vectors are associated with
98
+ * the provided documents.
99
+ * @param vectors An array of vectors to be added to the database.
100
+ * @param documents An array of `Document` instances associated with the vectors.
101
+ * @param options Optional. An object containing an array of `ids` for the vectors.
102
+ * @returns A promise that resolves with an array of document IDs when the vectors have been added to the database.
103
+ */
78
104
  async addVectors(vectors, documents, options) {
79
105
  if (vectors.length === 0) {
80
106
  return [];
@@ -116,6 +142,12 @@ export class Chroma extends VectorStore {
116
142
  });
117
143
  return documentIds;
118
144
  }
145
+ /**
146
+ * Deletes documents from the Chroma database. The documents to be deleted
147
+ * can be specified by providing an array of `ids` or a `filter` object.
148
+ * @param params An object containing either an array of `ids` of the documents to be deleted or a `filter` object to specify the documents to be deleted.
149
+ * @returns A promise that resolves when the specified documents have been deleted from the database.
150
+ */
119
151
  async delete(params) {
120
152
  const collection = await this.ensureCollection();
121
153
  if (Array.isArray(params.ids)) {
@@ -130,6 +162,15 @@ export class Chroma extends VectorStore {
130
162
  throw new Error(`You must provide one of "ids or "filter".`);
131
163
  }
132
164
  }
165
+ /**
166
+ * Searches for vectors in the Chroma database that are similar to the
167
+ * provided query vector. The search can be filtered using the provided
168
+ * `filter` object or the `filter` property of the `Chroma` instance.
169
+ * @param query The query vector.
170
+ * @param k The number of similar vectors to return.
171
+ * @param filter Optional. A `filter` object to filter the search results.
172
+ * @returns A promise that resolves with an array of tuples, each containing a `Document` instance and a similarity score.
173
+ */
133
174
  async similaritySearchVectorWithScore(query, k, filter) {
134
175
  if (filter && this.filter) {
135
176
  throw new Error("cannot provide both `filter` and `this.filter`");
@@ -178,6 +219,16 @@ export class Chroma extends VectorStore {
178
219
  }
179
220
  return results;
180
221
  }
222
+ /**
223
+ * Creates a new `Chroma` instance from an array of text strings. The text
224
+ * strings are converted to `Document` instances and added to the Chroma
225
+ * database.
226
+ * @param texts An array of text strings.
227
+ * @param metadatas An array of metadata objects or a single metadata object. If an array is provided, it must have the same length as the `texts` array.
228
+ * @param embeddings An `Embeddings` instance used to generate embeddings for the documents.
229
+ * @param dbConfig A `ChromaLibArgs` object containing the configuration for the Chroma database.
230
+ * @returns A promise that resolves with a new `Chroma` instance.
231
+ */
181
232
  static async fromTexts(texts, metadatas, embeddings, dbConfig) {
182
233
  const docs = [];
183
234
  for (let i = 0; i < texts.length; i += 1) {
@@ -190,16 +241,35 @@ export class Chroma extends VectorStore {
190
241
  }
191
242
  return this.fromDocuments(docs, embeddings, dbConfig);
192
243
  }
244
+ /**
245
+ * Creates a new `Chroma` instance from an array of `Document` instances.
246
+ * The documents are added to the Chroma database.
247
+ * @param docs An array of `Document` instances.
248
+ * @param embeddings An `Embeddings` instance used to generate embeddings for the documents.
249
+ * @param dbConfig A `ChromaLibArgs` object containing the configuration for the Chroma database.
250
+ * @returns A promise that resolves with a new `Chroma` instance.
251
+ */
193
252
  static async fromDocuments(docs, embeddings, dbConfig) {
194
253
  const instance = new this(embeddings, dbConfig);
195
254
  await instance.addDocuments(docs);
196
255
  return instance;
197
256
  }
257
+ /**
258
+ * Creates a new `Chroma` instance from an existing collection in the
259
+ * Chroma database.
260
+ * @param embeddings An `Embeddings` instance used to generate embeddings for the documents.
261
+ * @param dbConfig A `ChromaLibArgs` object containing the configuration for the Chroma database.
262
+ * @returns A promise that resolves with a new `Chroma` instance.
263
+ */
198
264
  static async fromExistingCollection(embeddings, dbConfig) {
199
265
  const instance = new this(embeddings, dbConfig);
200
266
  await instance.ensureCollection();
201
267
  return instance;
202
268
  }
269
+ /**
270
+ * Imports the `ChromaClient` from the `chromadb` module.
271
+ * @returns A promise that resolves with an object containing the `ChromaClient` constructor.
272
+ */
203
273
  static async imports() {
204
274
  try {
205
275
  const { ChromaClient } = await import("chromadb");
@@ -210,6 +280,9 @@ export class Chroma extends VectorStore {
210
280
  }
211
281
  }
212
282
  }
283
+ /**
284
+ * Generates a unique collection name if none is provided.
285
+ */
213
286
  function ensureCollectionName(collectionName) {
214
287
  if (!collectionName) {
215
288
  return `langchain-${uuid.v4()}`;