langchain 0.4.0.dev0__py3-none-any.whl → 1.0.0__py3-none-any.whl

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.

Potentially problematic release.


This version of langchain might be problematic. Click here for more details.

Files changed (1364) hide show
  1. langchain/__init__.py +2 -452
  2. langchain/agents/__init__.py +9 -178
  3. langchain/agents/factory.py +1582 -0
  4. langchain/agents/middleware/__init__.py +80 -0
  5. langchain/agents/middleware/_execution.py +388 -0
  6. langchain/agents/middleware/_redaction.py +350 -0
  7. langchain/agents/middleware/context_editing.py +274 -0
  8. langchain/agents/middleware/file_search.py +382 -0
  9. langchain/agents/middleware/human_in_the_loop.py +351 -0
  10. langchain/agents/middleware/model_call_limit.py +210 -0
  11. langchain/agents/middleware/model_fallback.py +137 -0
  12. langchain/agents/middleware/pii.py +317 -0
  13. langchain/agents/middleware/shell_tool.py +718 -0
  14. langchain/agents/middleware/summarization.py +249 -0
  15. langchain/agents/middleware/todo.py +219 -0
  16. langchain/agents/middleware/tool_call_limit.py +333 -0
  17. langchain/agents/middleware/tool_emulator.py +200 -0
  18. langchain/agents/middleware/tool_retry.py +384 -0
  19. langchain/agents/middleware/tool_selection.py +310 -0
  20. langchain/agents/middleware/types.py +1572 -0
  21. langchain/agents/structured_output.py +426 -0
  22. langchain/chat_models/__init__.py +7 -72
  23. langchain/chat_models/base.py +268 -358
  24. langchain/embeddings/__init__.py +7 -217
  25. langchain/embeddings/base.py +31 -43
  26. langchain/messages/__init__.py +72 -0
  27. langchain/rate_limiters/__init__.py +13 -0
  28. langchain/tools/__init__.py +17 -197
  29. langchain/tools/tool_node.py +1700 -0
  30. langchain-1.0.0.dist-info/METADATA +87 -0
  31. langchain-1.0.0.dist-info/RECORD +34 -0
  32. {langchain-0.4.0.dev0.dist-info → langchain-1.0.0.dist-info}/WHEEL +1 -1
  33. langchain/_api/__init__.py +0 -28
  34. langchain/_api/deprecation.py +0 -32
  35. langchain/_api/interactive_env.py +0 -5
  36. langchain/_api/module_import.py +0 -153
  37. langchain/_api/path.py +0 -3
  38. langchain/adapters/__init__.py +0 -0
  39. langchain/adapters/openai.py +0 -63
  40. langchain/agents/agent.py +0 -1824
  41. langchain/agents/agent_iterator.py +0 -438
  42. langchain/agents/agent_toolkits/__init__.py +0 -167
  43. langchain/agents/agent_toolkits/ainetwork/__init__.py +0 -1
  44. langchain/agents/agent_toolkits/ainetwork/toolkit.py +0 -25
  45. langchain/agents/agent_toolkits/amadeus/toolkit.py +0 -23
  46. langchain/agents/agent_toolkits/azure_cognitive_services.py +0 -29
  47. langchain/agents/agent_toolkits/base.py +0 -3
  48. langchain/agents/agent_toolkits/clickup/__init__.py +0 -0
  49. langchain/agents/agent_toolkits/clickup/toolkit.py +0 -25
  50. langchain/agents/agent_toolkits/conversational_retrieval/__init__.py +0 -0
  51. langchain/agents/agent_toolkits/conversational_retrieval/openai_functions.py +0 -87
  52. langchain/agents/agent_toolkits/conversational_retrieval/tool.py +0 -3
  53. langchain/agents/agent_toolkits/csv/__init__.py +0 -28
  54. langchain/agents/agent_toolkits/file_management/__init__.py +0 -31
  55. langchain/agents/agent_toolkits/file_management/toolkit.py +0 -29
  56. langchain/agents/agent_toolkits/github/__init__.py +0 -1
  57. langchain/agents/agent_toolkits/github/toolkit.py +0 -69
  58. langchain/agents/agent_toolkits/gitlab/__init__.py +0 -1
  59. langchain/agents/agent_toolkits/gitlab/toolkit.py +0 -25
  60. langchain/agents/agent_toolkits/gmail/__init__.py +0 -1
  61. langchain/agents/agent_toolkits/gmail/toolkit.py +0 -23
  62. langchain/agents/agent_toolkits/jira/__init__.py +0 -1
  63. langchain/agents/agent_toolkits/jira/toolkit.py +0 -23
  64. langchain/agents/agent_toolkits/json/__init__.py +0 -1
  65. langchain/agents/agent_toolkits/json/base.py +0 -25
  66. langchain/agents/agent_toolkits/json/prompt.py +0 -24
  67. langchain/agents/agent_toolkits/json/toolkit.py +0 -23
  68. langchain/agents/agent_toolkits/multion/__init__.py +0 -1
  69. langchain/agents/agent_toolkits/multion/toolkit.py +0 -25
  70. langchain/agents/agent_toolkits/nasa/__init__.py +0 -1
  71. langchain/agents/agent_toolkits/nasa/toolkit.py +0 -23
  72. langchain/agents/agent_toolkits/nla/__init__.py +0 -0
  73. langchain/agents/agent_toolkits/nla/tool.py +0 -23
  74. langchain/agents/agent_toolkits/nla/toolkit.py +0 -23
  75. langchain/agents/agent_toolkits/office365/__init__.py +0 -1
  76. langchain/agents/agent_toolkits/office365/toolkit.py +0 -25
  77. langchain/agents/agent_toolkits/openapi/__init__.py +0 -1
  78. langchain/agents/agent_toolkits/openapi/base.py +0 -25
  79. langchain/agents/agent_toolkits/openapi/planner.py +0 -52
  80. langchain/agents/agent_toolkits/openapi/planner_prompt.py +0 -103
  81. langchain/agents/agent_toolkits/openapi/prompt.py +0 -29
  82. langchain/agents/agent_toolkits/openapi/spec.py +0 -30
  83. langchain/agents/agent_toolkits/openapi/toolkit.py +0 -30
  84. langchain/agents/agent_toolkits/pandas/__init__.py +0 -28
  85. langchain/agents/agent_toolkits/playwright/__init__.py +0 -29
  86. langchain/agents/agent_toolkits/playwright/toolkit.py +0 -27
  87. langchain/agents/agent_toolkits/powerbi/__init__.py +0 -1
  88. langchain/agents/agent_toolkits/powerbi/base.py +0 -25
  89. langchain/agents/agent_toolkits/powerbi/chat_base.py +0 -27
  90. langchain/agents/agent_toolkits/powerbi/prompt.py +0 -36
  91. langchain/agents/agent_toolkits/powerbi/toolkit.py +0 -25
  92. langchain/agents/agent_toolkits/python/__init__.py +0 -28
  93. langchain/agents/agent_toolkits/slack/__init__.py +0 -1
  94. langchain/agents/agent_toolkits/slack/toolkit.py +0 -23
  95. langchain/agents/agent_toolkits/spark/__init__.py +0 -28
  96. langchain/agents/agent_toolkits/spark_sql/__init__.py +0 -1
  97. langchain/agents/agent_toolkits/spark_sql/base.py +0 -25
  98. langchain/agents/agent_toolkits/spark_sql/prompt.py +0 -27
  99. langchain/agents/agent_toolkits/spark_sql/toolkit.py +0 -25
  100. langchain/agents/agent_toolkits/sql/__init__.py +0 -1
  101. langchain/agents/agent_toolkits/sql/base.py +0 -23
  102. langchain/agents/agent_toolkits/sql/prompt.py +0 -29
  103. langchain/agents/agent_toolkits/sql/toolkit.py +0 -25
  104. langchain/agents/agent_toolkits/steam/__init__.py +0 -1
  105. langchain/agents/agent_toolkits/steam/toolkit.py +0 -23
  106. langchain/agents/agent_toolkits/vectorstore/__init__.py +0 -1
  107. langchain/agents/agent_toolkits/vectorstore/base.py +0 -219
  108. langchain/agents/agent_toolkits/vectorstore/prompt.py +0 -11
  109. langchain/agents/agent_toolkits/vectorstore/toolkit.py +0 -97
  110. langchain/agents/agent_toolkits/xorbits/__init__.py +0 -28
  111. langchain/agents/agent_toolkits/zapier/__init__.py +0 -1
  112. langchain/agents/agent_toolkits/zapier/toolkit.py +0 -25
  113. langchain/agents/agent_types.py +0 -57
  114. langchain/agents/chat/__init__.py +0 -0
  115. langchain/agents/chat/base.py +0 -180
  116. langchain/agents/chat/output_parser.py +0 -74
  117. langchain/agents/chat/prompt.py +0 -29
  118. langchain/agents/conversational/__init__.py +0 -1
  119. langchain/agents/conversational/base.py +0 -178
  120. langchain/agents/conversational/output_parser.py +0 -51
  121. langchain/agents/conversational/prompt.py +0 -35
  122. langchain/agents/conversational_chat/__init__.py +0 -1
  123. langchain/agents/conversational_chat/base.py +0 -183
  124. langchain/agents/conversational_chat/output_parser.py +0 -57
  125. langchain/agents/conversational_chat/prompt.py +0 -56
  126. langchain/agents/format_scratchpad/__init__.py +0 -25
  127. langchain/agents/format_scratchpad/log.py +0 -25
  128. langchain/agents/format_scratchpad/log_to_messages.py +0 -26
  129. langchain/agents/format_scratchpad/openai_functions.py +0 -80
  130. langchain/agents/format_scratchpad/openai_tools.py +0 -5
  131. langchain/agents/format_scratchpad/tools.py +0 -65
  132. langchain/agents/format_scratchpad/xml.py +0 -52
  133. langchain/agents/initialize.py +0 -105
  134. langchain/agents/json_chat/__init__.py +0 -0
  135. langchain/agents/json_chat/base.py +0 -196
  136. langchain/agents/json_chat/prompt.py +0 -8
  137. langchain/agents/load_tools.py +0 -13
  138. langchain/agents/loading.py +0 -148
  139. langchain/agents/mrkl/__init__.py +0 -1
  140. langchain/agents/mrkl/base.py +0 -218
  141. langchain/agents/mrkl/output_parser.py +0 -103
  142. langchain/agents/mrkl/prompt.py +0 -15
  143. langchain/agents/openai_assistant/__init__.py +0 -3
  144. langchain/agents/openai_assistant/base.py +0 -818
  145. langchain/agents/openai_functions_agent/__init__.py +0 -0
  146. langchain/agents/openai_functions_agent/agent_token_buffer_memory.py +0 -103
  147. langchain/agents/openai_functions_agent/base.py +0 -382
  148. langchain/agents/openai_functions_multi_agent/__init__.py +0 -0
  149. langchain/agents/openai_functions_multi_agent/base.py +0 -337
  150. langchain/agents/openai_tools/__init__.py +0 -0
  151. langchain/agents/openai_tools/base.py +0 -109
  152. langchain/agents/output_parsers/__init__.py +0 -35
  153. langchain/agents/output_parsers/json.py +0 -64
  154. langchain/agents/output_parsers/openai_functions.py +0 -103
  155. langchain/agents/output_parsers/openai_tools.py +0 -77
  156. langchain/agents/output_parsers/react_json_single_input.py +0 -87
  157. langchain/agents/output_parsers/react_single_input.py +0 -102
  158. langchain/agents/output_parsers/self_ask.py +0 -53
  159. langchain/agents/output_parsers/tools.py +0 -121
  160. langchain/agents/output_parsers/xml.py +0 -126
  161. langchain/agents/react/__init__.py +0 -1
  162. langchain/agents/react/agent.py +0 -145
  163. langchain/agents/react/base.py +0 -189
  164. langchain/agents/react/output_parser.py +0 -35
  165. langchain/agents/react/textworld_prompt.py +0 -51
  166. langchain/agents/react/wiki_prompt.py +0 -70
  167. langchain/agents/schema.py +0 -37
  168. langchain/agents/self_ask_with_search/__init__.py +0 -4
  169. langchain/agents/self_ask_with_search/base.py +0 -219
  170. langchain/agents/self_ask_with_search/output_parser.py +0 -4
  171. langchain/agents/self_ask_with_search/prompt.py +0 -43
  172. langchain/agents/structured_chat/__init__.py +0 -0
  173. langchain/agents/structured_chat/base.py +0 -309
  174. langchain/agents/structured_chat/output_parser.py +0 -112
  175. langchain/agents/structured_chat/prompt.py +0 -34
  176. langchain/agents/tool_calling_agent/__init__.py +0 -0
  177. langchain/agents/tool_calling_agent/base.py +0 -111
  178. langchain/agents/tools.py +0 -50
  179. langchain/agents/types.py +0 -27
  180. langchain/agents/utils.py +0 -19
  181. langchain/agents/xml/__init__.py +0 -0
  182. langchain/agents/xml/base.py +0 -237
  183. langchain/agents/xml/prompt.py +0 -21
  184. langchain/base_language.py +0 -7
  185. langchain/cache.py +0 -72
  186. langchain/callbacks/__init__.py +0 -139
  187. langchain/callbacks/aim_callback.py +0 -33
  188. langchain/callbacks/argilla_callback.py +0 -25
  189. langchain/callbacks/arize_callback.py +0 -25
  190. langchain/callbacks/arthur_callback.py +0 -25
  191. langchain/callbacks/base.py +0 -29
  192. langchain/callbacks/clearml_callback.py +0 -25
  193. langchain/callbacks/comet_ml_callback.py +0 -25
  194. langchain/callbacks/confident_callback.py +0 -25
  195. langchain/callbacks/context_callback.py +0 -25
  196. langchain/callbacks/file.py +0 -3
  197. langchain/callbacks/flyte_callback.py +0 -25
  198. langchain/callbacks/human.py +0 -33
  199. langchain/callbacks/infino_callback.py +0 -25
  200. langchain/callbacks/labelstudio_callback.py +0 -33
  201. langchain/callbacks/llmonitor_callback.py +0 -27
  202. langchain/callbacks/manager.py +0 -89
  203. langchain/callbacks/mlflow_callback.py +0 -38
  204. langchain/callbacks/openai_info.py +0 -25
  205. langchain/callbacks/promptlayer_callback.py +0 -27
  206. langchain/callbacks/sagemaker_callback.py +0 -27
  207. langchain/callbacks/stdout.py +0 -3
  208. langchain/callbacks/streaming_aiter.py +0 -86
  209. langchain/callbacks/streaming_aiter_final_only.py +0 -100
  210. langchain/callbacks/streaming_stdout.py +0 -5
  211. langchain/callbacks/streaming_stdout_final_only.py +0 -96
  212. langchain/callbacks/streamlit/__init__.py +0 -86
  213. langchain/callbacks/streamlit/mutable_expander.py +0 -33
  214. langchain/callbacks/streamlit/streamlit_callback_handler.py +0 -49
  215. langchain/callbacks/tracers/__init__.py +0 -38
  216. langchain/callbacks/tracers/base.py +0 -6
  217. langchain/callbacks/tracers/comet.py +0 -30
  218. langchain/callbacks/tracers/evaluation.py +0 -8
  219. langchain/callbacks/tracers/langchain.py +0 -8
  220. langchain/callbacks/tracers/langchain_v1.py +0 -3
  221. langchain/callbacks/tracers/log_stream.py +0 -9
  222. langchain/callbacks/tracers/logging.py +0 -57
  223. langchain/callbacks/tracers/root_listeners.py +0 -3
  224. langchain/callbacks/tracers/run_collector.py +0 -3
  225. langchain/callbacks/tracers/schemas.py +0 -27
  226. langchain/callbacks/tracers/stdout.py +0 -6
  227. langchain/callbacks/tracers/wandb.py +0 -27
  228. langchain/callbacks/trubrics_callback.py +0 -25
  229. langchain/callbacks/utils.py +0 -48
  230. langchain/callbacks/wandb_callback.py +0 -25
  231. langchain/callbacks/whylabs_callback.py +0 -25
  232. langchain/chains/__init__.py +0 -96
  233. langchain/chains/api/__init__.py +0 -1
  234. langchain/chains/api/base.py +0 -398
  235. langchain/chains/api/news_docs.py +0 -31
  236. langchain/chains/api/open_meteo_docs.py +0 -32
  237. langchain/chains/api/openapi/__init__.py +0 -0
  238. langchain/chains/api/openapi/chain.py +0 -23
  239. langchain/chains/api/openapi/prompts.py +0 -27
  240. langchain/chains/api/openapi/requests_chain.py +0 -29
  241. langchain/chains/api/openapi/response_chain.py +0 -29
  242. langchain/chains/api/podcast_docs.py +0 -27
  243. langchain/chains/api/prompt.py +0 -35
  244. langchain/chains/api/tmdb_docs.py +0 -36
  245. langchain/chains/base.py +0 -806
  246. langchain/chains/chat_vector_db/__init__.py +0 -0
  247. langchain/chains/chat_vector_db/prompts.py +0 -19
  248. langchain/chains/combine_documents/__init__.py +0 -15
  249. langchain/chains/combine_documents/base.py +0 -293
  250. langchain/chains/combine_documents/map_reduce.py +0 -303
  251. langchain/chains/combine_documents/map_rerank.py +0 -249
  252. langchain/chains/combine_documents/reduce.py +0 -382
  253. langchain/chains/combine_documents/refine.py +0 -237
  254. langchain/chains/combine_documents/stuff.py +0 -292
  255. langchain/chains/constitutional_ai/__init__.py +0 -2
  256. langchain/chains/constitutional_ai/base.py +0 -328
  257. langchain/chains/constitutional_ai/models.py +0 -11
  258. langchain/chains/constitutional_ai/principles.py +0 -278
  259. langchain/chains/constitutional_ai/prompts.py +0 -120
  260. langchain/chains/conversation/__init__.py +0 -1
  261. langchain/chains/conversation/base.py +0 -146
  262. langchain/chains/conversation/memory.py +0 -45
  263. langchain/chains/conversation/prompt.py +0 -28
  264. langchain/chains/conversational_retrieval/__init__.py +0 -1
  265. langchain/chains/conversational_retrieval/base.py +0 -576
  266. langchain/chains/conversational_retrieval/prompts.py +0 -19
  267. langchain/chains/elasticsearch_database/__init__.py +0 -3
  268. langchain/chains/elasticsearch_database/base.py +0 -212
  269. langchain/chains/elasticsearch_database/prompts.py +0 -35
  270. langchain/chains/ernie_functions/__init__.py +0 -44
  271. langchain/chains/ernie_functions/base.py +0 -49
  272. langchain/chains/example_generator.py +0 -22
  273. langchain/chains/flare/__init__.py +0 -1
  274. langchain/chains/flare/base.py +0 -284
  275. langchain/chains/flare/prompts.py +0 -46
  276. langchain/chains/graph_qa/__init__.py +0 -0
  277. langchain/chains/graph_qa/arangodb.py +0 -23
  278. langchain/chains/graph_qa/base.py +0 -23
  279. langchain/chains/graph_qa/cypher.py +0 -39
  280. langchain/chains/graph_qa/cypher_utils.py +0 -27
  281. langchain/chains/graph_qa/falkordb.py +0 -29
  282. langchain/chains/graph_qa/gremlin.py +0 -36
  283. langchain/chains/graph_qa/hugegraph.py +0 -23
  284. langchain/chains/graph_qa/kuzu.py +0 -29
  285. langchain/chains/graph_qa/nebulagraph.py +0 -23
  286. langchain/chains/graph_qa/neptune_cypher.py +0 -39
  287. langchain/chains/graph_qa/neptune_sparql.py +0 -36
  288. langchain/chains/graph_qa/ontotext_graphdb.py +0 -25
  289. langchain/chains/graph_qa/prompts.py +0 -96
  290. langchain/chains/graph_qa/sparql.py +0 -23
  291. langchain/chains/history_aware_retriever.py +0 -68
  292. langchain/chains/hyde/__init__.py +0 -4
  293. langchain/chains/hyde/base.py +0 -124
  294. langchain/chains/hyde/prompts.py +0 -46
  295. langchain/chains/llm.py +0 -447
  296. langchain/chains/llm_bash/__init__.py +0 -10
  297. langchain/chains/llm_checker/__init__.py +0 -4
  298. langchain/chains/llm_checker/base.py +0 -205
  299. langchain/chains/llm_checker/prompt.py +0 -30
  300. langchain/chains/llm_math/__init__.py +0 -4
  301. langchain/chains/llm_math/base.py +0 -319
  302. langchain/chains/llm_math/prompt.py +0 -43
  303. langchain/chains/llm_requests.py +0 -23
  304. langchain/chains/llm_summarization_checker/__init__.py +0 -7
  305. langchain/chains/llm_summarization_checker/base.py +0 -217
  306. langchain/chains/llm_summarization_checker/prompts/are_all_true_prompt.txt +0 -38
  307. langchain/chains/llm_summarization_checker/prompts/check_facts.txt +0 -10
  308. langchain/chains/llm_summarization_checker/prompts/create_facts.txt +0 -10
  309. langchain/chains/llm_summarization_checker/prompts/revise_summary.txt +0 -17
  310. langchain/chains/llm_symbolic_math/__init__.py +0 -10
  311. langchain/chains/loading.py +0 -734
  312. langchain/chains/mapreduce.py +0 -121
  313. langchain/chains/moderation.py +0 -135
  314. langchain/chains/natbot/__init__.py +0 -4
  315. langchain/chains/natbot/base.py +0 -165
  316. langchain/chains/natbot/crawler.py +0 -472
  317. langchain/chains/natbot/prompt.py +0 -143
  318. langchain/chains/openai_functions/__init__.py +0 -44
  319. langchain/chains/openai_functions/base.py +0 -237
  320. langchain/chains/openai_functions/citation_fuzzy_match.py +0 -169
  321. langchain/chains/openai_functions/extraction.py +0 -197
  322. langchain/chains/openai_functions/openapi.py +0 -409
  323. langchain/chains/openai_functions/qa_with_structure.py +0 -142
  324. langchain/chains/openai_functions/tagging.py +0 -174
  325. langchain/chains/openai_functions/utils.py +0 -40
  326. langchain/chains/openai_tools/__init__.py +0 -3
  327. langchain/chains/openai_tools/extraction.py +0 -79
  328. langchain/chains/prompt_selector.py +0 -65
  329. langchain/chains/qa_generation/__init__.py +0 -0
  330. langchain/chains/qa_generation/base.py +0 -128
  331. langchain/chains/qa_generation/prompt.py +0 -50
  332. langchain/chains/qa_with_sources/__init__.py +0 -5
  333. langchain/chains/qa_with_sources/base.py +0 -266
  334. langchain/chains/qa_with_sources/loading.py +0 -209
  335. langchain/chains/qa_with_sources/map_reduce_prompt.py +0 -54
  336. langchain/chains/qa_with_sources/refine_prompts.py +0 -37
  337. langchain/chains/qa_with_sources/retrieval.py +0 -75
  338. langchain/chains/qa_with_sources/stuff_prompt.py +0 -43
  339. langchain/chains/qa_with_sources/vector_db.py +0 -88
  340. langchain/chains/query_constructor/__init__.py +0 -3
  341. langchain/chains/query_constructor/base.py +0 -378
  342. langchain/chains/query_constructor/ir.py +0 -23
  343. langchain/chains/query_constructor/parser.py +0 -272
  344. langchain/chains/query_constructor/prompt.py +0 -226
  345. langchain/chains/query_constructor/schema.py +0 -14
  346. langchain/chains/question_answering/__init__.py +0 -6
  347. langchain/chains/question_answering/chain.py +0 -279
  348. langchain/chains/question_answering/map_reduce_prompt.py +0 -80
  349. langchain/chains/question_answering/map_rerank_prompt.py +0 -66
  350. langchain/chains/question_answering/refine_prompts.py +0 -72
  351. langchain/chains/question_answering/stuff_prompt.py +0 -33
  352. langchain/chains/retrieval.py +0 -67
  353. langchain/chains/retrieval_qa/__init__.py +0 -1
  354. langchain/chains/retrieval_qa/base.py +0 -374
  355. langchain/chains/retrieval_qa/prompt.py +0 -11
  356. langchain/chains/router/__init__.py +0 -12
  357. langchain/chains/router/base.py +0 -154
  358. langchain/chains/router/embedding_router.py +0 -96
  359. langchain/chains/router/llm_router.py +0 -198
  360. langchain/chains/router/multi_prompt.py +0 -184
  361. langchain/chains/router/multi_prompt_prompt.py +0 -32
  362. langchain/chains/router/multi_retrieval_prompt.py +0 -30
  363. langchain/chains/router/multi_retrieval_qa.py +0 -127
  364. langchain/chains/sequential.py +0 -220
  365. langchain/chains/sql_database/__init__.py +0 -1
  366. langchain/chains/sql_database/prompt.py +0 -282
  367. langchain/chains/sql_database/query.py +0 -167
  368. langchain/chains/structured_output/__init__.py +0 -6
  369. langchain/chains/structured_output/base.py +0 -584
  370. langchain/chains/summarize/__init__.py +0 -6
  371. langchain/chains/summarize/chain.py +0 -174
  372. langchain/chains/summarize/map_reduce_prompt.py +0 -10
  373. langchain/chains/summarize/refine_prompts.py +0 -23
  374. langchain/chains/summarize/stuff_prompt.py +0 -10
  375. langchain/chains/transform.py +0 -88
  376. langchain/chat_loaders/__init__.py +0 -19
  377. langchain/chat_loaders/base.py +0 -3
  378. langchain/chat_loaders/facebook_messenger.py +0 -32
  379. langchain/chat_loaders/gmail.py +0 -23
  380. langchain/chat_loaders/imessage.py +0 -23
  381. langchain/chat_loaders/langsmith.py +0 -30
  382. langchain/chat_loaders/slack.py +0 -23
  383. langchain/chat_loaders/telegram.py +0 -23
  384. langchain/chat_loaders/utils.py +0 -36
  385. langchain/chat_loaders/whatsapp.py +0 -23
  386. langchain/chat_models/anthropic.py +0 -30
  387. langchain/chat_models/anyscale.py +0 -23
  388. langchain/chat_models/azure_openai.py +0 -23
  389. langchain/chat_models/azureml_endpoint.py +0 -30
  390. langchain/chat_models/baichuan.py +0 -23
  391. langchain/chat_models/baidu_qianfan_endpoint.py +0 -27
  392. langchain/chat_models/bedrock.py +0 -27
  393. langchain/chat_models/cohere.py +0 -23
  394. langchain/chat_models/databricks.py +0 -23
  395. langchain/chat_models/ernie.py +0 -23
  396. langchain/chat_models/everlyai.py +0 -23
  397. langchain/chat_models/fake.py +0 -30
  398. langchain/chat_models/fireworks.py +0 -23
  399. langchain/chat_models/gigachat.py +0 -23
  400. langchain/chat_models/google_palm.py +0 -30
  401. langchain/chat_models/human.py +0 -23
  402. langchain/chat_models/hunyuan.py +0 -23
  403. langchain/chat_models/javelin_ai_gateway.py +0 -30
  404. langchain/chat_models/jinachat.py +0 -23
  405. langchain/chat_models/konko.py +0 -23
  406. langchain/chat_models/litellm.py +0 -30
  407. langchain/chat_models/meta.py +0 -25
  408. langchain/chat_models/minimax.py +0 -23
  409. langchain/chat_models/mlflow.py +0 -23
  410. langchain/chat_models/mlflow_ai_gateway.py +0 -30
  411. langchain/chat_models/ollama.py +0 -23
  412. langchain/chat_models/openai.py +0 -23
  413. langchain/chat_models/pai_eas_endpoint.py +0 -25
  414. langchain/chat_models/promptlayer_openai.py +0 -25
  415. langchain/chat_models/tongyi.py +0 -23
  416. langchain/chat_models/vertexai.py +0 -23
  417. langchain/chat_models/volcengine_maas.py +0 -30
  418. langchain/chat_models/yandex.py +0 -23
  419. langchain/docstore/__init__.py +0 -48
  420. langchain/docstore/arbitrary_fn.py +0 -23
  421. langchain/docstore/base.py +0 -27
  422. langchain/docstore/document.py +0 -3
  423. langchain/docstore/in_memory.py +0 -23
  424. langchain/docstore/wikipedia.py +0 -23
  425. langchain/document_loaders/__init__.py +0 -553
  426. langchain/document_loaders/acreom.py +0 -23
  427. langchain/document_loaders/airbyte.py +0 -48
  428. langchain/document_loaders/airbyte_json.py +0 -23
  429. langchain/document_loaders/airtable.py +0 -23
  430. langchain/document_loaders/apify_dataset.py +0 -23
  431. langchain/document_loaders/arcgis_loader.py +0 -23
  432. langchain/document_loaders/arxiv.py +0 -23
  433. langchain/document_loaders/assemblyai.py +0 -28
  434. langchain/document_loaders/async_html.py +0 -23
  435. langchain/document_loaders/azlyrics.py +0 -23
  436. langchain/document_loaders/azure_ai_data.py +0 -23
  437. langchain/document_loaders/azure_blob_storage_container.py +0 -25
  438. langchain/document_loaders/azure_blob_storage_file.py +0 -25
  439. langchain/document_loaders/baiducloud_bos_directory.py +0 -29
  440. langchain/document_loaders/baiducloud_bos_file.py +0 -27
  441. langchain/document_loaders/base.py +0 -3
  442. langchain/document_loaders/base_o365.py +0 -23
  443. langchain/document_loaders/bibtex.py +0 -23
  444. langchain/document_loaders/bigquery.py +0 -23
  445. langchain/document_loaders/bilibili.py +0 -23
  446. langchain/document_loaders/blackboard.py +0 -23
  447. langchain/document_loaders/blob_loaders/__init__.py +0 -36
  448. langchain/document_loaders/blob_loaders/file_system.py +0 -23
  449. langchain/document_loaders/blob_loaders/schema.py +0 -26
  450. langchain/document_loaders/blob_loaders/youtube_audio.py +0 -23
  451. langchain/document_loaders/blockchain.py +0 -28
  452. langchain/document_loaders/brave_search.py +0 -23
  453. langchain/document_loaders/browserless.py +0 -23
  454. langchain/document_loaders/chatgpt.py +0 -28
  455. langchain/document_loaders/chromium.py +0 -23
  456. langchain/document_loaders/college_confidential.py +0 -25
  457. langchain/document_loaders/concurrent.py +0 -23
  458. langchain/document_loaders/confluence.py +0 -28
  459. langchain/document_loaders/conllu.py +0 -23
  460. langchain/document_loaders/couchbase.py +0 -23
  461. langchain/document_loaders/csv_loader.py +0 -27
  462. langchain/document_loaders/cube_semantic.py +0 -23
  463. langchain/document_loaders/datadog_logs.py +0 -23
  464. langchain/document_loaders/dataframe.py +0 -28
  465. langchain/document_loaders/diffbot.py +0 -23
  466. langchain/document_loaders/directory.py +0 -23
  467. langchain/document_loaders/discord.py +0 -23
  468. langchain/document_loaders/docugami.py +0 -23
  469. langchain/document_loaders/docusaurus.py +0 -23
  470. langchain/document_loaders/dropbox.py +0 -23
  471. langchain/document_loaders/duckdb_loader.py +0 -23
  472. langchain/document_loaders/email.py +0 -30
  473. langchain/document_loaders/epub.py +0 -23
  474. langchain/document_loaders/etherscan.py +0 -23
  475. langchain/document_loaders/evernote.py +0 -23
  476. langchain/document_loaders/excel.py +0 -23
  477. langchain/document_loaders/facebook_chat.py +0 -28
  478. langchain/document_loaders/fauna.py +0 -23
  479. langchain/document_loaders/figma.py +0 -23
  480. langchain/document_loaders/gcs_directory.py +0 -23
  481. langchain/document_loaders/gcs_file.py +0 -23
  482. langchain/document_loaders/generic.py +0 -23
  483. langchain/document_loaders/geodataframe.py +0 -23
  484. langchain/document_loaders/git.py +0 -23
  485. langchain/document_loaders/gitbook.py +0 -23
  486. langchain/document_loaders/github.py +0 -28
  487. langchain/document_loaders/google_speech_to_text.py +0 -23
  488. langchain/document_loaders/googledrive.py +0 -23
  489. langchain/document_loaders/gutenberg.py +0 -23
  490. langchain/document_loaders/helpers.py +0 -30
  491. langchain/document_loaders/hn.py +0 -23
  492. langchain/document_loaders/html.py +0 -23
  493. langchain/document_loaders/html_bs.py +0 -23
  494. langchain/document_loaders/hugging_face_dataset.py +0 -23
  495. langchain/document_loaders/ifixit.py +0 -23
  496. langchain/document_loaders/image.py +0 -23
  497. langchain/document_loaders/image_captions.py +0 -23
  498. langchain/document_loaders/imsdb.py +0 -23
  499. langchain/document_loaders/iugu.py +0 -23
  500. langchain/document_loaders/joplin.py +0 -23
  501. langchain/document_loaders/json_loader.py +0 -23
  502. langchain/document_loaders/lakefs.py +0 -33
  503. langchain/document_loaders/larksuite.py +0 -23
  504. langchain/document_loaders/markdown.py +0 -25
  505. langchain/document_loaders/mastodon.py +0 -23
  506. langchain/document_loaders/max_compute.py +0 -23
  507. langchain/document_loaders/mediawikidump.py +0 -23
  508. langchain/document_loaders/merge.py +0 -23
  509. langchain/document_loaders/mhtml.py +0 -23
  510. langchain/document_loaders/modern_treasury.py +0 -23
  511. langchain/document_loaders/mongodb.py +0 -23
  512. langchain/document_loaders/news.py +0 -23
  513. langchain/document_loaders/notebook.py +0 -33
  514. langchain/document_loaders/notion.py +0 -23
  515. langchain/document_loaders/notiondb.py +0 -23
  516. langchain/document_loaders/nuclia.py +0 -23
  517. langchain/document_loaders/obs_directory.py +0 -23
  518. langchain/document_loaders/obs_file.py +0 -23
  519. langchain/document_loaders/obsidian.py +0 -23
  520. langchain/document_loaders/odt.py +0 -23
  521. langchain/document_loaders/onedrive.py +0 -23
  522. langchain/document_loaders/onedrive_file.py +0 -23
  523. langchain/document_loaders/onenote.py +0 -23
  524. langchain/document_loaders/open_city_data.py +0 -23
  525. langchain/document_loaders/org_mode.py +0 -25
  526. langchain/document_loaders/parsers/__init__.py +0 -58
  527. langchain/document_loaders/parsers/audio.py +0 -33
  528. langchain/document_loaders/parsers/docai.py +0 -30
  529. langchain/document_loaders/parsers/generic.py +0 -25
  530. langchain/document_loaders/parsers/grobid.py +0 -30
  531. langchain/document_loaders/parsers/html/__init__.py +0 -25
  532. langchain/document_loaders/parsers/html/bs4.py +0 -25
  533. langchain/document_loaders/parsers/language/__init__.py +0 -29
  534. langchain/document_loaders/parsers/language/cobol.py +0 -27
  535. langchain/document_loaders/parsers/language/code_segmenter.py +0 -29
  536. langchain/document_loaders/parsers/language/javascript.py +0 -29
  537. langchain/document_loaders/parsers/language/language_parser.py +0 -29
  538. langchain/document_loaders/parsers/language/python.py +0 -27
  539. langchain/document_loaders/parsers/msword.py +0 -25
  540. langchain/document_loaders/parsers/pdf.py +0 -50
  541. langchain/document_loaders/parsers/registry.py +0 -25
  542. langchain/document_loaders/parsers/txt.py +0 -23
  543. langchain/document_loaders/pdf.py +0 -65
  544. langchain/document_loaders/polars_dataframe.py +0 -23
  545. langchain/document_loaders/powerpoint.py +0 -25
  546. langchain/document_loaders/psychic.py +0 -23
  547. langchain/document_loaders/pubmed.py +0 -23
  548. langchain/document_loaders/pyspark_dataframe.py +0 -26
  549. langchain/document_loaders/python.py +0 -22
  550. langchain/document_loaders/quip.py +0 -23
  551. langchain/document_loaders/readthedocs.py +0 -23
  552. langchain/document_loaders/recursive_url_loader.py +0 -23
  553. langchain/document_loaders/reddit.py +0 -23
  554. langchain/document_loaders/roam.py +0 -23
  555. langchain/document_loaders/rocksetdb.py +0 -23
  556. langchain/document_loaders/rspace.py +0 -23
  557. langchain/document_loaders/rss.py +0 -23
  558. langchain/document_loaders/rst.py +0 -23
  559. langchain/document_loaders/rtf.py +0 -23
  560. langchain/document_loaders/s3_directory.py +0 -23
  561. langchain/document_loaders/s3_file.py +0 -23
  562. langchain/document_loaders/sharepoint.py +0 -23
  563. langchain/document_loaders/sitemap.py +0 -23
  564. langchain/document_loaders/slack_directory.py +0 -23
  565. langchain/document_loaders/snowflake_loader.py +0 -23
  566. langchain/document_loaders/spreedly.py +0 -23
  567. langchain/document_loaders/srt.py +0 -23
  568. langchain/document_loaders/stripe.py +0 -23
  569. langchain/document_loaders/telegram.py +0 -38
  570. langchain/document_loaders/tencent_cos_directory.py +0 -25
  571. langchain/document_loaders/tencent_cos_file.py +0 -23
  572. langchain/document_loaders/tensorflow_datasets.py +0 -23
  573. langchain/document_loaders/text.py +0 -23
  574. langchain/document_loaders/tomarkdown.py +0 -23
  575. langchain/document_loaders/toml.py +0 -23
  576. langchain/document_loaders/trello.py +0 -23
  577. langchain/document_loaders/tsv.py +0 -23
  578. langchain/document_loaders/twitter.py +0 -23
  579. langchain/document_loaders/unstructured.py +0 -54
  580. langchain/document_loaders/url.py +0 -23
  581. langchain/document_loaders/url_playwright.py +0 -33
  582. langchain/document_loaders/url_selenium.py +0 -23
  583. langchain/document_loaders/weather.py +0 -23
  584. langchain/document_loaders/web_base.py +0 -23
  585. langchain/document_loaders/whatsapp_chat.py +0 -28
  586. langchain/document_loaders/wikipedia.py +0 -23
  587. langchain/document_loaders/word_document.py +0 -30
  588. langchain/document_loaders/xml.py +0 -23
  589. langchain/document_loaders/xorbits.py +0 -23
  590. langchain/document_loaders/youtube.py +0 -33
  591. langchain/document_transformers/__init__.py +0 -77
  592. langchain/document_transformers/beautiful_soup_transformer.py +0 -25
  593. langchain/document_transformers/doctran_text_extract.py +0 -25
  594. langchain/document_transformers/doctran_text_qa.py +0 -25
  595. langchain/document_transformers/doctran_text_translate.py +0 -25
  596. langchain/document_transformers/embeddings_redundant_filter.py +0 -50
  597. langchain/document_transformers/google_translate.py +0 -25
  598. langchain/document_transformers/html2text.py +0 -25
  599. langchain/document_transformers/long_context_reorder.py +0 -23
  600. langchain/document_transformers/nuclia_text_transform.py +0 -25
  601. langchain/document_transformers/openai_functions.py +0 -32
  602. langchain/document_transformers/xsl/html_chunks_with_headers.xslt +0 -199
  603. langchain/embeddings/aleph_alpha.py +0 -30
  604. langchain/embeddings/awa.py +0 -23
  605. langchain/embeddings/azure_openai.py +0 -23
  606. langchain/embeddings/baidu_qianfan_endpoint.py +0 -23
  607. langchain/embeddings/bedrock.py +0 -23
  608. langchain/embeddings/bookend.py +0 -23
  609. langchain/embeddings/cache.py +0 -368
  610. langchain/embeddings/clarifai.py +0 -23
  611. langchain/embeddings/cloudflare_workersai.py +0 -29
  612. langchain/embeddings/cohere.py +0 -23
  613. langchain/embeddings/dashscope.py +0 -23
  614. langchain/embeddings/databricks.py +0 -23
  615. langchain/embeddings/deepinfra.py +0 -23
  616. langchain/embeddings/edenai.py +0 -23
  617. langchain/embeddings/elasticsearch.py +0 -23
  618. langchain/embeddings/embaas.py +0 -23
  619. langchain/embeddings/ernie.py +0 -23
  620. langchain/embeddings/fake.py +0 -30
  621. langchain/embeddings/fastembed.py +0 -23
  622. langchain/embeddings/google_palm.py +0 -23
  623. langchain/embeddings/gpt4all.py +0 -23
  624. langchain/embeddings/gradient_ai.py +0 -23
  625. langchain/embeddings/huggingface.py +0 -36
  626. langchain/embeddings/huggingface_hub.py +0 -23
  627. langchain/embeddings/infinity.py +0 -30
  628. langchain/embeddings/javelin_ai_gateway.py +0 -23
  629. langchain/embeddings/jina.py +0 -23
  630. langchain/embeddings/johnsnowlabs.py +0 -23
  631. langchain/embeddings/llamacpp.py +0 -23
  632. langchain/embeddings/llm_rails.py +0 -23
  633. langchain/embeddings/localai.py +0 -23
  634. langchain/embeddings/minimax.py +0 -23
  635. langchain/embeddings/mlflow.py +0 -23
  636. langchain/embeddings/mlflow_gateway.py +0 -23
  637. langchain/embeddings/modelscope_hub.py +0 -23
  638. langchain/embeddings/mosaicml.py +0 -23
  639. langchain/embeddings/nlpcloud.py +0 -23
  640. langchain/embeddings/octoai_embeddings.py +0 -23
  641. langchain/embeddings/ollama.py +0 -23
  642. langchain/embeddings/openai.py +0 -23
  643. langchain/embeddings/sagemaker_endpoint.py +0 -30
  644. langchain/embeddings/self_hosted.py +0 -23
  645. langchain/embeddings/self_hosted_hugging_face.py +0 -30
  646. langchain/embeddings/sentence_transformer.py +0 -21
  647. langchain/embeddings/spacy_embeddings.py +0 -23
  648. langchain/embeddings/tensorflow_hub.py +0 -23
  649. langchain/embeddings/vertexai.py +0 -23
  650. langchain/embeddings/voyageai.py +0 -23
  651. langchain/embeddings/xinference.py +0 -23
  652. langchain/env.py +0 -17
  653. langchain/evaluation/__init__.py +0 -128
  654. langchain/evaluation/agents/__init__.py +0 -5
  655. langchain/evaluation/agents/trajectory_eval_chain.py +0 -416
  656. langchain/evaluation/agents/trajectory_eval_prompt.py +0 -146
  657. langchain/evaluation/comparison/__init__.py +0 -36
  658. langchain/evaluation/comparison/eval_chain.py +0 -462
  659. langchain/evaluation/comparison/prompt.py +0 -59
  660. langchain/evaluation/criteria/__init__.py +0 -56
  661. langchain/evaluation/criteria/eval_chain.py +0 -606
  662. langchain/evaluation/criteria/prompt.py +0 -37
  663. langchain/evaluation/embedding_distance/__init__.py +0 -13
  664. langchain/evaluation/embedding_distance/base.py +0 -613
  665. langchain/evaluation/exact_match/__init__.py +0 -0
  666. langchain/evaluation/exact_match/base.py +0 -110
  667. langchain/evaluation/loading.py +0 -207
  668. langchain/evaluation/parsing/__init__.py +0 -0
  669. langchain/evaluation/parsing/base.py +0 -175
  670. langchain/evaluation/parsing/json_distance.py +0 -108
  671. langchain/evaluation/parsing/json_schema.py +0 -97
  672. langchain/evaluation/qa/__init__.py +0 -10
  673. langchain/evaluation/qa/eval_chain.py +0 -372
  674. langchain/evaluation/qa/eval_prompt.py +0 -78
  675. langchain/evaluation/qa/generate_chain.py +0 -36
  676. langchain/evaluation/qa/generate_prompt.py +0 -21
  677. langchain/evaluation/regex_match/__init__.py +0 -0
  678. langchain/evaluation/regex_match/base.py +0 -94
  679. langchain/evaluation/schema.py +0 -491
  680. langchain/evaluation/scoring/__init__.py +0 -31
  681. langchain/evaluation/scoring/eval_chain.py +0 -476
  682. langchain/evaluation/scoring/prompt.py +0 -53
  683. langchain/evaluation/string_distance/__init__.py +0 -13
  684. langchain/evaluation/string_distance/base.py +0 -472
  685. langchain/example_generator.py +0 -5
  686. langchain/formatting.py +0 -5
  687. langchain/globals.py +0 -180
  688. langchain/graphs/__init__.py +0 -57
  689. langchain/graphs/arangodb_graph.py +0 -28
  690. langchain/graphs/falkordb_graph.py +0 -23
  691. langchain/graphs/graph_document.py +0 -33
  692. langchain/graphs/graph_store.py +0 -23
  693. langchain/graphs/hugegraph.py +0 -23
  694. langchain/graphs/kuzu_graph.py +0 -23
  695. langchain/graphs/memgraph_graph.py +0 -23
  696. langchain/graphs/nebula_graph.py +0 -23
  697. langchain/graphs/neo4j_graph.py +0 -23
  698. langchain/graphs/neptune_graph.py +0 -23
  699. langchain/graphs/networkx_graph.py +0 -36
  700. langchain/graphs/rdf_graph.py +0 -23
  701. langchain/hub.py +0 -131
  702. langchain/indexes/__init__.py +0 -50
  703. langchain/indexes/_api.py +0 -5
  704. langchain/indexes/_sql_record_manager.py +0 -539
  705. langchain/indexes/graph.py +0 -28
  706. langchain/indexes/prompts/__init__.py +0 -13
  707. langchain/indexes/prompts/entity_extraction.py +0 -39
  708. langchain/indexes/prompts/entity_summarization.py +0 -24
  709. langchain/indexes/prompts/knowledge_triplet_extraction.py +0 -36
  710. langchain/indexes/vectorstore.py +0 -269
  711. langchain/input.py +0 -15
  712. langchain/llms/__init__.py +0 -734
  713. langchain/llms/ai21.py +0 -28
  714. langchain/llms/aleph_alpha.py +0 -23
  715. langchain/llms/amazon_api_gateway.py +0 -23
  716. langchain/llms/anthropic.py +0 -23
  717. langchain/llms/anyscale.py +0 -23
  718. langchain/llms/arcee.py +0 -23
  719. langchain/llms/aviary.py +0 -23
  720. langchain/llms/azureml_endpoint.py +0 -48
  721. langchain/llms/baidu_qianfan_endpoint.py +0 -23
  722. langchain/llms/bananadev.py +0 -23
  723. langchain/llms/base.py +0 -20
  724. langchain/llms/baseten.py +0 -23
  725. langchain/llms/beam.py +0 -23
  726. langchain/llms/bedrock.py +0 -28
  727. langchain/llms/bittensor.py +0 -23
  728. langchain/llms/cerebriumai.py +0 -23
  729. langchain/llms/chatglm.py +0 -23
  730. langchain/llms/clarifai.py +0 -23
  731. langchain/llms/cloudflare_workersai.py +0 -25
  732. langchain/llms/cohere.py +0 -23
  733. langchain/llms/ctransformers.py +0 -23
  734. langchain/llms/ctranslate2.py +0 -23
  735. langchain/llms/databricks.py +0 -23
  736. langchain/llms/deepinfra.py +0 -23
  737. langchain/llms/deepsparse.py +0 -23
  738. langchain/llms/edenai.py +0 -23
  739. langchain/llms/fake.py +0 -28
  740. langchain/llms/fireworks.py +0 -23
  741. langchain/llms/forefrontai.py +0 -23
  742. langchain/llms/gigachat.py +0 -23
  743. langchain/llms/google_palm.py +0 -23
  744. langchain/llms/gooseai.py +0 -23
  745. langchain/llms/gpt4all.py +0 -23
  746. langchain/llms/gradient_ai.py +0 -28
  747. langchain/llms/grammars/json.gbnf +0 -29
  748. langchain/llms/grammars/list.gbnf +0 -14
  749. langchain/llms/huggingface_endpoint.py +0 -23
  750. langchain/llms/huggingface_hub.py +0 -23
  751. langchain/llms/huggingface_pipeline.py +0 -23
  752. langchain/llms/huggingface_text_gen_inference.py +0 -23
  753. langchain/llms/human.py +0 -23
  754. langchain/llms/javelin_ai_gateway.py +0 -28
  755. langchain/llms/koboldai.py +0 -23
  756. langchain/llms/llamacpp.py +0 -23
  757. langchain/llms/loading.py +0 -27
  758. langchain/llms/manifest.py +0 -23
  759. langchain/llms/minimax.py +0 -23
  760. langchain/llms/mlflow.py +0 -23
  761. langchain/llms/mlflow_ai_gateway.py +0 -23
  762. langchain/llms/modal.py +0 -23
  763. langchain/llms/mosaicml.py +0 -23
  764. langchain/llms/nlpcloud.py +0 -23
  765. langchain/llms/octoai_endpoint.py +0 -23
  766. langchain/llms/ollama.py +0 -23
  767. langchain/llms/opaqueprompts.py +0 -23
  768. langchain/llms/openai.py +0 -32
  769. langchain/llms/openllm.py +0 -23
  770. langchain/llms/openlm.py +0 -23
  771. langchain/llms/pai_eas_endpoint.py +0 -23
  772. langchain/llms/petals.py +0 -23
  773. langchain/llms/pipelineai.py +0 -23
  774. langchain/llms/predibase.py +0 -23
  775. langchain/llms/predictionguard.py +0 -23
  776. langchain/llms/promptlayer_openai.py +0 -27
  777. langchain/llms/replicate.py +0 -23
  778. langchain/llms/rwkv.py +0 -23
  779. langchain/llms/sagemaker_endpoint.py +0 -28
  780. langchain/llms/self_hosted.py +0 -23
  781. langchain/llms/self_hosted_hugging_face.py +0 -23
  782. langchain/llms/stochasticai.py +0 -23
  783. langchain/llms/symblai_nebula.py +0 -23
  784. langchain/llms/textgen.py +0 -23
  785. langchain/llms/titan_takeoff.py +0 -23
  786. langchain/llms/titan_takeoff_pro.py +0 -23
  787. langchain/llms/together.py +0 -23
  788. langchain/llms/tongyi.py +0 -23
  789. langchain/llms/utils.py +0 -23
  790. langchain/llms/vertexai.py +0 -27
  791. langchain/llms/vllm.py +0 -27
  792. langchain/llms/volcengine_maas.py +0 -28
  793. langchain/llms/watsonxllm.py +0 -23
  794. langchain/llms/writer.py +0 -23
  795. langchain/llms/xinference.py +0 -23
  796. langchain/llms/yandex.py +0 -23
  797. langchain/load/__init__.py +0 -11
  798. langchain/load/dump.py +0 -3
  799. langchain/load/load.py +0 -3
  800. langchain/load/serializable.py +0 -19
  801. langchain/memory/__init__.py +0 -153
  802. langchain/memory/buffer.py +0 -178
  803. langchain/memory/buffer_window.py +0 -62
  804. langchain/memory/chat_memory.py +0 -104
  805. langchain/memory/chat_message_histories/__init__.py +0 -84
  806. langchain/memory/chat_message_histories/astradb.py +0 -25
  807. langchain/memory/chat_message_histories/cassandra.py +0 -25
  808. langchain/memory/chat_message_histories/cosmos_db.py +0 -25
  809. langchain/memory/chat_message_histories/dynamodb.py +0 -25
  810. langchain/memory/chat_message_histories/elasticsearch.py +0 -27
  811. langchain/memory/chat_message_histories/file.py +0 -25
  812. langchain/memory/chat_message_histories/firestore.py +0 -25
  813. langchain/memory/chat_message_histories/in_memory.py +0 -5
  814. langchain/memory/chat_message_histories/momento.py +0 -25
  815. langchain/memory/chat_message_histories/mongodb.py +0 -25
  816. langchain/memory/chat_message_histories/neo4j.py +0 -25
  817. langchain/memory/chat_message_histories/postgres.py +0 -25
  818. langchain/memory/chat_message_histories/redis.py +0 -25
  819. langchain/memory/chat_message_histories/rocksetdb.py +0 -25
  820. langchain/memory/chat_message_histories/singlestoredb.py +0 -27
  821. langchain/memory/chat_message_histories/sql.py +0 -33
  822. langchain/memory/chat_message_histories/streamlit.py +0 -25
  823. langchain/memory/chat_message_histories/upstash_redis.py +0 -27
  824. langchain/memory/chat_message_histories/xata.py +0 -25
  825. langchain/memory/chat_message_histories/zep.py +0 -25
  826. langchain/memory/combined.py +0 -85
  827. langchain/memory/entity.py +0 -611
  828. langchain/memory/kg.py +0 -23
  829. langchain/memory/motorhead_memory.py +0 -23
  830. langchain/memory/prompt.py +0 -164
  831. langchain/memory/readonly.py +0 -24
  832. langchain/memory/simple.py +0 -27
  833. langchain/memory/summary.py +0 -170
  834. langchain/memory/summary_buffer.py +0 -151
  835. langchain/memory/token_buffer.py +0 -74
  836. langchain/memory/utils.py +0 -21
  837. langchain/memory/vectorstore.py +0 -120
  838. langchain/memory/vectorstore_token_buffer_memory.py +0 -184
  839. langchain/memory/zep_memory.py +0 -23
  840. langchain/model_laboratory.py +0 -99
  841. langchain/output_parsers/__init__.py +0 -87
  842. langchain/output_parsers/boolean.py +0 -54
  843. langchain/output_parsers/combining.py +0 -59
  844. langchain/output_parsers/datetime.py +0 -58
  845. langchain/output_parsers/enum.py +0 -45
  846. langchain/output_parsers/ernie_functions.py +0 -45
  847. langchain/output_parsers/fix.py +0 -155
  848. langchain/output_parsers/format_instructions.py +0 -79
  849. langchain/output_parsers/json.py +0 -15
  850. langchain/output_parsers/list.py +0 -13
  851. langchain/output_parsers/loading.py +0 -22
  852. langchain/output_parsers/openai_functions.py +0 -13
  853. langchain/output_parsers/openai_tools.py +0 -7
  854. langchain/output_parsers/pandas_dataframe.py +0 -171
  855. langchain/output_parsers/prompts.py +0 -21
  856. langchain/output_parsers/pydantic.py +0 -3
  857. langchain/output_parsers/rail_parser.py +0 -25
  858. langchain/output_parsers/regex.py +0 -41
  859. langchain/output_parsers/regex_dict.py +0 -43
  860. langchain/output_parsers/retry.py +0 -316
  861. langchain/output_parsers/structured.py +0 -116
  862. langchain/output_parsers/xml.py +0 -3
  863. langchain/output_parsers/yaml.py +0 -77
  864. langchain/prompts/__init__.py +0 -102
  865. langchain/prompts/base.py +0 -21
  866. langchain/prompts/chat.py +0 -37
  867. langchain/prompts/example_selector/__init__.py +0 -42
  868. langchain/prompts/example_selector/base.py +0 -3
  869. langchain/prompts/example_selector/length_based.py +0 -5
  870. langchain/prompts/example_selector/ngram_overlap.py +0 -32
  871. langchain/prompts/example_selector/semantic_similarity.py +0 -11
  872. langchain/prompts/few_shot.py +0 -11
  873. langchain/prompts/few_shot_with_templates.py +0 -3
  874. langchain/prompts/loading.py +0 -23
  875. langchain/prompts/pipeline.py +0 -3
  876. langchain/prompts/prompt.py +0 -6
  877. langchain/pydantic_v1/__init__.py +0 -38
  878. langchain/pydantic_v1/dataclasses.py +0 -20
  879. langchain/pydantic_v1/main.py +0 -20
  880. langchain/python.py +0 -19
  881. langchain/requests.py +0 -35
  882. langchain/retrievers/__init__.py +0 -178
  883. langchain/retrievers/arcee.py +0 -23
  884. langchain/retrievers/arxiv.py +0 -23
  885. langchain/retrievers/azure_ai_search.py +0 -30
  886. langchain/retrievers/bedrock.py +0 -33
  887. langchain/retrievers/bm25.py +0 -28
  888. langchain/retrievers/chaindesk.py +0 -23
  889. langchain/retrievers/chatgpt_plugin_retriever.py +0 -23
  890. langchain/retrievers/cohere_rag_retriever.py +0 -23
  891. langchain/retrievers/contextual_compression.py +0 -81
  892. langchain/retrievers/databerry.py +0 -23
  893. langchain/retrievers/docarray.py +0 -28
  894. langchain/retrievers/document_compressors/__init__.py +0 -44
  895. langchain/retrievers/document_compressors/base.py +0 -82
  896. langchain/retrievers/document_compressors/chain_extract.py +0 -123
  897. langchain/retrievers/document_compressors/chain_extract_prompt.py +0 -10
  898. langchain/retrievers/document_compressors/chain_filter.py +0 -133
  899. langchain/retrievers/document_compressors/chain_filter_prompt.py +0 -8
  900. langchain/retrievers/document_compressors/cohere_rerank.py +0 -126
  901. langchain/retrievers/document_compressors/cross_encoder.py +0 -16
  902. langchain/retrievers/document_compressors/cross_encoder_rerank.py +0 -50
  903. langchain/retrievers/document_compressors/embeddings_filter.py +0 -140
  904. langchain/retrievers/document_compressors/flashrank_rerank.py +0 -27
  905. langchain/retrievers/document_compressors/listwise_rerank.py +0 -145
  906. langchain/retrievers/elastic_search_bm25.py +0 -23
  907. langchain/retrievers/embedchain.py +0 -23
  908. langchain/retrievers/ensemble.py +0 -336
  909. langchain/retrievers/google_cloud_documentai_warehouse.py +0 -25
  910. langchain/retrievers/google_vertex_ai_search.py +0 -33
  911. langchain/retrievers/kay.py +0 -23
  912. langchain/retrievers/kendra.py +0 -66
  913. langchain/retrievers/knn.py +0 -23
  914. langchain/retrievers/llama_index.py +0 -30
  915. langchain/retrievers/merger_retriever.py +0 -123
  916. langchain/retrievers/metal.py +0 -23
  917. langchain/retrievers/milvus.py +0 -28
  918. langchain/retrievers/multi_query.py +0 -233
  919. langchain/retrievers/multi_vector.py +0 -135
  920. langchain/retrievers/outline.py +0 -23
  921. langchain/retrievers/parent_document_retriever.py +0 -172
  922. langchain/retrievers/pinecone_hybrid_search.py +0 -23
  923. langchain/retrievers/pubmed.py +0 -23
  924. langchain/retrievers/pupmed.py +0 -23
  925. langchain/retrievers/re_phraser.py +0 -89
  926. langchain/retrievers/remote_retriever.py +0 -23
  927. langchain/retrievers/self_query/__init__.py +0 -0
  928. langchain/retrievers/self_query/astradb.py +0 -23
  929. langchain/retrievers/self_query/base.py +0 -416
  930. langchain/retrievers/self_query/chroma.py +0 -23
  931. langchain/retrievers/self_query/dashvector.py +0 -23
  932. langchain/retrievers/self_query/databricks_vector_search.py +0 -27
  933. langchain/retrievers/self_query/deeplake.py +0 -27
  934. langchain/retrievers/self_query/dingo.py +0 -23
  935. langchain/retrievers/self_query/elasticsearch.py +0 -25
  936. langchain/retrievers/self_query/milvus.py +0 -27
  937. langchain/retrievers/self_query/mongodb_atlas.py +0 -25
  938. langchain/retrievers/self_query/myscale.py +0 -23
  939. langchain/retrievers/self_query/opensearch.py +0 -23
  940. langchain/retrievers/self_query/pgvector.py +0 -23
  941. langchain/retrievers/self_query/pinecone.py +0 -23
  942. langchain/retrievers/self_query/qdrant.py +0 -23
  943. langchain/retrievers/self_query/redis.py +0 -23
  944. langchain/retrievers/self_query/supabase.py +0 -23
  945. langchain/retrievers/self_query/tencentvectordb.py +0 -27
  946. langchain/retrievers/self_query/timescalevector.py +0 -27
  947. langchain/retrievers/self_query/vectara.py +0 -27
  948. langchain/retrievers/self_query/weaviate.py +0 -23
  949. langchain/retrievers/svm.py +0 -23
  950. langchain/retrievers/tavily_search_api.py +0 -28
  951. langchain/retrievers/tfidf.py +0 -23
  952. langchain/retrievers/time_weighted_retriever.py +0 -196
  953. langchain/retrievers/vespa_retriever.py +0 -23
  954. langchain/retrievers/weaviate_hybrid_search.py +0 -23
  955. langchain/retrievers/web_research.py +0 -29
  956. langchain/retrievers/wikipedia.py +0 -23
  957. langchain/retrievers/you.py +0 -23
  958. langchain/retrievers/zep.py +0 -30
  959. langchain/retrievers/zilliz.py +0 -28
  960. langchain/runnables/__init__.py +0 -18
  961. langchain/runnables/hub.py +0 -44
  962. langchain/runnables/openai_functions.py +0 -57
  963. langchain/schema/__init__.py +0 -82
  964. langchain/schema/agent.py +0 -3
  965. langchain/schema/cache.py +0 -3
  966. langchain/schema/callbacks/__init__.py +0 -0
  967. langchain/schema/callbacks/base.py +0 -23
  968. langchain/schema/callbacks/manager.py +0 -55
  969. langchain/schema/callbacks/stdout.py +0 -3
  970. langchain/schema/callbacks/streaming_stdout.py +0 -3
  971. langchain/schema/callbacks/tracers/__init__.py +0 -0
  972. langchain/schema/callbacks/tracers/base.py +0 -4
  973. langchain/schema/callbacks/tracers/evaluation.py +0 -6
  974. langchain/schema/callbacks/tracers/langchain.py +0 -8
  975. langchain/schema/callbacks/tracers/langchain_v1.py +0 -3
  976. langchain/schema/callbacks/tracers/log_stream.py +0 -9
  977. langchain/schema/callbacks/tracers/root_listeners.py +0 -3
  978. langchain/schema/callbacks/tracers/run_collector.py +0 -3
  979. langchain/schema/callbacks/tracers/schemas.py +0 -27
  980. langchain/schema/callbacks/tracers/stdout.py +0 -13
  981. langchain/schema/chat.py +0 -3
  982. langchain/schema/chat_history.py +0 -3
  983. langchain/schema/document.py +0 -3
  984. langchain/schema/embeddings.py +0 -3
  985. langchain/schema/exceptions.py +0 -3
  986. langchain/schema/language_model.py +0 -15
  987. langchain/schema/memory.py +0 -3
  988. langchain/schema/messages.py +0 -51
  989. langchain/schema/output.py +0 -19
  990. langchain/schema/output_parser.py +0 -25
  991. langchain/schema/prompt.py +0 -3
  992. langchain/schema/prompt_template.py +0 -3
  993. langchain/schema/retriever.py +0 -3
  994. langchain/schema/runnable/__init__.py +0 -58
  995. langchain/schema/runnable/base.py +0 -38
  996. langchain/schema/runnable/branch.py +0 -3
  997. langchain/schema/runnable/config.py +0 -27
  998. langchain/schema/runnable/configurable.py +0 -15
  999. langchain/schema/runnable/fallbacks.py +0 -3
  1000. langchain/schema/runnable/history.py +0 -11
  1001. langchain/schema/runnable/passthrough.py +0 -8
  1002. langchain/schema/runnable/retry.py +0 -3
  1003. langchain/schema/runnable/router.py +0 -3
  1004. langchain/schema/runnable/utils.py +0 -51
  1005. langchain/schema/storage.py +0 -3
  1006. langchain/schema/vectorstore.py +0 -3
  1007. langchain/serpapi.py +0 -25
  1008. langchain/smith/__init__.py +0 -103
  1009. langchain/smith/evaluation/__init__.py +0 -68
  1010. langchain/smith/evaluation/config.py +0 -365
  1011. langchain/smith/evaluation/name_generation.py +0 -727
  1012. langchain/smith/evaluation/progress.py +0 -146
  1013. langchain/smith/evaluation/runner_utils.py +0 -1689
  1014. langchain/smith/evaluation/string_run_evaluator.py +0 -467
  1015. langchain/sql_database.py +0 -25
  1016. langchain/storage/__init__.py +0 -57
  1017. langchain/storage/_lc_store.py +0 -91
  1018. langchain/storage/encoder_backed.py +0 -128
  1019. langchain/storage/exceptions.py +0 -3
  1020. langchain/storage/file_system.py +0 -176
  1021. langchain/storage/in_memory.py +0 -13
  1022. langchain/storage/redis.py +0 -23
  1023. langchain/storage/upstash_redis.py +0 -27
  1024. langchain/text_splitter.py +0 -50
  1025. langchain/tools/ainetwork/__init__.py +0 -0
  1026. langchain/tools/ainetwork/app.py +0 -30
  1027. langchain/tools/ainetwork/base.py +0 -27
  1028. langchain/tools/ainetwork/owner.py +0 -28
  1029. langchain/tools/ainetwork/rule.py +0 -28
  1030. langchain/tools/ainetwork/transfer.py +0 -28
  1031. langchain/tools/ainetwork/value.py +0 -28
  1032. langchain/tools/amadeus/__init__.py +0 -30
  1033. langchain/tools/amadeus/base.py +0 -23
  1034. langchain/tools/amadeus/closest_airport.py +0 -30
  1035. langchain/tools/amadeus/flight_search.py +0 -30
  1036. langchain/tools/arxiv/__init__.py +0 -1
  1037. langchain/tools/arxiv/tool.py +0 -28
  1038. langchain/tools/azure_cognitive_services/__init__.py +0 -41
  1039. langchain/tools/azure_cognitive_services/form_recognizer.py +0 -23
  1040. langchain/tools/azure_cognitive_services/image_analysis.py +0 -23
  1041. langchain/tools/azure_cognitive_services/speech2text.py +0 -23
  1042. langchain/tools/azure_cognitive_services/text2speech.py +0 -23
  1043. langchain/tools/azure_cognitive_services/text_analytics_health.py +0 -23
  1044. langchain/tools/base.py +0 -19
  1045. langchain/tools/bearly/__init__.py +0 -0
  1046. langchain/tools/bearly/tool.py +0 -33
  1047. langchain/tools/bing_search/__init__.py +0 -29
  1048. langchain/tools/bing_search/tool.py +0 -27
  1049. langchain/tools/brave_search/__init__.py +0 -0
  1050. langchain/tools/brave_search/tool.py +0 -23
  1051. langchain/tools/clickup/__init__.py +0 -0
  1052. langchain/tools/clickup/tool.py +0 -23
  1053. langchain/tools/convert_to_openai.py +0 -4
  1054. langchain/tools/dataforseo_api_search/__init__.py +0 -34
  1055. langchain/tools/dataforseo_api_search/tool.py +0 -32
  1056. langchain/tools/ddg_search/__init__.py +0 -25
  1057. langchain/tools/ddg_search/tool.py +0 -32
  1058. langchain/tools/e2b_data_analysis/__init__.py +0 -0
  1059. langchain/tools/e2b_data_analysis/tool.py +0 -33
  1060. langchain/tools/edenai/__init__.py +0 -50
  1061. langchain/tools/edenai/audio_speech_to_text.py +0 -23
  1062. langchain/tools/edenai/audio_text_to_speech.py +0 -23
  1063. langchain/tools/edenai/edenai_base_tool.py +0 -23
  1064. langchain/tools/edenai/image_explicitcontent.py +0 -23
  1065. langchain/tools/edenai/image_objectdetection.py +0 -23
  1066. langchain/tools/edenai/ocr_identityparser.py +0 -23
  1067. langchain/tools/edenai/ocr_invoiceparser.py +0 -23
  1068. langchain/tools/edenai/text_moderation.py +0 -23
  1069. langchain/tools/eleven_labs/__init__.py +0 -25
  1070. langchain/tools/eleven_labs/models.py +0 -23
  1071. langchain/tools/eleven_labs/text2speech.py +0 -23
  1072. langchain/tools/file_management/__init__.py +0 -47
  1073. langchain/tools/file_management/copy.py +0 -28
  1074. langchain/tools/file_management/delete.py +0 -28
  1075. langchain/tools/file_management/file_search.py +0 -28
  1076. langchain/tools/file_management/list_dir.py +0 -28
  1077. langchain/tools/file_management/move.py +0 -28
  1078. langchain/tools/file_management/read.py +0 -28
  1079. langchain/tools/file_management/write.py +0 -28
  1080. langchain/tools/github/__init__.py +0 -1
  1081. langchain/tools/github/tool.py +0 -23
  1082. langchain/tools/gitlab/__init__.py +0 -1
  1083. langchain/tools/gitlab/tool.py +0 -23
  1084. langchain/tools/gmail/__init__.py +0 -41
  1085. langchain/tools/gmail/base.py +0 -23
  1086. langchain/tools/gmail/create_draft.py +0 -28
  1087. langchain/tools/gmail/get_message.py +0 -28
  1088. langchain/tools/gmail/get_thread.py +0 -28
  1089. langchain/tools/gmail/search.py +0 -30
  1090. langchain/tools/gmail/send_message.py +0 -28
  1091. langchain/tools/golden_query/__init__.py +0 -25
  1092. langchain/tools/golden_query/tool.py +0 -23
  1093. langchain/tools/google_cloud/__init__.py +0 -25
  1094. langchain/tools/google_cloud/texttospeech.py +0 -23
  1095. langchain/tools/google_finance/__init__.py +0 -27
  1096. langchain/tools/google_finance/tool.py +0 -25
  1097. langchain/tools/google_jobs/__init__.py +0 -25
  1098. langchain/tools/google_jobs/tool.py +0 -23
  1099. langchain/tools/google_lens/__init__.py +0 -25
  1100. langchain/tools/google_lens/tool.py +0 -23
  1101. langchain/tools/google_places/__init__.py +0 -25
  1102. langchain/tools/google_places/tool.py +0 -28
  1103. langchain/tools/google_scholar/__init__.py +0 -27
  1104. langchain/tools/google_scholar/tool.py +0 -25
  1105. langchain/tools/google_search/__init__.py +0 -29
  1106. langchain/tools/google_search/tool.py +0 -27
  1107. langchain/tools/google_serper/__init__.py +0 -30
  1108. langchain/tools/google_serper/tool.py +0 -27
  1109. langchain/tools/google_trends/__init__.py +0 -27
  1110. langchain/tools/google_trends/tool.py +0 -25
  1111. langchain/tools/graphql/__init__.py +0 -1
  1112. langchain/tools/graphql/tool.py +0 -23
  1113. langchain/tools/human/__init__.py +0 -25
  1114. langchain/tools/human/tool.py +0 -23
  1115. langchain/tools/ifttt.py +0 -23
  1116. langchain/tools/interaction/__init__.py +0 -1
  1117. langchain/tools/interaction/tool.py +0 -23
  1118. langchain/tools/jira/__init__.py +0 -1
  1119. langchain/tools/jira/tool.py +0 -42
  1120. langchain/tools/json/__init__.py +0 -1
  1121. langchain/tools/json/tool.py +0 -52
  1122. langchain/tools/memorize/__init__.py +0 -25
  1123. langchain/tools/memorize/tool.py +0 -27
  1124. langchain/tools/merriam_webster/__init__.py +0 -1
  1125. langchain/tools/merriam_webster/tool.py +0 -23
  1126. langchain/tools/metaphor_search/__init__.py +0 -25
  1127. langchain/tools/metaphor_search/tool.py +0 -23
  1128. langchain/tools/multion/__init__.py +0 -33
  1129. langchain/tools/multion/close_session.py +0 -30
  1130. langchain/tools/multion/create_session.py +0 -30
  1131. langchain/tools/multion/update_session.py +0 -30
  1132. langchain/tools/nasa/__init__.py +0 -0
  1133. langchain/tools/nasa/tool.py +0 -23
  1134. langchain/tools/nuclia/__init__.py +0 -23
  1135. langchain/tools/nuclia/tool.py +0 -27
  1136. langchain/tools/office365/__init__.py +0 -41
  1137. langchain/tools/office365/base.py +0 -23
  1138. langchain/tools/office365/create_draft_message.py +0 -32
  1139. langchain/tools/office365/events_search.py +0 -28
  1140. langchain/tools/office365/messages_search.py +0 -28
  1141. langchain/tools/office365/send_event.py +0 -28
  1142. langchain/tools/office365/send_message.py +0 -28
  1143. langchain/tools/openapi/__init__.py +0 -0
  1144. langchain/tools/openapi/utils/__init__.py +0 -0
  1145. langchain/tools/openapi/utils/api_models.py +0 -54
  1146. langchain/tools/openapi/utils/openapi_utils.py +0 -30
  1147. langchain/tools/openweathermap/__init__.py +0 -25
  1148. langchain/tools/openweathermap/tool.py +0 -23
  1149. langchain/tools/playwright/__init__.py +0 -47
  1150. langchain/tools/playwright/base.py +0 -23
  1151. langchain/tools/playwright/click.py +0 -28
  1152. langchain/tools/playwright/current_page.py +0 -23
  1153. langchain/tools/playwright/extract_hyperlinks.py +0 -32
  1154. langchain/tools/playwright/extract_text.py +0 -23
  1155. langchain/tools/playwright/get_elements.py +0 -28
  1156. langchain/tools/playwright/navigate.py +0 -28
  1157. langchain/tools/playwright/navigate_back.py +0 -23
  1158. langchain/tools/plugin.py +0 -32
  1159. langchain/tools/powerbi/__init__.py +0 -1
  1160. langchain/tools/powerbi/tool.py +0 -33
  1161. langchain/tools/pubmed/__init__.py +0 -1
  1162. langchain/tools/pubmed/tool.py +0 -23
  1163. langchain/tools/python/__init__.py +0 -13
  1164. langchain/tools/reddit_search/__init__.py +0 -0
  1165. langchain/tools/reddit_search/tool.py +0 -27
  1166. langchain/tools/render.py +0 -23
  1167. langchain/tools/requests/__init__.py +0 -1
  1168. langchain/tools/requests/tool.py +0 -42
  1169. langchain/tools/retriever.py +0 -11
  1170. langchain/tools/scenexplain/__init__.py +0 -1
  1171. langchain/tools/scenexplain/tool.py +0 -28
  1172. langchain/tools/searchapi/__init__.py +0 -30
  1173. langchain/tools/searchapi/tool.py +0 -27
  1174. langchain/tools/searx_search/__init__.py +0 -0
  1175. langchain/tools/searx_search/tool.py +0 -27
  1176. langchain/tools/shell/__init__.py +0 -25
  1177. langchain/tools/shell/tool.py +0 -28
  1178. langchain/tools/slack/__init__.py +0 -38
  1179. langchain/tools/slack/base.py +0 -23
  1180. langchain/tools/slack/get_channel.py +0 -23
  1181. langchain/tools/slack/get_message.py +0 -28
  1182. langchain/tools/slack/schedule_message.py +0 -28
  1183. langchain/tools/slack/send_message.py +0 -28
  1184. langchain/tools/sleep/__init__.py +0 -1
  1185. langchain/tools/sleep/tool.py +0 -28
  1186. langchain/tools/spark_sql/__init__.py +0 -1
  1187. langchain/tools/spark_sql/tool.py +0 -39
  1188. langchain/tools/sql_database/__init__.py +0 -1
  1189. langchain/tools/sql_database/prompt.py +0 -24
  1190. langchain/tools/sql_database/tool.py +0 -39
  1191. langchain/tools/stackexchange/__init__.py +0 -1
  1192. langchain/tools/stackexchange/tool.py +0 -23
  1193. langchain/tools/steam/__init__.py +0 -1
  1194. langchain/tools/steam/tool.py +0 -23
  1195. langchain/tools/steamship_image_generation/__init__.py +0 -25
  1196. langchain/tools/steamship_image_generation/tool.py +0 -28
  1197. langchain/tools/tavily_search/__init__.py +0 -32
  1198. langchain/tools/tavily_search/tool.py +0 -33
  1199. langchain/tools/vectorstore/__init__.py +0 -1
  1200. langchain/tools/vectorstore/tool.py +0 -30
  1201. langchain/tools/wikipedia/__init__.py +0 -1
  1202. langchain/tools/wikipedia/tool.py +0 -23
  1203. langchain/tools/wolfram_alpha/__init__.py +0 -25
  1204. langchain/tools/wolfram_alpha/tool.py +0 -23
  1205. langchain/tools/yahoo_finance_news.py +0 -23
  1206. langchain/tools/youtube/__init__.py +0 -0
  1207. langchain/tools/youtube/search.py +0 -23
  1208. langchain/tools/zapier/__init__.py +0 -29
  1209. langchain/tools/zapier/tool.py +0 -49
  1210. langchain/utilities/__init__.py +0 -168
  1211. langchain/utilities/alpha_vantage.py +0 -23
  1212. langchain/utilities/anthropic.py +0 -30
  1213. langchain/utilities/apify.py +0 -23
  1214. langchain/utilities/arcee.py +0 -45
  1215. langchain/utilities/arxiv.py +0 -23
  1216. langchain/utilities/asyncio.py +0 -11
  1217. langchain/utilities/awslambda.py +0 -23
  1218. langchain/utilities/bibtex.py +0 -23
  1219. langchain/utilities/bing_search.py +0 -23
  1220. langchain/utilities/brave_search.py +0 -23
  1221. langchain/utilities/clickup.py +0 -45
  1222. langchain/utilities/dalle_image_generator.py +0 -25
  1223. langchain/utilities/dataforseo_api_search.py +0 -25
  1224. langchain/utilities/duckduckgo_search.py +0 -23
  1225. langchain/utilities/github.py +0 -23
  1226. langchain/utilities/gitlab.py +0 -23
  1227. langchain/utilities/golden_query.py +0 -23
  1228. langchain/utilities/google_finance.py +0 -23
  1229. langchain/utilities/google_jobs.py +0 -23
  1230. langchain/utilities/google_lens.py +0 -23
  1231. langchain/utilities/google_places_api.py +0 -23
  1232. langchain/utilities/google_scholar.py +0 -23
  1233. langchain/utilities/google_search.py +0 -23
  1234. langchain/utilities/google_serper.py +0 -23
  1235. langchain/utilities/google_trends.py +0 -23
  1236. langchain/utilities/graphql.py +0 -23
  1237. langchain/utilities/jira.py +0 -23
  1238. langchain/utilities/loading.py +0 -4
  1239. langchain/utilities/max_compute.py +0 -23
  1240. langchain/utilities/merriam_webster.py +0 -23
  1241. langchain/utilities/metaphor_search.py +0 -23
  1242. langchain/utilities/nasa.py +0 -23
  1243. langchain/utilities/opaqueprompts.py +0 -27
  1244. langchain/utilities/openapi.py +0 -28
  1245. langchain/utilities/openweathermap.py +0 -23
  1246. langchain/utilities/outline.py +0 -23
  1247. langchain/utilities/portkey.py +0 -23
  1248. langchain/utilities/powerbi.py +0 -23
  1249. langchain/utilities/pubmed.py +0 -23
  1250. langchain/utilities/python.py +0 -19
  1251. langchain/utilities/reddit_search.py +0 -25
  1252. langchain/utilities/redis.py +0 -33
  1253. langchain/utilities/requests.py +0 -27
  1254. langchain/utilities/scenexplain.py +0 -23
  1255. langchain/utilities/searchapi.py +0 -23
  1256. langchain/utilities/searx_search.py +0 -28
  1257. langchain/utilities/serpapi.py +0 -28
  1258. langchain/utilities/spark_sql.py +0 -23
  1259. langchain/utilities/sql_database.py +0 -28
  1260. langchain/utilities/stackexchange.py +0 -23
  1261. langchain/utilities/steam.py +0 -23
  1262. langchain/utilities/tavily_search.py +0 -25
  1263. langchain/utilities/tensorflow_datasets.py +0 -23
  1264. langchain/utilities/twilio.py +0 -23
  1265. langchain/utilities/vertexai.py +0 -36
  1266. langchain/utilities/wikipedia.py +0 -23
  1267. langchain/utilities/wolfram_alpha.py +0 -23
  1268. langchain/utilities/zapier.py +0 -23
  1269. langchain/utils/__init__.py +0 -77
  1270. langchain/utils/aiter.py +0 -3
  1271. langchain/utils/env.py +0 -3
  1272. langchain/utils/ernie_functions.py +0 -36
  1273. langchain/utils/formatting.py +0 -3
  1274. langchain/utils/html.py +0 -19
  1275. langchain/utils/input.py +0 -8
  1276. langchain/utils/iter.py +0 -3
  1277. langchain/utils/json_schema.py +0 -11
  1278. langchain/utils/loading.py +0 -3
  1279. langchain/utils/math.py +0 -32
  1280. langchain/utils/openai.py +0 -23
  1281. langchain/utils/openai_functions.py +0 -13
  1282. langchain/utils/pydantic.py +0 -3
  1283. langchain/utils/strings.py +0 -3
  1284. langchain/utils/utils.py +0 -21
  1285. langchain/vectorstores/__init__.py +0 -262
  1286. langchain/vectorstores/alibabacloud_opensearch.py +0 -30
  1287. langchain/vectorstores/analyticdb.py +0 -23
  1288. langchain/vectorstores/annoy.py +0 -23
  1289. langchain/vectorstores/astradb.py +0 -23
  1290. langchain/vectorstores/atlas.py +0 -23
  1291. langchain/vectorstores/awadb.py +0 -23
  1292. langchain/vectorstores/azure_cosmos_db.py +0 -28
  1293. langchain/vectorstores/azuresearch.py +0 -30
  1294. langchain/vectorstores/bageldb.py +0 -23
  1295. langchain/vectorstores/baiducloud_vector_search.py +0 -23
  1296. langchain/vectorstores/base.py +0 -3
  1297. langchain/vectorstores/cassandra.py +0 -23
  1298. langchain/vectorstores/chroma.py +0 -23
  1299. langchain/vectorstores/clarifai.py +0 -23
  1300. langchain/vectorstores/clickhouse.py +0 -27
  1301. langchain/vectorstores/dashvector.py +0 -23
  1302. langchain/vectorstores/databricks_vector_search.py +0 -23
  1303. langchain/vectorstores/deeplake.py +0 -23
  1304. langchain/vectorstores/dingo.py +0 -23
  1305. langchain/vectorstores/docarray/__init__.py +0 -30
  1306. langchain/vectorstores/docarray/base.py +0 -23
  1307. langchain/vectorstores/docarray/hnsw.py +0 -23
  1308. langchain/vectorstores/docarray/in_memory.py +0 -23
  1309. langchain/vectorstores/elastic_vector_search.py +0 -27
  1310. langchain/vectorstores/elasticsearch.py +0 -39
  1311. langchain/vectorstores/epsilla.py +0 -23
  1312. langchain/vectorstores/faiss.py +0 -23
  1313. langchain/vectorstores/hippo.py +0 -23
  1314. langchain/vectorstores/hologres.py +0 -23
  1315. langchain/vectorstores/lancedb.py +0 -23
  1316. langchain/vectorstores/llm_rails.py +0 -28
  1317. langchain/vectorstores/marqo.py +0 -23
  1318. langchain/vectorstores/matching_engine.py +0 -23
  1319. langchain/vectorstores/meilisearch.py +0 -23
  1320. langchain/vectorstores/milvus.py +0 -23
  1321. langchain/vectorstores/momento_vector_index.py +0 -23
  1322. langchain/vectorstores/mongodb_atlas.py +0 -23
  1323. langchain/vectorstores/myscale.py +0 -30
  1324. langchain/vectorstores/neo4j_vector.py +0 -28
  1325. langchain/vectorstores/nucliadb.py +0 -23
  1326. langchain/vectorstores/opensearch_vector_search.py +0 -23
  1327. langchain/vectorstores/pgembedding.py +0 -36
  1328. langchain/vectorstores/pgvecto_rs.py +0 -23
  1329. langchain/vectorstores/pgvector.py +0 -28
  1330. langchain/vectorstores/pinecone.py +0 -23
  1331. langchain/vectorstores/qdrant.py +0 -28
  1332. langchain/vectorstores/redis/__init__.py +0 -42
  1333. langchain/vectorstores/redis/base.py +0 -33
  1334. langchain/vectorstores/redis/filters.py +0 -48
  1335. langchain/vectorstores/redis/schema.py +0 -54
  1336. langchain/vectorstores/rocksetdb.py +0 -23
  1337. langchain/vectorstores/scann.py +0 -23
  1338. langchain/vectorstores/semadb.py +0 -23
  1339. langchain/vectorstores/singlestoredb.py +0 -23
  1340. langchain/vectorstores/sklearn.py +0 -42
  1341. langchain/vectorstores/sqlitevss.py +0 -23
  1342. langchain/vectorstores/starrocks.py +0 -28
  1343. langchain/vectorstores/supabase.py +0 -23
  1344. langchain/vectorstores/tair.py +0 -23
  1345. langchain/vectorstores/tencentvectordb.py +0 -33
  1346. langchain/vectorstores/tigris.py +0 -23
  1347. langchain/vectorstores/tiledb.py +0 -23
  1348. langchain/vectorstores/timescalevector.py +0 -23
  1349. langchain/vectorstores/typesense.py +0 -23
  1350. langchain/vectorstores/usearch.py +0 -23
  1351. langchain/vectorstores/utils.py +0 -33
  1352. langchain/vectorstores/vald.py +0 -23
  1353. langchain/vectorstores/vearch.py +0 -23
  1354. langchain/vectorstores/vectara.py +0 -28
  1355. langchain/vectorstores/vespa.py +0 -23
  1356. langchain/vectorstores/weaviate.py +0 -23
  1357. langchain/vectorstores/xata.py +0 -23
  1358. langchain/vectorstores/yellowbrick.py +0 -23
  1359. langchain/vectorstores/zep.py +0 -28
  1360. langchain/vectorstores/zilliz.py +0 -23
  1361. langchain-0.4.0.dev0.dist-info/METADATA +0 -134
  1362. langchain-0.4.0.dev0.dist-info/RECORD +0 -1341
  1363. langchain-0.4.0.dev0.dist-info/entry_points.txt +0 -4
  1364. {langchain-0.4.0.dev0.dist-info → langchain-1.0.0.dist-info}/licenses/LICENSE +0 -0
