langchain 0.0.203 → 0.0.204-rc.0

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 (494) hide show
  1. package/dist/cache/cloudflare_kv.cjs +15 -69
  2. package/dist/cache/cloudflare_kv.d.ts +1 -42
  3. package/dist/cache/cloudflare_kv.js +1 -67
  4. package/dist/cache/momento.cjs +15 -135
  5. package/dist/cache/momento.d.ts +1 -91
  6. package/dist/cache/momento.js +1 -133
  7. package/dist/cache/upstash_redis.cjs +15 -72
  8. package/dist/cache/upstash_redis.d.ts +1 -45
  9. package/dist/cache/upstash_redis.js +1 -70
  10. package/dist/callbacks/handlers/llmonitor.cjs +14 -238
  11. package/dist/callbacks/handlers/llmonitor.d.ts +1 -35
  12. package/dist/callbacks/handlers/llmonitor.js +1 -233
  13. package/dist/chains/openai_moderation.cjs +2 -2
  14. package/dist/chains/openai_moderation.d.ts +1 -1
  15. package/dist/chains/openai_moderation.js +1 -1
  16. package/dist/chat_models/anthropic.d.ts +4 -4
  17. package/dist/chat_models/baiduwenxin.cjs +15 -411
  18. package/dist/chat_models/baiduwenxin.d.ts +1 -150
  19. package/dist/chat_models/baiduwenxin.js +1 -409
  20. package/dist/chat_models/bedrock/index.cjs +15 -33
  21. package/dist/chat_models/bedrock/index.d.ts +1 -23
  22. package/dist/chat_models/bedrock/index.js +1 -29
  23. package/dist/chat_models/bedrock/web.cjs +15 -360
  24. package/dist/chat_models/bedrock/web.d.ts +1 -82
  25. package/dist/chat_models/bedrock/web.js +1 -356
  26. package/dist/chat_models/cloudflare_workersai.cjs +15 -216
  27. package/dist/chat_models/cloudflare_workersai.d.ts +1 -68
  28. package/dist/chat_models/cloudflare_workersai.js +1 -214
  29. package/dist/chat_models/fireworks.cjs +15 -89
  30. package/dist/chat_models/fireworks.d.ts +1 -43
  31. package/dist/chat_models/fireworks.js +1 -87
  32. package/dist/chat_models/googlepalm.cjs +15 -235
  33. package/dist/chat_models/googlepalm.d.ts +1 -108
  34. package/dist/chat_models/googlepalm.js +1 -233
  35. package/dist/chat_models/googlevertexai/index.cjs +15 -40
  36. package/dist/chat_models/googlevertexai/index.d.ts +1 -28
  37. package/dist/chat_models/googlevertexai/index.js +1 -38
  38. package/dist/chat_models/googlevertexai/web.cjs +15 -39
  39. package/dist/chat_models/googlevertexai/web.d.ts +1 -28
  40. package/dist/chat_models/googlevertexai/web.js +1 -37
  41. package/dist/chat_models/iflytek_xinghuo/index.cjs +14 -40
  42. package/dist/chat_models/iflytek_xinghuo/index.d.ts +1 -13
  43. package/dist/chat_models/iflytek_xinghuo/index.js +1 -36
  44. package/dist/chat_models/iflytek_xinghuo/web.cjs +15 -36
  45. package/dist/chat_models/iflytek_xinghuo/web.d.ts +1 -13
  46. package/dist/chat_models/iflytek_xinghuo/web.js +1 -34
  47. package/dist/chat_models/llama_cpp.cjs +15 -275
  48. package/dist/chat_models/llama_cpp.d.ts +1 -71
  49. package/dist/chat_models/llama_cpp.js +1 -273
  50. package/dist/chat_models/minimax.cjs +15 -578
  51. package/dist/chat_models/minimax.d.ts +1 -369
  52. package/dist/chat_models/minimax.js +1 -576
  53. package/dist/chat_models/ollama.cjs +15 -394
  54. package/dist/chat_models/ollama.d.ts +1 -127
  55. package/dist/chat_models/ollama.js +1 -392
  56. package/dist/chat_models/openai.cjs +4 -698
  57. package/dist/chat_models/openai.d.ts +4 -137
  58. package/dist/chat_models/openai.js +2 -695
  59. package/dist/chat_models/portkey.cjs +15 -167
  60. package/dist/chat_models/portkey.d.ts +1 -17
  61. package/dist/chat_models/portkey.js +1 -165
  62. package/dist/chat_models/yandex.cjs +15 -132
  63. package/dist/chat_models/yandex.d.ts +1 -30
  64. package/dist/chat_models/yandex.js +1 -130
  65. package/dist/document_loaders/fs/openai_whisper_audio.cjs +2 -2
  66. package/dist/document_loaders/fs/openai_whisper_audio.d.ts +1 -1
  67. package/dist/document_loaders/fs/openai_whisper_audio.js +1 -1
  68. package/dist/document_transformers/html_to_text.cjs +15 -47
  69. package/dist/document_transformers/html_to_text.d.ts +1 -30
  70. package/dist/document_transformers/html_to_text.js +1 -45
  71. package/dist/document_transformers/mozilla_readability.cjs +15 -53
  72. package/dist/document_transformers/mozilla_readability.d.ts +1 -31
  73. package/dist/document_transformers/mozilla_readability.js +1 -51
  74. package/dist/embeddings/bedrock.cjs +15 -109
  75. package/dist/embeddings/bedrock.d.ts +1 -71
  76. package/dist/embeddings/bedrock.js +1 -107
  77. package/dist/embeddings/cloudflare_workersai.cjs +15 -67
  78. package/dist/embeddings/cloudflare_workersai.d.ts +1 -28
  79. package/dist/embeddings/cloudflare_workersai.js +1 -65
  80. package/dist/embeddings/cohere.cjs +15 -124
  81. package/dist/embeddings/cohere.d.ts +1 -66
  82. package/dist/embeddings/cohere.js +1 -122
  83. package/dist/embeddings/googlepalm.cjs +15 -88
  84. package/dist/embeddings/googlepalm.d.ts +1 -61
  85. package/dist/embeddings/googlepalm.js +1 -86
  86. package/dist/embeddings/googlevertexai.cjs +15 -81
  87. package/dist/embeddings/googlevertexai.d.ts +1 -54
  88. package/dist/embeddings/googlevertexai.js +1 -79
  89. package/dist/embeddings/gradient_ai.cjs +15 -101
  90. package/dist/embeddings/gradient_ai.d.ts +1 -48
  91. package/dist/embeddings/gradient_ai.js +1 -99
  92. package/dist/embeddings/hf.cjs +15 -75
  93. package/dist/embeddings/hf.d.ts +1 -41
  94. package/dist/embeddings/hf.js +1 -73
  95. package/dist/embeddings/hf_transformers.cjs +15 -87
  96. package/dist/embeddings/hf_transformers.d.ts +1 -47
  97. package/dist/embeddings/hf_transformers.js +1 -85
  98. package/dist/embeddings/llama_cpp.cjs +15 -81
  99. package/dist/embeddings/llama_cpp.d.ts +1 -42
  100. package/dist/embeddings/llama_cpp.js +1 -79
  101. package/dist/embeddings/minimax.cjs +15 -165
  102. package/dist/embeddings/minimax.d.ts +1 -119
  103. package/dist/embeddings/minimax.js +1 -163
  104. package/dist/embeddings/ollama.cjs +15 -118
  105. package/dist/embeddings/ollama.d.ts +1 -34
  106. package/dist/embeddings/ollama.js +1 -116
  107. package/dist/embeddings/openai.cjs +2 -240
  108. package/dist/embeddings/openai.d.ts +1 -82
  109. package/dist/embeddings/openai.js +1 -239
  110. package/dist/embeddings/tensorflow.cjs +3 -96
  111. package/dist/embeddings/tensorflow.d.ts +1 -59
  112. package/dist/embeddings/tensorflow.js +1 -83
  113. package/dist/embeddings/voyage.cjs +15 -118
  114. package/dist/embeddings/voyage.d.ts +1 -66
  115. package/dist/embeddings/voyage.js +1 -116
  116. package/dist/experimental/chat_models/ollama_functions.d.ts +1 -1
  117. package/dist/experimental/openai_assistant/index.cjs +3 -3
  118. package/dist/experimental/openai_assistant/index.d.ts +1 -1
  119. package/dist/experimental/openai_assistant/index.js +1 -1
  120. package/dist/experimental/openai_assistant/schema.d.ts +1 -1
  121. package/dist/experimental/openai_files/index.cjs +2 -2
  122. package/dist/experimental/openai_files/index.d.ts +1 -1
  123. package/dist/experimental/openai_files/index.js +1 -1
  124. package/dist/graphs/neo4j_graph.cjs +3 -254
  125. package/dist/graphs/neo4j_graph.d.ts +1 -63
  126. package/dist/graphs/neo4j_graph.js +1 -241
  127. package/dist/llms/ai21.cjs +15 -200
  128. package/dist/llms/ai21.d.ts +1 -100
  129. package/dist/llms/ai21.js +1 -198
  130. package/dist/llms/aleph_alpha.cjs +15 -374
  131. package/dist/llms/aleph_alpha.d.ts +1 -161
  132. package/dist/llms/aleph_alpha.js +1 -372
  133. package/dist/llms/bedrock/web.cjs +15 -310
  134. package/dist/llms/bedrock/web.d.ts +1 -66
  135. package/dist/llms/bedrock/web.js +1 -308
  136. package/dist/llms/cloudflare_workersai.cjs +15 -168
  137. package/dist/llms/cloudflare_workersai.d.ts +1 -55
  138. package/dist/llms/cloudflare_workersai.js +1 -166
  139. package/dist/llms/cohere.cjs +15 -110
  140. package/dist/llms/cohere.d.ts +1 -54
  141. package/dist/llms/cohere.js +1 -108
  142. package/dist/llms/fireworks.cjs +15 -90
  143. package/dist/llms/fireworks.d.ts +1 -33
  144. package/dist/llms/fireworks.js +1 -88
  145. package/dist/llms/googlepalm.cjs +15 -134
  146. package/dist/llms/googlepalm.d.ts +1 -92
  147. package/dist/llms/googlepalm.js +1 -132
  148. package/dist/llms/googlevertexai/index.cjs +15 -45
  149. package/dist/llms/googlevertexai/index.d.ts +1 -38
  150. package/dist/llms/googlevertexai/index.js +1 -43
  151. package/dist/llms/googlevertexai/web.cjs +15 -42
  152. package/dist/llms/googlevertexai/web.d.ts +1 -36
  153. package/dist/llms/googlevertexai/web.js +1 -40
  154. package/dist/llms/gradient_ai.cjs +15 -110
  155. package/dist/llms/gradient_ai.d.ts +1 -55
  156. package/dist/llms/gradient_ai.js +1 -108
  157. package/dist/llms/hf.cjs +15 -136
  158. package/dist/llms/hf.d.ts +1 -68
  159. package/dist/llms/hf.js +1 -134
  160. package/dist/llms/llama_cpp.cjs +15 -111
  161. package/dist/llms/llama_cpp.d.ts +1 -41
  162. package/dist/llms/llama_cpp.js +1 -109
  163. package/dist/llms/ollama.cjs +15 -353
  164. package/dist/llms/ollama.d.ts +1 -106
  165. package/dist/llms/ollama.js +1 -351
  166. package/dist/llms/openai-chat.cjs +3 -445
  167. package/dist/llms/openai-chat.d.ts +4 -123
  168. package/dist/llms/openai-chat.js +2 -443
  169. package/dist/llms/openai.cjs +6 -530
  170. package/dist/llms/openai.d.ts +4 -123
  171. package/dist/llms/openai.js +2 -525
  172. package/dist/llms/portkey.cjs +14 -168
  173. package/dist/llms/portkey.d.ts +1 -57
  174. package/dist/llms/portkey.js +1 -162
  175. package/dist/llms/raycast.cjs +15 -94
  176. package/dist/llms/raycast.d.ts +1 -50
  177. package/dist/llms/raycast.js +1 -92
  178. package/dist/llms/replicate.cjs +15 -132
  179. package/dist/llms/replicate.d.ts +1 -51
  180. package/dist/llms/replicate.js +1 -130
  181. package/dist/llms/sagemaker_endpoint.cjs +15 -203
  182. package/dist/llms/sagemaker_endpoint.d.ts +1 -121
  183. package/dist/llms/sagemaker_endpoint.js +1 -200
  184. package/dist/llms/watsonx_ai.cjs +15 -152
  185. package/dist/llms/watsonx_ai.d.ts +1 -72
  186. package/dist/llms/watsonx_ai.js +1 -150
  187. package/dist/llms/writer.cjs +15 -165
  188. package/dist/llms/writer.d.ts +1 -60
  189. package/dist/llms/writer.js +1 -163
  190. package/dist/llms/yandex.cjs +15 -98
  191. package/dist/llms/yandex.d.ts +1 -40
  192. package/dist/llms/yandex.js +1 -96
  193. package/dist/load/index.cjs +3 -1
  194. package/dist/load/index.d.ts +1 -1
  195. package/dist/load/index.js +3 -1
  196. package/dist/retrievers/amazon_kendra.cjs +15 -273
  197. package/dist/retrievers/amazon_kendra.d.ts +1 -142
  198. package/dist/retrievers/amazon_kendra.js +1 -271
  199. package/dist/retrievers/chaindesk.cjs +15 -88
  200. package/dist/retrievers/chaindesk.d.ts +1 -31
  201. package/dist/retrievers/chaindesk.js +1 -86
  202. package/dist/retrievers/databerry.cjs +15 -82
  203. package/dist/retrievers/databerry.d.ts +1 -34
  204. package/dist/retrievers/databerry.js +1 -80
  205. package/dist/retrievers/metal.cjs +15 -51
  206. package/dist/retrievers/metal.d.ts +1 -36
  207. package/dist/retrievers/metal.js +1 -49
  208. package/dist/retrievers/supabase.cjs +15 -167
  209. package/dist/retrievers/supabase.d.ts +1 -82
  210. package/dist/retrievers/supabase.js +1 -165
  211. package/dist/retrievers/tavily_search_api.cjs +15 -142
  212. package/dist/retrievers/tavily_search_api.d.ts +1 -38
  213. package/dist/retrievers/tavily_search_api.js +1 -140
  214. package/dist/retrievers/zep.cjs +15 -150
  215. package/dist/retrievers/zep.d.ts +1 -76
  216. package/dist/retrievers/zep.js +1 -148
  217. package/dist/schema/document.cjs +2 -16
  218. package/dist/schema/document.d.ts +1 -11
  219. package/dist/schema/document.js +1 -16
  220. package/dist/schema/index.cjs +2 -7
  221. package/dist/schema/index.d.ts +2 -10
  222. package/dist/schema/index.js +1 -6
  223. package/dist/storage/convex.cjs +15 -143
  224. package/dist/storage/convex.d.ts +1 -106
  225. package/dist/storage/convex.js +1 -141
  226. package/dist/storage/ioredis.cjs +15 -158
  227. package/dist/storage/ioredis.d.ts +1 -71
  228. package/dist/storage/ioredis.js +1 -156
  229. package/dist/storage/upstash_redis.cjs +15 -172
  230. package/dist/storage/upstash_redis.d.ts +1 -78
  231. package/dist/storage/upstash_redis.js +1 -170
  232. package/dist/storage/vercel_kv.cjs +15 -161
  233. package/dist/storage/vercel_kv.d.ts +1 -62
  234. package/dist/storage/vercel_kv.js +1 -159
  235. package/dist/stores/doc/in_memory.cjs +15 -105
  236. package/dist/stores/doc/in_memory.d.ts +1 -46
  237. package/dist/stores/doc/in_memory.js +1 -102
  238. package/dist/stores/message/cassandra.cjs +15 -158
  239. package/dist/stores/message/cassandra.d.ts +1 -69
  240. package/dist/stores/message/cassandra.js +1 -156
  241. package/dist/stores/message/cloudflare_d1.cjs +15 -150
  242. package/dist/stores/message/cloudflare_d1.d.ts +1 -67
  243. package/dist/stores/message/cloudflare_d1.js +1 -148
  244. package/dist/stores/message/convex.cjs +15 -118
  245. package/dist/stores/message/convex.d.ts +1 -81
  246. package/dist/stores/message/convex.js +1 -116
  247. package/dist/stores/message/dynamodb.cjs +15 -159
  248. package/dist/stores/message/dynamodb.d.ts +1 -51
  249. package/dist/stores/message/dynamodb.js +1 -157
  250. package/dist/stores/message/firestore.cjs +15 -185
  251. package/dist/stores/message/firestore.d.ts +1 -68
  252. package/dist/stores/message/firestore.js +1 -183
  253. package/dist/stores/message/ioredis.cjs +15 -98
  254. package/dist/stores/message/ioredis.d.ts +1 -64
  255. package/dist/stores/message/ioredis.js +1 -96
  256. package/dist/stores/message/momento.cjs +15 -160
  257. package/dist/stores/message/momento.d.ts +1 -97
  258. package/dist/stores/message/momento.js +1 -158
  259. package/dist/stores/message/mongodb.cjs +15 -57
  260. package/dist/stores/message/mongodb.d.ts +1 -26
  261. package/dist/stores/message/mongodb.js +1 -55
  262. package/dist/stores/message/planetscale.cjs +15 -170
  263. package/dist/stores/message/planetscale.d.ts +1 -75
  264. package/dist/stores/message/planetscale.js +1 -168
  265. package/dist/stores/message/redis.cjs +15 -114
  266. package/dist/stores/message/redis.d.ts +1 -69
  267. package/dist/stores/message/redis.js +1 -112
  268. package/dist/stores/message/upstash_redis.cjs +15 -85
  269. package/dist/stores/message/upstash_redis.d.ts +1 -43
  270. package/dist/stores/message/upstash_redis.js +1 -83
  271. package/dist/stores/message/utils.cjs +3 -23
  272. package/dist/stores/message/utils.d.ts +1 -17
  273. package/dist/stores/message/utils.js +1 -21
  274. package/dist/stores/message/xata.cjs +15 -216
  275. package/dist/stores/message/xata.d.ts +1 -76
  276. package/dist/stores/message/xata.js +1 -214
  277. package/dist/tools/IFTTTWebhook.cjs +15 -87
  278. package/dist/tools/IFTTTWebhook.d.ts +1 -50
  279. package/dist/tools/IFTTTWebhook.js +1 -85
  280. package/dist/tools/aiplugin.cjs +15 -73
  281. package/dist/tools/aiplugin.d.ts +1 -34
  282. package/dist/tools/aiplugin.js +1 -71
  283. package/dist/tools/aws_sfn.cjs +15 -201
  284. package/dist/tools/aws_sfn.d.ts +1 -57
  285. package/dist/tools/aws_sfn.js +1 -197
  286. package/dist/tools/bingserpapi.cjs +15 -76
  287. package/dist/tools/bingserpapi.d.ts +1 -23
  288. package/dist/tools/bingserpapi.js +1 -75
  289. package/dist/tools/brave_search.cjs +15 -64
  290. package/dist/tools/brave_search.d.ts +1 -23
  291. package/dist/tools/brave_search.js +1 -62
  292. package/dist/tools/connery.cjs +15 -277
  293. package/dist/tools/connery.d.ts +1 -145
  294. package/dist/tools/connery.js +1 -274
  295. package/dist/tools/convert_to_openai.d.ts +1 -1
  296. package/dist/tools/dadjokeapi.cjs +15 -46
  297. package/dist/tools/dadjokeapi.d.ts +1 -15
  298. package/dist/tools/dadjokeapi.js +1 -45
  299. package/dist/tools/dataforseo_api_search.cjs +15 -280
  300. package/dist/tools/dataforseo_api_search.d.ts +1 -170
  301. package/dist/tools/dataforseo_api_search.js +1 -278
  302. package/dist/tools/gmail/index.cjs +15 -11
  303. package/dist/tools/gmail/index.d.ts +1 -11
  304. package/dist/tools/gmail/index.js +1 -5
  305. package/dist/tools/google_custom_search.cjs +15 -70
  306. package/dist/tools/google_custom_search.d.ts +1 -25
  307. package/dist/tools/google_custom_search.js +1 -68
  308. package/dist/tools/google_places.cjs +15 -79
  309. package/dist/tools/google_places.d.ts +1 -21
  310. package/dist/tools/google_places.js +1 -77
  311. package/dist/tools/searchapi.cjs +15 -164
  312. package/dist/tools/searchapi.d.ts +1 -91
  313. package/dist/tools/searchapi.js +1 -162
  314. package/dist/tools/searxng_search.cjs +15 -156
  315. package/dist/tools/searxng_search.d.ts +1 -114
  316. package/dist/tools/searxng_search.js +1 -154
  317. package/dist/tools/serpapi.cjs +15 -199
  318. package/dist/tools/serpapi.d.ts +1 -302
  319. package/dist/tools/serpapi.js +1 -197
  320. package/dist/tools/serper.cjs +15 -94
  321. package/dist/tools/serper.d.ts +1 -32
  322. package/dist/tools/serper.js +1 -92
  323. package/dist/tools/wikipedia_query_run.cjs +15 -133
  324. package/dist/tools/wikipedia_query_run.d.ts +1 -54
  325. package/dist/tools/wikipedia_query_run.js +1 -131
  326. package/dist/tools/wolframalpha.cjs +15 -47
  327. package/dist/tools/wolframalpha.d.ts +1 -21
  328. package/dist/tools/wolframalpha.js +1 -45
  329. package/dist/types/openai-types.d.ts +1 -1
  330. package/dist/util/convex.d.ts +1 -1
  331. package/dist/util/event-source-parse.cjs +15 -224
  332. package/dist/util/event-source-parse.d.ts +1 -39
  333. package/dist/util/event-source-parse.js +1 -219
  334. package/dist/util/math.cjs +15 -123
  335. package/dist/util/math.d.ts +1 -40
  336. package/dist/util/math.js +1 -116
  337. package/dist/util/openapi.d.ts +2 -2
  338. package/dist/vectorstores/analyticdb.cjs +3 -333
  339. package/dist/vectorstores/analyticdb.d.ts +1 -110
  340. package/dist/vectorstores/analyticdb.js +1 -317
  341. package/dist/vectorstores/base.cjs +15 -165
  342. package/dist/vectorstores/base.d.ts +1 -104
  343. package/dist/vectorstores/base.js +1 -161
  344. package/dist/vectorstores/cassandra.cjs +15 -478
  345. package/dist/vectorstores/cassandra.d.ts +1 -162
  346. package/dist/vectorstores/cassandra.js +1 -476
  347. package/dist/vectorstores/chroma.cjs +3 -312
  348. package/dist/vectorstores/chroma.d.ts +1 -133
  349. package/dist/vectorstores/chroma.js +1 -299
  350. package/dist/vectorstores/clickhouse.cjs +3 -272
  351. package/dist/vectorstores/clickhouse.d.ts +1 -126
  352. package/dist/vectorstores/clickhouse.js +1 -259
  353. package/dist/vectorstores/closevector/node.cjs +15 -107
  354. package/dist/vectorstores/closevector/node.d.ts +1 -83
  355. package/dist/vectorstores/closevector/node.js +1 -105
  356. package/dist/vectorstores/closevector/web.cjs +15 -107
  357. package/dist/vectorstores/closevector/web.d.ts +1 -80
  358. package/dist/vectorstores/closevector/web.js +1 -105
  359. package/dist/vectorstores/cloudflare_vectorize.cjs +3 -186
  360. package/dist/vectorstores/cloudflare_vectorize.d.ts +1 -90
  361. package/dist/vectorstores/cloudflare_vectorize.js +1 -173
  362. package/dist/vectorstores/convex.cjs +15 -175
  363. package/dist/vectorstores/convex.d.ts +1 -134
  364. package/dist/vectorstores/convex.js +1 -173
  365. package/dist/vectorstores/elasticsearch.cjs +3 -287
  366. package/dist/vectorstores/elasticsearch.d.ts +1 -143
  367. package/dist/vectorstores/elasticsearch.js +1 -274
  368. package/dist/vectorstores/faiss.cjs +3 -378
  369. package/dist/vectorstores/faiss.d.ts +1 -127
  370. package/dist/vectorstores/faiss.js +1 -365
  371. package/dist/vectorstores/googlevertexai.cjs +3 -538
  372. package/dist/vectorstores/googlevertexai.d.ts +1 -181
  373. package/dist/vectorstores/googlevertexai.js +1 -521
  374. package/dist/vectorstores/hnswlib.cjs +15 -273
  375. package/dist/vectorstores/hnswlib.d.ts +1 -122
  376. package/dist/vectorstores/hnswlib.js +1 -271
  377. package/dist/vectorstores/lancedb.cjs +15 -126
  378. package/dist/vectorstores/lancedb.d.ts +1 -61
  379. package/dist/vectorstores/lancedb.js +1 -124
  380. package/dist/vectorstores/memory.cjs +15 -143
  381. package/dist/vectorstores/memory.d.ts +1 -92
  382. package/dist/vectorstores/memory.js +1 -141
  383. package/dist/vectorstores/milvus.cjs +3 -592
  384. package/dist/vectorstores/milvus.d.ts +1 -139
  385. package/dist/vectorstores/milvus.js +1 -579
  386. package/dist/vectorstores/momento_vector_index.cjs +3 -305
  387. package/dist/vectorstores/momento_vector_index.d.ts +1 -143
  388. package/dist/vectorstores/momento_vector_index.js +1 -292
  389. package/dist/vectorstores/mongodb_atlas.cjs +15 -218
  390. package/dist/vectorstores/mongodb_atlas.d.ts +1 -118
  391. package/dist/vectorstores/mongodb_atlas.js +1 -216
  392. package/dist/vectorstores/myscale.cjs +3 -263
  393. package/dist/vectorstores/myscale.d.ts +1 -129
  394. package/dist/vectorstores/myscale.js +1 -250
  395. package/dist/vectorstores/neo4j_vector.cjs +3 -578
  396. package/dist/vectorstores/neo4j_vector.d.ts +1 -75
  397. package/dist/vectorstores/neo4j_vector.js +1 -562
  398. package/dist/vectorstores/opensearch.cjs +3 -274
  399. package/dist/vectorstores/opensearch.d.ts +1 -119
  400. package/dist/vectorstores/opensearch.js +1 -261
  401. package/dist/vectorstores/pgvector.cjs +14 -404
  402. package/dist/vectorstores/pgvector.d.ts +1 -160
  403. package/dist/vectorstores/pgvector.js +1 -400
  404. package/dist/vectorstores/pinecone.cjs +3 -280
  405. package/dist/vectorstores/pinecone.d.ts +1 -120
  406. package/dist/vectorstores/pinecone.js +1 -264
  407. package/dist/vectorstores/prisma.cjs +15 -305
  408. package/dist/vectorstores/prisma.d.ts +1 -180
  409. package/dist/vectorstores/prisma.js +1 -303
  410. package/dist/vectorstores/qdrant.cjs +15 -195
  411. package/dist/vectorstores/qdrant.d.ts +1 -95
  412. package/dist/vectorstores/qdrant.js +1 -193
  413. package/dist/vectorstores/redis.cjs +15 -333
  414. package/dist/vectorstores/redis.d.ts +1 -186
  415. package/dist/vectorstores/redis.js +1 -331
  416. package/dist/vectorstores/rockset.cjs +15 -351
  417. package/dist/vectorstores/rockset.d.ts +1 -202
  418. package/dist/vectorstores/rockset.js +1 -347
  419. package/dist/vectorstores/singlestore.cjs +15 -220
  420. package/dist/vectorstores/singlestore.d.ts +1 -88
  421. package/dist/vectorstores/singlestore.js +1 -218
  422. package/dist/vectorstores/supabase.cjs +15 -217
  423. package/dist/vectorstores/supabase.d.ts +1 -118
  424. package/dist/vectorstores/supabase.js +1 -215
  425. package/dist/vectorstores/tigris.cjs +3 -143
  426. package/dist/vectorstores/tigris.d.ts +1 -74
  427. package/dist/vectorstores/tigris.js +1 -130
  428. package/dist/vectorstores/typeorm.cjs +15 -259
  429. package/dist/vectorstores/typeorm.d.ts +1 -109
  430. package/dist/vectorstores/typeorm.js +1 -256
  431. package/dist/vectorstores/typesense.cjs +15 -223
  432. package/dist/vectorstores/typesense.d.ts +1 -131
  433. package/dist/vectorstores/typesense.js +1 -221
  434. package/dist/vectorstores/usearch.cjs +3 -203
  435. package/dist/vectorstores/usearch.d.ts +1 -85
  436. package/dist/vectorstores/usearch.js +1 -187
  437. package/dist/vectorstores/vectara.cjs +3 -409
  438. package/dist/vectorstores/vectara.d.ts +1 -148
  439. package/dist/vectorstores/vectara.js +1 -396
  440. package/dist/vectorstores/vercel_postgres.cjs +15 -320
  441. package/dist/vectorstores/vercel_postgres.d.ts +1 -145
  442. package/dist/vectorstores/vercel_postgres.js +1 -318
  443. package/dist/vectorstores/voy.cjs +15 -156
  444. package/dist/vectorstores/voy.d.ts +1 -73
  445. package/dist/vectorstores/voy.js +1 -154
  446. package/dist/vectorstores/weaviate.cjs +3 -347
  447. package/dist/vectorstores/weaviate.d.ts +1 -140
  448. package/dist/vectorstores/weaviate.js +1 -333
  449. package/dist/vectorstores/xata.cjs +15 -108
  450. package/dist/vectorstores/xata.d.ts +1 -70
  451. package/dist/vectorstores/xata.js +1 -106
  452. package/dist/vectorstores/zep.cjs +15 -313
  453. package/dist/vectorstores/zep.d.ts +1 -146
  454. package/dist/vectorstores/zep.js +1 -311
  455. package/package.json +4 -26
  456. package/dist/chat_models/googlevertexai/common.cjs +0 -274
  457. package/dist/chat_models/googlevertexai/common.d.ts +0 -123
  458. package/dist/chat_models/googlevertexai/common.js +0 -269
  459. package/dist/chat_models/iflytek_xinghuo/common.cjs +0 -340
  460. package/dist/chat_models/iflytek_xinghuo/common.d.ts +0 -165
  461. package/dist/chat_models/iflytek_xinghuo/common.js +0 -336
  462. package/dist/llms/googlevertexai/common.cjs +0 -168
  463. package/dist/llms/googlevertexai/common.d.ts +0 -82
  464. package/dist/llms/googlevertexai/common.js +0 -164
  465. package/dist/tools/gmail/base.cjs +0 -69
  466. package/dist/tools/gmail/base.d.ts +0 -19
  467. package/dist/tools/gmail/base.js +0 -65
  468. package/dist/tools/gmail/create_draft.cjs +0 -62
  469. package/dist/tools/gmail/create_draft.d.ts +0 -35
  470. package/dist/tools/gmail/create_draft.js +0 -58
  471. package/dist/tools/gmail/descriptions.cjs +0 -118
  472. package/dist/tools/gmail/descriptions.d.ts +0 -5
  473. package/dist/tools/gmail/descriptions.js +0 -115
  474. package/dist/tools/gmail/get_message.cjs +0 -83
  475. package/dist/tools/gmail/get_message.d.ts +0 -18
  476. package/dist/tools/gmail/get_message.js +0 -79
  477. package/dist/tools/gmail/get_thread.cjs +0 -89
  478. package/dist/tools/gmail/get_thread.d.ts +0 -18
  479. package/dist/tools/gmail/get_thread.js +0 -85
  480. package/dist/tools/gmail/search.cjs +0 -118
  481. package/dist/tools/gmail/search.d.ts +0 -29
  482. package/dist/tools/gmail/search.js +0 -114
  483. package/dist/tools/gmail/send_message.cjs +0 -74
  484. package/dist/tools/gmail/send_message.d.ts +0 -35
  485. package/dist/tools/gmail/send_message.js +0 -70
  486. package/dist/util/openai-format-fndef.cjs +0 -81
  487. package/dist/util/openai-format-fndef.d.ts +0 -44
  488. package/dist/util/openai-format-fndef.js +0 -77
  489. package/dist/util/openai.cjs +0 -21
  490. package/dist/util/openai.d.ts +0 -1
  491. package/dist/util/openai.js +0 -17
  492. package/dist/vectorstores/closevector/common.cjs +0 -128
  493. package/dist/vectorstores/closevector/common.d.ts +0 -82
  494. package/dist/vectorstores/closevector/common.js +0 -124
