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
@@ -21,6 +21,9 @@ const template_js_1 = require("./template.cjs");
21
21
  * ```
22
22
  */
23
23
  class PromptTemplate extends base_js_1.BaseStringPromptTemplate {
24
+ static lc_name() {
25
+ return "PromptTemplate";
26
+ }
24
27
  constructor(input) {
25
28
  super(input);
26
29
  Object.defineProperty(this, "template", {
@@ -53,6 +56,11 @@ class PromptTemplate extends base_js_1.BaseStringPromptTemplate {
53
56
  _getPromptType() {
54
57
  return "prompt";
55
58
  }
59
+ /**
60
+ * Formats the prompt template with the provided values.
61
+ * @param values The values to be used to format the prompt template.
62
+ * @returns A promise that resolves to a string which is the formatted prompt.
63
+ */
56
64
  async format(values) {
57
65
  const allValues = await this.mergePartialAndUserVariables(values);
58
66
  return (0, template_js_1.renderTemplate)(this.template, this.templateFormat, allValues);
@@ -95,6 +103,11 @@ class PromptTemplate extends base_js_1.BaseStringPromptTemplate {
95
103
  ...rest,
96
104
  });
97
105
  }
106
+ /**
107
+ * Partially applies values to the prompt template.
108
+ * @param values The values to be partially applied to the prompt template.
109
+ * @returns A new instance of PromptTemplate with the partially applied values.
110
+ */
98
111
  async partial(values) {
99
112
  const newInputVariables = this.inputVariables.filter((iv) => !(iv in values));
100
113
  const newPartialVariables = {
@@ -40,11 +40,17 @@ export interface PromptTemplateInput<RunInput extends InputValues = any, Partial
40
40
  * ```
41
41
  */
