langchain 0.3.27__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 (1365) 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 +264 -317
  24. langchain/embeddings/__init__.py +7 -217
  25. langchain/embeddings/base.py +32 -42
  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.3.27.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 -1828
  41. langchain/agents/agent_iterator.py +0 -431
  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 -217
  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 -178
  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 -176
  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 -181
  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 -195
  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 -216
  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 -101
  147. langchain/agents/openai_functions_agent/base.py +0 -381
  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 -108
  152. langchain/agents/output_parsers/__init__.py +0 -35
  153. langchain/agents/output_parsers/json.py +0 -62
  154. langchain/agents/output_parsers/openai_functions.py +0 -96
  155. langchain/agents/output_parsers/openai_tools.py +0 -70
  156. langchain/agents/output_parsers/react_json_single_input.py +0 -84
  157. langchain/agents/output_parsers/react_single_input.py +0 -99
  158. langchain/agents/output_parsers/self_ask.py +0 -51
  159. langchain/agents/output_parsers/tools.py +0 -107
  160. langchain/agents/output_parsers/xml.py +0 -123
  161. langchain/agents/react/__init__.py +0 -1
  162. langchain/agents/react/agent.py +0 -144
  163. langchain/agents/react/base.py +0 -185
  164. langchain/agents/react/output_parser.py +0 -33
  165. langchain/agents/react/textworld_prompt.py +0 -51
  166. langchain/agents/react/wiki_prompt.py +0 -70
  167. langchain/agents/schema.py +0 -35
  168. langchain/agents/self_ask_with_search/__init__.py +0 -4
  169. langchain/agents/self_ask_with_search/base.py +0 -215
  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 -304
  174. langchain/agents/structured_chat/output_parser.py +0 -99
  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 -110
  178. langchain/agents/tools.py +0 -47
  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 -231
  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 -75
  209. langchain/callbacks/streaming_aiter_final_only.py +0 -91
  210. langchain/callbacks/streaming_stdout.py +0 -5
  211. langchain/callbacks/streaming_stdout_final_only.py +0 -91
  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 -46
  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 -394
  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 -800
  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 -287
  250. langchain/chains/combine_documents/map_reduce.py +0 -300
  251. langchain/chains/combine_documents/map_rerank.py +0 -247
  252. langchain/chains/combine_documents/reduce.py +0 -381
  253. langchain/chains/combine_documents/refine.py +0 -236
  254. langchain/chains/combine_documents/stuff.py +0 -288
  255. langchain/chains/constitutional_ai/__init__.py +0 -2
  256. langchain/chains/constitutional_ai/base.py +0 -321
  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 -143
  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 -568
  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 -211
  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 -282
  275. langchain/chains/flare/prompts.py +0 -44
  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 -442
  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 -194
  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 -311
  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 -205
  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 -732
  312. langchain/chains/mapreduce.py +0 -121
  313. langchain/chains/moderation.py +0 -132
  314. langchain/chains/natbot/__init__.py +0 -4
  315. langchain/chains/natbot/base.py +0 -163
  316. langchain/chains/natbot/crawler.py +0 -443
  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 -235
  320. langchain/chains/openai_functions/citation_fuzzy_match.py +0 -160
  321. langchain/chains/openai_functions/extraction.py +0 -197
  322. langchain/chains/openai_functions/openapi.py +0 -405
  323. langchain/chains/openai_functions/qa_with_structure.py +0 -142
  324. langchain/chains/openai_functions/tagging.py +0 -172
  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 -124
  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 -263
  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 -86
  340. langchain/chains/query_constructor/__init__.py +0 -3
  341. langchain/chains/query_constructor/base.py +0 -376
  342. langchain/chains/query_constructor/ir.py +0 -23
  343. langchain/chains/query_constructor/parser.py +0 -210
  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 -370
  355. langchain/chains/retrieval_qa/prompt.py +0 -11
  356. langchain/chains/router/__init__.py +0 -12
  357. langchain/chains/router/base.py +0 -142
  358. langchain/chains/router/embedding_router.py +0 -93
  359. langchain/chains/router/llm_router.py +0 -196
  360. langchain/chains/router/multi_prompt.py +0 -181
  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 -109
  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 -166
  368. langchain/chains/structured_output/__init__.py +0 -6
  369. langchain/chains/structured_output/base.py +0 -582
  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 -84
  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 -29
  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 -415
  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 -461
  659. langchain/evaluation/comparison/prompt.py +0 -59
  660. langchain/evaluation/criteria/__init__.py +0 -56
  661. langchain/evaluation/criteria/eval_chain.py +0 -603
  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 -602
  665. langchain/evaluation/exact_match/__init__.py +0 -0
  666. langchain/evaluation/exact_match/base.py +0 -97
  667. langchain/evaluation/loading.py +0 -206
  668. langchain/evaluation/parsing/__init__.py +0 -0
  669. langchain/evaluation/parsing/base.py +0 -162
  670. langchain/evaluation/parsing/json_distance.py +0 -97
  671. langchain/evaluation/parsing/json_schema.py +0 -100
  672. langchain/evaluation/qa/__init__.py +0 -10
  673. langchain/evaluation/qa/eval_chain.py +0 -364
  674. langchain/evaluation/qa/eval_prompt.py +0 -78
  675. langchain/evaluation/qa/generate_chain.py +0 -34
  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 -86
  679. langchain/evaluation/schema.py +0 -491
  680. langchain/evaluation/scoring/__init__.py +0 -31
  681. langchain/evaluation/scoring/eval_chain.py +0 -475
  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 -466
  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 -173
  803. langchain/memory/buffer_window.py +0 -60
  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 -564
  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 -24
  833. langchain/memory/summary.py +0 -140
  834. langchain/memory/summary_buffer.py +0 -148
  835. langchain/memory/token_buffer.py +0 -72
  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 -57
  844. langchain/output_parsers/datetime.py +0 -58
  845. langchain/output_parsers/enum.py +0 -41
  846. langchain/output_parsers/ernie_functions.py +0 -45
  847. langchain/output_parsers/fix.py +0 -148
  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 -156
  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 -39
  859. langchain/output_parsers/regex_dict.py +0 -43
  860. langchain/output_parsers/retry.py +0 -296
  861. langchain/output_parsers/structured.py +0 -106
  862. langchain/output_parsers/xml.py +0 -3
  863. langchain/output_parsers/yaml.py +0 -73
  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 -121
  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 -124
  901. langchain/retrievers/document_compressors/cross_encoder.py +0 -16
  902. langchain/retrievers/document_compressors/cross_encoder_rerank.py +0 -48
  903. langchain/retrievers/document_compressors/embeddings_filter.py +0 -137
  904. langchain/retrievers/document_compressors/flashrank_rerank.py +0 -27
  905. langchain/retrievers/document_compressors/listwise_rerank.py +0 -144
  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 -231
  919. langchain/retrievers/multi_vector.py +0 -132
  920. langchain/retrievers/outline.py +0 -23
  921. langchain/retrievers/parent_document_retriever.py +0 -157
  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 -397
  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 -193
  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 -32
  962. langchain/runnables/openai_functions.py +0 -51
  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 -102
  1009. langchain/smith/evaluation/__init__.py +0 -68
  1010. langchain/smith/evaluation/config.py +0 -382
  1011. langchain/smith/evaluation/name_generation.py +0 -727
  1012. langchain/smith/evaluation/progress.py +0 -137
  1013. langchain/smith/evaluation/runner_utils.py +0 -1572
  1014. langchain/smith/evaluation/string_run_evaluator.py +0 -440
  1015. langchain/smith/evaluation/utils.py +0 -0
  1016. langchain/sql_database.py +0 -25
  1017. langchain/storage/__init__.py +0 -57
  1018. langchain/storage/_lc_store.py +0 -91
  1019. langchain/storage/encoder_backed.py +0 -127
  1020. langchain/storage/exceptions.py +0 -3
  1021. langchain/storage/file_system.py +0 -176
  1022. langchain/storage/in_memory.py +0 -13
  1023. langchain/storage/redis.py +0 -23
  1024. langchain/storage/upstash_redis.py +0 -27
  1025. langchain/text_splitter.py +0 -50
  1026. langchain/tools/ainetwork/__init__.py +0 -0
  1027. langchain/tools/ainetwork/app.py +0 -30
  1028. langchain/tools/ainetwork/base.py +0 -27
  1029. langchain/tools/ainetwork/owner.py +0 -28
  1030. langchain/tools/ainetwork/rule.py +0 -28
  1031. langchain/tools/ainetwork/transfer.py +0 -28
  1032. langchain/tools/ainetwork/value.py +0 -28
  1033. langchain/tools/amadeus/__init__.py +0 -30
  1034. langchain/tools/amadeus/base.py +0 -23
  1035. langchain/tools/amadeus/closest_airport.py +0 -30
  1036. langchain/tools/amadeus/flight_search.py +0 -30
  1037. langchain/tools/arxiv/__init__.py +0 -1
  1038. langchain/tools/arxiv/tool.py +0 -28
  1039. langchain/tools/azure_cognitive_services/__init__.py +0 -41
  1040. langchain/tools/azure_cognitive_services/form_recognizer.py +0 -23
  1041. langchain/tools/azure_cognitive_services/image_analysis.py +0 -23
  1042. langchain/tools/azure_cognitive_services/speech2text.py +0 -23
  1043. langchain/tools/azure_cognitive_services/text2speech.py +0 -23
  1044. langchain/tools/azure_cognitive_services/text_analytics_health.py +0 -23
  1045. langchain/tools/base.py +0 -19
  1046. langchain/tools/bearly/__init__.py +0 -0
  1047. langchain/tools/bearly/tool.py +0 -33
  1048. langchain/tools/bing_search/__init__.py +0 -29
  1049. langchain/tools/bing_search/tool.py +0 -27
  1050. langchain/tools/brave_search/__init__.py +0 -0
  1051. langchain/tools/brave_search/tool.py +0 -23
  1052. langchain/tools/clickup/__init__.py +0 -0
  1053. langchain/tools/clickup/tool.py +0 -23
  1054. langchain/tools/convert_to_openai.py +0 -4
  1055. langchain/tools/dataforseo_api_search/__init__.py +0 -34
  1056. langchain/tools/dataforseo_api_search/tool.py +0 -32
  1057. langchain/tools/ddg_search/__init__.py +0 -25
  1058. langchain/tools/ddg_search/tool.py +0 -32
  1059. langchain/tools/e2b_data_analysis/__init__.py +0 -0
  1060. langchain/tools/e2b_data_analysis/tool.py +0 -33
  1061. langchain/tools/edenai/__init__.py +0 -50
  1062. langchain/tools/edenai/audio_speech_to_text.py +0 -23
  1063. langchain/tools/edenai/audio_text_to_speech.py +0 -23
  1064. langchain/tools/edenai/edenai_base_tool.py +0 -23
  1065. langchain/tools/edenai/image_explicitcontent.py +0 -23
  1066. langchain/tools/edenai/image_objectdetection.py +0 -23
  1067. langchain/tools/edenai/ocr_identityparser.py +0 -23
  1068. langchain/tools/edenai/ocr_invoiceparser.py +0 -23
  1069. langchain/tools/edenai/text_moderation.py +0 -23
  1070. langchain/tools/eleven_labs/__init__.py +0 -25
  1071. langchain/tools/eleven_labs/models.py +0 -23
  1072. langchain/tools/eleven_labs/text2speech.py +0 -23
  1073. langchain/tools/file_management/__init__.py +0 -47
  1074. langchain/tools/file_management/copy.py +0 -28
  1075. langchain/tools/file_management/delete.py +0 -28
  1076. langchain/tools/file_management/file_search.py +0 -28
  1077. langchain/tools/file_management/list_dir.py +0 -28
  1078. langchain/tools/file_management/move.py +0 -28
  1079. langchain/tools/file_management/read.py +0 -28
  1080. langchain/tools/file_management/write.py +0 -28
  1081. langchain/tools/github/__init__.py +0 -1
  1082. langchain/tools/github/tool.py +0 -23
  1083. langchain/tools/gitlab/__init__.py +0 -1
  1084. langchain/tools/gitlab/tool.py +0 -23
  1085. langchain/tools/gmail/__init__.py +0 -41
  1086. langchain/tools/gmail/base.py +0 -23
  1087. langchain/tools/gmail/create_draft.py +0 -28
  1088. langchain/tools/gmail/get_message.py +0 -28
  1089. langchain/tools/gmail/get_thread.py +0 -28
  1090. langchain/tools/gmail/search.py +0 -30
  1091. langchain/tools/gmail/send_message.py +0 -28
  1092. langchain/tools/golden_query/__init__.py +0 -25
  1093. langchain/tools/golden_query/tool.py +0 -23
  1094. langchain/tools/google_cloud/__init__.py +0 -25
  1095. langchain/tools/google_cloud/texttospeech.py +0 -23
  1096. langchain/tools/google_finance/__init__.py +0 -27
  1097. langchain/tools/google_finance/tool.py +0 -25
  1098. langchain/tools/google_jobs/__init__.py +0 -25
  1099. langchain/tools/google_jobs/tool.py +0 -23
  1100. langchain/tools/google_lens/__init__.py +0 -25
  1101. langchain/tools/google_lens/tool.py +0 -23
  1102. langchain/tools/google_places/__init__.py +0 -25
  1103. langchain/tools/google_places/tool.py +0 -28
  1104. langchain/tools/google_scholar/__init__.py +0 -27
  1105. langchain/tools/google_scholar/tool.py +0 -25
  1106. langchain/tools/google_search/__init__.py +0 -29
  1107. langchain/tools/google_search/tool.py +0 -27
  1108. langchain/tools/google_serper/__init__.py +0 -30
  1109. langchain/tools/google_serper/tool.py +0 -27
  1110. langchain/tools/google_trends/__init__.py +0 -27
  1111. langchain/tools/google_trends/tool.py +0 -25
  1112. langchain/tools/graphql/__init__.py +0 -1
  1113. langchain/tools/graphql/tool.py +0 -23
  1114. langchain/tools/human/__init__.py +0 -25
  1115. langchain/tools/human/tool.py +0 -23
  1116. langchain/tools/ifttt.py +0 -23
  1117. langchain/tools/interaction/__init__.py +0 -1
  1118. langchain/tools/interaction/tool.py +0 -23
  1119. langchain/tools/jira/__init__.py +0 -1
  1120. langchain/tools/jira/tool.py +0 -42
  1121. langchain/tools/json/__init__.py +0 -1
  1122. langchain/tools/json/tool.py +0 -52
  1123. langchain/tools/memorize/__init__.py +0 -25
  1124. langchain/tools/memorize/tool.py +0 -27
  1125. langchain/tools/merriam_webster/__init__.py +0 -1
  1126. langchain/tools/merriam_webster/tool.py +0 -23
  1127. langchain/tools/metaphor_search/__init__.py +0 -25
  1128. langchain/tools/metaphor_search/tool.py +0 -23
  1129. langchain/tools/multion/__init__.py +0 -33
  1130. langchain/tools/multion/close_session.py +0 -30
  1131. langchain/tools/multion/create_session.py +0 -30
  1132. langchain/tools/multion/update_session.py +0 -30
  1133. langchain/tools/nasa/__init__.py +0 -0
  1134. langchain/tools/nasa/tool.py +0 -23
  1135. langchain/tools/nuclia/__init__.py +0 -23
  1136. langchain/tools/nuclia/tool.py +0 -27
  1137. langchain/tools/office365/__init__.py +0 -41
  1138. langchain/tools/office365/base.py +0 -23
  1139. langchain/tools/office365/create_draft_message.py +0 -32
  1140. langchain/tools/office365/events_search.py +0 -28
  1141. langchain/tools/office365/messages_search.py +0 -28
  1142. langchain/tools/office365/send_event.py +0 -28
  1143. langchain/tools/office365/send_message.py +0 -28
  1144. langchain/tools/openapi/__init__.py +0 -0
  1145. langchain/tools/openapi/utils/__init__.py +0 -0
  1146. langchain/tools/openapi/utils/api_models.py +0 -54
  1147. langchain/tools/openapi/utils/openapi_utils.py +0 -30
  1148. langchain/tools/openweathermap/__init__.py +0 -25
  1149. langchain/tools/openweathermap/tool.py +0 -23
  1150. langchain/tools/playwright/__init__.py +0 -47
  1151. langchain/tools/playwright/base.py +0 -23
  1152. langchain/tools/playwright/click.py +0 -28
  1153. langchain/tools/playwright/current_page.py +0 -23
  1154. langchain/tools/playwright/extract_hyperlinks.py +0 -32
  1155. langchain/tools/playwright/extract_text.py +0 -23
  1156. langchain/tools/playwright/get_elements.py +0 -28
  1157. langchain/tools/playwright/navigate.py +0 -28
  1158. langchain/tools/playwright/navigate_back.py +0 -23
  1159. langchain/tools/plugin.py +0 -32
  1160. langchain/tools/powerbi/__init__.py +0 -1
  1161. langchain/tools/powerbi/tool.py +0 -33
  1162. langchain/tools/pubmed/__init__.py +0 -1
  1163. langchain/tools/pubmed/tool.py +0 -23
  1164. langchain/tools/python/__init__.py +0 -13
  1165. langchain/tools/reddit_search/__init__.py +0 -0
  1166. langchain/tools/reddit_search/tool.py +0 -27
  1167. langchain/tools/render.py +0 -23
  1168. langchain/tools/requests/__init__.py +0 -1
  1169. langchain/tools/requests/tool.py +0 -42
  1170. langchain/tools/retriever.py +0 -11
  1171. langchain/tools/scenexplain/__init__.py +0 -1
  1172. langchain/tools/scenexplain/tool.py +0 -28
  1173. langchain/tools/searchapi/__init__.py +0 -30
  1174. langchain/tools/searchapi/tool.py +0 -27
  1175. langchain/tools/searx_search/__init__.py +0 -0
  1176. langchain/tools/searx_search/tool.py +0 -27
  1177. langchain/tools/shell/__init__.py +0 -25
  1178. langchain/tools/shell/tool.py +0 -28
  1179. langchain/tools/slack/__init__.py +0 -38
  1180. langchain/tools/slack/base.py +0 -23
  1181. langchain/tools/slack/get_channel.py +0 -23
  1182. langchain/tools/slack/get_message.py +0 -28
  1183. langchain/tools/slack/schedule_message.py +0 -28
  1184. langchain/tools/slack/send_message.py +0 -28
  1185. langchain/tools/sleep/__init__.py +0 -1
  1186. langchain/tools/sleep/tool.py +0 -28
  1187. langchain/tools/spark_sql/__init__.py +0 -1
  1188. langchain/tools/spark_sql/tool.py +0 -39
  1189. langchain/tools/sql_database/__init__.py +0 -1
  1190. langchain/tools/sql_database/prompt.py +0 -24
  1191. langchain/tools/sql_database/tool.py +0 -39
  1192. langchain/tools/stackexchange/__init__.py +0 -1
  1193. langchain/tools/stackexchange/tool.py +0 -23
  1194. langchain/tools/steam/__init__.py +0 -1
  1195. langchain/tools/steam/tool.py +0 -23
  1196. langchain/tools/steamship_image_generation/__init__.py +0 -25
  1197. langchain/tools/steamship_image_generation/tool.py +0 -28
  1198. langchain/tools/tavily_search/__init__.py +0 -32
  1199. langchain/tools/tavily_search/tool.py +0 -33
  1200. langchain/tools/vectorstore/__init__.py +0 -1
  1201. langchain/tools/vectorstore/tool.py +0 -30
  1202. langchain/tools/wikipedia/__init__.py +0 -1
  1203. langchain/tools/wikipedia/tool.py +0 -23
  1204. langchain/tools/wolfram_alpha/__init__.py +0 -25
  1205. langchain/tools/wolfram_alpha/tool.py +0 -23
  1206. langchain/tools/yahoo_finance_news.py +0 -23
  1207. langchain/tools/youtube/__init__.py +0 -0
  1208. langchain/tools/youtube/search.py +0 -23
  1209. langchain/tools/zapier/__init__.py +0 -29
  1210. langchain/tools/zapier/tool.py +0 -49
  1211. langchain/utilities/__init__.py +0 -168
  1212. langchain/utilities/alpha_vantage.py +0 -23
  1213. langchain/utilities/anthropic.py +0 -30
  1214. langchain/utilities/apify.py +0 -23
  1215. langchain/utilities/arcee.py +0 -45
  1216. langchain/utilities/arxiv.py +0 -23
  1217. langchain/utilities/asyncio.py +0 -11
  1218. langchain/utilities/awslambda.py +0 -23
  1219. langchain/utilities/bibtex.py +0 -23
  1220. langchain/utilities/bing_search.py +0 -23
  1221. langchain/utilities/brave_search.py +0 -23
  1222. langchain/utilities/clickup.py +0 -45
  1223. langchain/utilities/dalle_image_generator.py +0 -25
  1224. langchain/utilities/dataforseo_api_search.py +0 -25
  1225. langchain/utilities/duckduckgo_search.py +0 -23
  1226. langchain/utilities/github.py +0 -23
  1227. langchain/utilities/gitlab.py +0 -23
  1228. langchain/utilities/golden_query.py +0 -23
  1229. langchain/utilities/google_finance.py +0 -23
  1230. langchain/utilities/google_jobs.py +0 -23
  1231. langchain/utilities/google_lens.py +0 -23
  1232. langchain/utilities/google_places_api.py +0 -23
  1233. langchain/utilities/google_scholar.py +0 -23
  1234. langchain/utilities/google_search.py +0 -23
  1235. langchain/utilities/google_serper.py +0 -23
  1236. langchain/utilities/google_trends.py +0 -23
  1237. langchain/utilities/graphql.py +0 -23
  1238. langchain/utilities/jira.py +0 -23
  1239. langchain/utilities/loading.py +0 -4
  1240. langchain/utilities/max_compute.py +0 -23
  1241. langchain/utilities/merriam_webster.py +0 -23
  1242. langchain/utilities/metaphor_search.py +0 -23
  1243. langchain/utilities/nasa.py +0 -23
  1244. langchain/utilities/opaqueprompts.py +0 -27
  1245. langchain/utilities/openapi.py +0 -28
  1246. langchain/utilities/openweathermap.py +0 -23
  1247. langchain/utilities/outline.py +0 -23
  1248. langchain/utilities/portkey.py +0 -23
  1249. langchain/utilities/powerbi.py +0 -23
  1250. langchain/utilities/pubmed.py +0 -23
  1251. langchain/utilities/python.py +0 -19
  1252. langchain/utilities/reddit_search.py +0 -25
  1253. langchain/utilities/redis.py +0 -33
  1254. langchain/utilities/requests.py +0 -27
  1255. langchain/utilities/scenexplain.py +0 -23
  1256. langchain/utilities/searchapi.py +0 -23
  1257. langchain/utilities/searx_search.py +0 -28
  1258. langchain/utilities/serpapi.py +0 -28
  1259. langchain/utilities/spark_sql.py +0 -23
  1260. langchain/utilities/sql_database.py +0 -28
  1261. langchain/utilities/stackexchange.py +0 -23
  1262. langchain/utilities/steam.py +0 -23
  1263. langchain/utilities/tavily_search.py +0 -25
  1264. langchain/utilities/tensorflow_datasets.py +0 -23
  1265. langchain/utilities/twilio.py +0 -23
  1266. langchain/utilities/vertexai.py +0 -36
  1267. langchain/utilities/wikipedia.py +0 -23
  1268. langchain/utilities/wolfram_alpha.py +0 -23
  1269. langchain/utilities/zapier.py +0 -23
  1270. langchain/utils/__init__.py +0 -77
  1271. langchain/utils/aiter.py +0 -3
  1272. langchain/utils/env.py +0 -3
  1273. langchain/utils/ernie_functions.py +0 -36
  1274. langchain/utils/formatting.py +0 -3
  1275. langchain/utils/html.py +0 -19
  1276. langchain/utils/input.py +0 -8
  1277. langchain/utils/iter.py +0 -3
  1278. langchain/utils/json_schema.py +0 -11
  1279. langchain/utils/loading.py +0 -3
  1280. langchain/utils/math.py +0 -32
  1281. langchain/utils/openai.py +0 -23
  1282. langchain/utils/openai_functions.py +0 -13
  1283. langchain/utils/pydantic.py +0 -3
  1284. langchain/utils/strings.py +0 -3
  1285. langchain/utils/utils.py +0 -21
  1286. langchain/vectorstores/__init__.py +0 -262
  1287. langchain/vectorstores/alibabacloud_opensearch.py +0 -30
  1288. langchain/vectorstores/analyticdb.py +0 -23
  1289. langchain/vectorstores/annoy.py +0 -23
  1290. langchain/vectorstores/astradb.py +0 -23
  1291. langchain/vectorstores/atlas.py +0 -23
  1292. langchain/vectorstores/awadb.py +0 -23
  1293. langchain/vectorstores/azure_cosmos_db.py +0 -28
  1294. langchain/vectorstores/azuresearch.py +0 -30
  1295. langchain/vectorstores/bageldb.py +0 -23
  1296. langchain/vectorstores/baiducloud_vector_search.py +0 -23
  1297. langchain/vectorstores/base.py +0 -3
  1298. langchain/vectorstores/cassandra.py +0 -23
  1299. langchain/vectorstores/chroma.py +0 -23
  1300. langchain/vectorstores/clarifai.py +0 -23
  1301. langchain/vectorstores/clickhouse.py +0 -27
  1302. langchain/vectorstores/dashvector.py +0 -23
  1303. langchain/vectorstores/databricks_vector_search.py +0 -23
  1304. langchain/vectorstores/deeplake.py +0 -23
  1305. langchain/vectorstores/dingo.py +0 -23
  1306. langchain/vectorstores/docarray/__init__.py +0 -30
  1307. langchain/vectorstores/docarray/base.py +0 -23
  1308. langchain/vectorstores/docarray/hnsw.py +0 -23
  1309. langchain/vectorstores/docarray/in_memory.py +0 -23
  1310. langchain/vectorstores/elastic_vector_search.py +0 -27
  1311. langchain/vectorstores/elasticsearch.py +0 -39
  1312. langchain/vectorstores/epsilla.py +0 -23
  1313. langchain/vectorstores/faiss.py +0 -23
  1314. langchain/vectorstores/hippo.py +0 -23
  1315. langchain/vectorstores/hologres.py +0 -23
  1316. langchain/vectorstores/lancedb.py +0 -23
  1317. langchain/vectorstores/llm_rails.py +0 -28
  1318. langchain/vectorstores/marqo.py +0 -23
  1319. langchain/vectorstores/matching_engine.py +0 -23
  1320. langchain/vectorstores/meilisearch.py +0 -23
  1321. langchain/vectorstores/milvus.py +0 -23
  1322. langchain/vectorstores/momento_vector_index.py +0 -23
  1323. langchain/vectorstores/mongodb_atlas.py +0 -23
  1324. langchain/vectorstores/myscale.py +0 -30
  1325. langchain/vectorstores/neo4j_vector.py +0 -28
  1326. langchain/vectorstores/nucliadb.py +0 -23
  1327. langchain/vectorstores/opensearch_vector_search.py +0 -23
  1328. langchain/vectorstores/pgembedding.py +0 -36
  1329. langchain/vectorstores/pgvecto_rs.py +0 -23
  1330. langchain/vectorstores/pgvector.py +0 -28
  1331. langchain/vectorstores/pinecone.py +0 -23
  1332. langchain/vectorstores/qdrant.py +0 -28
  1333. langchain/vectorstores/redis/__init__.py +0 -42
  1334. langchain/vectorstores/redis/base.py +0 -33
  1335. langchain/vectorstores/redis/filters.py +0 -48
  1336. langchain/vectorstores/redis/schema.py +0 -54
  1337. langchain/vectorstores/rocksetdb.py +0 -23
  1338. langchain/vectorstores/scann.py +0 -23
  1339. langchain/vectorstores/semadb.py +0 -23
  1340. langchain/vectorstores/singlestoredb.py +0 -23
  1341. langchain/vectorstores/sklearn.py +0 -42
  1342. langchain/vectorstores/sqlitevss.py +0 -23
  1343. langchain/vectorstores/starrocks.py +0 -28
  1344. langchain/vectorstores/supabase.py +0 -23
  1345. langchain/vectorstores/tair.py +0 -23
  1346. langchain/vectorstores/tencentvectordb.py +0 -33
  1347. langchain/vectorstores/tigris.py +0 -23
  1348. langchain/vectorstores/tiledb.py +0 -23
  1349. langchain/vectorstores/timescalevector.py +0 -23
  1350. langchain/vectorstores/typesense.py +0 -23
  1351. langchain/vectorstores/usearch.py +0 -23
  1352. langchain/vectorstores/utils.py +0 -33
  1353. langchain/vectorstores/vald.py +0 -23
  1354. langchain/vectorstores/vearch.py +0 -23
  1355. langchain/vectorstores/vectara.py +0 -28
  1356. langchain/vectorstores/vespa.py +0 -23
  1357. langchain/vectorstores/weaviate.py +0 -23
  1358. langchain/vectorstores/xata.py +0 -23
  1359. langchain/vectorstores/yellowbrick.py +0 -23
  1360. langchain/vectorstores/zep.py +0 -28
  1361. langchain/vectorstores/zilliz.py +0 -23
  1362. langchain-0.3.27.dist-info/METADATA +0 -144
  1363. langchain-0.3.27.dist-info/RECORD +0 -1342
  1364. langchain-0.3.27.dist-info/entry_points.txt +0 -4
  1365. {langchain-0.3.27.dist-info → langchain-1.0.0.dist-info}/licenses/LICENSE +0 -0
