langchain 0.0.130 → 0.0.132

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (831) hide show
  1. package/dist/agents/agent.cjs +23 -0
  2. package/dist/agents/agent.d.ts +28 -0
  3. package/dist/agents/agent.js +23 -0
  4. package/dist/agents/chat/index.cjs +28 -0
  5. package/dist/agents/chat/index.d.ts +33 -0
  6. package/dist/agents/chat/index.js +28 -0
  7. package/dist/agents/chat/outputParser.cjs +19 -0
  8. package/dist/agents/chat/outputParser.d.ts +19 -0
  9. package/dist/agents/chat/outputParser.js +19 -0
  10. package/dist/agents/chat_convo/index.cjs +25 -0
  11. package/dist/agents/chat_convo/index.d.ts +32 -0
  12. package/dist/agents/chat_convo/index.js +25 -0
  13. package/dist/agents/chat_convo/outputParser.cjs +42 -0
  14. package/dist/agents/chat_convo/outputParser.d.ts +42 -0
  15. package/dist/agents/chat_convo/outputParser.js +42 -0
  16. package/dist/agents/executor.cjs +9 -0
  17. package/dist/agents/executor.d.ts +12 -0
  18. package/dist/agents/executor.js +9 -0
  19. package/dist/agents/initialize.d.ts +5 -0
  20. package/dist/agents/mrkl/index.cjs +20 -0
  21. package/dist/agents/mrkl/index.d.ts +25 -0
  22. package/dist/agents/mrkl/index.js +20 -0
  23. package/dist/agents/mrkl/outputParser.cjs +15 -0
  24. package/dist/agents/mrkl/outputParser.d.ts +15 -0
  25. package/dist/agents/mrkl/outputParser.js +15 -0
  26. package/dist/agents/openai/index.cjs +46 -0
  27. package/dist/agents/openai/index.d.ts +40 -0
  28. package/dist/agents/openai/index.js +46 -0
  29. package/dist/agents/structured_chat/index.cjs +35 -0
  30. package/dist/agents/structured_chat/index.d.ts +41 -0
  31. package/dist/agents/structured_chat/index.js +35 -0
  32. package/dist/agents/structured_chat/outputParser.cjs +44 -0
  33. package/dist/agents/structured_chat/outputParser.d.ts +48 -0
  34. package/dist/agents/structured_chat/outputParser.js +44 -0
  35. package/dist/agents/toolkits/aws_sfn.cjs +5 -0
  36. package/dist/agents/toolkits/aws_sfn.d.ts +9 -0
  37. package/dist/agents/toolkits/aws_sfn.js +5 -0
  38. package/dist/agents/toolkits/base.cjs +5 -0
  39. package/dist/agents/toolkits/base.d.ts +5 -0
  40. package/dist/agents/toolkits/base.js +5 -0
  41. package/dist/agents/toolkits/conversational_retrieval/openai_functions.cjs +10 -0
  42. package/dist/agents/toolkits/conversational_retrieval/openai_functions.d.ts +10 -0
  43. package/dist/agents/toolkits/conversational_retrieval/openai_functions.js +10 -0
  44. package/dist/agents/toolkits/conversational_retrieval/token_buffer_memory.cjs +17 -0
  45. package/dist/agents/toolkits/conversational_retrieval/token_buffer_memory.d.ts +21 -0
  46. package/dist/agents/toolkits/conversational_retrieval/token_buffer_memory.js +17 -0
  47. package/dist/agents/toolkits/json/json.cjs +15 -0
  48. package/dist/agents/toolkits/json/json.d.ts +15 -0
  49. package/dist/agents/toolkits/json/json.js +15 -0
  50. package/dist/agents/toolkits/openapi/openapi.cjs +21 -0
  51. package/dist/agents/toolkits/openapi/openapi.d.ts +21 -0
  52. package/dist/agents/toolkits/openapi/openapi.js +21 -0
  53. package/dist/agents/toolkits/sql/sql.cjs +4 -0
  54. package/dist/agents/toolkits/sql/sql.d.ts +8 -0
  55. package/dist/agents/toolkits/sql/sql.js +4 -0
  56. package/dist/agents/toolkits/vectorstore/vectorstore.cjs +10 -0
  57. package/dist/agents/toolkits/vectorstore/vectorstore.d.ts +14 -0
  58. package/dist/agents/toolkits/vectorstore/vectorstore.js +10 -0
  59. package/dist/agents/toolkits/zapier/zapier.cjs +12 -0
  60. package/dist/agents/toolkits/zapier/zapier.d.ts +12 -0
  61. package/dist/agents/toolkits/zapier/zapier.js +12 -0
  62. package/dist/agents/types.cjs +5 -0
  63. package/dist/agents/types.d.ts +28 -0
  64. package/dist/agents/types.js +5 -0
  65. package/dist/cache/index.cjs +21 -0
  66. package/dist/cache/index.d.ts +21 -0
  67. package/dist/cache/index.js +21 -0
  68. package/dist/cache/ioredis.cjs +16 -0
  69. package/dist/cache/ioredis.d.ts +16 -0
  70. package/dist/cache/ioredis.js +16 -0
  71. package/dist/cache/redis.cjs +21 -0
  72. package/dist/cache/redis.d.ts +25 -0
  73. package/dist/cache/redis.js +21 -0
  74. package/dist/callbacks/base.cjs +29 -0
  75. package/dist/callbacks/base.d.ts +35 -0
  76. package/dist/callbacks/base.js +30 -1
  77. package/dist/callbacks/handlers/console.cjs +87 -0
  78. package/dist/callbacks/handlers/console.d.ts +87 -0
  79. package/dist/callbacks/handlers/console.js +87 -0
  80. package/dist/callbacks/handlers/initialize.cjs +12 -0
  81. package/dist/callbacks/handlers/initialize.d.ts +12 -0
  82. package/dist/callbacks/handlers/initialize.js +12 -0
  83. package/dist/callbacks/manager.cjs +9 -0
  84. package/dist/callbacks/manager.d.ts +9 -0
  85. package/dist/callbacks/manager.js +9 -0
  86. package/dist/callbacks/promises.cjs +9 -0
  87. package/dist/callbacks/promises.d.ts +4 -0
  88. package/dist/callbacks/promises.js +9 -0
  89. package/dist/chains/analyze_documents_chain.cjs +3 -0
  90. package/dist/chains/analyze_documents_chain.d.ts +5 -0
  91. package/dist/chains/analyze_documents_chain.js +3 -0
  92. package/dist/chains/api/api_chain.cjs +12 -0
  93. package/dist/chains/api/api_chain.d.ts +19 -0
  94. package/dist/chains/api/api_chain.js +12 -0
  95. package/dist/chains/base.cjs +6 -0
  96. package/dist/chains/base.d.ts +6 -0
  97. package/dist/chains/base.js +6 -0
  98. package/dist/chains/chat_vector_db_chain.cjs +8 -0
  99. package/dist/chains/chat_vector_db_chain.d.ts +11 -0
  100. package/dist/chains/chat_vector_db_chain.js +8 -0
  101. package/dist/chains/combine_docs_chain.cjs +9 -0
  102. package/dist/chains/combine_docs_chain.d.ts +13 -0
  103. package/dist/chains/combine_docs_chain.js +9 -0
  104. package/dist/chains/constitutional_ai/constitutional_chain.cjs +20 -0
  105. package/dist/chains/constitutional_ai/constitutional_chain.d.ts +21 -0
  106. package/dist/chains/constitutional_ai/constitutional_chain.js +20 -0
  107. package/dist/chains/constitutional_ai/constitutional_principle.cjs +4 -0
  108. package/dist/chains/constitutional_ai/constitutional_principle.d.ts +4 -0
  109. package/dist/chains/constitutional_ai/constitutional_principle.js +4 -0
  110. package/dist/chains/conversation.cjs +7 -0
  111. package/dist/chains/conversation.d.ts +5 -0
  112. package/dist/chains/conversation.js +7 -0
  113. package/dist/chains/conversational_retrieval_chain.cjs +24 -0
  114. package/dist/chains/conversational_retrieval_chain.d.ts +27 -1
  115. package/dist/chains/conversational_retrieval_chain.js +24 -0
  116. package/dist/chains/llm_chain.cjs +3 -0
  117. package/dist/chains/llm_chain.d.ts +4 -0
  118. package/dist/chains/llm_chain.js +3 -0
  119. package/dist/chains/openai_functions/extraction.cjs +21 -0
  120. package/dist/chains/openai_functions/extraction.d.ts +15 -0
  121. package/dist/chains/openai_functions/extraction.js +21 -0
  122. package/dist/chains/openai_functions/openapi.cjs +30 -0
  123. package/dist/chains/openai_functions/openapi.d.ts +3 -0
  124. package/dist/chains/openai_functions/openapi.js +30 -0
  125. package/dist/chains/openai_functions/structured_output.cjs +12 -0
  126. package/dist/chains/openai_functions/structured_output.d.ts +18 -0
  127. package/dist/chains/openai_functions/structured_output.js +12 -0
  128. package/dist/chains/openai_functions/tagging.cjs +24 -0
  129. package/dist/chains/openai_functions/tagging.d.ts +21 -0
  130. package/dist/chains/openai_functions/tagging.js +24 -0
  131. package/dist/chains/openai_moderation.cjs +8 -0
  132. package/dist/chains/openai_moderation.d.ts +9 -0
  133. package/dist/chains/openai_moderation.js +8 -0
  134. package/dist/chains/query_constructor/index.cjs +17 -0
  135. package/dist/chains/query_constructor/index.d.ts +20 -0
  136. package/dist/chains/query_constructor/index.js +17 -0
  137. package/dist/chains/query_constructor/ir.cjs +24 -0
  138. package/dist/chains/query_constructor/ir.d.ts +71 -0
  139. package/dist/chains/query_constructor/ir.js +24 -0
  140. package/dist/chains/query_constructor/parser.cjs +21 -0
  141. package/dist/chains/query_constructor/parser.d.ts +25 -0
  142. package/dist/chains/query_constructor/parser.js +21 -0
  143. package/dist/chains/question_answering/load.cjs +21 -0
  144. package/dist/chains/question_answering/load.d.ts +34 -0
  145. package/dist/chains/question_answering/load.js +21 -0
  146. package/dist/chains/retrieval_qa.cjs +15 -0
  147. package/dist/chains/retrieval_qa.d.ts +16 -0
  148. package/dist/chains/retrieval_qa.js +15 -0
  149. package/dist/chains/router/llm_router.cjs +16 -0
  150. package/dist/chains/router/llm_router.d.ts +24 -0
  151. package/dist/chains/router/llm_router.js +16 -0
  152. package/dist/chains/router/multi_prompt.cjs +19 -0
  153. package/dist/chains/router/multi_prompt.d.ts +19 -0
  154. package/dist/chains/router/multi_prompt.js +19 -0
  155. package/dist/chains/router/multi_retrieval_qa.cjs +22 -0
  156. package/dist/chains/router/multi_retrieval_qa.d.ts +27 -0
  157. package/dist/chains/router/multi_retrieval_qa.js +22 -0
  158. package/dist/chains/router/multi_route.cjs +13 -0
  159. package/dist/chains/router/multi_route.d.ts +26 -0
  160. package/dist/chains/router/multi_route.js +13 -0
  161. package/dist/chains/sequential_chain.cjs +6 -0
  162. package/dist/chains/sequential_chain.d.ts +8 -0
  163. package/dist/chains/sequential_chain.js +6 -0
  164. package/dist/chains/serde.d.ts +58 -0
  165. package/dist/chains/sql_db/sql_db_chain.cjs +16 -0
  166. package/dist/chains/sql_db/sql_db_chain.d.ts +19 -0
  167. package/dist/chains/sql_db/sql_db_chain.js +16 -0
  168. package/dist/chains/summarization/load.d.ts +4 -0
  169. package/dist/chains/transform.cjs +9 -0
  170. package/dist/chains/transform.d.ts +12 -0
  171. package/dist/chains/transform.js +9 -0
  172. package/dist/chains/vector_db_qa.cjs +18 -0
  173. package/dist/chains/vector_db_qa.d.ts +22 -0
  174. package/dist/chains/vector_db_qa.js +18 -0
  175. package/dist/chat_models/anthropic.cjs +27 -4
  176. package/dist/chat_models/anthropic.d.ts +15 -0
  177. package/dist/chat_models/anthropic.js +27 -4
  178. package/dist/chat_models/baiduwenxin.cjs +19 -13
  179. package/dist/chat_models/baiduwenxin.d.ts +19 -3
  180. package/dist/chat_models/baiduwenxin.js +19 -13
  181. package/dist/chat_models/base.cjs +61 -0
  182. package/dist/chat_models/base.d.ts +73 -0
  183. package/dist/chat_models/base.js +61 -0
  184. package/dist/chat_models/googlepalm.cjs +12 -0
  185. package/dist/chat_models/googlepalm.d.ts +8 -0
  186. package/dist/chat_models/googlepalm.js +12 -0
  187. package/dist/chat_models/googlevertexai.cjs +41 -0
  188. package/dist/chat_models/googlevertexai.d.ts +51 -0
  189. package/dist/chat_models/googlevertexai.js +41 -0
  190. package/dist/chat_models/ollama.cjs +14 -0
  191. package/dist/chat_models/ollama.d.ts +16 -0
  192. package/dist/chat_models/ollama.js +14 -0
  193. package/dist/chat_models/openai.cjs +19 -5
  194. package/dist/chat_models/openai.d.ts +7 -5
  195. package/dist/chat_models/openai.js +19 -5
  196. package/dist/document_loaders/base.cjs +10 -0
  197. package/dist/document_loaders/base.d.ts +17 -0
  198. package/dist/document_loaders/base.js +10 -0
  199. package/dist/document_loaders/fs/buffer.cjs +21 -0
  200. package/dist/document_loaders/fs/buffer.d.ts +28 -0
  201. package/dist/document_loaders/fs/buffer.js +21 -0
  202. package/dist/document_loaders/fs/csv.cjs +19 -0
  203. package/dist/document_loaders/fs/csv.d.ts +19 -0
  204. package/dist/document_loaders/fs/csv.js +19 -0
  205. package/dist/document_loaders/fs/directory.cjs +21 -0
  206. package/dist/document_loaders/fs/directory.d.ts +29 -0
  207. package/dist/document_loaders/fs/directory.js +21 -0
  208. package/dist/document_loaders/fs/docx.cjs +16 -0
  209. package/dist/document_loaders/fs/docx.d.ts +16 -0
  210. package/dist/document_loaders/fs/docx.js +16 -0
  211. package/dist/document_loaders/fs/epub.cjs +16 -0
  212. package/dist/document_loaders/fs/epub.d.ts +16 -0
  213. package/dist/document_loaders/fs/epub.js +16 -0
  214. package/dist/document_loaders/fs/json.cjs +40 -0
  215. package/dist/document_loaders/fs/json.d.ts +40 -0
  216. package/dist/document_loaders/fs/json.js +40 -0
  217. package/dist/document_loaders/fs/notion.cjs +6 -0
  218. package/dist/document_loaders/fs/notion.d.ts +6 -0
  219. package/dist/document_loaders/fs/notion.js +6 -0
  220. package/dist/document_loaders/fs/pdf.cjs +21 -0
  221. package/dist/document_loaders/fs/pdf.d.ts +21 -0
  222. package/dist/document_loaders/fs/pdf.js +21 -0
  223. package/dist/document_loaders/fs/srt.cjs +19 -0
  224. package/dist/document_loaders/fs/srt.d.ts +19 -0
  225. package/dist/document_loaders/fs/srt.js +19 -0
  226. package/dist/document_loaders/fs/text.cjs +34 -0
  227. package/dist/document_loaders/fs/text.d.ts +34 -0
  228. package/dist/document_loaders/fs/text.js +34 -0
  229. package/dist/document_loaders/fs/unstructured.cjs +14 -0
  230. package/dist/document_loaders/fs/unstructured.d.ts +26 -0
  231. package/dist/document_loaders/fs/unstructured.js +14 -0
  232. package/dist/document_loaders/web/apify_dataset.cjs +11 -0
  233. package/dist/document_loaders/web/apify_dataset.d.ts +15 -0
  234. package/dist/document_loaders/web/apify_dataset.js +11 -0
  235. package/dist/document_loaders/web/azure_blob_storage_container.cjs +13 -0
  236. package/dist/document_loaders/web/azure_blob_storage_container.d.ts +26 -0
  237. package/dist/document_loaders/web/azure_blob_storage_container.js +13 -0
  238. package/dist/document_loaders/web/azure_blob_storage_file.cjs +12 -0
  239. package/dist/document_loaders/web/azure_blob_storage_file.d.ts +21 -0
  240. package/dist/document_loaders/web/azure_blob_storage_file.js +12 -0
  241. package/dist/document_loaders/web/cheerio.cjs +21 -0
  242. package/dist/document_loaders/web/cheerio.d.ts +26 -0
  243. package/dist/document_loaders/web/cheerio.js +21 -0
  244. package/dist/document_loaders/web/college_confidential.cjs +11 -0
  245. package/dist/document_loaders/web/college_confidential.d.ts +11 -0
  246. package/dist/document_loaders/web/college_confidential.js +11 -0
  247. package/dist/document_loaders/web/confluence.cjs +23 -0
  248. package/dist/document_loaders/web/confluence.d.ts +33 -0
  249. package/dist/document_loaders/web/confluence.js +23 -0
  250. package/dist/document_loaders/web/figma.cjs +21 -0
  251. package/dist/document_loaders/web/figma.d.ts +32 -0
  252. package/dist/document_loaders/web/figma.js +21 -0
  253. package/dist/document_loaders/web/gitbook.cjs +33 -0
  254. package/dist/document_loaders/web/gitbook.d.ts +38 -0
  255. package/dist/document_loaders/web/gitbook.js +33 -0
  256. package/dist/document_loaders/web/github.cjs +50 -0
  257. package/dist/document_loaders/web/github.d.ts +53 -0
  258. package/dist/document_loaders/web/github.js +50 -0
  259. package/dist/document_loaders/web/hn.cjs +31 -0
  260. package/dist/document_loaders/web/hn.d.ts +31 -0
  261. package/dist/document_loaders/web/hn.js +31 -0
  262. package/dist/document_loaders/web/imsdb.cjs +14 -0
  263. package/dist/document_loaders/web/imsdb.d.ts +14 -0
  264. package/dist/document_loaders/web/imsdb.js +14 -0
  265. package/dist/document_loaders/web/notionapi.cjs +39 -0
  266. package/dist/document_loaders/web/notionapi.d.ts +43 -0
  267. package/dist/document_loaders/web/notionapi.js +39 -0
  268. package/dist/document_loaders/web/notiondb.cjs +19 -0
  269. package/dist/document_loaders/web/notiondb.d.ts +24 -0
  270. package/dist/document_loaders/web/notiondb.js +19 -0
  271. package/dist/document_loaders/web/playwright.cjs +22 -0
  272. package/dist/document_loaders/web/playwright.d.ts +27 -0
  273. package/dist/document_loaders/web/playwright.js +22 -0
  274. package/dist/document_loaders/web/puppeteer.cjs +20 -0
  275. package/dist/document_loaders/web/puppeteer.d.ts +25 -0
  276. package/dist/document_loaders/web/puppeteer.js +20 -0
  277. package/dist/document_loaders/web/s3.cjs +9 -0
  278. package/dist/document_loaders/web/s3.d.ts +21 -0
  279. package/dist/document_loaders/web/s3.js +9 -0
  280. package/dist/document_loaders/web/serpapi.cjs +4 -0
  281. package/dist/document_loaders/web/serpapi.d.ts +8 -0
  282. package/dist/document_loaders/web/serpapi.js +4 -0
  283. package/dist/document_loaders/web/sonix_audio.cjs +10 -0
  284. package/dist/document_loaders/web/sonix_audio.d.ts +10 -0
  285. package/dist/document_loaders/web/sonix_audio.js +10 -0
  286. package/dist/document_loaders/web/sort_xyz_blockchain.cjs +10 -0
  287. package/dist/document_loaders/web/sort_xyz_blockchain.d.ts +17 -0
  288. package/dist/document_loaders/web/sort_xyz_blockchain.js +10 -0
  289. package/dist/document_loaders/web/youtube.cjs +23 -0
  290. package/dist/document_loaders/web/youtube.d.ts +27 -0
  291. package/dist/document_loaders/web/youtube.js +23 -0
  292. package/dist/document_transformers/html_to_text.cjs +6 -0
  293. package/dist/document_transformers/html_to_text.d.ts +4 -0
  294. package/dist/document_transformers/html_to_text.js +6 -0
  295. package/dist/document_transformers/mozilla_readability.cjs +7 -0
  296. package/dist/document_transformers/mozilla_readability.d.ts +5 -0
  297. package/dist/document_transformers/mozilla_readability.js +7 -0
  298. package/dist/document_transformers/openai_functions.cjs +6 -0
  299. package/dist/document_transformers/openai_functions.d.ts +4 -0
  300. package/dist/document_transformers/openai_functions.js +6 -0
  301. package/dist/embeddings/base.cjs +4 -0
  302. package/dist/embeddings/base.d.ts +21 -0
  303. package/dist/embeddings/base.js +4 -0
  304. package/dist/embeddings/cache_backed.d.ts +4 -0
  305. package/dist/embeddings/cohere.d.ts +4 -0
  306. package/dist/embeddings/fake.cjs +33 -0
  307. package/dist/embeddings/fake.d.ts +37 -0
  308. package/dist/embeddings/fake.js +33 -0
  309. package/dist/embeddings/googlepalm.cjs +18 -0
  310. package/dist/embeddings/googlepalm.d.ts +22 -0
  311. package/dist/embeddings/googlepalm.js +18 -0
  312. package/dist/embeddings/googlevertexai.cjs +15 -0
  313. package/dist/embeddings/googlevertexai.d.ts +20 -0
  314. package/dist/embeddings/googlevertexai.js +15 -0
  315. package/dist/embeddings/hf.cjs +20 -0
  316. package/dist/embeddings/hf.d.ts +24 -0
  317. package/dist/embeddings/hf.js +20 -0
  318. package/dist/embeddings/openai.cjs +25 -0
  319. package/dist/embeddings/openai.d.ts +29 -0
  320. package/dist/embeddings/openai.js +25 -0
  321. package/dist/embeddings/tensorflow.cjs +27 -0
  322. package/dist/embeddings/tensorflow.d.ts +31 -0
  323. package/dist/embeddings/tensorflow.js +27 -0
  324. package/dist/evaluation/qa/eval_chain.cjs +3 -0
  325. package/dist/evaluation/qa/eval_chain.d.ts +1 -0
  326. package/dist/evaluation/qa/eval_chain.js +3 -0
  327. package/dist/experimental/autogpt/agent.cjs +21 -0
  328. package/dist/experimental/autogpt/agent.d.ts +24 -0
  329. package/dist/experimental/autogpt/agent.js +21 -0
  330. package/dist/experimental/autogpt/output_parser.cjs +24 -0
  331. package/dist/experimental/autogpt/output_parser.d.ts +24 -0
  332. package/dist/experimental/autogpt/output_parser.js +24 -0
  333. package/dist/experimental/autogpt/prompt.cjs +25 -0
  334. package/dist/experimental/autogpt/prompt.d.ts +28 -0
  335. package/dist/experimental/autogpt/prompt.js +25 -0
  336. package/dist/experimental/autogpt/prompt_generator.cjs +32 -0
  337. package/dist/experimental/autogpt/prompt_generator.d.ts +32 -0
  338. package/dist/experimental/autogpt/prompt_generator.js +32 -0
  339. package/dist/experimental/autogpt/schema.d.ts +11 -0
  340. package/dist/experimental/babyagi/agent.cjs +68 -0
  341. package/dist/experimental/babyagi/agent.d.ts +76 -0
  342. package/dist/experimental/babyagi/agent.js +68 -0
  343. package/dist/experimental/babyagi/task_creation.cjs +13 -0
  344. package/dist/experimental/babyagi/task_creation.d.ts +11 -0
  345. package/dist/experimental/babyagi/task_creation.js +13 -0
  346. package/dist/experimental/babyagi/task_execution.cjs +12 -0
  347. package/dist/experimental/babyagi/task_execution.d.ts +10 -0
  348. package/dist/experimental/babyagi/task_execution.js +12 -0
  349. package/dist/experimental/babyagi/task_prioritization.cjs +11 -0
  350. package/dist/experimental/babyagi/task_prioritization.d.ts +9 -0
  351. package/dist/experimental/babyagi/task_prioritization.js +11 -0
  352. package/dist/experimental/generative_agents/generative_agent.cjs +77 -0
  353. package/dist/experimental/generative_agents/generative_agent.d.ts +80 -0
  354. package/dist/experimental/generative_agents/generative_agent.js +77 -0
  355. package/dist/experimental/generative_agents/generative_agent_memory.cjs +116 -0
  356. package/dist/experimental/generative_agents/generative_agent_memory.d.ts +114 -0
  357. package/dist/experimental/generative_agents/generative_agent_memory.js +116 -0
  358. package/dist/experimental/multimodal_embeddings/googlevertexai.cjs +46 -0
  359. package/dist/experimental/multimodal_embeddings/googlevertexai.d.ts +58 -0
  360. package/dist/experimental/multimodal_embeddings/googlevertexai.js +46 -0
  361. package/dist/experimental/plan_and_execute/agent_executor.cjs +35 -0
  362. package/dist/experimental/plan_and_execute/agent_executor.d.ts +38 -0
  363. package/dist/experimental/plan_and_execute/agent_executor.js +35 -0
  364. package/dist/experimental/plan_and_execute/base.cjs +26 -0
  365. package/dist/experimental/plan_and_execute/base.d.ts +38 -0
  366. package/dist/experimental/plan_and_execute/base.js +26 -0
  367. package/dist/experimental/plan_and_execute/outputParser.cjs +18 -0
  368. package/dist/experimental/plan_and_execute/outputParser.d.ts +18 -0
  369. package/dist/experimental/plan_and_execute/outputParser.js +18 -0
  370. package/dist/llms/ai21.cjs +13 -0
  371. package/dist/llms/ai21.d.ts +19 -0
  372. package/dist/llms/ai21.js +13 -0
  373. package/dist/llms/aleph_alpha.cjs +10 -0
  374. package/dist/llms/aleph_alpha.d.ts +13 -0
  375. package/dist/llms/aleph_alpha.js +10 -0
  376. package/dist/llms/base.cjs +32 -0
  377. package/dist/llms/base.d.ts +32 -0
  378. package/dist/llms/base.js +32 -0
  379. package/dist/llms/bedrock.cjs +21 -0
  380. package/dist/llms/bedrock.d.ts +9 -0
  381. package/dist/llms/bedrock.js +21 -0
  382. package/dist/llms/cohere.cjs +7 -0
  383. package/dist/llms/cohere.d.ts +8 -0
  384. package/dist/llms/cohere.js +7 -0
  385. package/dist/llms/googlevertexai.cjs +23 -0
  386. package/dist/llms/googlevertexai.d.ts +38 -0
  387. package/dist/llms/googlevertexai.js +23 -0
  388. package/dist/llms/hf.cjs +4 -0
  389. package/dist/llms/hf.d.ts +8 -0
  390. package/dist/llms/hf.js +4 -0
  391. package/dist/llms/ollama.cjs +7 -0
  392. package/dist/llms/ollama.d.ts +5 -0
  393. package/dist/llms/ollama.js +7 -0
  394. package/dist/llms/openai-chat.cjs +35 -4
  395. package/dist/llms/openai-chat.d.ts +28 -4
  396. package/dist/llms/openai-chat.js +35 -4
  397. package/dist/llms/openai.cjs +26 -6
  398. package/dist/llms/openai.d.ts +11 -3
  399. package/dist/llms/openai.js +26 -6
  400. package/dist/llms/replicate.cjs +9 -0
  401. package/dist/llms/replicate.d.ts +12 -0
  402. package/dist/llms/replicate.js +9 -0
  403. package/dist/llms/sagemaker_endpoint.cjs +11 -0
  404. package/dist/llms/sagemaker_endpoint.d.ts +17 -0
  405. package/dist/llms/sagemaker_endpoint.js +11 -0
  406. package/dist/load/index.cjs +7 -1
  407. package/dist/load/index.js +7 -1
  408. package/dist/load/serializable.cjs +42 -3
  409. package/dist/load/serializable.d.ts +16 -0
  410. package/dist/load/serializable.js +40 -2
  411. package/dist/memory/base.cjs +11 -0
  412. package/dist/memory/base.d.ts +40 -0
  413. package/dist/memory/base.js +11 -0
  414. package/dist/memory/buffer_memory.cjs +19 -0
  415. package/dist/memory/buffer_memory.d.ts +22 -0
  416. package/dist/memory/buffer_memory.js +19 -0
  417. package/dist/memory/buffer_window_memory.cjs +15 -0
  418. package/dist/memory/buffer_window_memory.d.ts +18 -0
  419. package/dist/memory/buffer_window_memory.js +15 -0
  420. package/dist/memory/chat_memory.cjs +16 -0
  421. package/dist/memory/chat_memory.d.ts +19 -0
  422. package/dist/memory/chat_memory.js +16 -0
  423. package/dist/memory/combined_memory.cjs +28 -0
  424. package/dist/memory/combined_memory.d.ts +33 -0
  425. package/dist/memory/combined_memory.js +28 -0
  426. package/dist/memory/entity_memory.cjs +21 -0
  427. package/dist/memory/entity_memory.d.ts +24 -0
  428. package/dist/memory/entity_memory.js +21 -0
  429. package/dist/memory/motorhead_memory.cjs +25 -0
  430. package/dist/memory/motorhead_memory.d.ts +29 -0
  431. package/dist/memory/motorhead_memory.js +25 -0
  432. package/dist/memory/stores/entity/in_memory.cjs +29 -0
  433. package/dist/memory/stores/entity/in_memory.d.ts +29 -0
  434. package/dist/memory/stores/entity/in_memory.js +29 -0
  435. package/dist/memory/summary.cjs +31 -0
  436. package/dist/memory/summary.d.ts +39 -0
  437. package/dist/memory/summary.js +31 -0
  438. package/dist/memory/summary_buffer.cjs +33 -0
  439. package/dist/memory/summary_buffer.d.ts +37 -0
  440. package/dist/memory/summary_buffer.js +33 -0
  441. package/dist/memory/vector_store.cjs +22 -0
  442. package/dist/memory/vector_store.d.ts +26 -0
  443. package/dist/memory/vector_store.js +22 -0
  444. package/dist/memory/zep.cjs +22 -0
  445. package/dist/memory/zep.d.ts +27 -0
  446. package/dist/memory/zep.js +22 -0
  447. package/dist/output_parsers/combining.cjs +15 -0
  448. package/dist/output_parsers/combining.d.ts +19 -0
  449. package/dist/output_parsers/combining.js +15 -0
  450. package/dist/output_parsers/expression.cjs +12 -0
  451. package/dist/output_parsers/expression.d.ts +12 -0
  452. package/dist/output_parsers/expression.js +12 -0
  453. package/dist/output_parsers/expression_type_handlers/array_literal_expression_handler.cjs +18 -0
  454. package/dist/output_parsers/expression_type_handlers/array_literal_expression_handler.d.ts +18 -0
  455. package/dist/output_parsers/expression_type_handlers/array_literal_expression_handler.js +18 -0
  456. package/dist/output_parsers/expression_type_handlers/base.cjs +68 -0
  457. package/dist/output_parsers/expression_type_handlers/base.d.ts +79 -0
  458. package/dist/output_parsers/expression_type_handlers/base.js +68 -0
  459. package/dist/output_parsers/expression_type_handlers/boolean_literal_handler.cjs +18 -0
  460. package/dist/output_parsers/expression_type_handlers/boolean_literal_handler.d.ts +18 -0
  461. package/dist/output_parsers/expression_type_handlers/boolean_literal_handler.js +18 -0
  462. package/dist/output_parsers/expression_type_handlers/call_expression_handler.cjs +22 -0
  463. package/dist/output_parsers/expression_type_handlers/call_expression_handler.d.ts +22 -0
  464. package/dist/output_parsers/expression_type_handlers/call_expression_handler.js +22 -0
  465. package/dist/output_parsers/expression_type_handlers/factory.cjs +20 -0
  466. package/dist/output_parsers/expression_type_handlers/factory.d.ts +20 -0
  467. package/dist/output_parsers/expression_type_handlers/factory.js +20 -0
  468. package/dist/output_parsers/expression_type_handlers/identifier_handler.cjs +19 -0
  469. package/dist/output_parsers/expression_type_handlers/identifier_handler.d.ts +19 -0
  470. package/dist/output_parsers/expression_type_handlers/identifier_handler.js +19 -0
  471. package/dist/output_parsers/expression_type_handlers/member_expression_handler.cjs +17 -0
  472. package/dist/output_parsers/expression_type_handlers/member_expression_handler.d.ts +17 -0
  473. package/dist/output_parsers/expression_type_handlers/member_expression_handler.js +17 -0
  474. package/dist/output_parsers/expression_type_handlers/numeric_literal_handler.cjs +16 -0
  475. package/dist/output_parsers/expression_type_handlers/numeric_literal_handler.d.ts +16 -0
  476. package/dist/output_parsers/expression_type_handlers/numeric_literal_handler.js +16 -0
  477. package/dist/output_parsers/expression_type_handlers/object_literal_expression_handler.cjs +16 -0
  478. package/dist/output_parsers/expression_type_handlers/object_literal_expression_handler.d.ts +16 -0
  479. package/dist/output_parsers/expression_type_handlers/object_literal_expression_handler.js +16 -0
  480. package/dist/output_parsers/expression_type_handlers/property_assignment_handler.cjs +17 -0
  481. package/dist/output_parsers/expression_type_handlers/property_assignment_handler.d.ts +17 -0
  482. package/dist/output_parsers/expression_type_handlers/property_assignment_handler.js +17 -0
  483. package/dist/output_parsers/expression_type_handlers/string_literal_handler.cjs +16 -0
  484. package/dist/output_parsers/expression_type_handlers/string_literal_handler.d.ts +16 -0
  485. package/dist/output_parsers/expression_type_handlers/string_literal_handler.js +16 -0
  486. package/dist/output_parsers/expression_type_handlers/types.d.ts +50 -0
  487. package/dist/output_parsers/fix.cjs +28 -0
  488. package/dist/output_parsers/fix.d.ts +26 -0
  489. package/dist/output_parsers/fix.js +28 -0
  490. package/dist/output_parsers/list.cjs +27 -0
  491. package/dist/output_parsers/list.d.ts +25 -0
  492. package/dist/output_parsers/list.js +27 -0
  493. package/dist/output_parsers/noop.cjs +21 -0
  494. package/dist/output_parsers/noop.d.ts +19 -0
  495. package/dist/output_parsers/noop.js +21 -0
  496. package/dist/output_parsers/openai_functions.cjs +40 -0
  497. package/dist/output_parsers/openai_functions.d.ts +37 -0
  498. package/dist/output_parsers/openai_functions.js +40 -0
  499. package/dist/output_parsers/regex.cjs +15 -0
  500. package/dist/output_parsers/regex.d.ts +16 -0
  501. package/dist/output_parsers/regex.js +15 -0
  502. package/dist/output_parsers/router.cjs +15 -0
  503. package/dist/output_parsers/router.d.ts +19 -0
  504. package/dist/output_parsers/router.js +15 -0
  505. package/dist/output_parsers/structured.cjs +36 -0
  506. package/dist/output_parsers/structured.d.ts +38 -0
  507. package/dist/output_parsers/structured.js +36 -0
  508. package/dist/prompts/base.cjs +26 -0
  509. package/dist/prompts/base.d.ts +36 -0
  510. package/dist/prompts/base.js +26 -0
  511. package/dist/prompts/chat.cjs +69 -0
  512. package/dist/prompts/chat.d.ts +76 -0
  513. package/dist/prompts/chat.js +69 -0
  514. package/dist/prompts/few_shot.cjs +5 -0
  515. package/dist/prompts/few_shot.d.ts +5 -0
  516. package/dist/prompts/few_shot.js +5 -0
  517. package/dist/prompts/pipeline.cjs +29 -0
  518. package/dist/prompts/pipeline.d.ts +35 -0
  519. package/dist/prompts/pipeline.js +29 -0
  520. package/dist/prompts/prompt.cjs +13 -0
  521. package/dist/prompts/prompt.d.ts +11 -0
  522. package/dist/prompts/prompt.js +13 -0
  523. package/dist/prompts/selectors/LengthBasedExampleSelector.cjs +32 -0
  524. package/dist/prompts/selectors/LengthBasedExampleSelector.d.ts +33 -0
  525. package/dist/prompts/selectors/LengthBasedExampleSelector.js +32 -0
  526. package/dist/prompts/selectors/SemanticSimilarityExampleSelector.cjs +31 -0
  527. package/dist/prompts/selectors/SemanticSimilarityExampleSelector.d.ts +35 -0
  528. package/dist/prompts/selectors/SemanticSimilarityExampleSelector.js +31 -0
  529. package/dist/prompts/selectors/conditional.cjs +30 -0
  530. package/dist/prompts/selectors/conditional.d.ts +37 -0
  531. package/dist/prompts/selectors/conditional.js +30 -0
  532. package/dist/prompts/serde.d.ts +24 -0
  533. package/dist/prompts/template.d.ts +17 -0
  534. package/dist/retrievers/amazon_kendra.cjs +65 -0
  535. package/dist/retrievers/amazon_kendra.d.ts +67 -0
  536. package/dist/retrievers/amazon_kendra.js +65 -0
  537. package/dist/retrievers/contextual_compression.cjs +8 -0
  538. package/dist/retrievers/contextual_compression.d.ts +11 -0
  539. package/dist/retrievers/contextual_compression.js +8 -0
  540. package/dist/retrievers/databerry.cjs +8 -0
  541. package/dist/retrievers/databerry.d.ts +10 -0
  542. package/dist/retrievers/databerry.js +8 -0
  543. package/dist/retrievers/document_compressors/chain_extract.cjs +18 -0
  544. package/dist/retrievers/document_compressors/chain_extract.d.ts +22 -0
  545. package/dist/retrievers/document_compressors/chain_extract.js +18 -0
  546. package/dist/retrievers/document_compressors/index.d.ts +9 -0
  547. package/dist/retrievers/hyde.cjs +12 -0
  548. package/dist/retrievers/hyde.d.ts +18 -0
  549. package/dist/retrievers/hyde.js +12 -0
  550. package/dist/retrievers/metal.cjs +10 -0
  551. package/dist/retrievers/metal.d.ts +13 -0
  552. package/dist/retrievers/metal.js +10 -0
  553. package/dist/retrievers/parent_document.cjs +20 -1
  554. package/dist/retrievers/parent_document.d.ts +16 -0
  555. package/dist/retrievers/parent_document.js +20 -1
  556. package/dist/retrievers/remote/base.cjs +4 -0
  557. package/dist/retrievers/remote/base.d.ts +28 -0
  558. package/dist/retrievers/remote/base.js +4 -0
  559. package/dist/retrievers/remote/chatgpt-plugin.cjs +17 -0
  560. package/dist/retrievers/remote/chatgpt-plugin.d.ts +21 -0
  561. package/dist/retrievers/remote/chatgpt-plugin.js +17 -0
  562. package/dist/retrievers/remote/remote-retriever.cjs +20 -0
  563. package/dist/retrievers/remote/remote-retriever.d.ts +20 -0
  564. package/dist/retrievers/remote/remote-retriever.js +20 -0
  565. package/dist/retrievers/self_query/base.cjs +28 -0
  566. package/dist/retrievers/self_query/base.d.ts +45 -0
  567. package/dist/retrievers/self_query/base.js +28 -0
  568. package/dist/retrievers/self_query/chroma.cjs +6 -0
  569. package/dist/retrievers/self_query/chroma.d.ts +6 -0
  570. package/dist/retrievers/self_query/chroma.js +6 -0
  571. package/dist/retrievers/self_query/functional.cjs +40 -0
  572. package/dist/retrievers/self_query/functional.d.ts +49 -0
  573. package/dist/retrievers/self_query/functional.js +40 -0
  574. package/dist/retrievers/self_query/index.cjs +17 -0
  575. package/dist/retrievers/self_query/index.d.ts +19 -0
  576. package/dist/retrievers/self_query/index.js +17 -0
  577. package/dist/retrievers/self_query/pinecone.cjs +7 -0
  578. package/dist/retrievers/self_query/pinecone.d.ts +7 -0
  579. package/dist/retrievers/self_query/pinecone.js +7 -0
  580. package/dist/retrievers/self_query/supabase.cjs +91 -7
  581. package/dist/retrievers/self_query/supabase.d.ts +69 -2
  582. package/dist/retrievers/self_query/supabase.js +92 -8
  583. package/dist/retrievers/self_query/supabase_utils.cjs +255 -0
  584. package/dist/retrievers/self_query/supabase_utils.d.ts +102 -0
  585. package/dist/retrievers/self_query/supabase_utils.js +250 -0
  586. package/dist/retrievers/self_query/utils.cjs +36 -3
  587. package/dist/retrievers/self_query/utils.d.ts +20 -0
  588. package/dist/retrievers/self_query/utils.js +32 -2
  589. package/dist/retrievers/self_query/weaviate.cjs +45 -14
  590. package/dist/retrievers/self_query/weaviate.d.ts +42 -0
  591. package/dist/retrievers/self_query/weaviate.js +43 -12
  592. package/dist/retrievers/supabase.cjs +33 -0
  593. package/dist/retrievers/supabase.d.ts +31 -0
  594. package/dist/retrievers/supabase.js +33 -0
  595. package/dist/retrievers/time_weighted.cjs +11 -0
  596. package/dist/retrievers/time_weighted.d.ts +13 -0
  597. package/dist/retrievers/time_weighted.js +11 -0
  598. package/dist/retrievers/vespa.cjs +21 -0
  599. package/dist/retrievers/vespa.d.ts +19 -0
  600. package/dist/retrievers/vespa.js +21 -0
  601. package/dist/retrievers/zep.cjs +7 -0
  602. package/dist/retrievers/zep.d.ts +9 -0
  603. package/dist/retrievers/zep.js +7 -0
  604. package/dist/schema/document.cjs +7 -0
  605. package/dist/schema/document.d.ts +7 -0
  606. package/dist/schema/document.js +7 -0
  607. package/dist/schema/index.cjs +100 -0
  608. package/dist/schema/index.d.ts +80 -0
  609. package/dist/schema/index.js +100 -0
  610. package/dist/schema/output_parser.cjs +49 -0
  611. package/dist/schema/output_parser.d.ts +53 -0
  612. package/dist/schema/output_parser.js +49 -0
  613. package/dist/schema/query_constructor.cjs +5 -0
  614. package/dist/schema/query_constructor.d.ts +5 -0
  615. package/dist/schema/query_constructor.js +5 -0
  616. package/dist/schema/retriever.cjs +18 -0
  617. package/dist/schema/retriever.d.ts +18 -0
  618. package/dist/schema/retriever.js +18 -0
  619. package/dist/schema/runnable.cjs +25 -7
  620. package/dist/schema/runnable.d.ts +6 -0
  621. package/dist/schema/runnable.js +25 -7
  622. package/dist/schema/storage.d.ts +20 -0
  623. package/dist/storage/encoder_backed.cjs +27 -0
  624. package/dist/storage/encoder_backed.d.ts +27 -0
  625. package/dist/storage/encoder_backed.js +27 -0
  626. package/dist/storage/in_memory.cjs +25 -0
  627. package/dist/storage/in_memory.d.ts +25 -0
  628. package/dist/storage/in_memory.js +25 -0
  629. package/dist/storage/ioredis.cjs +25 -0
  630. package/dist/storage/ioredis.d.ts +25 -0
  631. package/dist/storage/ioredis.js +25 -0
  632. package/dist/stores/doc/gcs.cjs +28 -0
  633. package/dist/stores/doc/gcs.d.ts +33 -0
  634. package/dist/stores/doc/gcs.js +28 -0
  635. package/dist/stores/doc/in_memory.cjs +27 -0
  636. package/dist/stores/doc/in_memory.d.ts +27 -0
  637. package/dist/stores/doc/in_memory.js +27 -0
  638. package/dist/stores/file/in_memory.cjs +20 -0
  639. package/dist/stores/file/in_memory.d.ts +20 -0
  640. package/dist/stores/file/in_memory.js +20 -0
  641. package/dist/stores/file/node.cjs +15 -0
  642. package/dist/stores/file/node.d.ts +15 -0
  643. package/dist/stores/file/node.js +15 -0
  644. package/dist/stores/message/dynamodb.cjs +17 -0
  645. package/dist/stores/message/dynamodb.d.ts +23 -0
  646. package/dist/stores/message/dynamodb.js +17 -0
  647. package/dist/stores/message/firestore.cjs +19 -0
  648. package/dist/stores/message/firestore.d.ts +24 -0
  649. package/dist/stores/message/firestore.js +19 -0
  650. package/dist/stores/message/in_memory.cjs +19 -0
  651. package/dist/stores/message/in_memory.d.ts +19 -0
  652. package/dist/stores/message/in_memory.js +19 -0
  653. package/dist/stores/message/ioredis.cjs +17 -0
  654. package/dist/stores/message/ioredis.d.ts +22 -0
  655. package/dist/stores/message/ioredis.js +17 -0
  656. package/dist/stores/message/momento.cjs +18 -0
  657. package/dist/stores/message/momento.d.ts +18 -0
  658. package/dist/stores/message/momento.js +18 -0
  659. package/dist/stores/message/planetscale.cjs +26 -0
  660. package/dist/stores/message/planetscale.d.ts +30 -0
  661. package/dist/stores/message/planetscale.js +26 -0
  662. package/dist/stores/message/redis.cjs +24 -0
  663. package/dist/stores/message/redis.d.ts +27 -0
  664. package/dist/stores/message/redis.js +24 -0
  665. package/dist/stores/message/upstash_redis.cjs +17 -0
  666. package/dist/stores/message/upstash_redis.d.ts +21 -0
  667. package/dist/stores/message/upstash_redis.js +17 -0
  668. package/dist/stores/message/utils.cjs +21 -0
  669. package/dist/stores/message/utils.d.ts +21 -0
  670. package/dist/stores/message/utils.js +21 -0
  671. package/dist/stores/message/xata.cjs +25 -0
  672. package/dist/stores/message/xata.d.ts +29 -0
  673. package/dist/stores/message/xata.js +25 -0
  674. package/dist/text_splitter.cjs +9 -0
  675. package/dist/text_splitter.d.ts +3 -0
  676. package/dist/text_splitter.js +9 -0
  677. package/dist/tools/IFTTTWebhook.cjs +9 -0
  678. package/dist/tools/IFTTTWebhook.d.ts +7 -0
  679. package/dist/tools/IFTTTWebhook.js +9 -0
  680. package/dist/tools/aiplugin.cjs +15 -0
  681. package/dist/tools/aiplugin.d.ts +17 -0
  682. package/dist/tools/aiplugin.js +15 -0
  683. package/dist/tools/aws_lambda.cjs +9 -0
  684. package/dist/tools/aws_lambda.d.ts +7 -0
  685. package/dist/tools/aws_lambda.js +9 -0
  686. package/dist/tools/aws_sfn.cjs +28 -0
  687. package/dist/tools/aws_sfn.d.ts +22 -0
  688. package/dist/tools/aws_sfn.js +28 -0
  689. package/dist/tools/base.cjs +22 -0
  690. package/dist/tools/base.d.ts +25 -0
  691. package/dist/tools/base.js +22 -0
  692. package/dist/tools/bingserpapi.cjs +13 -0
  693. package/dist/tools/bingserpapi.d.ts +11 -0
  694. package/dist/tools/bingserpapi.js +13 -0
  695. package/dist/tools/brave_search.cjs +9 -0
  696. package/dist/tools/brave_search.d.ts +11 -0
  697. package/dist/tools/brave_search.js +9 -0
  698. package/dist/tools/calculator.cjs +7 -0
  699. package/dist/tools/calculator.d.ts +5 -0
  700. package/dist/tools/calculator.js +7 -0
  701. package/dist/tools/chain.cjs +9 -0
  702. package/dist/tools/chain.d.ts +12 -0
  703. package/dist/tools/chain.js +9 -0
  704. package/dist/tools/convert_to_openai.cjs +6 -0
  705. package/dist/tools/convert_to_openai.d.ts +6 -0
  706. package/dist/tools/convert_to_openai.js +6 -0
  707. package/dist/tools/dadjokeapi.cjs +9 -0
  708. package/dist/tools/dadjokeapi.d.ts +7 -0
  709. package/dist/tools/dadjokeapi.js +9 -0
  710. package/dist/tools/dataforseo_api_search.cjs +3 -0
  711. package/dist/tools/dataforseo_api_search.d.ts +10 -0
  712. package/dist/tools/dataforseo_api_search.js +3 -0
  713. package/dist/tools/dynamic.cjs +12 -0
  714. package/dist/tools/dynamic.d.ts +14 -0
  715. package/dist/tools/dynamic.js +12 -0
  716. package/dist/tools/fs.cjs +14 -0
  717. package/dist/tools/fs.d.ts +16 -0
  718. package/dist/tools/fs.js +14 -0
  719. package/dist/tools/google_custom_search.cjs +8 -0
  720. package/dist/tools/google_custom_search.d.ts +9 -0
  721. package/dist/tools/google_custom_search.js +8 -0
  722. package/dist/tools/json.cjs +29 -1
  723. package/dist/tools/json.d.ts +24 -0
  724. package/dist/tools/json.js +29 -1
  725. package/dist/tools/requests.cjs +19 -2
  726. package/dist/tools/requests.d.ts +17 -0
  727. package/dist/tools/requests.js +19 -2
  728. package/dist/tools/searxng_search.cjs +10 -0
  729. package/dist/tools/searxng_search.d.ts +11 -0
  730. package/dist/tools/searxng_search.js +10 -0
  731. package/dist/tools/serpapi.cjs +10 -0
  732. package/dist/tools/serpapi.d.ts +8 -0
  733. package/dist/tools/serpapi.js +10 -0
  734. package/dist/tools/serper.cjs +8 -0
  735. package/dist/tools/serper.d.ts +10 -0
  736. package/dist/tools/serper.js +8 -0
  737. package/dist/tools/sql.cjs +37 -0
  738. package/dist/tools/sql.d.ts +36 -0
  739. package/dist/tools/sql.js +37 -0
  740. package/dist/tools/vectorstore.cjs +14 -0
  741. package/dist/tools/vectorstore.d.ts +15 -0
  742. package/dist/tools/vectorstore.js +14 -0
  743. package/dist/tools/webbrowser.cjs +9 -0
  744. package/dist/tools/webbrowser.d.ts +13 -0
  745. package/dist/tools/webbrowser.js +9 -0
  746. package/dist/tools/wikipedia_query_run.cjs +19 -0
  747. package/dist/tools/wikipedia_query_run.d.ts +25 -0
  748. package/dist/tools/wikipedia_query_run.js +19 -0
  749. package/dist/tools/zapier.cjs +15 -0
  750. package/dist/tools/zapier.d.ts +13 -0
  751. package/dist/tools/zapier.js +15 -0
  752. package/dist/vectorstores/analyticdb.cjs +76 -0
  753. package/dist/vectorstores/analyticdb.d.ts +80 -0
  754. package/dist/vectorstores/analyticdb.js +76 -0
  755. package/dist/vectorstores/base.cjs +16 -0
  756. package/dist/vectorstores/base.d.ts +27 -0
  757. package/dist/vectorstores/base.js +16 -0
  758. package/dist/vectorstores/chroma.cjs +73 -0
  759. package/dist/vectorstores/chroma.d.ts +84 -0
  760. package/dist/vectorstores/chroma.js +73 -0
  761. package/dist/vectorstores/elasticsearch.cjs +74 -0
  762. package/dist/vectorstores/elasticsearch.d.ts +90 -0
  763. package/dist/vectorstores/elasticsearch.js +74 -0
  764. package/dist/vectorstores/faiss.cjs +65 -0
  765. package/dist/vectorstores/faiss.d.ts +69 -0
  766. package/dist/vectorstores/faiss.js +65 -0
  767. package/dist/vectorstores/hnswlib.cjs +71 -0
  768. package/dist/vectorstores/hnswlib.d.ts +80 -0
  769. package/dist/vectorstores/hnswlib.js +71 -0
  770. package/dist/vectorstores/lancedb.cjs +38 -0
  771. package/dist/vectorstores/lancedb.d.ts +42 -0
  772. package/dist/vectorstores/lancedb.js +38 -0
  773. package/dist/vectorstores/memory.cjs +56 -0
  774. package/dist/vectorstores/memory.d.ts +66 -0
  775. package/dist/vectorstores/memory.js +56 -0
  776. package/dist/vectorstores/milvus.cjs +91 -7
  777. package/dist/vectorstores/milvus.d.ts +80 -1
  778. package/dist/vectorstores/milvus.js +91 -7
  779. package/dist/vectorstores/mongo.cjs +45 -0
  780. package/dist/vectorstores/mongo.d.ts +49 -0
  781. package/dist/vectorstores/mongo.js +45 -0
  782. package/dist/vectorstores/mongodb_atlas.cjs +48 -0
  783. package/dist/vectorstores/mongodb_atlas.d.ts +59 -0
  784. package/dist/vectorstores/mongodb_atlas.js +48 -0
  785. package/dist/vectorstores/myscale.cjs +66 -0
  786. package/dist/vectorstores/myscale.d.ts +80 -0
  787. package/dist/vectorstores/myscale.js +66 -0
  788. package/dist/vectorstores/opensearch.cjs +60 -0
  789. package/dist/vectorstores/opensearch.d.ts +74 -0
  790. package/dist/vectorstores/opensearch.js +60 -0
  791. package/dist/vectorstores/pinecone.cjs +54 -0
  792. package/dist/vectorstores/pinecone.d.ts +58 -0
  793. package/dist/vectorstores/pinecone.js +54 -0
  794. package/dist/vectorstores/prisma.cjs +66 -0
  795. package/dist/vectorstores/prisma.d.ts +66 -0
  796. package/dist/vectorstores/prisma.js +66 -0
  797. package/dist/vectorstores/qdrant.cjs +60 -0
  798. package/dist/vectorstores/qdrant.d.ts +66 -0
  799. package/dist/vectorstores/qdrant.js +60 -0
  800. package/dist/vectorstores/redis.cjs +62 -0
  801. package/dist/vectorstores/redis.d.ts +88 -0
  802. package/dist/vectorstores/redis.js +62 -0
  803. package/dist/vectorstores/singlestore.cjs +46 -0
  804. package/dist/vectorstores/singlestore.d.ts +46 -0
  805. package/dist/vectorstores/singlestore.js +46 -0
  806. package/dist/vectorstores/supabase.cjs +50 -0
  807. package/dist/vectorstores/supabase.d.ts +54 -2
  808. package/dist/vectorstores/supabase.js +50 -0
  809. package/dist/vectorstores/tigris.cjs +49 -0
  810. package/dist/vectorstores/tigris.d.ts +53 -0
  811. package/dist/vectorstores/tigris.js +49 -0
  812. package/dist/vectorstores/typeorm.cjs +71 -0
  813. package/dist/vectorstores/typeorm.d.ts +76 -0
  814. package/dist/vectorstores/typeorm.js +71 -0
  815. package/dist/vectorstores/typesense.cjs +5 -0
  816. package/dist/vectorstores/typesense.d.ts +5 -0
  817. package/dist/vectorstores/typesense.js +5 -0
  818. package/dist/vectorstores/usearch.cjs +50 -0
  819. package/dist/vectorstores/usearch.d.ts +55 -0
  820. package/dist/vectorstores/usearch.js +50 -0
  821. package/dist/vectorstores/vectara.cjs +104 -0
  822. package/dist/vectorstores/vectara.d.ts +72 -0
  823. package/dist/vectorstores/vectara.js +104 -0
  824. package/dist/vectorstores/weaviate.cjs +61 -0
  825. package/dist/vectorstores/weaviate.d.ts +70 -0
  826. package/dist/vectorstores/weaviate.js +61 -0
  827. package/dist/vectorstores/xata.cjs +36 -0
  828. package/dist/vectorstores/xata.d.ts +43 -0
  829. package/dist/vectorstores/xata.js +36 -0
  830. package/dist/vectorstores/zep.d.ts +11 -0
  831. package/package.json +2 -2