42
42
  export declare class PromptTemplate<RunInput extends InputValues = any, PartialVariableName extends string = any> extends BaseStringPromptTemplate<RunInput, PartialVariableName> implements PromptTemplateInput<RunInput, PartialVariableName> {
43
+ static lc_name(): string;
43
44
  template: string;
44
45
  templateFormat: TemplateFormat;
45
46
  validateTemplate: boolean;
46
47
  constructor(input: PromptTemplateInput<RunInput, PartialVariableName>);
47
48
  _getPromptType(): "prompt";
49
+ /**
50
+ * Formats the prompt template with the provided values.
51
+ * @param values The values to be used to format the prompt template.
52
+ * @returns A promise that resolves to a string which is the formatted prompt.
53
+ */
48
54
  format(values: TypedPromptInputValues<RunInput>): Promise<string>;
49
55
  /**
50
56
  * Take examples in list format with prefix and suffix to create a prompt.
@@ -64,6 +70,11 @@ export declare class PromptTemplate<RunInput extends InputValues = any, PartialV
64
70
  * Load prompt template from a template f-string
65
71
  */
66
72
  static fromTemplate<RunInput extends InputValues = any>(template: string, { templateFormat, ...rest }?: Omit<PromptTemplateInput, "template" | "inputVariables">): PromptTemplate<RunInput, any>;
73
+ /**
74
+ * Partially applies values to the prompt template.
75
+ * @param values The values to be partially applied to the prompt template.
76
+ * @returns A new instance of PromptTemplate with the partially applied values.
77
+ */
67
78
  partial<NewPartialVariableName extends string>(values: PartialValues<NewPartialVariableName>): Promise<PromptTemplate<InputValues<Exclude<Extract<keyof RunInput, string>, NewPartialVariableName>>, any>>;
68
79
  serialize(): SerializedPromptTemplate;
69
80
  static deserialize(data: SerializedPromptTemplate): Promise<PromptTemplate>;
@@ -18,6 +18,9 @@ import { checkValidTemplate, parseTemplate, renderTemplate, } from "./template.j
18
18
  * ```
19
19
  */
20
20
  export class PromptTemplate extends BaseStringPromptTemplate {
21
+ static lc_name() {
22
+ return "PromptTemplate";
23
+ }
21
24
  constructor(input) {
22
25
  super(input);
23
26
  Object.defineProperty(this, "template", {
@@ -50,6 +53,11 @@ export class PromptTemplate extends BaseStringPromptTemplate {
50
53
  _getPromptType() {
51
54
  return "prompt";
52
55
  }
56
+ /**
57
+ * Formats the prompt template with the provided values.
58
+ * @param values The values to be used to format the prompt template.
59
+ * @returns A promise that resolves to a string which is the formatted prompt.
60
+ */
53
61
  async format(values) {
54
62
  const allValues = await this.mergePartialAndUserVariables(values);
55
63
  return renderTemplate(this.template, this.templateFormat, allValues);
@@ -92,6 +100,11 @@ export class PromptTemplate extends BaseStringPromptTemplate {
92
100
  ...rest,
93
101
  });
94
102
  }
103
+ /**
104
+ * Partially applies values to the prompt template.
105
+ * @param values The values to be partially applied to the prompt template.
106
+ * @returns A new instance of PromptTemplate with the partially applied values.
107
+ */
95
108
  async partial(values) {
96
109
  const newInputVariables = this.inputVariables.filter((iv) => !(iv in values));
97
110
  const newPartialVariables = {
@@ -2,9 +2,17 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.LengthBasedExampleSelector = void 0;
4
4
  const base_js_1 = require("../base.cjs");
5
+ /**
6
+ * Calculates the length of a text based on the number of words and lines.
7
+ */
5
8
  function getLengthBased(text) {
6
9
  return text.split(/\n| /).length;
7
10
  }
11
+ /**
12
+ * A specialized example selector that selects examples based on their
13
+ * length, ensuring that the total length of the selected examples does
14
+ * not exceed a specified maximum length.
15
+ */
8
16
  class LengthBasedExampleSelector extends base_js_1.BaseExampleSelector {
9
17
  constructor(data) {
10
18
  super(data);
@@ -42,11 +50,22 @@ class LengthBasedExampleSelector extends base_js_1.BaseExampleSelector {
42
50
  this.maxLength = data.maxLength ?? 2048;
43
51
  this.getTextLength = data.getTextLength ?? getLengthBased;
44
52
  }
53
+ /**
54
+ * Adds an example to the list of examples and calculates its length.
55
+ * @param example The example to be added.
56
+ * @returns Promise that resolves when the example has been added and its length calculated.
57
+ */
45
58
  async addExample(example) {
46
59
  this.examples.push(example);
47
60
  const stringExample = await this.examplePrompt.format(example);
48
61
  this.exampleTextLengths.push(this.getTextLength(stringExample));
49
62
  }
63
+ /**
64
+ * Calculates the lengths of the examples.
65
+ * @param v Array of lengths of the examples.
66
+ * @param values Instance of LengthBasedExampleSelector.
67
+ * @returns Promise that resolves with an array of lengths of the examples.
68
+ */
50
69
  async calculateExampleTextLengths(v, values) {
51
70
  if (v.length > 0) {
52
71
  return v;
@@ -55,6 +74,12 @@ class LengthBasedExampleSelector extends base_js_1.BaseExampleSelector {
55
74
  const stringExamples = await Promise.all(examples.map((eg) => examplePrompt.format(eg)));
56
75
  return stringExamples.map((eg) => this.getTextLength(eg));
57
76
  }
77
+ /**
78
+ * Selects examples until the total length of the selected examples
79
+ * reaches the maxLength.
80
+ * @param inputVariables The input variables for the examples.
81
+ * @returns Promise that resolves with an array of selected examples.
82
+ */
58
83
  async selectExamples(inputVariables) {
59
84
  const inputs = Object.values(inputVariables).join(" ");
60
85
  let remainingLength = this.maxLength - this.getTextLength(inputs);
@@ -73,6 +98,13 @@ class LengthBasedExampleSelector extends base_js_1.BaseExampleSelector {
73
98
  }
74
99
  return examples;
75
100
  }
101
+ /**
102
+ * Creates a new instance of LengthBasedExampleSelector and adds a list of
103
+ * examples to it.
104
+ * @param examples Array of examples to be added.
105
+ * @param args Input parameters for the LengthBasedExampleSelector.
106
+ * @returns Promise that resolves with a new instance of LengthBasedExampleSelector with the examples added.
107
+ */
76
108
  static async fromExamples(examples, args) {
77
109
  const selector = new LengthBasedExampleSelector(args);
78
110
  await Promise.all(examples.map((eg) => selector.addExample(eg)));
@@ -1,11 +1,20 @@
1
1
  import { Example } from "../../schema/index.js";
2
2
  import { BaseExampleSelector } from "../base.js";
3
3
  import { PromptTemplate } from "../prompt.js";
4
+ /**
5
+ * Interface for the input parameters of the LengthBasedExampleSelector
6
+ * class.
7
+ */
4
8
  export interface LengthBasedExampleSelectorInput {
5
9
  examplePrompt: PromptTemplate;
6
10
  maxLength?: number;
7
11
  getTextLength?: (text: string) => number;
8
12
  }
13
+ /**
14
+ * A specialized example selector that selects examples based on their
15
+ * length, ensuring that the total length of the selected examples does
16
+ * not exceed a specified maximum length.
17
+ */
9
18
  export declare class LengthBasedExampleSelector extends BaseExampleSelector {
10
19
  protected examples: Example[];
11
20
  examplePrompt: PromptTemplate;
@@ -13,8 +22,32 @@ export declare class LengthBasedExampleSelector extends BaseExampleSelector {
13
22
  maxLength: number;
14
23
  exampleTextLengths: number[];
15
24
  constructor(data: LengthBasedExampleSelectorInput);
25
+ /**
26
+ * Adds an example to the list of examples and calculates its length.
27
+ * @param example The example to be added.
28
+ * @returns Promise that resolves when the example has been added and its length calculated.
29
+ */
16
30
  addExample(example: Example): Promise<void>;
31
+ /**
32
+ * Calculates the lengths of the examples.
33
+ * @param v Array of lengths of the examples.
34
+ * @param values Instance of LengthBasedExampleSelector.
35
+ * @returns Promise that resolves with an array of lengths of the examples.
36
+ */
17
37
  calculateExampleTextLengths(v: number[], values: LengthBasedExampleSelector): Promise<number[]>;
38
+ /**
39
+ * Selects examples until the total length of the selected examples
40
+ * reaches the maxLength.
41
+ * @param inputVariables The input variables for the examples.
42
+ * @returns Promise that resolves with an array of selected examples.
43
+ */
18
44
  selectExamples(inputVariables: Example): Promise<Example[]>;
45
+ /**
46
+ * Creates a new instance of LengthBasedExampleSelector and adds a list of
47
+ * examples to it.
48
+ * @param examples Array of examples to be added.
49
+ * @param args Input parameters for the LengthBasedExampleSelector.
50
+ * @returns Promise that resolves with a new instance of LengthBasedExampleSelector with the examples added.
51
+ */
19
52
  static fromExamples(examples: Example[], args: LengthBasedExampleSelectorInput): Promise<LengthBasedExampleSelector>;
20
53
  }
@@ -1,7 +1,15 @@
1
1
  import { BaseExampleSelector } from "../base.js";
2
+ /**
3
+ * Calculates the length of a text based on the number of words and lines.
4
+ */
2
5
  function getLengthBased(text) {
3
6
  return text.split(/\n| /).length;
4
7
  }
8
+ /**
9
+ * A specialized example selector that selects examples based on their
10
+ * length, ensuring that the total length of the selected examples does
11
+ * not exceed a specified maximum length.
12
+ */
5
13
  export class LengthBasedExampleSelector extends BaseExampleSelector {
6
14
  constructor(data) {
7
15
  super(data);
@@ -39,11 +47,22 @@ export class LengthBasedExampleSelector extends BaseExampleSelector {
39
47
  this.maxLength = data.maxLength ?? 2048;
40
48
  this.getTextLength = data.getTextLength ?? getLengthBased;
41
49
  }
50
+ /**
51
+ * Adds an example to the list of examples and calculates its length.
52
+ * @param example The example to be added.
53
+ * @returns Promise that resolves when the example has been added and its length calculated.
54
+ */
42
55
  async addExample(example) {
43
56
  this.examples.push(example);
44
57
  const stringExample = await this.examplePrompt.format(example);
45
58
  this.exampleTextLengths.push(this.getTextLength(stringExample));
46
59
  }
60
+ /**
61
+ * Calculates the lengths of the examples.
62
+ * @param v Array of lengths of the examples.
63
+ * @param values Instance of LengthBasedExampleSelector.
64
+ * @returns Promise that resolves with an array of lengths of the examples.
65
+ */
47
66
  async calculateExampleTextLengths(v, values) {
48
67
  if (v.length > 0) {
49
68
  return v;
@@ -52,6 +71,12 @@ export class LengthBasedExampleSelector extends BaseExampleSelector {
52
71
  const stringExamples = await Promise.all(examples.map((eg) => examplePrompt.format(eg)));
53
72
  return stringExamples.map((eg) => this.getTextLength(eg));
54
73
  }
74
+ /**
75
+ * Selects examples until the total length of the selected examples
76
+ * reaches the maxLength.
77
+ * @param inputVariables The input variables for the examples.
78
+ * @returns Promise that resolves with an array of selected examples.
79
+ */
55
80
  async selectExamples(inputVariables) {
56
81
  const inputs = Object.values(inputVariables).join(" ");
57
82
  let remainingLength = this.maxLength - this.getTextLength(inputs);
@@ -70,6 +95,13 @@ export class LengthBasedExampleSelector extends BaseExampleSelector {
70
95
  }
71
96
  return examples;
72
97
  }
98
+ /**
99
+ * Creates a new instance of LengthBasedExampleSelector and adds a list of
100
+ * examples to it.
101
+ * @param examples Array of examples to be added.
102
+ * @param args Input parameters for the LengthBasedExampleSelector.
103
+ * @returns Promise that resolves with a new instance of LengthBasedExampleSelector with the examples added.
104
+ */
73
105
  static async fromExamples(examples, args) {
74
106
  const selector = new LengthBasedExampleSelector(args);
75
107
  await Promise.all(examples.map((eg) => selector.addExample(eg)));
@@ -8,6 +8,10 @@ function sortedValues(values) {
8
8
  .sort()
9
9
  .map((key) => values[key]);
10
10
  }
11
+ /**
12
+ * Class that selects examples based on semantic similarity. It extends
13
+ * the BaseExampleSelector class.
14
+ */
11
15
  class SemanticSimilarityExampleSelector extends base_js_1.BaseExampleSelector {
12
16
  constructor(data) {
13
17
  super(data);
@@ -40,6 +44,12 @@ class SemanticSimilarityExampleSelector extends base_js_1.BaseExampleSelector {
40
44
  this.exampleKeys = data.exampleKeys;
41
45
  this.inputKeys = data.inputKeys;
42
46
  }
47
+ /**
48
+ * Method that adds a new example to the vectorStore. The example is
49
+ * converted to a string and added to the vectorStore as a document.
50
+ * @param example The example to be added to the vectorStore.
51
+ * @returns Promise that resolves when the example has been added to the vectorStore.
52
+ */
43
53
  async addExample(example) {
44
54
  const inputKeys = this.inputKeys ?? Object.keys(example);
45
55
  const stringExample = sortedValues(inputKeys.reduce((acc, key) => ({ ...acc, [key]: example[key] }), {})).join(" ");
@@ -50,6 +60,13 @@ class SemanticSimilarityExampleSelector extends base_js_1.BaseExampleSelector {
50
60
  }),
51
61
  ]);
52
62
  }
63
+ /**
64
+ * Method that selects which examples to use based on semantic similarity.
65
+ * It performs a similarity search in the vectorStore using the input
66
+ * variables and returns the examples with the highest similarity.
67
+ * @param inputVariables The input variables used for the similarity search.
68
+ * @returns Promise that resolves with an array of the selected examples.
69
+ */
53
70
  async selectExamples(inputVariables) {
54
71
  const inputKeys = this.inputKeys ?? Object.keys(inputVariables);
55
72
  const query = sortedValues(inputKeys.reduce((acc, key) => ({ ...acc, [key]: inputVariables[key] }), {})).join(" ");
@@ -61,6 +78,20 @@ class SemanticSimilarityExampleSelector extends base_js_1.BaseExampleSelector {
61
78
  }
62
79
  return examples;
63
80
  }
81
+ /**
82
+ * Static method that creates a new instance of
83
+ * SemanticSimilarityExampleSelector. It takes a list of examples, an
84
+ * instance of Embeddings, a VectorStore class, and an options object as
85
+ * parameters. It converts the examples to strings, creates a VectorStore
86
+ * from the strings and the embeddings, and returns a new
87
+ * SemanticSimilarityExampleSelector with the created VectorStore and the
88
+ * options provided.
89
+ * @param examples The list of examples to be used.
90
+ * @param embeddings The instance of Embeddings to be used.
91
+ * @param vectorStoreCls The VectorStore class to be used.
92
+ * @param options The options object for the SemanticSimilarityExampleSelector.
93
+ * @returns Promise that resolves with a new instance of SemanticSimilarityExampleSelector.
94
+ */
64
95
  static async fromExamples(examples, embeddings, vectorStoreCls, options = {}) {
65
96
  const inputKeys = options.inputKeys ?? null;
66
97
  const stringExamples = examples.map((example) => sortedValues(inputKeys
@@ -2,20 +2,55 @@ import { Embeddings } from "../../embeddings/base.js";
2
2
  import { VectorStore } from "../../vectorstores/base.js";
3
3
  import { Example } from "../../schema/index.js";
4
4
  import { BaseExampleSelector } from "../base.js";
5
+ /**
6
+ * Interface for the input data of the SemanticSimilarityExampleSelector
7
+ * class.
8
+ */
5
9
  export interface SemanticSimilarityExampleSelectorInput {
6
10
  vectorStore: VectorStore;
7
11
  k?: number;
8
12
  exampleKeys?: string[];
9
13
  inputKeys?: string[];
10
14
  }
15
+ /**
16
+ * Class that selects examples based on semantic similarity. It extends
17
+ * the BaseExampleSelector class.
18
+ */
11
19
  export declare class SemanticSimilarityExampleSelector extends BaseExampleSelector {
12
20
  vectorStore: VectorStore;
13
21
  k: number;
14
22
  exampleKeys?: string[];
15
23
  inputKeys?: string[];
16
24
  constructor(data: SemanticSimilarityExampleSelectorInput);
25
+ /**
26
+ * Method that adds a new example to the vectorStore. The example is
27
+ * converted to a string and added to the vectorStore as a document.
28
+ * @param example The example to be added to the vectorStore.
29
+ * @returns Promise that resolves when the example has been added to the vectorStore.
30
+ */
17
31
  addExample(example: Example): Promise<void>;
32
+ /**
33
+ * Method that selects which examples to use based on semantic similarity.
34
+ * It performs a similarity search in the vectorStore using the input
35
+ * variables and returns the examples with the highest similarity.
36
+ * @param inputVariables The input variables used for the similarity search.
37
+ * @returns Promise that resolves with an array of the selected examples.
38
+ */
18
39
  selectExamples<T>(inputVariables: Record<string, T>): Promise<Example[]>;
40
+ /**
41
+ * Static method that creates a new instance of
42
+ * SemanticSimilarityExampleSelector. It takes a list of examples, an
43
+ * instance of Embeddings, a VectorStore class, and an options object as
44
+ * parameters. It converts the examples to strings, creates a VectorStore
45
+ * from the strings and the embeddings, and returns a new
46
+ * SemanticSimilarityExampleSelector with the created VectorStore and the
47
+ * options provided.
48
+ * @param examples The list of examples to be used.
49
+ * @param embeddings The instance of Embeddings to be used.
50
+ * @param vectorStoreCls The VectorStore class to be used.
51
+ * @param options The options object for the SemanticSimilarityExampleSelector.
52
+ * @returns Promise that resolves with a new instance of SemanticSimilarityExampleSelector.
53
+ */
19
54
  static fromExamples<C extends typeof VectorStore>(examples: Record<string, string>[], embeddings: Embeddings, vectorStoreCls: C, options?: {
20
55
  k?: number;
21
56
  inputKeys?: string[];
@@ -5,6 +5,10 @@ function sortedValues(values) {
5
5
  .sort()
6
6
  .map((key) => values[key]);
7
7
  }
8
+ /**
9
+ * Class that selects examples based on semantic similarity. It extends
10
+ * the BaseExampleSelector class.
11
+ */
8
12
  export class SemanticSimilarityExampleSelector extends BaseExampleSelector {
9
13
  constructor(data) {
10
14
  super(data);
@@ -37,6 +41,12 @@ export class SemanticSimilarityExampleSelector extends BaseExampleSelector {
37
41
  this.exampleKeys = data.exampleKeys;
38
42
  this.inputKeys = data.inputKeys;
39
43
  }
44
+ /**
45
+ * Method that adds a new example to the vectorStore. The example is
46
+ * converted to a string and added to the vectorStore as a document.
47
+ * @param example The example to be added to the vectorStore.
48
+ * @returns Promise that resolves when the example has been added to the vectorStore.
49
+ */
40
50
  async addExample(example) {
41
51
  const inputKeys = this.inputKeys ?? Object.keys(example);
42
52
  const stringExample = sortedValues(inputKeys.reduce((acc, key) => ({ ...acc, [key]: example[key] }), {})).join(" ");
@@ -47,6 +57,13 @@ export class SemanticSimilarityExampleSelector extends BaseExampleSelector {
47
57
  }),
48
58
  ]);
49
59
  }
60
+ /**
61
+ * Method that selects which examples to use based on semantic similarity.
62
+ * It performs a similarity search in the vectorStore using the input
63
+ * variables and returns the examples with the highest similarity.
64
+ * @param inputVariables The input variables used for the similarity search.
65
+ * @returns Promise that resolves with an array of the selected examples.
66
+ */
50
67
  async selectExamples(inputVariables) {
51
68
  const inputKeys = this.inputKeys ?? Object.keys(inputVariables);
52
69
  const query = sortedValues(inputKeys.reduce((acc, key) => ({ ...acc, [key]: inputVariables[key] }), {})).join(" ");
@@ -58,6 +75,20 @@ export class SemanticSimilarityExampleSelector extends BaseExampleSelector {
58
75
  }
59
76
  return examples;
60
77
  }
78
+ /**
79
+ * Static method that creates a new instance of
80
+ * SemanticSimilarityExampleSelector. It takes a list of examples, an
81
+ * instance of Embeddings, a VectorStore class, and an options object as
82
+ * parameters. It converts the examples to strings, creates a VectorStore
83
+ * from the strings and the embeddings, and returns a new
84
+ * SemanticSimilarityExampleSelector with the created VectorStore and the
85
+ * options provided.
86
+ * @param examples The list of examples to be used.
87
+ * @param embeddings The instance of Embeddings to be used.
88
+ * @param vectorStoreCls The VectorStore class to be used.
89
+ * @param options The options object for the SemanticSimilarityExampleSelector.
90
+ * @returns Promise that resolves with a new instance of SemanticSimilarityExampleSelector.
91
+ */
61
92
  static async fromExamples(examples, embeddings, vectorStoreCls, options = {}) {
62
93
  const inputKeys = options.inputKeys ?? null;
63
94
  const stringExamples = examples.map((example) => sortedValues(inputKeys
@@ -1,13 +1,29 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isChatModel = exports.isLLM = exports.ConditionalPromptSelector = exports.BasePromptSelector = void 0;
4
+ /**
5
+ * Abstract class that defines the interface for selecting a prompt for a
6
+ * given language model.
7
+ */
4
8
  class BasePromptSelector {
9
+ /**
10
+ * Asynchronous version of `getPrompt` that also accepts an options object
11
+ * for partial variables.
12
+ * @param llm The language model for which to get a prompt.
13
+ * @param options Optional object for partial variables.
14
+ * @returns A Promise that resolves to a prompt template.
15
+ */
5
16
  async getPromptAsync(llm, options) {
6
17
  const prompt = this.getPrompt(llm);
7
18
  return prompt.partial(options?.partialVariables ?? {});
8
19
  }
9
20
  }
10
21
  exports.BasePromptSelector = BasePromptSelector;
22
+ /**
23
+ * Concrete implementation of `BasePromptSelector` that selects a prompt
24
+ * based on a set of conditions. It has a default prompt that it returns
25
+ * if none of the conditions are met.
26
+ */
11
27
  class ConditionalPromptSelector extends BasePromptSelector {
12
28
  constructor(default_prompt, conditionals = []) {
13
29
  super();
@@ -26,6 +42,12 @@ class ConditionalPromptSelector extends BasePromptSelector {
26
42
  this.defaultPrompt = default_prompt;
27
43
  this.conditionals = conditionals;
28
44
  }
45
+ /**
46
+ * Method that selects a prompt based on a set of conditions. If none of
47
+ * the conditions are met, it returns the default prompt.
48
+ * @param llm The language model for which to get a prompt.
49
+ * @returns A prompt template.
50
+ */
29
51
  getPrompt(llm) {
30
52
  for (const [condition, prompt] of this.conditionals) {
31
53
  if (condition(llm)) {
@@ -36,10 +58,18 @@ class ConditionalPromptSelector extends BasePromptSelector {
36
58
  }
37
59
  }
38
60
  exports.ConditionalPromptSelector = ConditionalPromptSelector;
61
+ /**
62
+ * Type guard function that checks if a given language model is of type
63
+ * `BaseLLM`.
64
+ */
39
65
  function isLLM(llm) {
40
66
  return llm._modelType() === "base_llm";
41
67
  }
42
68
  exports.isLLM = isLLM;
69
+ /**
70
+ * Type guard function that checks if a given language model is of type
71
+ * `BaseChatModel`.
72
+ */
43
73
  function isChatModel(llm) {
44
74
  return llm._modelType() === "base_chat_model";
45
75
  }
@@ -6,10 +6,33 @@ import { PartialValues } from "../../schema/index.js";
6
6
  export type BaseGetPromptAsyncOptions = {
7
7
  partialVariables?: PartialValues;
8
8
  };
9
+ /**
10
+ * Abstract class that defines the interface for selecting a prompt for a
11
+ * given language model.
12
+ */
9
13
  export declare abstract class BasePromptSelector {
14
+ /**
15
+ * Abstract method that must be implemented by any class that extends
16
+ * `BasePromptSelector`. It takes a language model as an argument and
17
+ * returns a prompt template.
18
+ * @param llm The language model for which to get a prompt.
19
+ * @returns A prompt template.
20
+ */
10
21
  abstract getPrompt(llm: BaseLanguageModel): BasePromptTemplate;
22
+ /**
23
+ * Asynchronous version of `getPrompt` that also accepts an options object
24
+ * for partial variables.
25
+ * @param llm The language model for which to get a prompt.
26
+ * @param options Optional object for partial variables.
27
+ * @returns A Promise that resolves to a prompt template.
28
+ */
11
29
  getPromptAsync(llm: BaseLanguageModel, options?: BaseGetPromptAsyncOptions): Promise<BasePromptTemplate>;
12
30
  }
31
+ /**
32
+ * Concrete implementation of `BasePromptSelector` that selects a prompt
33
+ * based on a set of conditions. It has a default prompt that it returns
34
+ * if none of the conditions are met.
35
+ */
13
36
  export declare class ConditionalPromptSelector extends BasePromptSelector {
14
37
  defaultPrompt: BasePromptTemplate;
15
38
  conditionals: Array<[
@@ -20,7 +43,21 @@ export declare class ConditionalPromptSelector extends BasePromptSelector {
20
43
  condition: (llm: BaseLanguageModel) => boolean,
21
44
  prompt: BasePromptTemplate
22
45
  ]>);
46
+ /**
47
+ * Method that selects a prompt based on a set of conditions. If none of
48
+ * the conditions are met, it returns the default prompt.
49
+ * @param llm The language model for which to get a prompt.
50
+ * @returns A prompt template.
51
+ */
23
52
  getPrompt(llm: BaseLanguageModel): BasePromptTemplate;
24
53
  }
54
+ /**
55
+ * Type guard function that checks if a given language model is of type
56
+ * `BaseLLM`.
57
+ */
25
58
  export declare function isLLM(llm: BaseLanguageModel): llm is BaseLLM;
59
+ /**
60
+ * Type guard function that checks if a given language model is of type
61
+ * `BaseChatModel`.
62
+ */
26
63
  export declare function isChatModel(llm: BaseLanguageModel): llm is BaseChatModel;
@@ -1,9 +1,25 @@
1
+ /**
2
+ * Abstract class that defines the interface for selecting a prompt for a
3
+ * given language model.
4
+ */
1
5
  export class BasePromptSelector {
6
+ /**
7
+ * Asynchronous version of `getPrompt` that also accepts an options object
8
+ * for partial variables.
9
+ * @param llm The language model for which to get a prompt.
10
+ * @param options Optional object for partial variables.
11
+ * @returns A Promise that resolves to a prompt template.
12
+ */
2
13
  async getPromptAsync(llm, options) {
3
14
  const prompt = this.getPrompt(llm);
4
15
  return prompt.partial(options?.partialVariables ?? {});
5
16
  }
6
17
  }
18
+ /**
19
+ * Concrete implementation of `BasePromptSelector` that selects a prompt
20
+ * based on a set of conditions. It has a default prompt that it returns
21
+ * if none of the conditions are met.
22
+ */
7
23
  export class ConditionalPromptSelector extends BasePromptSelector {
8
24
  constructor(default_prompt, conditionals = []) {
9
25
  super();
@@ -22,6 +38,12 @@ export class ConditionalPromptSelector extends BasePromptSelector {
22
38
  this.defaultPrompt = default_prompt;
23
39
  this.conditionals = conditionals;
24
40
  }
41
+ /**
42
+ * Method that selects a prompt based on a set of conditions. If none of
43
+ * the conditions are met, it returns the default prompt.
44
+ * @param llm The language model for which to get a prompt.
45
+ * @returns A prompt template.
46
+ */
25
47
  getPrompt(llm) {
26
48
  for (const [condition, prompt] of this.conditionals) {
27
49
  if (condition(llm)) {
@@ -31,9 +53,17 @@ export class ConditionalPromptSelector extends BasePromptSelector {
31
53
  return this.defaultPrompt;
32
54
  }
33
55
  }
56
+ /**
57
+ * Type guard function that checks if a given language model is of type
58
+ * `BaseLLM`.
59
+ */
34
60
  export function isLLM(llm) {
35
61
  return llm._modelType() === "base_llm";
36
62
  }
63
+ /**
64
+ * Type guard function that checks if a given language model is of type
65
+ * `BaseChatModel`.
66
+ */
37
67
  export function isChatModel(llm) {
38
68
  return llm._modelType() === "base_chat_model";
39
69
  }
@@ -1,11 +1,30 @@
1
1
  import type { Example } from "../schema/index.js";
2
2
  import type { TemplateFormat } from "./template.js";
3
+ /**
4
+ * Represents a serialized version of a prompt template. This type is used
5
+ * to create dynamic prompts for language models. It contains an optional
6
+ * `_type` field which, if present, is set to 'prompt'. It also includes
7
+ * `input_variables`, an array of strings representing the variables to be
8
+ * used in the prompt, an optional `template_format` specifying the format
9
+ * of the template, and an optional `template` which is the actual
10
+ * template string.
11
+ */
3
12
  export type SerializedPromptTemplate = {
4
13
  _type?: "prompt";
5
14
  input_variables: string[];
6
15
  template_format?: TemplateFormat;
7
16
  template?: string;
8
17
  };
18
+ /**
19
+ * Represents a serialized version of a few-shot template. This type
20
+ * includes an `_type` field set to 'few_shot', `input_variables` which
21
+ * are an array of strings representing the variables to be used in the
22
+ * template, `examples` which can be a string or an array of Example
23
+ * objects, an optional `example_prompt` which is a
24
+ * SerializedPromptTemplate, `example_separator` which is a string,
25
+ * optional `prefix` and `suffix` strings, and `template_format` which
26
+ * specifies the format of the template.
27
+ */
9
28
  export type SerializedFewShotTemplate = {
10
29
  _type: "few_shot";
11
30
  input_variables: string[];
@@ -16,4 +35,9 @@ export type SerializedFewShotTemplate = {
16
35
  suffix?: string;
17
36
  template_format: TemplateFormat;
18
37
  };
38
+ /**
39
+ * Represents a serialized version of a base prompt template. This type
40
+ * can be either a SerializedFewShotTemplate or a
41
+ * SerializedPromptTemplate.
42
+ */
19
43
  export type SerializedBasePromptTemplate = SerializedFewShotTemplate | SerializedPromptTemplate;