@@ -1,302 +1 @@
1
- import { Tool } from "./base.js";
2
- /**
3
- * This does not use the `serpapi` package because it appears to cause issues
4
- * when used in `jest` tests. Part of the issue seems to be that the `serpapi`
5
- * package imports a wasm module to use instead of native `fetch`, which we
6
- * don't want anyway.
7
- *
8
- * NOTE: you must provide location, gl and hl or your region and language will
9
- * may not match your location, and will not be deterministic.
10
- */
11
- interface BaseParameters {
12
- /**
13
- * Parameter defines the device to use to get the results. It can be set to
14
- * `desktop` (default) to use a regular browser, `tablet` to use a tablet browser
15
- * (currently using iPads), or `mobile` to use a mobile browser (currently
16
- * using iPhones).
17
- */
18
- device?: "desktop" | "tablet" | "mobile";
19
- /**
20
- * Parameter will force SerpApi to fetch the Google results even if a cached
21
- * version is already present. A cache is served only if the query and all
22
- * parameters are exactly the same. Cache expires after 1h. Cached searches
23
- * are free, and are not counted towards your searches per month. It can be set
24
- * to `false` (default) to allow results from the cache, or `true` to disallow
25
- * results from the cache. `no_cache` and `async` parameters should not be used together.
26
- */
27
- no_cache?: boolean;
28
- /**
29
- * Specify the client-side timeout of the request. In milliseconds.
30
- */
31
- timeout?: number;
32
- }
33
- export interface SerpAPIParameters extends BaseParameters {
34
- /**
35
- * Search Query
36
- * Parameter defines the query you want to search. You can use anything that you
37
- * would use in a regular Google search. e.g. `inurl:`, `site:`, `intitle:`. We
38
- * also support advanced search query parameters such as as_dt and as_eq. See the
39
- * [full list](https://serpapi.com/advanced-google-query-parameters) of supported
40
- * advanced search query parameters.
41
- */
42
- q: string;
43
- /**
44
- * Location
45
- * Parameter defines from where you want the search to originate. If several
46
- * locations match the location requested, we'll pick the most popular one. Head to
47
- * [/locations.json API](https://serpapi.com/locations-api) if you need more
48
- * precise control. location and uule parameters can't be used together. Avoid
49
- * utilizing location when setting the location outside the U.S. when using Google
50
- * Shopping and/or Google Product API.
51
- */
52
- location?: string;
53
- /**
54
- * Encoded Location
55
- * Parameter is the Google encoded location you want to use for the search. uule
56
- * and location parameters can't be used together.
57
- */
58
- uule?: string;
59
- /**
60
- * Google Place ID
61
- * Parameter defines the id (`CID`) of the Google My Business listing you want to
62
- * scrape. Also known as Google Place ID.
63
- */
64
- ludocid?: string;
65
- /**
66
- * Additional Google Place ID
67
- * Parameter that you might have to use to force the knowledge graph map view to
68
- * show up. You can find the lsig ID by using our [Local Pack
69
- * API](https://serpapi.com/local-pack) or [Local Places Results
70
- * API](https://serpapi.com/local-results).
71
- * lsig ID is also available via a redirect Google uses within [Google My
72
- * Business](https://www.google.com/business/).
73
- */
74
- lsig?: string;
75
- /**
76
- * Google Knowledge Graph ID
77
- * Parameter defines the id (`KGMID`) of the Google Knowledge Graph listing you
78
- * want to scrape. Also known as Google Knowledge Graph ID. Searches with kgmid
79
- * parameter will return results for the originally encrypted search parameters.
80
- * For some searches, kgmid may override all other parameters except start, and num
81
- * parameters.
82
- */
83
- kgmid?: string;
84
- /**
85
- * Google Cached Search Parameters ID
86
- * Parameter defines the cached search parameters of the Google Search you want to
87
- * scrape. Searches with si parameter will return results for the originally
88
- * encrypted search parameters. For some searches, si may override all other
89
- * parameters except start, and num parameters. si can be used to scrape Google
90
- * Knowledge Graph Tabs.
91
- */
92
- si?: string;
93
- /**
94
- * Domain
95
- * Parameter defines the Google domain to use. It defaults to `google.com`. Head to
96
- * the [Google domains page](https://serpapi.com/google-domains) for a full list of
97
- * supported Google domains.
98
- */
99
- google_domain?: string;
100
- /**
101
- * Country
102
- * Parameter defines the country to use for the Google search. It's a two-letter
103
- * country code. (e.g., `us` for the United States, `uk` for United Kingdom, or
104
- * `fr` for France). Head to the [Google countries
105
- * page](https://serpapi.com/google-countries) for a full list of supported Google
106
- * countries.
107
- */
108
- gl?: string;
109
- /**
110
- * Language
111
- * Parameter defines the language to use for the Google search. It's a two-letter
112
- * language code. (e.g., `en` for English, `es` for Spanish, or `fr` for French).
113
- * Head to the [Google languages page](https://serpapi.com/google-languages) for a
114
- * full list of supported Google languages.
115
- */
116
- hl?: string;
117
- /**
118
- * Set Multiple Languages
119
- * Parameter defines one or multiple languages to limit the search to. It uses
120
- * `lang_{two-letter language code}` to specify languages and `|` as a delimiter.
121
- * (e.g., `lang_fr|lang_de` will only search French and German pages). Head to the
122
- * [Google lr languages page](https://serpapi.com/google-lr-languages) for a full
123
- * list of supported languages.
124
- */
125
- lr?: string;
126
- /**
127
- * as_dt
128
- * Parameter controls whether to include or exclude results from the site named in
129
- * the as_sitesearch parameter.
130
- */
131
- as_dt?: string;
132
- /**
133
- * as_epq
134
- * Parameter identifies a phrase that all documents in the search results must
135
- * contain. You can also use the [phrase
136
- * search](https://developers.google.com/custom-search/docs/xml_results#PhraseSearchqt)
137
- * query term to search for a phrase.
138
- */
139
- as_epq?: string;
140
- /**
141
- * as_eq
142
- * Parameter identifies a word or phrase that should not appear in any documents in
143
- * the search results. You can also use the [exclude
144
- * query](https://developers.google.com/custom-search/docs/xml_results#Excludeqt)
145
- * term to ensure that a particular word or phrase will not appear in the documents
146
- * in a set of search results.
147
- */
148
- as_eq?: string;
149
- /**
150
- * as_lq
151
- * Parameter specifies that all search results should contain a link to a
152
- * particular URL. You can also use the
153
- * [link:](https://developers.google.com/custom-search/docs/xml_results#BackLinksqt)
154
- * query term for this type of query.
155
- */
156
- as_lq?: string;
157
- /**
158
- * as_nlo
159
- * Parameter specifies the starting value for a search range. Use as_nlo and as_nhi
160
- * to append an inclusive search range.
161
- */
162
- as_nlo?: string;
163
- /**
164
- * as_nhi
165
- * Parameter specifies the ending value for a search range. Use as_nlo and as_nhi
166
- * to append an inclusive search range.
167
- */
168
- as_nhi?: string;
169
- /**
170
- * as_oq
171
- * Parameter provides additional search terms to check for in a document, where
172
- * each document in the search results must contain at least one of the additional
173
- * search terms. You can also use the [Boolean
174
- * OR](https://developers.google.com/custom-search/docs/xml_results#BooleanOrqt)
175
- * query term for this type of query.
176
- */
177
- as_oq?: string;
178
- /**
179
- * as_q
180
- * Parameter provides search terms to check for in a document. This parameter is
181
- * also commonly used to allow users to specify additional terms to search for
182
- * within a set of search results.
183
- */
184
- as_q?: string;
185
- /**
186
- * as_qdr
187
- * Parameter requests search results from a specified time period (quick date
188
- * range). The following values are supported:
189
- * `d[number]`: requests results from the specified number of past days. Example
190
- * for the past 10 days: `as_qdr=d10`
191
- * `w[number]`: requests results from the specified number of past weeks.
192
- * `m[number]`: requests results from the specified number of past months.
193
- * `y[number]`: requests results from the specified number of past years. Example
194
- * for the past year: `as_qdr=y`
195
- */
196
- as_qdr?: string;
197
- /**
198
- * as_rq
199
- * Parameter specifies that all search results should be pages that are related to
200
- * the specified URL. The parameter value should be a URL. You can also use the
201
- * [related:](https://developers.google.com/custom-search/docs/xml_results#RelatedLinksqt)
202
- * query term for this type of query.
203
- */
204
- as_rq?: string;
205
- /**
206
- * as_sitesearch
207
- * Parameter allows you to specify that all search results should be pages from a
208
- * given site. By setting the as_dt parameter, you can also use it to exclude pages
209
- * from a given site from your search resutls.
210
- */
211
- as_sitesearch?: string;
212
- /**
213
- * Advanced Search Parameters
214
- * (to be searched) parameter defines advanced search parameters that aren't
215
- * possible in the regular query field. (e.g., advanced search for patents, dates,
216
- * news, videos, images, apps, or text contents).
217
- */
218
- tbs?: string;
219
- /**
220
- * Adult Content Filtering
221
- * Parameter defines the level of filtering for adult content. It can be set to
222
- * `active`, or `off` (default).
223
- */
224
- safe?: string;
225
- /**
226
- * Exclude Auto-corrected Results
227
- * Parameter defines the exclusion of results from an auto-corrected query that is
228
- * spelled wrong. It can be set to `1` to exclude these results, or `0` to include
229
- * them (default).
230
- */
231
- nfpr?: string;
232
- /**
233
- * Results Filtering
234
- * Parameter defines if the filters for 'Similar Results' and 'Omitted Results' are
235
- * on or off. It can be set to `1` (default) to enable these filters, or `0` to
236
- * disable these filters.
237
- */
238
- filter?: string;
239
- /**
240
- * Search Type
241
- * (to be matched) parameter defines the type of search you want to do.
242
- * It can be set to:
243
- * `(no tbm parameter)`: regular Google Search,
244
- * `isch`: [Google Images API](https://serpapi.com/images-results),
245
- * `lcl` - [Google Local API](https://serpapi.com/local-results)
246
- * `vid`: [Google Videos API](https://serpapi.com/videos-results),
247
- * `nws`: [Google News API](https://serpapi.com/news-results),
248
- * `shop`: [Google Shopping API](https://serpapi.com/shopping-results),
249
- * or any other Google service.
250
- */
251
- tbm?: string;
252
- /**
253
- * Result Offset
254
- * Parameter defines the result offset. It skips the given number of results. It's
255
- * used for pagination. (e.g., `0` (default) is the first page of results, `10` is
256
- * the 2nd page of results, `20` is the 3rd page of results, etc.).
257
- * Google Local Results only accepts multiples of `20`(e.g. `20` for the second
258
- * page results, `40` for the third page results, etc.) as the start value.
259
- */
260
- start?: number;
261
- /**
262
- * Number of Results
263
- * Parameter defines the maximum number of results to return. (e.g., `10` (default)
264
- * returns 10 results, `40` returns 40 results, and `100` returns 100 results).
265
- */
266
- num?: string;
267
- /**
268
- * Page Number (images)
269
- * Parameter defines the page number for [Google
270
- * Images](https://serpapi.com/images-results). There are 100 images per page. This
271
- * parameter is equivalent to start (offset) = ijn * 100. This parameter works only
272
- * for [Google Images](https://serpapi.com/images-results) (set tbm to `isch`).
273
- */
274
- ijn?: string;
275
- }
276
- type UrlParameters = Record<string, string | number | boolean | undefined | null>;
277
- /**
278
- * Wrapper around SerpAPI.
279
- *
280
- * To use, you should have the `serpapi` package installed and the SERPAPI_API_KEY environment variable set.
281
- */
282
- export declare class SerpAPI extends Tool {
283
- static lc_name(): string;
284
- toJSON(): import("@langchain/core/load/serializable").SerializedNotImplemented;
285
- protected key: string;
286
- protected params: Partial<SerpAPIParameters>;
287
- protected baseUrl: string;
288
- constructor(apiKey?: string | undefined, params?: Partial<SerpAPIParameters>, baseUrl?: string);
289
- name: string;
290
- /**
291
- * Builds a URL for the SerpAPI request.
292
- * @param path The path for the request.
293
- * @param parameters The parameters for the request.
294
- * @param baseUrl The base URL for the request.
295
- * @returns A string representing the built URL.
296
- */
297
- protected buildUrl<P extends UrlParameters>(path: string, parameters: P, baseUrl: string): string;
298
- /** @ignore */
299
- _call(input: string): Promise<any>;
300
- description: string;
301
- }
302
- export {};
1
+ export * from "@langchain/community/tools/serpapi";
@@ -1,197 +1 @@
1
- import { getEnvironmentVariable } from "../util/env.js";
2
- import { Tool } from "./base.js";
3
- /**
4
- * Wrapper around SerpAPI.
5
- *
6
- * To use, you should have the `serpapi` package installed and the SERPAPI_API_KEY environment variable set.
7
- */
8
- export class SerpAPI extends Tool {
9
- static lc_name() {
10
- return "SerpAPI";
11
- }
12
- toJSON() {
13
- return this.toJSONNotImplemented();
14
- }
15
- constructor(apiKey = getEnvironmentVariable("SERPAPI_API_KEY"), params = {}, baseUrl = "https://serpapi.com") {
16
- super(...arguments);
17
- Object.defineProperty(this, "key", {
18
- enumerable: true,
19
- configurable: true,
20
- writable: true,
21
- value: void 0
22
- });
23
- Object.defineProperty(this, "params", {
24
- enumerable: true,
25
- configurable: true,
26
- writable: true,
27
- value: void 0
28
- });
29
- Object.defineProperty(this, "baseUrl", {
30
- enumerable: true,
31
- configurable: true,
32
- writable: true,
33
- value: void 0
34
- });
35
- Object.defineProperty(this, "name", {
36
- enumerable: true,
37
- configurable: true,
38
- writable: true,
39
- value: "search"
40
- });
41
- Object.defineProperty(this, "description", {
42
- enumerable: true,
43
- configurable: true,
44
- writable: true,
45
- value: "a search engine. useful for when you need to answer questions about current events. input should be a search query."
46
- });
47
- if (!apiKey) {
48
- throw new Error("SerpAPI API key not set. You can set it as SERPAPI_API_KEY in your .env file, or pass it to SerpAPI.");
49
- }
50
- this.key = apiKey;
51
- this.params = params;
52
- this.baseUrl = baseUrl;
53
- }
54
- /**
55
- * Builds a URL for the SerpAPI request.
56
- * @param path The path for the request.
57
- * @param parameters The parameters for the request.
58
- * @param baseUrl The base URL for the request.
59
- * @returns A string representing the built URL.
60
- */
61
- buildUrl(path, parameters, baseUrl) {
62
- const nonUndefinedParams = Object.entries(parameters)
63
- .filter(([_, value]) => value !== undefined)
64
- .map(([key, value]) => [key, `${value}`]);
65
- const searchParams = new URLSearchParams(nonUndefinedParams);
66
- return `${baseUrl}/${path}?${searchParams}`;
67
- }
68
- /** @ignore */
69
- async _call(input) {
70
- const { timeout, ...params } = this.params;
71
- const resp = await fetch(this.buildUrl("search", {
72
- ...params,
73
- api_key: this.key,
74
- q: input,
75
- }, this.baseUrl), {
76
- signal: timeout ? AbortSignal.timeout(timeout) : undefined,
77
- });
78
- const res = await resp.json();
79
- if (res.error) {
80
- throw new Error(`Got error from serpAPI: ${res.error}`);
81
- }
82
- const answer_box = res.answer_box_list
83
- ? res.answer_box_list[0]
84
- : res.answer_box;
85
- if (answer_box) {
86
- if (answer_box.result) {
87
- return answer_box.result;
88
- }
89
- else if (answer_box.answer) {
90
- return answer_box.answer;
91
- }
92
- else if (answer_box.snippet) {
93
- return answer_box.snippet;
94
- }
95
- else if (answer_box.snippet_highlighted_words) {
96
- return answer_box.snippet_highlighted_words.toString();
97
- }
98
- else {
99
- const answer = {};
100
- Object.keys(answer_box)
101
- .filter((k) => !Array.isArray(answer_box[k]) &&
102
- typeof answer_box[k] !== "object" &&
103
- !(typeof answer_box[k] === "string" &&
104
- answer_box[k].startsWith("http")))
105
- .forEach((k) => {
106
- answer[k] = answer_box[k];
107
- });
108
- return JSON.stringify(answer);
109
- }
110
- }
111
- if (res.events_results) {
112
- return JSON.stringify(res.events_results);
113
- }
114
- if (res.sports_results) {
115
- return JSON.stringify(res.sports_results);
116
- }
117
- if (res.top_stories) {
118
- return JSON.stringify(res.top_stories);
119
- }
120
- if (res.news_results) {
121
- return JSON.stringify(res.news_results);
122
- }
123
- if (res.jobs_results?.jobs) {
124
- return JSON.stringify(res.jobs_results.jobs);
125
- }
126
- if (res.questions_and_answers) {
127
- return JSON.stringify(res.questions_and_answers);
128
- }
129
- if (res.popular_destinations?.destinations) {
130
- return JSON.stringify(res.popular_destinations.destinations);
131
- }
132
- if (res.top_sights?.sights) {
133
- const sights = res.top_sights.sights
134
- .map((s) => ({
135
- title: s.title,
136
- description: s.description,
137
- price: s.price,
138
- }))
139
- .slice(0, 8);
140
- return JSON.stringify(sights);
141
- }
142
- if (res.shopping_results && res.shopping_results[0]?.title) {
143
- return JSON.stringify(res.shopping_results.slice(0, 3));
144
- }
145
- if (res.images_results && res.images_results[0]?.thumbnail) {
146
- return res.images_results
147
- .map((ir) => ir.thumbnail)
148
- .slice(0, 10)
149
- .toString();
150
- }
151
- const snippets = [];
152
- if (res.knowledge_graph) {
153
- if (res.knowledge_graph.description) {
154
- snippets.push(res.knowledge_graph.description);
155
- }
156
- const title = res.knowledge_graph.title || "";
157
- Object.keys(res.knowledge_graph)
158
- .filter((k) => typeof res.knowledge_graph[k] === "string" &&
159
- k !== "title" &&
160
- k !== "description" &&
161
- !k.endsWith("_stick") &&
162
- !k.endsWith("_link") &&
163
- !k.startsWith("http"))
164
- .forEach((k) => snippets.push(`${title} ${k}: ${res.knowledge_graph[k]}`));
165
- }
166
- const first_organic_result = res.organic_results?.[0];
167
- if (first_organic_result) {
168
- if (first_organic_result.snippet) {
169
- snippets.push(first_organic_result.snippet);
170
- }
171
- else if (first_organic_result.snippet_highlighted_words) {
172
- snippets.push(first_organic_result.snippet_highlighted_words);
173
- }
174
- else if (first_organic_result.rich_snippet) {
175
- snippets.push(first_organic_result.rich_snippet);
176
- }
177
- else if (first_organic_result.rich_snippet_table) {
178
- snippets.push(first_organic_result.rich_snippet_table);
179
- }
180
- else if (first_organic_result.link) {
181
- snippets.push(first_organic_result.link);
182
- }
183
- }
184
- if (res.buying_guide) {
185
- snippets.push(res.buying_guide);
186
- }
187
- if (res.local_results?.places) {
188
- snippets.push(res.local_results.places);
189
- }
190
- if (snippets.length > 0) {
191
- return JSON.stringify(snippets);
192
- }
193
- else {
194
- return "No good search result found";
195
- }
196
- }
197
- }
1
+ export * from "@langchain/community/tools/serpapi";
@@ -1,96 +1,17 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Serper = void 0;
4
- const env_js_1 = require("../util/env.cjs");
5
- const base_js_1 = require("./base.cjs");
6
- /**
7
- * Wrapper around serper.
8
- *
9
- * You can create a free API key at https://serper.dev.
10
- *
11
- * To use, you should have the SERPER_API_KEY environment variable set.
12
- */
13
- class Serper extends base_js_1.Tool {
14
- static lc_name() {
15
- return "Serper";
16
- }
17
- /**
18
- * Converts the Serper instance to JSON. This method is not implemented
19
- * and will throw an error if called.
20
- * @returns Throws an error.
21
- */
22
- toJSON() {
23
- return this.toJSONNotImplemented();
24
- }
25
- constructor(apiKey = (0, env_js_1.getEnvironmentVariable)("SERPER_API_KEY"), params = {}) {
26
- super();
27
- Object.defineProperty(this, "key", {
28
- enumerable: true,
29
- configurable: true,
30
- writable: true,
31
- value: void 0
32
- });
33
- Object.defineProperty(this, "params", {
34
- enumerable: true,
35
- configurable: true,
36
- writable: true,
37
- value: void 0
38
- });
39
- Object.defineProperty(this, "name", {
40
- enumerable: true,
41
- configurable: true,
42
- writable: true,
43
- value: "search"
44
- });
45
- Object.defineProperty(this, "description", {
46
- enumerable: true,
47
- configurable: true,
48
- writable: true,
49
- value: "a search engine. useful for when you need to answer questions about current events. input should be a search query."
50
- });
51
- if (!apiKey) {
52
- throw new Error("Serper API key not set. You can set it as SERPER_API_KEY in your .env file, or pass it to Serper.");
53
- }
54
- this.key = apiKey;
55
- this.params = params;
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
56
7
  }
57
- /** @ignore */
58
- async _call(input) {
59
- const options = {
60
- method: "POST",
61
- headers: {
62
- "X-API-KEY": this.key,
63
- "Content-Type": "application/json",
64
- },
65
- body: JSON.stringify({
66
- q: input,
67
- ...this.params,
68
- }),
69
- };
70
- const res = await fetch("https://google.serper.dev/search", options);
71
- if (!res.ok) {
72
- throw new Error(`Got ${res.status} error from serper: ${res.statusText}`);
73
- }
74
- const json = await res.json();
75
- if (json.answerBox?.answer) {
76
- return json.answerBox.answer;
77
- }
78
- if (json.answerBox?.snippet) {
79
- return json.answerBox.snippet;
80
- }
81
- if (json.answerBox?.snippet_highlighted_words) {
82
- return json.answerBox.snippet_highlighted_words[0];
83
- }
84
- if (json.sportsResults?.game_spotlight) {
85
- return json.sportsResults.game_spotlight;
86
- }
87
- if (json.knowledgeGraph?.description) {
88
- return json.knowledgeGraph.description;
89
- }
90
- if (json.organic?.[0]?.snippet) {
91
- return json.organic[0].snippet;
92
- }
93
- return "No good search result found";
94
- }
95
- }
96
- exports.Serper = Serper;
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("@langchain/community/tools/serper"), exports);
@@ -1,32 +1 @@
1
- import { Tool } from "./base.js";
2
- /**
3
- * Defines the parameters that can be passed to the Serper class during
4
- * instantiation. It includes `gl` and `hl` which are optional.
5
- */
6
- export type SerperParameters = {
7
- gl?: string;
8
- hl?: string;
9
- };
10
- /**
11
- * Wrapper around serper.
12
- *
13
- * You can create a free API key at https://serper.dev.
14
- *
15
- * To use, you should have the SERPER_API_KEY environment variable set.
16
- */
17
- export declare class Serper extends Tool {
18
- static lc_name(): string;
19
- /**
20
- * Converts the Serper instance to JSON. This method is not implemented
21
- * and will throw an error if called.
22
- * @returns Throws an error.
23
- */
24
- toJSON(): import("@langchain/core/load/serializable").SerializedNotImplemented;
25
- protected key: string;
26
- protected params: Partial<SerperParameters>;
27
- constructor(apiKey?: string | undefined, params?: Partial<SerperParameters>);
28
- name: string;
29
- /** @ignore */
30
- _call(input: string): Promise<any>;
31
- description: string;
32
- }
1
+ export * from "@langchain/community/tools/serper";