@@ -1,70 +0,0 @@
1
- from typing import Union
2
-
3
- from langchain_core.agents import AgentAction, AgentFinish
4
- from langchain_core.messages import BaseMessage
5
- from langchain_core.outputs import ChatGeneration, Generation
6
-
7
- from langchain.agents.agent import MultiActionAgentOutputParser
8
- from langchain.agents.output_parsers.tools import (
9
- ToolAgentAction,
10
- parse_ai_message_to_tool_action,
11
- )
12
-
13
- OpenAIToolAgentAction = ToolAgentAction
14
-
15
-
16
- def parse_ai_message_to_openai_tool_action(
17
- message: BaseMessage,
18
- ) -> Union[list[AgentAction], AgentFinish]:
19
- """Parse an AI message potentially containing tool_calls."""
20
- tool_actions = parse_ai_message_to_tool_action(message)
21
- if isinstance(tool_actions, AgentFinish):
22
- return tool_actions
23
- final_actions: list[AgentAction] = []
24
- for action in tool_actions:
25
- if isinstance(action, ToolAgentAction):
26
- final_actions.append(
27
- OpenAIToolAgentAction(
28
- tool=action.tool,
29
- tool_input=action.tool_input,
30
- log=action.log,
31
- message_log=action.message_log,
32
- tool_call_id=action.tool_call_id,
33
- ),
34
- )
35
- else:
36
- final_actions.append(action)
37
- return final_actions
38
-
39
-
40
- class OpenAIToolsAgentOutputParser(MultiActionAgentOutputParser):
41
- """Parses a message into agent actions/finish.
42
-
43
- Is meant to be used with OpenAI models, as it relies on the specific
44
- tool_calls parameter from OpenAI to convey what tools to use.
45
-
46
- If a tool_calls parameter is passed, then that is used to get
47
- the tool names and tool inputs.
48
-
49
- If one is not passed, then the AIMessage is assumed to be the final output.
50
- """
51
-
52
- @property
53
- def _type(self) -> str:
54
- return "openai-tools-agent-output-parser"
55
-
56
- def parse_result(
57
- self,
58
- result: list[Generation],
59
- *,
60
- partial: bool = False,
61
- ) -> Union[list[AgentAction], AgentFinish]:
62
- if not isinstance(result[0], ChatGeneration):
63
- msg = "This output parser only works on ChatGeneration output"
64
- raise ValueError(msg) # noqa: TRY004
65
- message = result[0].message
66
- return parse_ai_message_to_openai_tool_action(message)
67
-
68
- def parse(self, text: str) -> Union[list[AgentAction], AgentFinish]:
69
- msg = "Can only parse messages"
70
- raise ValueError(msg)
@@ -1,84 +0,0 @@
1
- import json
2
- import re
3
- from re import Pattern
4
- from typing import Union
5
-
6
- from langchain_core.agents import AgentAction, AgentFinish
7
- from langchain_core.exceptions import OutputParserException
8
-
9
- from langchain.agents.agent import AgentOutputParser
10
- from langchain.agents.chat.prompt import FORMAT_INSTRUCTIONS
11
-
12
- FINAL_ANSWER_ACTION = "Final Answer:"
13
-
14
-
15
- class ReActJsonSingleInputOutputParser(AgentOutputParser):
16
- """Parses ReAct-style LLM calls that have a single tool input in json format.
17
-
18
- Expects output to be in one of two formats.
19
-
20
- If the output signals that an action should be taken,
21
- should be in the below format. This will result in an AgentAction
22
- being returned.
23
-
24
- ```
25
- Thought: agent thought here
26
- Action:
27
- ```
28
- {
29
- "action": "search",
30
- "action_input": "what is the temperature in SF"
31
- }
32
- ```
33
- ```
34
-
35
- If the output signals that a final answer should be given,
36
- should be in the below format. This will result in an AgentFinish
37
- being returned.
38
-
39
- ```
40
- Thought: agent thought here
41
- Final Answer: The temperature is 100 degrees
42
- ```
43
-
44
- """
45
-
46
- pattern: Pattern = re.compile(r"^.*?`{3}(?:json)?\n?(.*?)`{3}.*?$", re.DOTALL)
47
- """Regex pattern to parse the output."""
48
-
49
- def get_format_instructions(self) -> str:
50
- return FORMAT_INSTRUCTIONS
51
-
52
- def parse(self, text: str) -> Union[AgentAction, AgentFinish]:
53
- includes_answer = FINAL_ANSWER_ACTION in text
54
- try:
55
- found = self.pattern.search(text)
56
- if not found:
57
- # Fast fail to parse Final Answer.
58
- msg = "action not found"
59
- raise ValueError(msg)
60
- action = found.group(1)
61
- response = json.loads(action.strip())
62
- includes_action = "action" in response
63
- if includes_answer and includes_action:
64
- msg = (
65
- "Parsing LLM output produced a final answer "
66
- f"and a parse-able action: {text}"
67
- )
68
- raise OutputParserException(msg)
69
- return AgentAction(
70
- response["action"],
71
- response.get("action_input", {}),
72
- text,
73
- )
74
-
75
- except Exception as e:
76
- if not includes_answer:
77
- msg = f"Could not parse LLM output: {text}"
78
- raise OutputParserException(msg) from e
79
- output = text.split(FINAL_ANSWER_ACTION)[-1].strip()
80
- return AgentFinish({"output": output}, text)
81
-
82
- @property
83
- def _type(self) -> str:
84
- return "react-json-single-input"
@@ -1,99 +0,0 @@
1
- import re
2
- from typing import Union
3
-
4
- from langchain_core.agents import AgentAction, AgentFinish
5
- from langchain_core.exceptions import OutputParserException
6
-
7
- from langchain.agents.agent import AgentOutputParser
8
- from langchain.agents.mrkl.prompt import FORMAT_INSTRUCTIONS
9
-
10
- FINAL_ANSWER_ACTION = "Final Answer:"
11
- MISSING_ACTION_AFTER_THOUGHT_ERROR_MESSAGE = (
12
- "Invalid Format: Missing 'Action:' after 'Thought:'"
13
- )
14
- MISSING_ACTION_INPUT_AFTER_ACTION_ERROR_MESSAGE = (
15
- "Invalid Format: Missing 'Action Input:' after 'Action:'"
16
- )
17
- FINAL_ANSWER_AND_PARSABLE_ACTION_ERROR_MESSAGE = (
18
- "Parsing LLM output produced both a final answer and a parse-able action:"
19
- )
20
-
21
-
22
- class ReActSingleInputOutputParser(AgentOutputParser):
23
- """Parses ReAct-style LLM calls that have a single tool input.
24
-
25
- Expects output to be in one of two formats.
26
-
27
- If the output signals that an action should be taken,
28
- should be in the below format. This will result in an AgentAction
29
- being returned.
30
-
31
- ```
32
- Thought: agent thought here
33
- Action: search
34
- Action Input: what is the temperature in SF?
35
- ```
36
-
37
- If the output signals that a final answer should be given,
38
- should be in the below format. This will result in an AgentFinish
39
- being returned.
40
-
41
- ```
42
- Thought: agent thought here
43
- Final Answer: The temperature is 100 degrees
44
- ```
45
-
46
- """
47
-
48
- def get_format_instructions(self) -> str:
49
- return FORMAT_INSTRUCTIONS
50
-
51
- def parse(self, text: str) -> Union[AgentAction, AgentFinish]:
52
- includes_answer = FINAL_ANSWER_ACTION in text
53
- regex = (
54
- r"Action\s*\d*\s*:[\s]*(.*?)[\s]*Action\s*\d*\s*Input\s*\d*\s*:[\s]*(.*)"
55
- )
56
- action_match = re.search(regex, text, re.DOTALL)
57
- if action_match:
58
- if includes_answer:
59
- msg = f"{FINAL_ANSWER_AND_PARSABLE_ACTION_ERROR_MESSAGE}: {text}"
60
- raise OutputParserException(msg)
61
- action = action_match.group(1).strip()
62
- action_input = action_match.group(2)
63
- tool_input = action_input.strip(" ")
64
- tool_input = tool_input.strip('"')
65
-
66
- return AgentAction(action, tool_input, text)
67
-
68
- if includes_answer:
69
- return AgentFinish(
70
- {"output": text.split(FINAL_ANSWER_ACTION)[-1].strip()},
71
- text,
72
- )
73
-
74
- if not re.search(r"Action\s*\d*\s*:[\s]*(.*?)", text, re.DOTALL):
75
- msg = f"Could not parse LLM output: `{text}`"
76
- raise OutputParserException(
77
- msg,
78
- observation=MISSING_ACTION_AFTER_THOUGHT_ERROR_MESSAGE,
79
- llm_output=text,
80
- send_to_llm=True,
81
- )
82
- if not re.search(
83
- r"[\s]*Action\s*\d*\s*Input\s*\d*\s*:[\s]*(.*)",
84
- text,
85
- re.DOTALL,
86
- ):
87
- msg = f"Could not parse LLM output: `{text}`"
88
- raise OutputParserException(
89
- msg,
90
- observation=MISSING_ACTION_INPUT_AFTER_ACTION_ERROR_MESSAGE,
91
- llm_output=text,
92
- send_to_llm=True,
93
- )
94
- msg = f"Could not parse LLM output: `{text}`"
95
- raise OutputParserException(msg)
96
-
97
- @property
98
- def _type(self) -> str:
99
- return "react-single-input"
@@ -1,51 +0,0 @@
1
- from collections.abc import Sequence
2
- from typing import Union
3
-
4
- from langchain_core.agents import AgentAction, AgentFinish
5
- from langchain_core.exceptions import OutputParserException
6
-
7
- from langchain.agents.agent import AgentOutputParser
8
-
9
-
10
- class SelfAskOutputParser(AgentOutputParser):
11
- """Parses self-ask style LLM calls.
12
-
13
- Expects output to be in one of two formats.
14
-
15
- If the output signals that an action should be taken,
16
- should be in the below format. This will result in an AgentAction
17
- being returned.
18
-
19
- ```
20
- Thoughts go here...
21
- Follow up: what is the temperature in SF?
22
- ```
23
-
24
- If the output signals that a final answer should be given,
25
- should be in the below format. This will result in an AgentFinish
26
- being returned.
27
-
28
- ```
29
- Thoughts go here...
30
- So the final answer is: The temperature is 100 degrees
31
- ```
32
-
33
- """
34
-
35
- followups: Sequence[str] = ("Follow up:", "Followup:")
36
- finish_string: str = "So the final answer is: "
37
-
38
- def parse(self, text: str) -> Union[AgentAction, AgentFinish]:
39
- last_line = text.split("\n")[-1]
40
- if not any(follow in last_line for follow in self.followups):
41
- if self.finish_string not in last_line:
42
- msg = f"Could not parse output: {text}"
43
- raise OutputParserException(msg)
44
- return AgentFinish({"output": last_line[len(self.finish_string) :]}, text)
45
-
46
- after_colon = text.split(":")[-1].strip()
47
- return AgentAction("Intermediate Answer", after_colon, text)
48
-
49
- @property
50
- def _type(self) -> str:
51
- return "self_ask"
@@ -1,107 +0,0 @@
1
- import json
2
- from json import JSONDecodeError
3
- from typing import Union
4
-
5
- from langchain_core.agents import AgentAction, AgentActionMessageLog, AgentFinish
6
- from langchain_core.exceptions import OutputParserException
7
- from langchain_core.messages import (
8
- AIMessage,
9
- BaseMessage,
10
- ToolCall,
11
- )
12
- from langchain_core.outputs import ChatGeneration, Generation
13
-
14
- from langchain.agents.agent import MultiActionAgentOutputParser
15
-
16
-
17
- class ToolAgentAction(AgentActionMessageLog):
18
- tool_call_id: str
19
- """Tool call that this message is responding to."""
20
-
21
-
22
- def parse_ai_message_to_tool_action(
23
- message: BaseMessage,
24
- ) -> Union[list[AgentAction], AgentFinish]:
25
- """Parse an AI message potentially containing tool_calls."""
26
- if not isinstance(message, AIMessage):
27
- msg = f"Expected an AI message got {type(message)}"
28
- raise TypeError(msg)
29
-
30
- actions: list = []
31
- if message.tool_calls:
32
- tool_calls = message.tool_calls
33
- else:
34
- if not message.additional_kwargs.get("tool_calls"):
35
- return AgentFinish(
36
- return_values={"output": message.content},
37
- log=str(message.content),
38
- )
39
- # Best-effort parsing
40
- tool_calls = []
41
- for tool_call in message.additional_kwargs["tool_calls"]:
42
- function = tool_call["function"]
43
- function_name = function["name"]
44
- try:
45
- args = json.loads(function["arguments"] or "{}")
46
- tool_calls.append(
47
- ToolCall(name=function_name, args=args, id=tool_call["id"]),
48
- )
49
- except JSONDecodeError as e:
50
- msg = (
51
- f"Could not parse tool input: {function} because "
52
- f"the `arguments` is not valid JSON."
53
- )
54
- raise OutputParserException(msg) from e
55
- for tool_call in tool_calls:
56
- # HACK HACK HACK:
57
- # The code that encodes tool input into Open AI uses a special variable
58
- # name called `__arg1` to handle old style tools that do not expose a
59
- # schema and expect a single string argument as an input.
60
- # We unpack the argument here if it exists.
61
- # Open AI does not support passing in a JSON array as an argument.
62
- function_name = tool_call["name"]
63
- _tool_input = tool_call["args"]
64
- tool_input = _tool_input.get("__arg1", _tool_input)
65
-
66
- content_msg = f"responded: {message.content}\n" if message.content else "\n"
67
- log = f"\nInvoking: `{function_name}` with `{tool_input}`\n{content_msg}\n"
68
- actions.append(
69
- ToolAgentAction(
70
- tool=function_name,
71
- tool_input=tool_input,
72
- log=log,
73
- message_log=[message],
74
- tool_call_id=tool_call["id"],
75
- ),
76
- )
77
- return actions
78
-
79
-
80
- class ToolsAgentOutputParser(MultiActionAgentOutputParser):
81
- """Parses a message into agent actions/finish.
82
-
83
- If a tool_calls parameter is passed, then that is used to get
84
- the tool names and tool inputs.
85
-
86
- If one is not passed, then the AIMessage is assumed to be the final output.
87
- """
88
-
89
- @property
90
- def _type(self) -> str:
91
- return "tools-agent-output-parser"
92
-
93
- def parse_result(
94
- self,
95
- result: list[Generation],
96
- *,
97
- partial: bool = False,
98
- ) -> Union[list[AgentAction], AgentFinish]:
99
- if not isinstance(result[0], ChatGeneration):
100
- msg = "This output parser only works on ChatGeneration output"
101
- raise ValueError(msg) # noqa: TRY004
102
- message = result[0].message
103
- return parse_ai_message_to_tool_action(message)
104
-
105
- def parse(self, text: str) -> Union[list[AgentAction], AgentFinish]:
106
- msg = "Can only parse messages"
107
- raise ValueError(msg)
@@ -1,123 +0,0 @@
1
- import re
2
- from typing import Literal, Optional, Union
3
-
4
- from langchain_core.agents import AgentAction, AgentFinish
5
- from pydantic import Field
6
-
7
- from langchain.agents import AgentOutputParser
8
-
9
-
10
- def _unescape(text: str) -> str:
11
- """Convert custom tag delimiters back into XML tags."""
12
- replacements = {
13
- "[[tool]]": "<tool>",
14
- "[[/tool]]": "</tool>",
15
- "[[tool_input]]": "<tool_input>",
16
- "[[/tool_input]]": "</tool_input>",
17
- "[[observation]]": "<observation>",
18
- "[[/observation]]": "</observation>",
19
- }
20
- for repl, orig in replacements.items():
21
- text = text.replace(repl, orig)
22
- return text
23
-
24
-
25
- class XMLAgentOutputParser(AgentOutputParser):
26
- """Parses tool invocations and final answers from XML-formatted agent output.
27
-
28
- This parser extracts structured information from XML tags to determine whether
29
- an agent should perform a tool action or provide a final answer. It includes
30
- built-in escaping support to safely handle tool names and inputs
31
- containing XML special characters.
32
-
33
- Args:
34
- escape_format: The escaping format to use when parsing XML content.
35
- Supports 'minimal' which uses custom delimiters like [[tool]] to replace
36
- XML tags within content, preventing parsing conflicts.
37
- Use 'minimal' if using a corresponding encoding format that uses
38
- the _escape function when formatting the output (e.g., with format_xml).
39
-
40
- Expected formats:
41
- Tool invocation (returns AgentAction):
42
- <tool>search</tool>
43
- <tool_input>what is 2 + 2</tool_input>
44
-
45
- Final answer (returns AgentFinish):
46
- <final_answer>The answer is 4</final_answer>
47
-
48
- Note:
49
- Minimal escaping allows tool names containing XML tags to be safely
50
- represented. For example, a tool named "search<tool>nested</tool>" would be
51
- escaped as "search[[tool]]nested[[/tool]]" in the XML and automatically
52
- unescaped during parsing.
53
-
54
- Raises:
55
- ValueError: If the input doesn't match either expected XML format or
56
- contains malformed XML structure.
57
- """
58
-
59
- escape_format: Optional[Literal["minimal"]] = Field(default="minimal")
60
- """The format to use for escaping XML characters.
61
-
62
- minimal - uses custom delimiters to replace XML tags within content,
63
- preventing parsing conflicts. This is the only supported format currently.
64
-
65
- None - no escaping is applied, which may lead to parsing conflicts.
66
- """
67
-
68
- def parse(self, text: str) -> Union[AgentAction, AgentFinish]:
69
- # Check for tool invocation first
70
- tool_matches = re.findall(r"<tool>(.*?)</tool>", text, re.DOTALL)
71
- if tool_matches:
72
- if len(tool_matches) != 1:
73
- msg = (
74
- f"Malformed tool invocation: expected exactly one <tool> block, "
75
- f"but found {len(tool_matches)}."
76
- )
77
- raise ValueError(msg)
78
- _tool = tool_matches[0]
79
-
80
- # Match optional tool input
81
- input_matches = re.findall(
82
- r"<tool_input>(.*?)</tool_input>", text, re.DOTALL
83
- )
84
- if len(input_matches) > 1:
85
- msg = (
86
- f"Malformed tool invocation: expected at most one <tool_input> "
87
- f"block, but found {len(input_matches)}."
88
- )
89
- raise ValueError(msg)
90
- _tool_input = input_matches[0] if input_matches else ""
91
-
92
- # Unescape if minimal escape format is used
93
- if self.escape_format == "minimal":
94
- _tool = _unescape(_tool)
95
- _tool_input = _unescape(_tool_input)
96
-
97
- return AgentAction(tool=_tool, tool_input=_tool_input, log=text)
98
- # Check for final answer
99
- if "<final_answer>" in text and "</final_answer>" in text:
100
- matches = re.findall(r"<final_answer>(.*?)</final_answer>", text, re.DOTALL)
101
- if len(matches) != 1:
102
- msg = (
103
- "Malformed output: expected exactly one "
104
- "<final_answer>...</final_answer> block."
105
- )
106
- raise ValueError(msg)
107
- answer = matches[0]
108
- # Unescape custom delimiters in final answer
109
- if self.escape_format == "minimal":
110
- answer = _unescape(answer)
111
- return AgentFinish(return_values={"output": answer}, log=text)
112
- msg = (
113
- "Malformed output: expected either a tool invocation "
114
- "or a final answer in XML format."
115
- )
116
- raise ValueError(msg)
117
-
118
- def get_format_instructions(self) -> str:
119
- raise NotImplementedError
120
-
121
- @property
122
- def _type(self) -> str:
123
- return "xml-agent"
@@ -1 +0,0 @@
1
- """Implements the ReAct paper from https://arxiv.org/pdf/2210.03629.pdf."""
@@ -1,144 +0,0 @@
1
- from __future__ import annotations
2
-
3
- from collections.abc import Sequence
4
- from typing import Optional, Union
5
-
6
- from langchain_core.language_models import BaseLanguageModel
7
- from langchain_core.prompts import BasePromptTemplate
8
- from langchain_core.runnables import Runnable, RunnablePassthrough
9
- from langchain_core.tools import BaseTool
10
- from langchain_core.tools.render import ToolsRenderer, render_text_description
11
-
12
- from langchain.agents import AgentOutputParser
13
- from langchain.agents.format_scratchpad import format_log_to_str
14
- from langchain.agents.output_parsers import ReActSingleInputOutputParser
15
-
16
-
17
- def create_react_agent(
18
- llm: BaseLanguageModel,
19
- tools: Sequence[BaseTool],
20
- prompt: BasePromptTemplate,
21
- output_parser: Optional[AgentOutputParser] = None,
22
- tools_renderer: ToolsRenderer = render_text_description,
23
- *,
24
- stop_sequence: Union[bool, list[str]] = True,
25
- ) -> Runnable:
26
- """Create an agent that uses ReAct prompting.
27
-
28
- Based on paper "ReAct: Synergizing Reasoning and Acting in Language Models"
29
- (https://arxiv.org/abs/2210.03629)
30
-
31
- .. warning::
32
- This implementation is based on the foundational ReAct paper but is older and not well-suited for production applications.
33
- For a more robust and feature-rich implementation, we recommend using the `create_react_agent` function from the LangGraph library.
34
- See the [reference doc](https://langchain-ai.github.io/langgraph/reference/prebuilt/#langgraph.prebuilt.chat_agent_executor.create_react_agent)
35
- for more information.
36
-
37
- Args:
38
- llm: LLM to use as the agent.
39
- tools: Tools this agent has access to.
40
- prompt: The prompt to use. See Prompt section below for more.
41
- output_parser: AgentOutputParser for parse the LLM output.
42
- tools_renderer: This controls how the tools are converted into a string and
43
- then passed into the LLM. Default is `render_text_description`.
44
- stop_sequence: bool or list of str.
45
- If True, adds a stop token of "Observation:" to avoid hallucinates.
46
- If False, does not add a stop token.
47
- If a list of str, uses the provided list as the stop tokens.
48
-
49
- Default is True. You may to set this to False if the LLM you are using
50
- does not support stop sequences.
51
-
52
- Returns:
53
- A Runnable sequence representing an agent. It takes as input all the same input
54
- variables as the prompt passed in does. It returns as output either an
55
- AgentAction or AgentFinish.
56
-
57
- Examples:
58
-
59
- .. code-block:: python
60
-
61
- from langchain import hub
62
- from langchain_community.llms import OpenAI
63
- from langchain.agents import AgentExecutor, create_react_agent
64
-
65
- prompt = hub.pull("hwchase17/react")
66
- model = OpenAI()
67
- tools = ...
68
-
69
- agent = create_react_agent(model, tools, prompt)
70
- agent_executor = AgentExecutor(agent=agent, tools=tools)
71
-
72
- agent_executor.invoke({"input": "hi"})
73
-
74
- # Use with chat history
75
- from langchain_core.messages import AIMessage, HumanMessage
76
- agent_executor.invoke(
77
- {
78
- "input": "what's my name?",
79
- # Notice that chat_history is a string
80
- # since this prompt is aimed at LLMs, not chat models
81
- "chat_history": "Human: My name is Bob\\nAI: Hello Bob!",
82
- }
83
- )
84
-
85
- Prompt:
86
-
87
- The prompt must have input keys:
88
- * `tools`: contains descriptions and arguments for each tool.
89
- * `tool_names`: contains all tool names.
90
- * `agent_scratchpad`: contains previous agent actions and tool outputs as a string.
91
-
92
- Here's an example:
93
-
94
- .. code-block:: python
95
-
96
- from langchain_core.prompts import PromptTemplate
97
-
98
- template = '''Answer the following questions as best you can. You have access to the following tools:
99
-
100
- {tools}
101
-
102
- Use the following format:
103
-
104
- Question: the input question you must answer
105
- Thought: you should always think about what to do
106
- Action: the action to take, should be one of [{tool_names}]
107
- Action Input: the input to the action
108
- Observation: the result of the action
109
- ... (this Thought/Action/Action Input/Observation can repeat N times)
110
- Thought: I now know the final answer
111
- Final Answer: the final answer to the original input question
112
-
113
- Begin!
114
-
115
- Question: {input}
116
- Thought:{agent_scratchpad}'''
117
-
118
- prompt = PromptTemplate.from_template(template)
119
- """ # noqa: E501
120
- missing_vars = {"tools", "tool_names", "agent_scratchpad"}.difference(
121
- prompt.input_variables + list(prompt.partial_variables),
122
- )
123
- if missing_vars:
124
- msg = f"Prompt missing required variables: {missing_vars}"
125
- raise ValueError(msg)
126
-
127
- prompt = prompt.partial(
128
- tools=tools_renderer(list(tools)),
129
- tool_names=", ".join([t.name for t in tools]),
130
- )
131
- if stop_sequence:
132
- stop = ["\nObservation"] if stop_sequence is True else stop_sequence
133
- llm_with_stop = llm.bind(stop=stop)
134
- else:
135
- llm_with_stop = llm
136
- output_parser = output_parser or ReActSingleInputOutputParser()
137
- return (
138
- RunnablePassthrough.assign(
139
- agent_scratchpad=lambda x: format_log_to_str(x["intermediate_steps"]),
140
- )
141
- | prompt
142
- | llm_with_stop
143
- | output_parser
144
- )