@@ -1,28 +0,0 @@
1
- from typing import TYPE_CHECKING, Any
2
-
3
- from langchain._api import create_importer
4
-
5
- if TYPE_CHECKING:
6
- from langchain_community.retrievers import MilvusRetriever
7
- from langchain_community.retrievers.milvus import MilvusRetreiver
8
-
9
- # Create a way to dynamically look up deprecated imports.
10
- # Used to consolidate logic for raising deprecation warnings and
11
- # handling optional imports.
12
- DEPRECATED_LOOKUP = {
13
- "MilvusRetriever": "langchain_community.retrievers",
14
- "MilvusRetreiver": "langchain_community.retrievers.milvus",
15
- }
16
-
17
- _import_attribute = create_importer(__package__, deprecated_lookups=DEPRECATED_LOOKUP)
18
-
19
-
20
- def __getattr__(name: str) -> Any:
21
- """Look up attributes dynamically."""
22
- return _import_attribute(name)
23
-
24
-
25
- __all__ = [
26
- "MilvusRetreiver",
27
- "MilvusRetriever",
28
- ]
@@ -1,233 +0,0 @@
1
- import asyncio
2
- import logging
3
- from collections.abc import Sequence
4
- from typing import Optional
5
-
6
- from langchain_core.callbacks import (
7
- AsyncCallbackManagerForRetrieverRun,
8
- CallbackManagerForRetrieverRun,
9
- )
10
- from langchain_core.documents import Document
11
- from langchain_core.language_models import BaseLanguageModel
12
- from langchain_core.output_parsers import BaseOutputParser
13
- from langchain_core.prompts import BasePromptTemplate
14
- from langchain_core.prompts.prompt import PromptTemplate
15
- from langchain_core.retrievers import BaseRetriever
16
- from langchain_core.runnables import Runnable
17
- from typing_extensions import override
18
-
19
- from langchain.chains.llm import LLMChain
20
-
21
- logger = logging.getLogger(__name__)
22
-
23
-
24
- class LineListOutputParser(BaseOutputParser[list[str]]):
25
- """Output parser for a list of lines."""
26
-
27
- @override
28
- def parse(self, text: str) -> list[str]:
29
- lines = text.strip().split("\n")
30
- return list(filter(None, lines)) # Remove empty lines
31
-
32
-
33
- # Default prompt
34
- DEFAULT_QUERY_PROMPT = PromptTemplate(
35
- input_variables=["question"],
36
- template="""You are an AI language model assistant. Your task is
37
- to generate 3 different versions of the given user
38
- question to retrieve relevant documents from a vector database.
39
- By generating multiple perspectives on the user question,
40
- your goal is to help the user overcome some of the limitations
41
- of distance-based similarity search. Provide these alternative
42
- questions separated by newlines. Original question: {question}""",
43
- )
44
-
45
-
46
- def _unique_documents(documents: Sequence[Document]) -> list[Document]:
47
- return [doc for i, doc in enumerate(documents) if doc not in documents[:i]]
48
-
49
-
50
- class MultiQueryRetriever(BaseRetriever):
51
- """Given a query, use an LLM to write a set of queries.
52
-
53
- Retrieve docs for each query. Return the unique union of all retrieved docs.
54
- """
55
-
56
- retriever: BaseRetriever
57
- llm_chain: Runnable
58
- verbose: bool = True
59
- parser_key: str = "lines"
60
- """DEPRECATED. parser_key is no longer used and should not be specified."""
61
- include_original: bool = False
62
- """Whether to include the original query in the list of generated queries."""
63
-
64
- @classmethod
65
- def from_llm(
66
- cls,
67
- retriever: BaseRetriever,
68
- llm: BaseLanguageModel,
69
- prompt: BasePromptTemplate = DEFAULT_QUERY_PROMPT,
70
- parser_key: Optional[str] = None, # noqa: ARG003
71
- include_original: bool = False, # noqa: FBT001,FBT002
72
- ) -> "MultiQueryRetriever":
73
- """Initialize from llm using default template.
74
-
75
- Args:
76
- retriever: retriever to query documents from
77
- llm: llm for query generation using DEFAULT_QUERY_PROMPT
78
- prompt: The prompt which aims to generate several different versions
79
- of the given user query
80
- include_original: Whether to include the original query in the list of
81
- generated queries.
82
-
83
- Returns:
84
- MultiQueryRetriever
85
- """
86
- output_parser = LineListOutputParser()
87
- llm_chain = prompt | llm | output_parser
88
- return cls(
89
- retriever=retriever,
90
- llm_chain=llm_chain,
91
- include_original=include_original,
92
- )
93
-
94
- async def _aget_relevant_documents(
95
- self,
96
- query: str,
97
- *,
98
- run_manager: AsyncCallbackManagerForRetrieverRun,
99
- ) -> list[Document]:
100
- """Get relevant documents given a user query.
101
-
102
- Args:
103
- query: user query
104
-
105
- Returns:
106
- Unique union of relevant documents from all generated queries
107
- """
108
- queries = await self.agenerate_queries(query, run_manager)
109
- if self.include_original:
110
- queries.append(query)
111
- documents = await self.aretrieve_documents(queries, run_manager)
112
- return self.unique_union(documents)
113
-
114
- async def agenerate_queries(
115
- self,
116
- question: str,
117
- run_manager: AsyncCallbackManagerForRetrieverRun,
118
- ) -> list[str]:
119
- """Generate queries based upon user input.
120
-
121
- Args:
122
- question: user query
123
-
124
- Returns:
125
- List of LLM generated queries that are similar to the user input
126
- """
127
- response = await self.llm_chain.ainvoke(
128
- {"question": question},
129
- config={"callbacks": run_manager.get_child()},
130
- )
131
- lines = response["text"] if isinstance(self.llm_chain, LLMChain) else response
132
- if self.verbose:
133
- logger.info("Generated queries: %s", lines)
134
- return lines
135
-
136
- async def aretrieve_documents(
137
- self,
138
- queries: list[str],
139
- run_manager: AsyncCallbackManagerForRetrieverRun,
140
- ) -> list[Document]:
141
- """Run all LLM generated queries.
142
-
143
- Args:
144
- queries: query list
145
-
146
- Returns:
147
- List of retrieved Documents
148
- """
149
- document_lists = await asyncio.gather(
150
- *(
151
- self.retriever.ainvoke(
152
- query,
153
- config={"callbacks": run_manager.get_child()},
154
- )
155
- for query in queries
156
- ),
157
- )
158
- return [doc for docs in document_lists for doc in docs]
159
-
160
- def _get_relevant_documents(
161
- self,
162
- query: str,
163
- *,
164
- run_manager: CallbackManagerForRetrieverRun,
165
- ) -> list[Document]:
166
- """Get relevant documents given a user query.
167
-
168
- Args:
169
- query: user query
170
-
171
- Returns:
172
- Unique union of relevant documents from all generated queries
173
- """
174
- queries = self.generate_queries(query, run_manager)
175
- if self.include_original:
176
- queries.append(query)
177
- documents = self.retrieve_documents(queries, run_manager)
178
- return self.unique_union(documents)
179
-
180
- def generate_queries(
181
- self,
182
- question: str,
183
- run_manager: CallbackManagerForRetrieverRun,
184
- ) -> list[str]:
185
- """Generate queries based upon user input.
186
-
187
- Args:
188
- question: user query
189
-
190
- Returns:
191
- List of LLM generated queries that are similar to the user input
192
- """
193
- response = self.llm_chain.invoke(
194
- {"question": question},
195
- config={"callbacks": run_manager.get_child()},
196
- )
197
- lines = response["text"] if isinstance(self.llm_chain, LLMChain) else response
198
- if self.verbose:
199
- logger.info("Generated queries: %s", lines)
200
- return lines
201
-
202
- def retrieve_documents(
203
- self,
204
- queries: list[str],
205
- run_manager: CallbackManagerForRetrieverRun,
206
- ) -> list[Document]:
207
- """Run all LLM generated queries.
208
-
209
- Args:
210
- queries: query list
211
-
212
- Returns:
213
- List of retrieved Documents
214
- """
215
- documents = []
216
- for query in queries:
217
- docs = self.retriever.invoke(
218
- query,
219
- config={"callbacks": run_manager.get_child()},
220
- )
221
- documents.extend(docs)
222
- return documents
223
-
224
- def unique_union(self, documents: list[Document]) -> list[Document]:
225
- """Get unique Documents.
226
-
227
- Args:
228
- documents: List of retrieved Documents
229
-
230
- Returns:
231
- List of unique retrieved Documents
232
- """
233
- return _unique_documents(documents)
@@ -1,135 +0,0 @@
1
- from enum import Enum
2
- from typing import Any, Optional
3
-
4
- from langchain_core.callbacks import (
5
- AsyncCallbackManagerForRetrieverRun,
6
- CallbackManagerForRetrieverRun,
7
- )
8
- from langchain_core.documents import Document
9
- from langchain_core.retrievers import BaseRetriever
10
- from langchain_core.stores import BaseStore, ByteStore
11
- from langchain_core.vectorstores import VectorStore
12
- from pydantic import Field, model_validator
13
- from typing_extensions import override
14
-
15
- from langchain.storage._lc_store import create_kv_docstore
16
-
17
-
18
- class SearchType(str, Enum):
19
- """Enumerator of the types of search to perform."""
20
-
21
- similarity = "similarity"
22
- """Similarity search."""
23
- similarity_score_threshold = "similarity_score_threshold"
24
- """Similarity search with a score threshold."""
25
- mmr = "mmr"
26
- """Maximal Marginal Relevance reranking of similarity search."""
27
-
28
-
29
- class MultiVectorRetriever(BaseRetriever):
30
- """Retrieve from a set of multiple embeddings for the same document."""
31
-
32
- vectorstore: VectorStore
33
- """The underlying vectorstore to use to store small chunks
34
- and their embedding vectors"""
35
- byte_store: Optional[ByteStore] = None
36
- """The lower-level backing storage layer for the parent documents"""
37
- docstore: BaseStore[str, Document]
38
- """The storage interface for the parent documents"""
39
- id_key: str = "doc_id"
40
- search_kwargs: dict = Field(default_factory=dict)
41
- """Keyword arguments to pass to the search function."""
42
- search_type: SearchType = SearchType.similarity
43
- """Type of search to perform (similarity / mmr)"""
44
-
45
- @model_validator(mode="before")
46
- @classmethod
47
- def _shim_docstore(cls, values: dict) -> Any:
48
- byte_store = values.get("byte_store")
49
- docstore = values.get("docstore")
50
- if byte_store is not None:
51
- docstore = create_kv_docstore(byte_store)
52
- elif docstore is None:
53
- msg = "You must pass a `byte_store` parameter."
54
- raise ValueError(msg)
55
- values["docstore"] = docstore
56
- return values
57
-
58
- @override
59
- def _get_relevant_documents(
60
- self,
61
- query: str,
62
- *,
63
- run_manager: CallbackManagerForRetrieverRun,
64
- ) -> list[Document]:
65
- """Get documents relevant to a query.
66
- Args:
67
- query: String to find relevant documents for
68
- run_manager: The callbacks handler to use
69
- Returns:
70
- List of relevant documents
71
- """
72
- if self.search_type == SearchType.mmr:
73
- sub_docs = self.vectorstore.max_marginal_relevance_search(
74
- query,
75
- **self.search_kwargs,
76
- )
77
- elif self.search_type == SearchType.similarity_score_threshold:
78
- sub_docs_and_similarities = (
79
- self.vectorstore.similarity_search_with_relevance_scores(
80
- query,
81
- **self.search_kwargs,
82
- )
83
- )
84
- sub_docs = [sub_doc for sub_doc, _ in sub_docs_and_similarities]
85
- else:
86
- sub_docs = self.vectorstore.similarity_search(query, **self.search_kwargs)
87
-
88
- # We do this to maintain the order of the ids that are returned
89
- ids = []
90
- for d in sub_docs:
91
- if self.id_key in d.metadata and d.metadata[self.id_key] not in ids:
92
- ids.append(d.metadata[self.id_key])
93
- docs = self.docstore.mget(ids)
94
- return [d for d in docs if d is not None]
95
-
96
- @override
97
- async def _aget_relevant_documents(
98
- self,
99
- query: str,
100
- *,
101
- run_manager: AsyncCallbackManagerForRetrieverRun,
102
- ) -> list[Document]:
103
- """Asynchronously get documents relevant to a query.
104
- Args:
105
- query: String to find relevant documents for
106
- run_manager: The callbacks handler to use
107
- Returns:
108
- List of relevant documents
109
- """
110
- if self.search_type == SearchType.mmr:
111
- sub_docs = await self.vectorstore.amax_marginal_relevance_search(
112
- query,
113
- **self.search_kwargs,
114
- )
115
- elif self.search_type == SearchType.similarity_score_threshold:
116
- sub_docs_and_similarities = (
117
- await self.vectorstore.asimilarity_search_with_relevance_scores(
118
- query,
119
- **self.search_kwargs,
120
- )
121
- )
122
- sub_docs = [sub_doc for sub_doc, _ in sub_docs_and_similarities]
123
- else:
124
- sub_docs = await self.vectorstore.asimilarity_search(
125
- query,
126
- **self.search_kwargs,
127
- )
128
-
129
- # We do this to maintain the order of the ids that are returned
130
- ids = []
131
- for d in sub_docs:
132
- if self.id_key in d.metadata and d.metadata[self.id_key] not in ids:
133
- ids.append(d.metadata[self.id_key])
134
- docs = await self.docstore.amget(ids)
135
- return [d for d in docs if d is not None]
@@ -1,23 +0,0 @@
1
- from typing import TYPE_CHECKING, Any
2
-
3
- from langchain._api import create_importer
4
-
5
- if TYPE_CHECKING:
6
- from langchain_community.retrievers import OutlineRetriever
7
-
8
- # Create a way to dynamically look up deprecated imports.
9
- # Used to consolidate logic for raising deprecation warnings and
10
- # handling optional imports.
11
- DEPRECATED_LOOKUP = {"OutlineRetriever": "langchain_community.retrievers"}
12
-
13
- _import_attribute = create_importer(__package__, deprecated_lookups=DEPRECATED_LOOKUP)
14
-
15
-
16
- def __getattr__(name: str) -> Any:
17
- """Look up attributes dynamically."""
18
- return _import_attribute(name)
19
-
20
-
21
- __all__ = [
22
- "OutlineRetriever",
23
- ]
@@ -1,172 +0,0 @@
1
- import uuid
2
- from collections.abc import Sequence
3
- from typing import Any, Optional
4
-
5
- from langchain_core.documents import Document
6
- from langchain_text_splitters import TextSplitter
7
-
8
- from langchain.retrievers import MultiVectorRetriever
9
-
10
-
11
- class ParentDocumentRetriever(MultiVectorRetriever):
12
- """Retrieve small chunks then retrieve their parent documents.
13
-
14
- When splitting documents for retrieval, there are often conflicting desires:
15
-
16
- 1. You may want to have small documents, so that their embeddings can most
17
- accurately reflect their meaning. If too long, then the embeddings can
18
- lose meaning.
19
- 2. You want to have long enough documents that the context of each chunk is
20
- retained.
21
-
22
- The ParentDocumentRetriever strikes that balance by splitting and storing
23
- small chunks of data. During retrieval, it first fetches the small chunks
24
- but then looks up the parent ids for those chunks and returns those larger
25
- documents.
26
-
27
- Note that "parent document" refers to the document that a small chunk
28
- originated from. This can either be the whole raw document OR a larger
29
- chunk.
30
-
31
- Examples:
32
-
33
- .. code-block:: python
34
-
35
- from langchain_chroma import Chroma
36
- from langchain_community.embeddings import OpenAIEmbeddings
37
- from langchain_text_splitters import RecursiveCharacterTextSplitter
38
- from langchain.storage import InMemoryStore
39
-
40
- # This text splitter is used to create the parent documents
41
- parent_splitter = RecursiveCharacterTextSplitter(chunk_size=2000, add_start_index=True)
42
- # This text splitter is used to create the child documents
43
- # It should create documents smaller than the parent
44
- child_splitter = RecursiveCharacterTextSplitter(chunk_size=400, add_start_index=True)
45
- # The vectorstore to use to index the child chunks
46
- vectorstore = Chroma(embedding_function=OpenAIEmbeddings())
47
- # The storage layer for the parent documents
48
- store = InMemoryStore()
49
-
50
- # Initialize the retriever
51
- retriever = ParentDocumentRetriever(
52
- vectorstore=vectorstore,
53
- docstore=store,
54
- child_splitter=child_splitter,
55
- parent_splitter=parent_splitter,
56
- )
57
-
58
- """ # noqa: E501
59
-
60
- child_splitter: TextSplitter
61
- """The text splitter to use to create child documents."""
62
-
63
- """The key to use to track the parent id. This will be stored in the
64
- metadata of child documents."""
65
- parent_splitter: Optional[TextSplitter] = None
66
- """The text splitter to use to create parent documents.
67
- If none, then the parent documents will be the raw documents passed in."""
68
-
69
- child_metadata_fields: Optional[Sequence[str]] = None
70
- """Metadata fields to leave in child documents. If None, leave all parent document
71
- metadata.
72
- """
73
-
74
- def _split_docs_for_adding(
75
- self,
76
- documents: list[Document],
77
- ids: Optional[list[str]] = None,
78
- *,
79
- add_to_docstore: bool = True,
80
- ) -> tuple[list[Document], list[tuple[str, Document]]]:
81
- if self.parent_splitter is not None:
82
- documents = self.parent_splitter.split_documents(documents)
83
- if ids is None:
84
- doc_ids = [str(uuid.uuid4()) for _ in documents]
85
- if not add_to_docstore:
86
- msg = "If ids are not passed in, `add_to_docstore` MUST be True"
87
- raise ValueError(msg)
88
- else:
89
- if len(documents) != len(ids):
90
- msg = (
91
- "Got uneven list of documents and ids. "
92
- "If `ids` is provided, should be same length as `documents`."
93
- )
94
- raise ValueError(msg)
95
- doc_ids = ids
96
-
97
- docs = []
98
- full_docs = []
99
- for i, doc in enumerate(documents):
100
- _id = doc_ids[i]
101
- sub_docs = self.child_splitter.split_documents([doc])
102
- if self.child_metadata_fields is not None:
103
- for _doc in sub_docs:
104
- _doc.metadata = {
105
- k: _doc.metadata[k] for k in self.child_metadata_fields
106
- }
107
- for _doc in sub_docs:
108
- _doc.metadata[self.id_key] = _id
109
- docs.extend(sub_docs)
110
- full_docs.append((_id, doc))
111
-
112
- return docs, full_docs
113
-
114
- def add_documents(
115
- self,
116
- documents: list[Document],
117
- ids: Optional[list[str]] = None,
118
- add_to_docstore: bool = True, # noqa: FBT001,FBT002
119
- **kwargs: Any,
120
- ) -> None:
121
- """Adds documents to the docstore and vectorstores.
122
-
123
- Args:
124
- documents: List of documents to add
125
- ids: Optional list of ids for documents. If provided should be the same
126
- length as the list of documents. Can be provided if parent documents
127
- are already in the document store and you don't want to re-add
128
- to the docstore. If not provided, random UUIDs will be used as
129
- ids.
130
- add_to_docstore: Boolean of whether to add documents to docstore.
131
- This can be false if and only if `ids` are provided. You may want
132
- to set this to False if the documents are already in the docstore
133
- and you don't want to re-add them.
134
- """
135
- docs, full_docs = self._split_docs_for_adding(
136
- documents,
137
- ids,
138
- add_to_docstore=add_to_docstore,
139
- )
140
- self.vectorstore.add_documents(docs, **kwargs)
141
- if add_to_docstore:
142
- self.docstore.mset(full_docs)
143
-
144
- async def aadd_documents(
145
- self,
146
- documents: list[Document],
147
- ids: Optional[list[str]] = None,
148
- add_to_docstore: bool = True, # noqa: FBT001,FBT002
149
- **kwargs: Any,
150
- ) -> None:
151
- """Adds documents to the docstore and vectorstores.
152
-
153
- Args:
154
- documents: List of documents to add
155
- ids: Optional list of ids for documents. If provided should be the same
156
- length as the list of documents. Can be provided if parent documents
157
- are already in the document store and you don't want to re-add
158
- to the docstore. If not provided, random UUIDs will be used as
159
- ids.
160
- add_to_docstore: Boolean of whether to add documents to docstore.
161
- This can be false if and only if `ids` are provided. You may want
162
- to set this to False if the documents are already in the docstore
163
- and you don't want to re-add them.
164
- """
165
- docs, full_docs = self._split_docs_for_adding(
166
- documents,
167
- ids,
168
- add_to_docstore=add_to_docstore,
169
- )
170
- await self.vectorstore.aadd_documents(docs, **kwargs)
171
- if add_to_docstore:
172
- await self.docstore.amset(full_docs)
@@ -1,23 +0,0 @@
1
- from typing import TYPE_CHECKING, Any
2
-
3
- from langchain._api import create_importer
4
-
5
- if TYPE_CHECKING:
6
- from langchain_community.retrievers import PineconeHybridSearchRetriever
7
-
8
- # Create a way to dynamically look up deprecated imports.
9
- # Used to consolidate logic for raising deprecation warnings and
10
- # handling optional imports.
11
- DEPRECATED_LOOKUP = {"PineconeHybridSearchRetriever": "langchain_community.retrievers"}
12
-
13
- _import_attribute = create_importer(__package__, deprecated_lookups=DEPRECATED_LOOKUP)
14
-
15
-
16
- def __getattr__(name: str) -> Any:
17
- """Look up attributes dynamically."""
18
- return _import_attribute(name)
19
-
20
-
21
- __all__ = [
22
- "PineconeHybridSearchRetriever",
23
- ]
@@ -1,23 +0,0 @@
1
- from typing import TYPE_CHECKING, Any
2
-
3
- from langchain._api import create_importer
4
-
5
- if TYPE_CHECKING:
6
- from langchain_community.retrievers import PubMedRetriever
7
-
8
- # Create a way to dynamically look up deprecated imports.
9
- # Used to consolidate logic for raising deprecation warnings and
10
- # handling optional imports.
11
- DEPRECATED_LOOKUP = {"PubMedRetriever": "langchain_community.retrievers"}
12
-
13
- _import_attribute = create_importer(__package__, deprecated_lookups=DEPRECATED_LOOKUP)
14
-
15
-
16
- def __getattr__(name: str) -> Any:
17
- """Look up attributes dynamically."""
18
- return _import_attribute(name)
19
-
20
-
21
- __all__ = [
22
- "PubMedRetriever",
23
- ]
@@ -1,23 +0,0 @@
1
- from typing import TYPE_CHECKING, Any
2
-
3
- from langchain._api import create_importer
4
-
5
- if TYPE_CHECKING:
6
- from langchain_community.retrievers import PubMedRetriever
7
-
8
- # Create a way to dynamically look up deprecated imports.
9
- # Used to consolidate logic for raising deprecation warnings and
10
- # handling optional imports.
11
- DEPRECATED_LOOKUP = {"PubMedRetriever": "langchain_community.retrievers"}
12
-
13
- _import_attribute = create_importer(__package__, deprecated_lookups=DEPRECATED_LOOKUP)
14
-
15
-
16
- def __getattr__(name: str) -> Any:
17
- """Look up attributes dynamically."""
18
- return _import_attribute(name)
19
-
20
-
21
- __all__ = [
22
- "PubMedRetriever",
23
- ]