@@ -1,4 +1,8 @@
1
1
  import { ObjectTool } from "./schema.js";
2
+ /**
3
+ * Class that generates prompts for generative agents. It maintains a list
4
+ * of constraints, commands, resources, and performance evaluations.
5
+ */
2
6
  export declare class PromptGenerator {
3
7
  constraints: string[];
4
8
  commands: ObjectTool[];
@@ -6,12 +10,40 @@ export declare class PromptGenerator {
6
10
  performance_evaluation: string[];
7
11
  response_format: object;
8
12
  constructor();
13
+ /**
14
+ * Adds a constraint to the list of constraints.
15
+ * @param constraint The constraint to add.
16
+ * @returns void
17
+ */
9
18
  add_constraint(constraint: string): void;
19
+ /**
20
+ * Adds a tool to the list of commands.
21
+ * @param tool The tool to add.
22
+ * @returns void
23
+ */
10
24
  add_tool(tool: ObjectTool): void;
11
25
  _generate_command_string(tool: ObjectTool): string;
26
+ /**
27
+ * Adds a resource to the list of resources.
28
+ * @param resource The resource to add.
29
+ * @returns void
30
+ */
12
31
  add_resource(resource: string): void;
32
+ /**
33
+ * Adds a performance evaluation to the list of performance evaluations.
34
+ * @param evaluation The performance evaluation to add.
35
+ * @returns void
36
+ */
13
37
  add_performance_evaluation(evaluation: string): void;
14
38
  _generate_numbered_list(items: any[], item_type?: string): string;
39
+ /**
40
+ * Generates a prompt string that includes the constraints, commands,
41
+ * resources, performance evaluations, and response format.
42
+ * @returns A string representing the prompt.
43
+ */
15
44
  generate_prompt_string(): string;
16
45
  }
46
+ /**
47
+ * Function that generates a prompt string for a given list of tools.
48
+ */
17
49
  export declare function getPrompt(tools: ObjectTool[]): string;
@@ -1,5 +1,9 @@
1
1
  import { zodToJsonSchema } from "zod-to-json-schema";
2
2
  import { FINISH_NAME } from "./schema.js";
3
+ /**
4
+ * Class that generates prompts for generative agents. It maintains a list
5
+ * of constraints, commands, resources, and performance evaluations.
6
+ */
3
7
  export class PromptGenerator {
4
8
  constructor() {
5
9
  Object.defineProperty(this, "constraints", {
@@ -47,9 +51,19 @@ export class PromptGenerator {
47
51
  command: { name: "command name", args: { "arg name": "value" } },
48
52
  };
49
53
  }
54
+ /**
55
+ * Adds a constraint to the list of constraints.
56
+ * @param constraint The constraint to add.
57
+ * @returns void
58
+ */
50
59
  add_constraint(constraint) {
51
60
  this.constraints.push(constraint);
52
61
  }
62
+ /**
63
+ * Adds a tool to the list of commands.
64
+ * @param tool The tool to add.
65
+ * @returns void
66
+ */
53
67
  add_tool(tool) {
54
68
  this.commands.push(tool);
55
69
  }
@@ -58,9 +72,19 @@ export class PromptGenerator {
58
72
  output += `, args json schema: ${JSON.stringify(zodToJsonSchema(tool.schema).properties)}`;
59
73
  return output;
60
74
  }
75
+ /**
76
+ * Adds a resource to the list of resources.
77
+ * @param resource The resource to add.
78
+ * @returns void
79
+ */
61
80
  add_resource(resource) {
62
81
  this.resources.push(resource);
63
82
  }
83
+ /**
84
+ * Adds a performance evaluation to the list of performance evaluations.
85
+ * @param evaluation The performance evaluation to add.
86
+ * @returns void
87
+ */
64
88
  add_performance_evaluation(evaluation) {
65
89
  this.performance_evaluation.push(evaluation);
66
90
  }
@@ -75,6 +99,11 @@ export class PromptGenerator {
75
99
  }
76
100
  return items.map((item, i) => `${i + 1}. ${item}`).join("\n");
77
101
  }
102
+ /**
103
+ * Generates a prompt string that includes the constraints, commands,
104
+ * resources, performance evaluations, and response format.
105
+ * @returns A string representing the prompt.
106
+ */
78
107
  generate_prompt_string() {
79
108
  const formatted_response_format = JSON.stringify(this.response_format, null, 4);
80
109
  const prompt_string = `Constraints:\n${this._generate_numbered_list(this.constraints)}\n\n` +
@@ -87,6 +116,9 @@ export class PromptGenerator {
87
116
  return prompt_string;
88
117
  }
89
118
  }
119
+ /**
120
+ * Function that generates a prompt string for a given list of tools.
121
+ */
90
122
  export function getPrompt(tools) {
91
123
  const prompt_generator = new PromptGenerator();
92
124
  prompt_generator.add_constraint("~4000 word limit for short term memory. " +
@@ -1,6 +1,17 @@
1
1
  import { StructuredTool } from "../../tools/base.js";
2
+ /**
3
+ * Type alias for StructuredTool. It is part of the tools module in
4
+ * LangChain, which includes a variety of tools used for different
5
+ * purposes.
6
+ */
2
7
  export type ObjectTool = StructuredTool;
3
8
  export declare const FINISH_NAME = "finish";
9
+ /**
10
+ * Interface that describes an action that can be performed by the AutoGPT
11
+ * model in LangChain. It has a `name` property, which is a string that
12
+ * represents the name of the action, and an `args` property, which is an
13
+ * object that contains the arguments for the action.
14
+ */
4
15
  export interface AutoGPTAction {
5
16
  name: string;
6
17
  args: Record<string, any>;
@@ -6,7 +6,16 @@ const document_js_1 = require("../../document.cjs");
6
6
  const task_creation_js_1 = require("./task_creation.cjs");
7
7
  const task_execution_js_1 = require("./task_execution.cjs");
8
8
  const task_prioritization_js_1 = require("./task_prioritization.cjs");
9
+ /**
10
+ * Class responsible for managing tasks, including their creation,
11
+ * prioritization, and execution. It uses three chains for these
12
+ * operations: `creationChain`, `prioritizationChain`, and
13
+ * `executionChain`.
14
+ */
9
15
  class BabyAGI extends base_js_1.BaseChain {
16
+ static lc_name() {
17
+ return "BabyAGI";
18
+ }
10
19
  constructor({ creationChain, prioritizationChain, executionChain, vectorstore, maxIterations = 100, verbose, callbacks, }) {
11
20
  super(undefined, verbose, callbacks);
12
21
  Object.defineProperty(this, "taskList", {
@@ -68,23 +77,51 @@ class BabyAGI extends base_js_1.BaseChain {
68
77
  get outputKeys() {
69
78
  return [];
70
79
  }
80
+ /**
81
+ * Adds a task to the task list.
82
+ * @param task The task to be added.
83
+ * @returns Promise resolving to void.
84
+ */
71
85
  async addTask(task) {
72
86
  this.taskList.push(task);
73
87
  }
88
+ /**
89
+ * Prints the current task list to the console.
90
+ * @returns void
91
+ */
74
92
  printTaskList() {
75
93
  console.log("\x1b[95m\x1b[1m\n*****TASK LIST*****\n\x1b[0m\x1b[0m");
76
94
  for (const t of this.taskList) {
77
95
  console.log(`${t.taskID}: ${t.taskName}`);
78
96
  }
79
97
  }
98
+ /**
99
+ * Prints the next task to the console.
100
+ * @param task The next task to be printed.
101
+ * @returns void
102
+ */
80
103
  printNextTask(task) {
81
104
  console.log("\x1b[92m\x1b[1m\n*****NEXT TASK*****\n\x1b[0m\x1b[0m");
82
105
  console.log(`${task.taskID}: ${task.taskName}`);
83
106
  }
107
+ /**
108
+ * Prints the result of a task to the console.
109
+ * @param result The result of the task.
110
+ * @returns void
111
+ */
84
112
  printTaskResult(result) {
85
113
  console.log("\x1b[93m\x1b[1m\n*****TASK RESULT*****\n\x1b[0m\x1b[0m");
86
114
  console.log(result.trim());
87
115
  }
116
+ /**
117
+ * Generates the next tasks based on the result of the previous task, the
118
+ * task description, and the objective.
119
+ * @param result The result of the previous task.
120
+ * @param task_description The description of the task.
121
+ * @param objective The objective of the task.
122
+ * @param runManager Optional CallbackManagerForChainRun instance.
123
+ * @returns Promise resolving to an array of tasks without taskID.
124
+ */
88
125
  async getNextTasks(result, task_description, objective, runManager) {
89
126
  const taskNames = this.taskList.map((t) => t.taskName);
90
127
  const incomplete_tasks = taskNames.join(", ");
@@ -99,6 +136,13 @@ class BabyAGI extends base_js_1.BaseChain {
99
136
  .filter((taskName) => taskName.trim())
100
137
  .map((taskName) => ({ taskName }));
101
138
  }
139
+ /**
140
+ * Prioritizes the tasks based on the current task ID and the objective.
141
+ * @param thisTaskID The ID of the current task.
142
+ * @param objective The objective of the task.
143
+ * @param runManager Optional CallbackManagerForChainRun instance.
144
+ * @returns Promise resolving to an array of prioritized tasks.
145
+ */
102
146
  async prioritizeTasks(thisTaskID, objective, runManager) {
103
147
  const taskNames = this.taskList.map((t) => t.taskName);
104
148
  const nextTaskID = thisTaskID + 1;
@@ -119,6 +163,12 @@ class BabyAGI extends base_js_1.BaseChain {
119
163
  }
120
164
  return prioritizedTaskList;
121
165
  }
166
+ /**
167
+ * Retrieves the top tasks that are most similar to the given query.
168
+ * @param query The query to search for.
169
+ * @param k The number of top tasks to retrieve.
170
+ * @returns Promise resolving to an array of top tasks.
171
+ */
122
172
  async getTopTasks(query, k = 5) {
123
173
  const results = await this.vectorstore.similaritySearch(query, k);
124
174
  if (!results) {
@@ -126,6 +176,13 @@ class BabyAGI extends base_js_1.BaseChain {
126
176
  }
127
177
  return results.map((item) => String(item.metadata.task));
128
178
  }
179
+ /**
180
+ * Executes a task based on the objective and the task description.
181
+ * @param objective The objective of the task.
182
+ * @param task The task to be executed.
183
+ * @param runManager Optional CallbackManagerForChainRun instance.
184
+ * @returns Promise resolving to the result of the task execution as a string.
185
+ */
129
186
  async executeTask(objective, task, runManager) {
130
187
  const context = await this.getTopTasks(objective);
131
188
  const { [this.executionChain.outputKeys[0]]: text } = await this.executionChain.call({
@@ -168,6 +225,17 @@ class BabyAGI extends base_js_1.BaseChain {
168
225
  serialize() {
169
226
  throw new Error("Method not implemented.");
170
227
  }
228
+ /**
229
+ * Static method to create a new BabyAGI instance from a
230
+ * BaseLanguageModel.
231
+ * @param llm BaseLanguageModel instance used to generate a new BabyAGI instance.
232
+ * @param vectorstore VectorStore instance used to store and retrieve vectors.
233
+ * @param executionChain Optional BaseChain instance used to execute tasks.
234
+ * @param verbose Optional boolean indicating whether to log verbose output.
235
+ * @param callbacks Optional callbacks to be used during the execution of tasks.
236
+ * @param rest Optional additional parameters.
237
+ * @returns A new instance of BabyAGI.
238
+ */
171
239
  static fromLLM({ llm, vectorstore, executionChain, verbose, callbacks, ...rest }) {
172
240
  const creationChain = task_creation_js_1.TaskCreationChain.fromLLM({
173
241
  llm,
@@ -5,10 +5,20 @@ import { SerializedBaseChain } from "../../chains/serde.js";
5
5
  import { ChainValues } from "../../schema/index.js";
6
6
  import { Optional } from "../../types/type-utils.js";
7
7
  import { VectorStore } from "../../vectorstores/base.js";
8
+ /**
9
+ * Interface defining the structure of a task. A task has a `taskID` and a
10
+ * `taskName`.
11
+ */
8
12
  export interface Task {
9
13
  taskID: string;
10
14
  taskName: string;
11
15
  }
16
+ /**
17
+ * Interface defining the structure of the inputs for the `BabyAGI` class.
18
+ * It extends the `ChainInputs` interface, omitting the 'memory' and
19
+ * 'callbackManager' properties, and adds properties specific to
20
+ * `BabyAGI`.
21
+ */
12
22
  export interface BabyAGIInputs extends Omit<ChainInputs, "memory" | "callbackManager"> {
13
23
  creationChain: BaseChain;
14
24
  prioritizationChain: BaseChain;
@@ -16,7 +26,14 @@ export interface BabyAGIInputs extends Omit<ChainInputs, "memory" | "callbackMan
16
26
  vectorstore: VectorStore;
17
27
  maxIterations?: number;
18
28
  }
29
+ /**
30
+ * Class responsible for managing tasks, including their creation,
31
+ * prioritization, and execution. It uses three chains for these
32
+ * operations: `creationChain`, `prioritizationChain`, and
33
+ * `executionChain`.
34
+ */
19
35
  export declare class BabyAGI extends BaseChain implements BabyAGIInputs {
36
+ static lc_name(): string;
20
37
  taskList: Task[];
21
38
  creationChain: BaseChain;
22
39
  prioritizationChain: BaseChain;
@@ -28,19 +45,78 @@ export declare class BabyAGI extends BaseChain implements BabyAGIInputs {
28
45
  _chainType(): "BabyAGI";
29
46
  get inputKeys(): string[];
30
47
  get outputKeys(): never[];
48
+ /**
49
+ * Adds a task to the task list.
50
+ * @param task The task to be added.
51
+ * @returns Promise resolving to void.
52
+ */
31
53
  addTask(task: Task): Promise<void>;
54
+ /**
55
+ * Prints the current task list to the console.
56
+ * @returns void
57
+ */
32
58
  printTaskList(): void;
59
+ /**
60
+ * Prints the next task to the console.
61
+ * @param task The next task to be printed.
62
+ * @returns void
63
+ */
33
64
  printNextTask(task: Task): void;
65
+ /**
66
+ * Prints the result of a task to the console.
67
+ * @param result The result of the task.
68
+ * @returns void
69
+ */
34
70
  printTaskResult(result: string): void;
71
+ /**
72
+ * Generates the next tasks based on the result of the previous task, the
73
+ * task description, and the objective.
74
+ * @param result The result of the previous task.
75
+ * @param task_description The description of the task.
76
+ * @param objective The objective of the task.
77
+ * @param runManager Optional CallbackManagerForChainRun instance.
78
+ * @returns Promise resolving to an array of tasks without taskID.
79
+ */
35
80
  getNextTasks(result: string, task_description: string, objective: string, runManager?: CallbackManagerForChainRun): Promise<Optional<Task, "taskID">[]>;
81
+ /**
82
+ * Prioritizes the tasks based on the current task ID and the objective.
83
+ * @param thisTaskID The ID of the current task.
84
+ * @param objective The objective of the task.
85
+ * @param runManager Optional CallbackManagerForChainRun instance.
86
+ * @returns Promise resolving to an array of prioritized tasks.
87
+ */
36
88
  prioritizeTasks(thisTaskID: number, objective: string, runManager?: CallbackManagerForChainRun): Promise<{
37
89
  taskID: string;
38
90
  taskName: string;
39
91
  }[]>;
92
+ /**
93
+ * Retrieves the top tasks that are most similar to the given query.
94
+ * @param query The query to search for.
95
+ * @param k The number of top tasks to retrieve.
96
+ * @returns Promise resolving to an array of top tasks.
97
+ */
40
98
  getTopTasks(query: string, k?: number): Promise<string[]>;
99
+ /**
100
+ * Executes a task based on the objective and the task description.
101
+ * @param objective The objective of the task.
102
+ * @param task The task to be executed.
103
+ * @param runManager Optional CallbackManagerForChainRun instance.
104
+ * @returns Promise resolving to the result of the task execution as a string.
105
+ */
41
106
  executeTask(objective: string, task: string, runManager?: CallbackManagerForChainRun): Promise<string>;
42
107
  _call({ objective, firstTask }: ChainValues, runManager?: CallbackManagerForChainRun): Promise<{}>;
43
108
  serialize(): SerializedBaseChain;
109
+ /**
110
+ * Static method to create a new BabyAGI instance from a
111
+ * BaseLanguageModel.
112
+ * @param llm BaseLanguageModel instance used to generate a new BabyAGI instance.
113
+ * @param vectorstore VectorStore instance used to store and retrieve vectors.
114
+ * @param executionChain Optional BaseChain instance used to execute tasks.
115
+ * @param verbose Optional boolean indicating whether to log verbose output.
116
+ * @param callbacks Optional callbacks to be used during the execution of tasks.
117
+ * @param rest Optional additional parameters.
118
+ * @returns A new instance of BabyAGI.
119
+ */
44
120
  static fromLLM({ llm, vectorstore, executionChain, verbose, callbacks, ...rest }: Optional<BabyAGIInputs, "executionChain" | "creationChain" | "prioritizationChain"> & {
45
121
  llm: BaseLanguageModel;
46
122
  }): BabyAGI;
@@ -3,7 +3,16 @@ import { Document } from "../../document.js";
3
3
  import { TaskCreationChain } from "./task_creation.js";
4
4
  import { TaskExecutionChain } from "./task_execution.js";
5
5
  import { TaskPrioritizationChain } from "./task_prioritization.js";
6
+ /**
7
+ * Class responsible for managing tasks, including their creation,
8
+ * prioritization, and execution. It uses three chains for these
9
+ * operations: `creationChain`, `prioritizationChain`, and
10
+ * `executionChain`.
11
+ */
6
12
  export class BabyAGI extends BaseChain {
13
+ static lc_name() {
14
+ return "BabyAGI";
15
+ }
7
16
  constructor({ creationChain, prioritizationChain, executionChain, vectorstore, maxIterations = 100, verbose, callbacks, }) {
8
17
  super(undefined, verbose, callbacks);
9
18
  Object.defineProperty(this, "taskList", {
@@ -65,23 +74,51 @@ export class BabyAGI extends BaseChain {
65
74
  get outputKeys() {
66
75
  return [];
67
76
  }
77
+ /**
78
+ * Adds a task to the task list.
79
+ * @param task The task to be added.
80
+ * @returns Promise resolving to void.
81
+ */
68
82
  async addTask(task) {
69
83
  this.taskList.push(task);
70
84
  }
85
+ /**
86
+ * Prints the current task list to the console.
87
+ * @returns void
88
+ */
71
89
  printTaskList() {
72
90
  console.log("\x1b[95m\x1b[1m\n*****TASK LIST*****\n\x1b[0m\x1b[0m");
73
91
  for (const t of this.taskList) {
74
92
  console.log(`${t.taskID}: ${t.taskName}`);
75
93
  }
76
94
  }
95
+ /**
96
+ * Prints the next task to the console.
97
+ * @param task The next task to be printed.
98
+ * @returns void
99
+ */
77
100
  printNextTask(task) {
78
101
  console.log("\x1b[92m\x1b[1m\n*****NEXT TASK*****\n\x1b[0m\x1b[0m");
79
102
  console.log(`${task.taskID}: ${task.taskName}`);
80
103
  }
104
+ /**
105
+ * Prints the result of a task to the console.
106
+ * @param result The result of the task.
107
+ * @returns void
108
+ */
81
109
  printTaskResult(result) {
82
110
  console.log("\x1b[93m\x1b[1m\n*****TASK RESULT*****\n\x1b[0m\x1b[0m");
83
111
  console.log(result.trim());
84
112
  }
113
+ /**
114
+ * Generates the next tasks based on the result of the previous task, the
115
+ * task description, and the objective.
116
+ * @param result The result of the previous task.
117
+ * @param task_description The description of the task.
118
+ * @param objective The objective of the task.
119
+ * @param runManager Optional CallbackManagerForChainRun instance.
120
+ * @returns Promise resolving to an array of tasks without taskID.
121
+ */
85
122
  async getNextTasks(result, task_description, objective, runManager) {
86
123
  const taskNames = this.taskList.map((t) => t.taskName);
87
124
  const incomplete_tasks = taskNames.join(", ");
@@ -96,6 +133,13 @@ export class BabyAGI extends BaseChain {
96
133
  .filter((taskName) => taskName.trim())
97
134
  .map((taskName) => ({ taskName }));
98
135
  }
136
+ /**
137
+ * Prioritizes the tasks based on the current task ID and the objective.
138
+ * @param thisTaskID The ID of the current task.
139
+ * @param objective The objective of the task.
140
+ * @param runManager Optional CallbackManagerForChainRun instance.
141
+ * @returns Promise resolving to an array of prioritized tasks.
142
+ */
99
143
  async prioritizeTasks(thisTaskID, objective, runManager) {
100
144
  const taskNames = this.taskList.map((t) => t.taskName);
101
145
  const nextTaskID = thisTaskID + 1;
@@ -116,6 +160,12 @@ export class BabyAGI extends BaseChain {
116
160
  }
117
161
  return prioritizedTaskList;
118
162
  }
163
+ /**
164
+ * Retrieves the top tasks that are most similar to the given query.
165
+ * @param query The query to search for.
166
+ * @param k The number of top tasks to retrieve.
167
+ * @returns Promise resolving to an array of top tasks.
168
+ */
119
169
  async getTopTasks(query, k = 5) {
120
170
  const results = await this.vectorstore.similaritySearch(query, k);
121
171
  if (!results) {
@@ -123,6 +173,13 @@ export class BabyAGI extends BaseChain {
123
173
  }
124
174
  return results.map((item) => String(item.metadata.task));
125
175
  }
176
+ /**
177
+ * Executes a task based on the objective and the task description.
178
+ * @param objective The objective of the task.
179
+ * @param task The task to be executed.
180
+ * @param runManager Optional CallbackManagerForChainRun instance.
181
+ * @returns Promise resolving to the result of the task execution as a string.
182
+ */
126
183
  async executeTask(objective, task, runManager) {
127
184
  const context = await this.getTopTasks(objective);
128
185
  const { [this.executionChain.outputKeys[0]]: text } = await this.executionChain.call({
@@ -165,6 +222,17 @@ export class BabyAGI extends BaseChain {
165
222
  serialize() {
166
223
  throw new Error("Method not implemented.");
167
224
  }
225
+ /**
226
+ * Static method to create a new BabyAGI instance from a
227
+ * BaseLanguageModel.
228
+ * @param llm BaseLanguageModel instance used to generate a new BabyAGI instance.
229
+ * @param vectorstore VectorStore instance used to store and retrieve vectors.
230
+ * @param executionChain Optional BaseChain instance used to execute tasks.
231
+ * @param verbose Optional boolean indicating whether to log verbose output.
232
+ * @param callbacks Optional callbacks to be used during the execution of tasks.
233
+ * @param rest Optional additional parameters.
234
+ * @returns A new instance of BabyAGI.
235
+ */
168
236
  static fromLLM({ llm, vectorstore, executionChain, verbose, callbacks, ...rest }) {
169
237
  const creationChain = TaskCreationChain.fromLLM({
170
238
  llm,
@@ -5,6 +5,19 @@ const llm_chain_js_1 = require("../../chains/llm_chain.cjs");
5
5
  const prompt_js_1 = require("../../prompts/prompt.cjs");
6
6
  /** Chain to generate tasks. */
7
7
  class TaskCreationChain extends llm_chain_js_1.LLMChain {
8
+ static lc_name() {
9
+ return "TaskCreationChain";
10
+ }
11
+ /**
12
+ * Creates a new TaskCreationChain instance. It takes an object of type
13
+ * LLMChainInput as input, omitting the 'prompt' field. It uses the
14
+ * PromptTemplate class to create a new prompt based on the task creation
15
+ * template and the input variables. The new TaskCreationChain instance is
16
+ * then created with this prompt and the remaining fields from the input
17
+ * object.
18
+ * @param fields An object of type LLMChainInput, omitting the 'prompt' field.
19
+ * @returns A new instance of TaskCreationChain.
20
+ */
8
21
  static fromLLM(fields) {
9
22
  const taskCreationTemplate = `You are an task creation AI that uses the result of an execution agent` +
10
23
  ` to create new tasks with the following objective: {objective},` +
@@ -1,5 +1,16 @@
1
1
  import { LLMChain, LLMChainInput } from "../../chains/llm_chain.js";
2
2
  /** Chain to generate tasks. */
3
3
  export declare class TaskCreationChain extends LLMChain {
4
+ static lc_name(): string;
5
+ /**
6
+ * Creates a new TaskCreationChain instance. It takes an object of type
7
+ * LLMChainInput as input, omitting the 'prompt' field. It uses the
8
+ * PromptTemplate class to create a new prompt based on the task creation
9
+ * template and the input variables. The new TaskCreationChain instance is
10
+ * then created with this prompt and the remaining fields from the input
11
+ * object.
12
+ * @param fields An object of type LLMChainInput, omitting the 'prompt' field.
13
+ * @returns A new instance of TaskCreationChain.
14
+ */
4
15
  static fromLLM(fields: Omit<LLMChainInput, "prompt">): LLMChain;
5
16
  }
@@ -2,6 +2,19 @@ import { LLMChain } from "../../chains/llm_chain.js";
2
2
  import { PromptTemplate } from "../../prompts/prompt.js";
3
3
  /** Chain to generate tasks. */
4
4
  export class TaskCreationChain extends LLMChain {
5
+ static lc_name() {
6
+ return "TaskCreationChain";
7
+ }
8
+ /**
9
+ * Creates a new TaskCreationChain instance. It takes an object of type
10
+ * LLMChainInput as input, omitting the 'prompt' field. It uses the
11
+ * PromptTemplate class to create a new prompt based on the task creation
12
+ * template and the input variables. The new TaskCreationChain instance is
13
+ * then created with this prompt and the remaining fields from the input
14
+ * object.
15
+ * @param fields An object of type LLMChainInput, omitting the 'prompt' field.
16
+ * @returns A new instance of TaskCreationChain.
17
+ */
5
18
  static fromLLM(fields) {
6
19
  const taskCreationTemplate = `You are an task creation AI that uses the result of an execution agent` +
7
20
  ` to create new tasks with the following objective: {objective},` +
@@ -5,6 +5,18 @@ const llm_chain_js_1 = require("../../chains/llm_chain.cjs");
5
5
  const prompt_js_1 = require("../../prompts/prompt.cjs");
6
6
  /** Chain to execute tasks. */
7
7
  class TaskExecutionChain extends llm_chain_js_1.LLMChain {
8
+ static lc_name() {
9
+ return "TaskExecutionChain";
10
+ }
11
+ /**
12
+ * A static factory method that creates an instance of TaskExecutionChain.
13
+ * It constructs a prompt template for task execution, which is then used
14
+ * to create a new instance of TaskExecutionChain. The prompt template
15
+ * instructs an AI to perform a task based on a given objective, taking
16
+ * into account previously completed tasks.
17
+ * @param fields An object of type LLMChainInput, excluding the "prompt" field.
18
+ * @returns An instance of LLMChain.
19
+ */
8
20
  static fromLLM(fields) {
9
21
  const executionTemplate = `You are an AI who performs one task based on the following objective: ` +
10
22
  `{objective}.` +
@@ -1,5 +1,15 @@
1
1
  import { LLMChain, LLMChainInput } from "../../chains/llm_chain.js";
2
2
  /** Chain to execute tasks. */
3
3
  export declare class TaskExecutionChain extends LLMChain {
4
+ static lc_name(): string;
5
+ /**
6
+ * A static factory method that creates an instance of TaskExecutionChain.
7
+ * It constructs a prompt template for task execution, which is then used
8
+ * to create a new instance of TaskExecutionChain. The prompt template
9
+ * instructs an AI to perform a task based on a given objective, taking
10
+ * into account previously completed tasks.
11
+ * @param fields An object of type LLMChainInput, excluding the "prompt" field.
12
+ * @returns An instance of LLMChain.
13
+ */
4
14
  static fromLLM(fields: Omit<LLMChainInput, "prompt">): LLMChain;
5
15
  }
@@ -2,6 +2,18 @@ import { LLMChain } from "../../chains/llm_chain.js";
2
2
  import { PromptTemplate } from "../../prompts/prompt.js";
3
3
  /** Chain to execute tasks. */
4
4
  export class TaskExecutionChain extends LLMChain {
5
+ static lc_name() {
6
+ return "TaskExecutionChain";
7
+ }
8
+ /**
9
+ * A static factory method that creates an instance of TaskExecutionChain.
10
+ * It constructs a prompt template for task execution, which is then used
11
+ * to create a new instance of TaskExecutionChain. The prompt template
12
+ * instructs an AI to perform a task based on a given objective, taking
13
+ * into account previously completed tasks.
14
+ * @param fields An object of type LLMChainInput, excluding the "prompt" field.
15
+ * @returns An instance of LLMChain.
16
+ */
5
17
  static fromLLM(fields) {
6
18
  const executionTemplate = `You are an AI who performs one task based on the following objective: ` +
7
19
  `{objective}.` +
@@ -5,6 +5,17 @@ const llm_chain_js_1 = require("../../chains/llm_chain.cjs");
5
5
  const prompt_js_1 = require("../../prompts/prompt.cjs");
6
6
  /** Chain to prioritize tasks. */
7
7
  class TaskPrioritizationChain extends llm_chain_js_1.LLMChain {
8
+ static lc_name() {
9
+ return "TaskPrioritizationChain";
10
+ }
11
+ /**
12
+ * Static method to create a new TaskPrioritizationChain from a
13
+ * BaseLanguageModel. It generates a prompt using the PromptTemplate class
14
+ * and the task prioritization template, and returns a new instance of
15
+ * TaskPrioritizationChain.
16
+ * @param fields Object with fields used to initialize the chain, excluding the prompt.
17
+ * @returns A new instance of TaskPrioritizationChain.
18
+ */
8
19
  static fromLLM(fields) {
9
20
  const taskPrioritizationTemplate = `You are a task prioritization AI tasked with cleaning the formatting of ` +
10
21
  `and reprioritizing the following tasks: {task_names}.` +
@@ -1,5 +1,14 @@
1
1
  import { LLMChain, LLMChainInput } from "../../chains/llm_chain.js";
2
2
  /** Chain to prioritize tasks. */
3
3
  export declare class TaskPrioritizationChain extends LLMChain {
4
+ static lc_name(): string;
5
+ /**
6
+ * Static method to create a new TaskPrioritizationChain from a
7
+ * BaseLanguageModel. It generates a prompt using the PromptTemplate class
8
+ * and the task prioritization template, and returns a new instance of
9
+ * TaskPrioritizationChain.
10
+ * @param fields Object with fields used to initialize the chain, excluding the prompt.
11
+ * @returns A new instance of TaskPrioritizationChain.
12
+ */
4
13
  static fromLLM(fields: Omit<LLMChainInput, "prompt">): LLMChain;
5
14
  }
@@ -2,6 +2,17 @@ import { LLMChain } from "../../chains/llm_chain.js";
2
2
  import { PromptTemplate } from "../../prompts/prompt.js";
3
3
  /** Chain to prioritize tasks. */
4
4
  export class TaskPrioritizationChain extends LLMChain {
5
+ static lc_name() {
6
+ return "TaskPrioritizationChain";
7
+ }
8
+ /**
9
+ * Static method to create a new TaskPrioritizationChain from a
10
+ * BaseLanguageModel. It generates a prompt using the PromptTemplate class
11
+ * and the task prioritization template, and returns a new instance of
12
+ * TaskPrioritizationChain.
13
+ * @param fields Object with fields used to initialize the chain, excluding the prompt.
14
+ * @returns A new instance of TaskPrioritizationChain.
15
+ */
5
16
  static fromLLM(fields) {
6
17
  const taskPrioritizationTemplate = `You are a task prioritization AI tasked with cleaning the formatting of ` +
7
18
  `and reprioritizing the following tasks: {task_names}.` +