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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


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

Files changed (1364) hide show
  1. langchain/__init__.py +2 -452
  2. langchain/agents/__init__.py +9 -178
  3. langchain/agents/factory.py +1582 -0
  4. langchain/agents/middleware/__init__.py +80 -0
  5. langchain/agents/middleware/_execution.py +388 -0
  6. langchain/agents/middleware/_redaction.py +350 -0
  7. langchain/agents/middleware/context_editing.py +274 -0
  8. langchain/agents/middleware/file_search.py +382 -0
  9. langchain/agents/middleware/human_in_the_loop.py +351 -0
  10. langchain/agents/middleware/model_call_limit.py +210 -0
  11. langchain/agents/middleware/model_fallback.py +137 -0
  12. langchain/agents/middleware/pii.py +317 -0
  13. langchain/agents/middleware/shell_tool.py +718 -0
  14. langchain/agents/middleware/summarization.py +249 -0
  15. langchain/agents/middleware/todo.py +219 -0
  16. langchain/agents/middleware/tool_call_limit.py +333 -0
  17. langchain/agents/middleware/tool_emulator.py +200 -0
  18. langchain/agents/middleware/tool_retry.py +384 -0
  19. langchain/agents/middleware/tool_selection.py +310 -0
  20. langchain/agents/middleware/types.py +1572 -0
  21. langchain/agents/structured_output.py +426 -0
  22. langchain/chat_models/__init__.py +7 -72
  23. langchain/chat_models/base.py +268 -358
  24. langchain/embeddings/__init__.py +7 -217
  25. langchain/embeddings/base.py +31 -43
  26. langchain/messages/__init__.py +72 -0
  27. langchain/rate_limiters/__init__.py +13 -0
  28. langchain/tools/__init__.py +17 -197
  29. langchain/tools/tool_node.py +1700 -0
  30. langchain-1.0.0.dist-info/METADATA +87 -0
  31. langchain-1.0.0.dist-info/RECORD +34 -0
  32. {langchain-0.4.0.dev0.dist-info → langchain-1.0.0.dist-info}/WHEEL +1 -1
  33. langchain/_api/__init__.py +0 -28
  34. langchain/_api/deprecation.py +0 -32
  35. langchain/_api/interactive_env.py +0 -5
  36. langchain/_api/module_import.py +0 -153
  37. langchain/_api/path.py +0 -3
  38. langchain/adapters/__init__.py +0 -0
  39. langchain/adapters/openai.py +0 -63
  40. langchain/agents/agent.py +0 -1824
  41. langchain/agents/agent_iterator.py +0 -438
  42. langchain/agents/agent_toolkits/__init__.py +0 -167
  43. langchain/agents/agent_toolkits/ainetwork/__init__.py +0 -1
  44. langchain/agents/agent_toolkits/ainetwork/toolkit.py +0 -25
  45. langchain/agents/agent_toolkits/amadeus/toolkit.py +0 -23
  46. langchain/agents/agent_toolkits/azure_cognitive_services.py +0 -29
  47. langchain/agents/agent_toolkits/base.py +0 -3
  48. langchain/agents/agent_toolkits/clickup/__init__.py +0 -0
  49. langchain/agents/agent_toolkits/clickup/toolkit.py +0 -25
  50. langchain/agents/agent_toolkits/conversational_retrieval/__init__.py +0 -0
  51. langchain/agents/agent_toolkits/conversational_retrieval/openai_functions.py +0 -87
  52. langchain/agents/agent_toolkits/conversational_retrieval/tool.py +0 -3
  53. langchain/agents/agent_toolkits/csv/__init__.py +0 -28
  54. langchain/agents/agent_toolkits/file_management/__init__.py +0 -31
  55. langchain/agents/agent_toolkits/file_management/toolkit.py +0 -29
  56. langchain/agents/agent_toolkits/github/__init__.py +0 -1
  57. langchain/agents/agent_toolkits/github/toolkit.py +0 -69
  58. langchain/agents/agent_toolkits/gitlab/__init__.py +0 -1
  59. langchain/agents/agent_toolkits/gitlab/toolkit.py +0 -25
  60. langchain/agents/agent_toolkits/gmail/__init__.py +0 -1
  61. langchain/agents/agent_toolkits/gmail/toolkit.py +0 -23
  62. langchain/agents/agent_toolkits/jira/__init__.py +0 -1
  63. langchain/agents/agent_toolkits/jira/toolkit.py +0 -23
  64. langchain/agents/agent_toolkits/json/__init__.py +0 -1
  65. langchain/agents/agent_toolkits/json/base.py +0 -25
  66. langchain/agents/agent_toolkits/json/prompt.py +0 -24
  67. langchain/agents/agent_toolkits/json/toolkit.py +0 -23
  68. langchain/agents/agent_toolkits/multion/__init__.py +0 -1
  69. langchain/agents/agent_toolkits/multion/toolkit.py +0 -25
  70. langchain/agents/agent_toolkits/nasa/__init__.py +0 -1
  71. langchain/agents/agent_toolkits/nasa/toolkit.py +0 -23
  72. langchain/agents/agent_toolkits/nla/__init__.py +0 -0
  73. langchain/agents/agent_toolkits/nla/tool.py +0 -23
  74. langchain/agents/agent_toolkits/nla/toolkit.py +0 -23
  75. langchain/agents/agent_toolkits/office365/__init__.py +0 -1
  76. langchain/agents/agent_toolkits/office365/toolkit.py +0 -25
  77. langchain/agents/agent_toolkits/openapi/__init__.py +0 -1
  78. langchain/agents/agent_toolkits/openapi/base.py +0 -25
  79. langchain/agents/agent_toolkits/openapi/planner.py +0 -52
  80. langchain/agents/agent_toolkits/openapi/planner_prompt.py +0 -103
  81. langchain/agents/agent_toolkits/openapi/prompt.py +0 -29
  82. langchain/agents/agent_toolkits/openapi/spec.py +0 -30
  83. langchain/agents/agent_toolkits/openapi/toolkit.py +0 -30
  84. langchain/agents/agent_toolkits/pandas/__init__.py +0 -28
  85. langchain/agents/agent_toolkits/playwright/__init__.py +0 -29
  86. langchain/agents/agent_toolkits/playwright/toolkit.py +0 -27
  87. langchain/agents/agent_toolkits/powerbi/__init__.py +0 -1
  88. langchain/agents/agent_toolkits/powerbi/base.py +0 -25
  89. langchain/agents/agent_toolkits/powerbi/chat_base.py +0 -27
  90. langchain/agents/agent_toolkits/powerbi/prompt.py +0 -36
  91. langchain/agents/agent_toolkits/powerbi/toolkit.py +0 -25
  92. langchain/agents/agent_toolkits/python/__init__.py +0 -28
  93. langchain/agents/agent_toolkits/slack/__init__.py +0 -1
  94. langchain/agents/agent_toolkits/slack/toolkit.py +0 -23
  95. langchain/agents/agent_toolkits/spark/__init__.py +0 -28
  96. langchain/agents/agent_toolkits/spark_sql/__init__.py +0 -1
  97. langchain/agents/agent_toolkits/spark_sql/base.py +0 -25
  98. langchain/agents/agent_toolkits/spark_sql/prompt.py +0 -27
  99. langchain/agents/agent_toolkits/spark_sql/toolkit.py +0 -25
  100. langchain/agents/agent_toolkits/sql/__init__.py +0 -1
  101. langchain/agents/agent_toolkits/sql/base.py +0 -23
  102. langchain/agents/agent_toolkits/sql/prompt.py +0 -29
  103. langchain/agents/agent_toolkits/sql/toolkit.py +0 -25
  104. langchain/agents/agent_toolkits/steam/__init__.py +0 -1
  105. langchain/agents/agent_toolkits/steam/toolkit.py +0 -23
  106. langchain/agents/agent_toolkits/vectorstore/__init__.py +0 -1
  107. langchain/agents/agent_toolkits/vectorstore/base.py +0 -219
  108. langchain/agents/agent_toolkits/vectorstore/prompt.py +0 -11
  109. langchain/agents/agent_toolkits/vectorstore/toolkit.py +0 -97
  110. langchain/agents/agent_toolkits/xorbits/__init__.py +0 -28
  111. langchain/agents/agent_toolkits/zapier/__init__.py +0 -1
  112. langchain/agents/agent_toolkits/zapier/toolkit.py +0 -25
  113. langchain/agents/agent_types.py +0 -57
  114. langchain/agents/chat/__init__.py +0 -0
  115. langchain/agents/chat/base.py +0 -180
  116. langchain/agents/chat/output_parser.py +0 -74
  117. langchain/agents/chat/prompt.py +0 -29
  118. langchain/agents/conversational/__init__.py +0 -1
  119. langchain/agents/conversational/base.py +0 -178
  120. langchain/agents/conversational/output_parser.py +0 -51
  121. langchain/agents/conversational/prompt.py +0 -35
  122. langchain/agents/conversational_chat/__init__.py +0 -1
  123. langchain/agents/conversational_chat/base.py +0 -183
  124. langchain/agents/conversational_chat/output_parser.py +0 -57
  125. langchain/agents/conversational_chat/prompt.py +0 -56
  126. langchain/agents/format_scratchpad/__init__.py +0 -25
  127. langchain/agents/format_scratchpad/log.py +0 -25
  128. langchain/agents/format_scratchpad/log_to_messages.py +0 -26
  129. langchain/agents/format_scratchpad/openai_functions.py +0 -80
  130. langchain/agents/format_scratchpad/openai_tools.py +0 -5
  131. langchain/agents/format_scratchpad/tools.py +0 -65
  132. langchain/agents/format_scratchpad/xml.py +0 -52
  133. langchain/agents/initialize.py +0 -105
  134. langchain/agents/json_chat/__init__.py +0 -0
  135. langchain/agents/json_chat/base.py +0 -196
  136. langchain/agents/json_chat/prompt.py +0 -8
  137. langchain/agents/load_tools.py +0 -13
  138. langchain/agents/loading.py +0 -148
  139. langchain/agents/mrkl/__init__.py +0 -1
  140. langchain/agents/mrkl/base.py +0 -218
  141. langchain/agents/mrkl/output_parser.py +0 -103
  142. langchain/agents/mrkl/prompt.py +0 -15
  143. langchain/agents/openai_assistant/__init__.py +0 -3
  144. langchain/agents/openai_assistant/base.py +0 -818
  145. langchain/agents/openai_functions_agent/__init__.py +0 -0
  146. langchain/agents/openai_functions_agent/agent_token_buffer_memory.py +0 -103
  147. langchain/agents/openai_functions_agent/base.py +0 -382
  148. langchain/agents/openai_functions_multi_agent/__init__.py +0 -0
  149. langchain/agents/openai_functions_multi_agent/base.py +0 -337
  150. langchain/agents/openai_tools/__init__.py +0 -0
  151. langchain/agents/openai_tools/base.py +0 -109
  152. langchain/agents/output_parsers/__init__.py +0 -35
  153. langchain/agents/output_parsers/json.py +0 -64
  154. langchain/agents/output_parsers/openai_functions.py +0 -103
  155. langchain/agents/output_parsers/openai_tools.py +0 -77
  156. langchain/agents/output_parsers/react_json_single_input.py +0 -87
  157. langchain/agents/output_parsers/react_single_input.py +0 -102
  158. langchain/agents/output_parsers/self_ask.py +0 -53
  159. langchain/agents/output_parsers/tools.py +0 -121
  160. langchain/agents/output_parsers/xml.py +0 -126
  161. langchain/agents/react/__init__.py +0 -1
  162. langchain/agents/react/agent.py +0 -145
  163. langchain/agents/react/base.py +0 -189
  164. langchain/agents/react/output_parser.py +0 -35
  165. langchain/agents/react/textworld_prompt.py +0 -51
  166. langchain/agents/react/wiki_prompt.py +0 -70
  167. langchain/agents/schema.py +0 -37
  168. langchain/agents/self_ask_with_search/__init__.py +0 -4
  169. langchain/agents/self_ask_with_search/base.py +0 -219
  170. langchain/agents/self_ask_with_search/output_parser.py +0 -4
  171. langchain/agents/self_ask_with_search/prompt.py +0 -43
  172. langchain/agents/structured_chat/__init__.py +0 -0
  173. langchain/agents/structured_chat/base.py +0 -309
  174. langchain/agents/structured_chat/output_parser.py +0 -112
  175. langchain/agents/structured_chat/prompt.py +0 -34
  176. langchain/agents/tool_calling_agent/__init__.py +0 -0
  177. langchain/agents/tool_calling_agent/base.py +0 -111
  178. langchain/agents/tools.py +0 -50
  179. langchain/agents/types.py +0 -27
  180. langchain/agents/utils.py +0 -19
  181. langchain/agents/xml/__init__.py +0 -0
  182. langchain/agents/xml/base.py +0 -237
  183. langchain/agents/xml/prompt.py +0 -21
  184. langchain/base_language.py +0 -7
  185. langchain/cache.py +0 -72
  186. langchain/callbacks/__init__.py +0 -139
  187. langchain/callbacks/aim_callback.py +0 -33
  188. langchain/callbacks/argilla_callback.py +0 -25
  189. langchain/callbacks/arize_callback.py +0 -25
  190. langchain/callbacks/arthur_callback.py +0 -25
  191. langchain/callbacks/base.py +0 -29
  192. langchain/callbacks/clearml_callback.py +0 -25
  193. langchain/callbacks/comet_ml_callback.py +0 -25
  194. langchain/callbacks/confident_callback.py +0 -25
  195. langchain/callbacks/context_callback.py +0 -25
  196. langchain/callbacks/file.py +0 -3
  197. langchain/callbacks/flyte_callback.py +0 -25
  198. langchain/callbacks/human.py +0 -33
  199. langchain/callbacks/infino_callback.py +0 -25
  200. langchain/callbacks/labelstudio_callback.py +0 -33
  201. langchain/callbacks/llmonitor_callback.py +0 -27
  202. langchain/callbacks/manager.py +0 -89
  203. langchain/callbacks/mlflow_callback.py +0 -38
  204. langchain/callbacks/openai_info.py +0 -25
  205. langchain/callbacks/promptlayer_callback.py +0 -27
  206. langchain/callbacks/sagemaker_callback.py +0 -27
  207. langchain/callbacks/stdout.py +0 -3
  208. langchain/callbacks/streaming_aiter.py +0 -86
  209. langchain/callbacks/streaming_aiter_final_only.py +0 -100
  210. langchain/callbacks/streaming_stdout.py +0 -5
  211. langchain/callbacks/streaming_stdout_final_only.py +0 -96
  212. langchain/callbacks/streamlit/__init__.py +0 -86
  213. langchain/callbacks/streamlit/mutable_expander.py +0 -33
  214. langchain/callbacks/streamlit/streamlit_callback_handler.py +0 -49
  215. langchain/callbacks/tracers/__init__.py +0 -38
  216. langchain/callbacks/tracers/base.py +0 -6
  217. langchain/callbacks/tracers/comet.py +0 -30
  218. langchain/callbacks/tracers/evaluation.py +0 -8
  219. langchain/callbacks/tracers/langchain.py +0 -8
  220. langchain/callbacks/tracers/langchain_v1.py +0 -3
  221. langchain/callbacks/tracers/log_stream.py +0 -9
  222. langchain/callbacks/tracers/logging.py +0 -57
  223. langchain/callbacks/tracers/root_listeners.py +0 -3
  224. langchain/callbacks/tracers/run_collector.py +0 -3
  225. langchain/callbacks/tracers/schemas.py +0 -27
  226. langchain/callbacks/tracers/stdout.py +0 -6
  227. langchain/callbacks/tracers/wandb.py +0 -27
  228. langchain/callbacks/trubrics_callback.py +0 -25
  229. langchain/callbacks/utils.py +0 -48
  230. langchain/callbacks/wandb_callback.py +0 -25
  231. langchain/callbacks/whylabs_callback.py +0 -25
  232. langchain/chains/__init__.py +0 -96
  233. langchain/chains/api/__init__.py +0 -1
  234. langchain/chains/api/base.py +0 -398
  235. langchain/chains/api/news_docs.py +0 -31
  236. langchain/chains/api/open_meteo_docs.py +0 -32
  237. langchain/chains/api/openapi/__init__.py +0 -0
  238. langchain/chains/api/openapi/chain.py +0 -23
  239. langchain/chains/api/openapi/prompts.py +0 -27
  240. langchain/chains/api/openapi/requests_chain.py +0 -29
  241. langchain/chains/api/openapi/response_chain.py +0 -29
  242. langchain/chains/api/podcast_docs.py +0 -27
  243. langchain/chains/api/prompt.py +0 -35
  244. langchain/chains/api/tmdb_docs.py +0 -36
  245. langchain/chains/base.py +0 -806
  246. langchain/chains/chat_vector_db/__init__.py +0 -0
  247. langchain/chains/chat_vector_db/prompts.py +0 -19
  248. langchain/chains/combine_documents/__init__.py +0 -15
  249. langchain/chains/combine_documents/base.py +0 -293
  250. langchain/chains/combine_documents/map_reduce.py +0 -303
  251. langchain/chains/combine_documents/map_rerank.py +0 -249
  252. langchain/chains/combine_documents/reduce.py +0 -382
  253. langchain/chains/combine_documents/refine.py +0 -237
  254. langchain/chains/combine_documents/stuff.py +0 -292
  255. langchain/chains/constitutional_ai/__init__.py +0 -2
  256. langchain/chains/constitutional_ai/base.py +0 -328
  257. langchain/chains/constitutional_ai/models.py +0 -11
  258. langchain/chains/constitutional_ai/principles.py +0 -278
  259. langchain/chains/constitutional_ai/prompts.py +0 -120
  260. langchain/chains/conversation/__init__.py +0 -1
  261. langchain/chains/conversation/base.py +0 -146
  262. langchain/chains/conversation/memory.py +0 -45
  263. langchain/chains/conversation/prompt.py +0 -28
  264. langchain/chains/conversational_retrieval/__init__.py +0 -1
  265. langchain/chains/conversational_retrieval/base.py +0 -576
  266. langchain/chains/conversational_retrieval/prompts.py +0 -19
  267. langchain/chains/elasticsearch_database/__init__.py +0 -3
  268. langchain/chains/elasticsearch_database/base.py +0 -212
  269. langchain/chains/elasticsearch_database/prompts.py +0 -35
  270. langchain/chains/ernie_functions/__init__.py +0 -44
  271. langchain/chains/ernie_functions/base.py +0 -49
  272. langchain/chains/example_generator.py +0 -22
  273. langchain/chains/flare/__init__.py +0 -1
  274. langchain/chains/flare/base.py +0 -284
  275. langchain/chains/flare/prompts.py +0 -46
  276. langchain/chains/graph_qa/__init__.py +0 -0
  277. langchain/chains/graph_qa/arangodb.py +0 -23
  278. langchain/chains/graph_qa/base.py +0 -23
  279. langchain/chains/graph_qa/cypher.py +0 -39
  280. langchain/chains/graph_qa/cypher_utils.py +0 -27
  281. langchain/chains/graph_qa/falkordb.py +0 -29
  282. langchain/chains/graph_qa/gremlin.py +0 -36
  283. langchain/chains/graph_qa/hugegraph.py +0 -23
  284. langchain/chains/graph_qa/kuzu.py +0 -29
  285. langchain/chains/graph_qa/nebulagraph.py +0 -23
  286. langchain/chains/graph_qa/neptune_cypher.py +0 -39
  287. langchain/chains/graph_qa/neptune_sparql.py +0 -36
  288. langchain/chains/graph_qa/ontotext_graphdb.py +0 -25
  289. langchain/chains/graph_qa/prompts.py +0 -96
  290. langchain/chains/graph_qa/sparql.py +0 -23
  291. langchain/chains/history_aware_retriever.py +0 -68
  292. langchain/chains/hyde/__init__.py +0 -4
  293. langchain/chains/hyde/base.py +0 -124
  294. langchain/chains/hyde/prompts.py +0 -46
  295. langchain/chains/llm.py +0 -447
  296. langchain/chains/llm_bash/__init__.py +0 -10
  297. langchain/chains/llm_checker/__init__.py +0 -4
  298. langchain/chains/llm_checker/base.py +0 -205
  299. langchain/chains/llm_checker/prompt.py +0 -30
  300. langchain/chains/llm_math/__init__.py +0 -4
  301. langchain/chains/llm_math/base.py +0 -319
  302. langchain/chains/llm_math/prompt.py +0 -43
  303. langchain/chains/llm_requests.py +0 -23
  304. langchain/chains/llm_summarization_checker/__init__.py +0 -7
  305. langchain/chains/llm_summarization_checker/base.py +0 -217
  306. langchain/chains/llm_summarization_checker/prompts/are_all_true_prompt.txt +0 -38
  307. langchain/chains/llm_summarization_checker/prompts/check_facts.txt +0 -10
  308. langchain/chains/llm_summarization_checker/prompts/create_facts.txt +0 -10
  309. langchain/chains/llm_summarization_checker/prompts/revise_summary.txt +0 -17
  310. langchain/chains/llm_symbolic_math/__init__.py +0 -10
  311. langchain/chains/loading.py +0 -734
  312. langchain/chains/mapreduce.py +0 -121
  313. langchain/chains/moderation.py +0 -135
  314. langchain/chains/natbot/__init__.py +0 -4
  315. langchain/chains/natbot/base.py +0 -165
  316. langchain/chains/natbot/crawler.py +0 -472
  317. langchain/chains/natbot/prompt.py +0 -143
  318. langchain/chains/openai_functions/__init__.py +0 -44
  319. langchain/chains/openai_functions/base.py +0 -237
  320. langchain/chains/openai_functions/citation_fuzzy_match.py +0 -169
  321. langchain/chains/openai_functions/extraction.py +0 -197
  322. langchain/chains/openai_functions/openapi.py +0 -409
  323. langchain/chains/openai_functions/qa_with_structure.py +0 -142
  324. langchain/chains/openai_functions/tagging.py +0 -174
  325. langchain/chains/openai_functions/utils.py +0 -40
  326. langchain/chains/openai_tools/__init__.py +0 -3
  327. langchain/chains/openai_tools/extraction.py +0 -79
  328. langchain/chains/prompt_selector.py +0 -65
  329. langchain/chains/qa_generation/__init__.py +0 -0
  330. langchain/chains/qa_generation/base.py +0 -128
  331. langchain/chains/qa_generation/prompt.py +0 -50
  332. langchain/chains/qa_with_sources/__init__.py +0 -5
  333. langchain/chains/qa_with_sources/base.py +0 -266
  334. langchain/chains/qa_with_sources/loading.py +0 -209
  335. langchain/chains/qa_with_sources/map_reduce_prompt.py +0 -54
  336. langchain/chains/qa_with_sources/refine_prompts.py +0 -37
  337. langchain/chains/qa_with_sources/retrieval.py +0 -75
  338. langchain/chains/qa_with_sources/stuff_prompt.py +0 -43
  339. langchain/chains/qa_with_sources/vector_db.py +0 -88
  340. langchain/chains/query_constructor/__init__.py +0 -3
  341. langchain/chains/query_constructor/base.py +0 -378
  342. langchain/chains/query_constructor/ir.py +0 -23
  343. langchain/chains/query_constructor/parser.py +0 -272
  344. langchain/chains/query_constructor/prompt.py +0 -226
  345. langchain/chains/query_constructor/schema.py +0 -14
  346. langchain/chains/question_answering/__init__.py +0 -6
  347. langchain/chains/question_answering/chain.py +0 -279
  348. langchain/chains/question_answering/map_reduce_prompt.py +0 -80
  349. langchain/chains/question_answering/map_rerank_prompt.py +0 -66
  350. langchain/chains/question_answering/refine_prompts.py +0 -72
  351. langchain/chains/question_answering/stuff_prompt.py +0 -33
  352. langchain/chains/retrieval.py +0 -67
  353. langchain/chains/retrieval_qa/__init__.py +0 -1
  354. langchain/chains/retrieval_qa/base.py +0 -374
  355. langchain/chains/retrieval_qa/prompt.py +0 -11
  356. langchain/chains/router/__init__.py +0 -12
  357. langchain/chains/router/base.py +0 -154
  358. langchain/chains/router/embedding_router.py +0 -96
  359. langchain/chains/router/llm_router.py +0 -198
  360. langchain/chains/router/multi_prompt.py +0 -184
  361. langchain/chains/router/multi_prompt_prompt.py +0 -32
  362. langchain/chains/router/multi_retrieval_prompt.py +0 -30
  363. langchain/chains/router/multi_retrieval_qa.py +0 -127
  364. langchain/chains/sequential.py +0 -220
  365. langchain/chains/sql_database/__init__.py +0 -1
  366. langchain/chains/sql_database/prompt.py +0 -282
  367. langchain/chains/sql_database/query.py +0 -167
  368. langchain/chains/structured_output/__init__.py +0 -6
  369. langchain/chains/structured_output/base.py +0 -584
  370. langchain/chains/summarize/__init__.py +0 -6
  371. langchain/chains/summarize/chain.py +0 -174
  372. langchain/chains/summarize/map_reduce_prompt.py +0 -10
  373. langchain/chains/summarize/refine_prompts.py +0 -23
  374. langchain/chains/summarize/stuff_prompt.py +0 -10
  375. langchain/chains/transform.py +0 -88
  376. langchain/chat_loaders/__init__.py +0 -19
  377. langchain/chat_loaders/base.py +0 -3
  378. langchain/chat_loaders/facebook_messenger.py +0 -32
  379. langchain/chat_loaders/gmail.py +0 -23
  380. langchain/chat_loaders/imessage.py +0 -23
  381. langchain/chat_loaders/langsmith.py +0 -30
  382. langchain/chat_loaders/slack.py +0 -23
  383. langchain/chat_loaders/telegram.py +0 -23
  384. langchain/chat_loaders/utils.py +0 -36
  385. langchain/chat_loaders/whatsapp.py +0 -23
  386. langchain/chat_models/anthropic.py +0 -30
  387. langchain/chat_models/anyscale.py +0 -23
  388. langchain/chat_models/azure_openai.py +0 -23
  389. langchain/chat_models/azureml_endpoint.py +0 -30
  390. langchain/chat_models/baichuan.py +0 -23
  391. langchain/chat_models/baidu_qianfan_endpoint.py +0 -27
  392. langchain/chat_models/bedrock.py +0 -27
  393. langchain/chat_models/cohere.py +0 -23
  394. langchain/chat_models/databricks.py +0 -23
  395. langchain/chat_models/ernie.py +0 -23
  396. langchain/chat_models/everlyai.py +0 -23
  397. langchain/chat_models/fake.py +0 -30
  398. langchain/chat_models/fireworks.py +0 -23
  399. langchain/chat_models/gigachat.py +0 -23
  400. langchain/chat_models/google_palm.py +0 -30
  401. langchain/chat_models/human.py +0 -23
  402. langchain/chat_models/hunyuan.py +0 -23
  403. langchain/chat_models/javelin_ai_gateway.py +0 -30
  404. langchain/chat_models/jinachat.py +0 -23
  405. langchain/chat_models/konko.py +0 -23
  406. langchain/chat_models/litellm.py +0 -30
  407. langchain/chat_models/meta.py +0 -25
  408. langchain/chat_models/minimax.py +0 -23
  409. langchain/chat_models/mlflow.py +0 -23
  410. langchain/chat_models/mlflow_ai_gateway.py +0 -30
  411. langchain/chat_models/ollama.py +0 -23
  412. langchain/chat_models/openai.py +0 -23
  413. langchain/chat_models/pai_eas_endpoint.py +0 -25
  414. langchain/chat_models/promptlayer_openai.py +0 -25
  415. langchain/chat_models/tongyi.py +0 -23
  416. langchain/chat_models/vertexai.py +0 -23
  417. langchain/chat_models/volcengine_maas.py +0 -30
  418. langchain/chat_models/yandex.py +0 -23
  419. langchain/docstore/__init__.py +0 -48
  420. langchain/docstore/arbitrary_fn.py +0 -23
  421. langchain/docstore/base.py +0 -27
  422. langchain/docstore/document.py +0 -3
  423. langchain/docstore/in_memory.py +0 -23
  424. langchain/docstore/wikipedia.py +0 -23
  425. langchain/document_loaders/__init__.py +0 -553
  426. langchain/document_loaders/acreom.py +0 -23
  427. langchain/document_loaders/airbyte.py +0 -48
  428. langchain/document_loaders/airbyte_json.py +0 -23
  429. langchain/document_loaders/airtable.py +0 -23
  430. langchain/document_loaders/apify_dataset.py +0 -23
  431. langchain/document_loaders/arcgis_loader.py +0 -23
  432. langchain/document_loaders/arxiv.py +0 -23
  433. langchain/document_loaders/assemblyai.py +0 -28
  434. langchain/document_loaders/async_html.py +0 -23
  435. langchain/document_loaders/azlyrics.py +0 -23
  436. langchain/document_loaders/azure_ai_data.py +0 -23
  437. langchain/document_loaders/azure_blob_storage_container.py +0 -25
  438. langchain/document_loaders/azure_blob_storage_file.py +0 -25
  439. langchain/document_loaders/baiducloud_bos_directory.py +0 -29
  440. langchain/document_loaders/baiducloud_bos_file.py +0 -27
  441. langchain/document_loaders/base.py +0 -3
  442. langchain/document_loaders/base_o365.py +0 -23
  443. langchain/document_loaders/bibtex.py +0 -23
  444. langchain/document_loaders/bigquery.py +0 -23
  445. langchain/document_loaders/bilibili.py +0 -23
  446. langchain/document_loaders/blackboard.py +0 -23
  447. langchain/document_loaders/blob_loaders/__init__.py +0 -36
  448. langchain/document_loaders/blob_loaders/file_system.py +0 -23
  449. langchain/document_loaders/blob_loaders/schema.py +0 -26
  450. langchain/document_loaders/blob_loaders/youtube_audio.py +0 -23
  451. langchain/document_loaders/blockchain.py +0 -28
  452. langchain/document_loaders/brave_search.py +0 -23
  453. langchain/document_loaders/browserless.py +0 -23
  454. langchain/document_loaders/chatgpt.py +0 -28
  455. langchain/document_loaders/chromium.py +0 -23
  456. langchain/document_loaders/college_confidential.py +0 -25
  457. langchain/document_loaders/concurrent.py +0 -23
  458. langchain/document_loaders/confluence.py +0 -28
  459. langchain/document_loaders/conllu.py +0 -23
  460. langchain/document_loaders/couchbase.py +0 -23
  461. langchain/document_loaders/csv_loader.py +0 -27
  462. langchain/document_loaders/cube_semantic.py +0 -23
  463. langchain/document_loaders/datadog_logs.py +0 -23
  464. langchain/document_loaders/dataframe.py +0 -28
  465. langchain/document_loaders/diffbot.py +0 -23
  466. langchain/document_loaders/directory.py +0 -23
  467. langchain/document_loaders/discord.py +0 -23
  468. langchain/document_loaders/docugami.py +0 -23
  469. langchain/document_loaders/docusaurus.py +0 -23
  470. langchain/document_loaders/dropbox.py +0 -23
  471. langchain/document_loaders/duckdb_loader.py +0 -23
  472. langchain/document_loaders/email.py +0 -30
  473. langchain/document_loaders/epub.py +0 -23
  474. langchain/document_loaders/etherscan.py +0 -23
  475. langchain/document_loaders/evernote.py +0 -23
  476. langchain/document_loaders/excel.py +0 -23
  477. langchain/document_loaders/facebook_chat.py +0 -28
  478. langchain/document_loaders/fauna.py +0 -23
  479. langchain/document_loaders/figma.py +0 -23
  480. langchain/document_loaders/gcs_directory.py +0 -23
  481. langchain/document_loaders/gcs_file.py +0 -23
  482. langchain/document_loaders/generic.py +0 -23
  483. langchain/document_loaders/geodataframe.py +0 -23
  484. langchain/document_loaders/git.py +0 -23
  485. langchain/document_loaders/gitbook.py +0 -23
  486. langchain/document_loaders/github.py +0 -28
  487. langchain/document_loaders/google_speech_to_text.py +0 -23
  488. langchain/document_loaders/googledrive.py +0 -23
  489. langchain/document_loaders/gutenberg.py +0 -23
  490. langchain/document_loaders/helpers.py +0 -30
  491. langchain/document_loaders/hn.py +0 -23
  492. langchain/document_loaders/html.py +0 -23
  493. langchain/document_loaders/html_bs.py +0 -23
  494. langchain/document_loaders/hugging_face_dataset.py +0 -23
  495. langchain/document_loaders/ifixit.py +0 -23
  496. langchain/document_loaders/image.py +0 -23
  497. langchain/document_loaders/image_captions.py +0 -23
  498. langchain/document_loaders/imsdb.py +0 -23
  499. langchain/document_loaders/iugu.py +0 -23
  500. langchain/document_loaders/joplin.py +0 -23
  501. langchain/document_loaders/json_loader.py +0 -23
  502. langchain/document_loaders/lakefs.py +0 -33
  503. langchain/document_loaders/larksuite.py +0 -23
  504. langchain/document_loaders/markdown.py +0 -25
  505. langchain/document_loaders/mastodon.py +0 -23
  506. langchain/document_loaders/max_compute.py +0 -23
  507. langchain/document_loaders/mediawikidump.py +0 -23
  508. langchain/document_loaders/merge.py +0 -23
  509. langchain/document_loaders/mhtml.py +0 -23
  510. langchain/document_loaders/modern_treasury.py +0 -23
  511. langchain/document_loaders/mongodb.py +0 -23
  512. langchain/document_loaders/news.py +0 -23
  513. langchain/document_loaders/notebook.py +0 -33
  514. langchain/document_loaders/notion.py +0 -23
  515. langchain/document_loaders/notiondb.py +0 -23
  516. langchain/document_loaders/nuclia.py +0 -23
  517. langchain/document_loaders/obs_directory.py +0 -23
  518. langchain/document_loaders/obs_file.py +0 -23
  519. langchain/document_loaders/obsidian.py +0 -23
  520. langchain/document_loaders/odt.py +0 -23
  521. langchain/document_loaders/onedrive.py +0 -23
  522. langchain/document_loaders/onedrive_file.py +0 -23
  523. langchain/document_loaders/onenote.py +0 -23
  524. langchain/document_loaders/open_city_data.py +0 -23
  525. langchain/document_loaders/org_mode.py +0 -25
  526. langchain/document_loaders/parsers/__init__.py +0 -58
  527. langchain/document_loaders/parsers/audio.py +0 -33
  528. langchain/document_loaders/parsers/docai.py +0 -30
  529. langchain/document_loaders/parsers/generic.py +0 -25
  530. langchain/document_loaders/parsers/grobid.py +0 -30
  531. langchain/document_loaders/parsers/html/__init__.py +0 -25
  532. langchain/document_loaders/parsers/html/bs4.py +0 -25
  533. langchain/document_loaders/parsers/language/__init__.py +0 -29
  534. langchain/document_loaders/parsers/language/cobol.py +0 -27
  535. langchain/document_loaders/parsers/language/code_segmenter.py +0 -29
  536. langchain/document_loaders/parsers/language/javascript.py +0 -29
  537. langchain/document_loaders/parsers/language/language_parser.py +0 -29
  538. langchain/document_loaders/parsers/language/python.py +0 -27
  539. langchain/document_loaders/parsers/msword.py +0 -25
  540. langchain/document_loaders/parsers/pdf.py +0 -50
  541. langchain/document_loaders/parsers/registry.py +0 -25
  542. langchain/document_loaders/parsers/txt.py +0 -23
  543. langchain/document_loaders/pdf.py +0 -65
  544. langchain/document_loaders/polars_dataframe.py +0 -23
  545. langchain/document_loaders/powerpoint.py +0 -25
  546. langchain/document_loaders/psychic.py +0 -23
  547. langchain/document_loaders/pubmed.py +0 -23
  548. langchain/document_loaders/pyspark_dataframe.py +0 -26
  549. langchain/document_loaders/python.py +0 -22
  550. langchain/document_loaders/quip.py +0 -23
  551. langchain/document_loaders/readthedocs.py +0 -23
  552. langchain/document_loaders/recursive_url_loader.py +0 -23
  553. langchain/document_loaders/reddit.py +0 -23
  554. langchain/document_loaders/roam.py +0 -23
  555. langchain/document_loaders/rocksetdb.py +0 -23
  556. langchain/document_loaders/rspace.py +0 -23
  557. langchain/document_loaders/rss.py +0 -23
  558. langchain/document_loaders/rst.py +0 -23
  559. langchain/document_loaders/rtf.py +0 -23
  560. langchain/document_loaders/s3_directory.py +0 -23
  561. langchain/document_loaders/s3_file.py +0 -23
  562. langchain/document_loaders/sharepoint.py +0 -23
  563. langchain/document_loaders/sitemap.py +0 -23
  564. langchain/document_loaders/slack_directory.py +0 -23
  565. langchain/document_loaders/snowflake_loader.py +0 -23
  566. langchain/document_loaders/spreedly.py +0 -23
  567. langchain/document_loaders/srt.py +0 -23
  568. langchain/document_loaders/stripe.py +0 -23
  569. langchain/document_loaders/telegram.py +0 -38
  570. langchain/document_loaders/tencent_cos_directory.py +0 -25
  571. langchain/document_loaders/tencent_cos_file.py +0 -23
  572. langchain/document_loaders/tensorflow_datasets.py +0 -23
  573. langchain/document_loaders/text.py +0 -23
  574. langchain/document_loaders/tomarkdown.py +0 -23
  575. langchain/document_loaders/toml.py +0 -23
  576. langchain/document_loaders/trello.py +0 -23
  577. langchain/document_loaders/tsv.py +0 -23
  578. langchain/document_loaders/twitter.py +0 -23
  579. langchain/document_loaders/unstructured.py +0 -54
  580. langchain/document_loaders/url.py +0 -23
  581. langchain/document_loaders/url_playwright.py +0 -33
  582. langchain/document_loaders/url_selenium.py +0 -23
  583. langchain/document_loaders/weather.py +0 -23
  584. langchain/document_loaders/web_base.py +0 -23
  585. langchain/document_loaders/whatsapp_chat.py +0 -28
  586. langchain/document_loaders/wikipedia.py +0 -23
  587. langchain/document_loaders/word_document.py +0 -30
  588. langchain/document_loaders/xml.py +0 -23
  589. langchain/document_loaders/xorbits.py +0 -23
  590. langchain/document_loaders/youtube.py +0 -33
  591. langchain/document_transformers/__init__.py +0 -77
  592. langchain/document_transformers/beautiful_soup_transformer.py +0 -25
  593. langchain/document_transformers/doctran_text_extract.py +0 -25
  594. langchain/document_transformers/doctran_text_qa.py +0 -25
  595. langchain/document_transformers/doctran_text_translate.py +0 -25
  596. langchain/document_transformers/embeddings_redundant_filter.py +0 -50
  597. langchain/document_transformers/google_translate.py +0 -25
  598. langchain/document_transformers/html2text.py +0 -25
  599. langchain/document_transformers/long_context_reorder.py +0 -23
  600. langchain/document_transformers/nuclia_text_transform.py +0 -25
  601. langchain/document_transformers/openai_functions.py +0 -32
  602. langchain/document_transformers/xsl/html_chunks_with_headers.xslt +0 -199
  603. langchain/embeddings/aleph_alpha.py +0 -30
  604. langchain/embeddings/awa.py +0 -23
  605. langchain/embeddings/azure_openai.py +0 -23
  606. langchain/embeddings/baidu_qianfan_endpoint.py +0 -23
  607. langchain/embeddings/bedrock.py +0 -23
  608. langchain/embeddings/bookend.py +0 -23
  609. langchain/embeddings/cache.py +0 -368
  610. langchain/embeddings/clarifai.py +0 -23
  611. langchain/embeddings/cloudflare_workersai.py +0 -29
  612. langchain/embeddings/cohere.py +0 -23
  613. langchain/embeddings/dashscope.py +0 -23
  614. langchain/embeddings/databricks.py +0 -23
  615. langchain/embeddings/deepinfra.py +0 -23
  616. langchain/embeddings/edenai.py +0 -23
  617. langchain/embeddings/elasticsearch.py +0 -23
  618. langchain/embeddings/embaas.py +0 -23
  619. langchain/embeddings/ernie.py +0 -23
  620. langchain/embeddings/fake.py +0 -30
  621. langchain/embeddings/fastembed.py +0 -23
  622. langchain/embeddings/google_palm.py +0 -23
  623. langchain/embeddings/gpt4all.py +0 -23
  624. langchain/embeddings/gradient_ai.py +0 -23
  625. langchain/embeddings/huggingface.py +0 -36
  626. langchain/embeddings/huggingface_hub.py +0 -23
  627. langchain/embeddings/infinity.py +0 -30
  628. langchain/embeddings/javelin_ai_gateway.py +0 -23
  629. langchain/embeddings/jina.py +0 -23
  630. langchain/embeddings/johnsnowlabs.py +0 -23
  631. langchain/embeddings/llamacpp.py +0 -23
  632. langchain/embeddings/llm_rails.py +0 -23
  633. langchain/embeddings/localai.py +0 -23
  634. langchain/embeddings/minimax.py +0 -23
  635. langchain/embeddings/mlflow.py +0 -23
  636. langchain/embeddings/mlflow_gateway.py +0 -23
  637. langchain/embeddings/modelscope_hub.py +0 -23
  638. langchain/embeddings/mosaicml.py +0 -23
  639. langchain/embeddings/nlpcloud.py +0 -23
  640. langchain/embeddings/octoai_embeddings.py +0 -23
  641. langchain/embeddings/ollama.py +0 -23
  642. langchain/embeddings/openai.py +0 -23
  643. langchain/embeddings/sagemaker_endpoint.py +0 -30
  644. langchain/embeddings/self_hosted.py +0 -23
  645. langchain/embeddings/self_hosted_hugging_face.py +0 -30
  646. langchain/embeddings/sentence_transformer.py +0 -21
  647. langchain/embeddings/spacy_embeddings.py +0 -23
  648. langchain/embeddings/tensorflow_hub.py +0 -23
  649. langchain/embeddings/vertexai.py +0 -23
  650. langchain/embeddings/voyageai.py +0 -23
  651. langchain/embeddings/xinference.py +0 -23
  652. langchain/env.py +0 -17
  653. langchain/evaluation/__init__.py +0 -128
  654. langchain/evaluation/agents/__init__.py +0 -5
  655. langchain/evaluation/agents/trajectory_eval_chain.py +0 -416
  656. langchain/evaluation/agents/trajectory_eval_prompt.py +0 -146
  657. langchain/evaluation/comparison/__init__.py +0 -36
  658. langchain/evaluation/comparison/eval_chain.py +0 -462
  659. langchain/evaluation/comparison/prompt.py +0 -59
  660. langchain/evaluation/criteria/__init__.py +0 -56
  661. langchain/evaluation/criteria/eval_chain.py +0 -606
  662. langchain/evaluation/criteria/prompt.py +0 -37
  663. langchain/evaluation/embedding_distance/__init__.py +0 -13
  664. langchain/evaluation/embedding_distance/base.py +0 -613
  665. langchain/evaluation/exact_match/__init__.py +0 -0
  666. langchain/evaluation/exact_match/base.py +0 -110
  667. langchain/evaluation/loading.py +0 -207
  668. langchain/evaluation/parsing/__init__.py +0 -0
  669. langchain/evaluation/parsing/base.py +0 -175
  670. langchain/evaluation/parsing/json_distance.py +0 -108
  671. langchain/evaluation/parsing/json_schema.py +0 -97
  672. langchain/evaluation/qa/__init__.py +0 -10
  673. langchain/evaluation/qa/eval_chain.py +0 -372
  674. langchain/evaluation/qa/eval_prompt.py +0 -78
  675. langchain/evaluation/qa/generate_chain.py +0 -36
  676. langchain/evaluation/qa/generate_prompt.py +0 -21
  677. langchain/evaluation/regex_match/__init__.py +0 -0
  678. langchain/evaluation/regex_match/base.py +0 -94
  679. langchain/evaluation/schema.py +0 -491
  680. langchain/evaluation/scoring/__init__.py +0 -31
  681. langchain/evaluation/scoring/eval_chain.py +0 -476
  682. langchain/evaluation/scoring/prompt.py +0 -53
  683. langchain/evaluation/string_distance/__init__.py +0 -13
  684. langchain/evaluation/string_distance/base.py +0 -472
  685. langchain/example_generator.py +0 -5
  686. langchain/formatting.py +0 -5
  687. langchain/globals.py +0 -180
  688. langchain/graphs/__init__.py +0 -57
  689. langchain/graphs/arangodb_graph.py +0 -28
  690. langchain/graphs/falkordb_graph.py +0 -23
  691. langchain/graphs/graph_document.py +0 -33
  692. langchain/graphs/graph_store.py +0 -23
  693. langchain/graphs/hugegraph.py +0 -23
  694. langchain/graphs/kuzu_graph.py +0 -23
  695. langchain/graphs/memgraph_graph.py +0 -23
  696. langchain/graphs/nebula_graph.py +0 -23
  697. langchain/graphs/neo4j_graph.py +0 -23
  698. langchain/graphs/neptune_graph.py +0 -23
  699. langchain/graphs/networkx_graph.py +0 -36
  700. langchain/graphs/rdf_graph.py +0 -23
  701. langchain/hub.py +0 -131
  702. langchain/indexes/__init__.py +0 -50
  703. langchain/indexes/_api.py +0 -5
  704. langchain/indexes/_sql_record_manager.py +0 -539
  705. langchain/indexes/graph.py +0 -28
  706. langchain/indexes/prompts/__init__.py +0 -13
  707. langchain/indexes/prompts/entity_extraction.py +0 -39
  708. langchain/indexes/prompts/entity_summarization.py +0 -24
  709. langchain/indexes/prompts/knowledge_triplet_extraction.py +0 -36
  710. langchain/indexes/vectorstore.py +0 -269
  711. langchain/input.py +0 -15
  712. langchain/llms/__init__.py +0 -734
  713. langchain/llms/ai21.py +0 -28
  714. langchain/llms/aleph_alpha.py +0 -23
  715. langchain/llms/amazon_api_gateway.py +0 -23
  716. langchain/llms/anthropic.py +0 -23
  717. langchain/llms/anyscale.py +0 -23
  718. langchain/llms/arcee.py +0 -23
  719. langchain/llms/aviary.py +0 -23
  720. langchain/llms/azureml_endpoint.py +0 -48
  721. langchain/llms/baidu_qianfan_endpoint.py +0 -23
  722. langchain/llms/bananadev.py +0 -23
  723. langchain/llms/base.py +0 -20
  724. langchain/llms/baseten.py +0 -23
  725. langchain/llms/beam.py +0 -23
  726. langchain/llms/bedrock.py +0 -28
  727. langchain/llms/bittensor.py +0 -23
  728. langchain/llms/cerebriumai.py +0 -23
  729. langchain/llms/chatglm.py +0 -23
  730. langchain/llms/clarifai.py +0 -23
  731. langchain/llms/cloudflare_workersai.py +0 -25
  732. langchain/llms/cohere.py +0 -23
  733. langchain/llms/ctransformers.py +0 -23
  734. langchain/llms/ctranslate2.py +0 -23
  735. langchain/llms/databricks.py +0 -23
  736. langchain/llms/deepinfra.py +0 -23
  737. langchain/llms/deepsparse.py +0 -23
  738. langchain/llms/edenai.py +0 -23
  739. langchain/llms/fake.py +0 -28
  740. langchain/llms/fireworks.py +0 -23
  741. langchain/llms/forefrontai.py +0 -23
  742. langchain/llms/gigachat.py +0 -23
  743. langchain/llms/google_palm.py +0 -23
  744. langchain/llms/gooseai.py +0 -23
  745. langchain/llms/gpt4all.py +0 -23
  746. langchain/llms/gradient_ai.py +0 -28
  747. langchain/llms/grammars/json.gbnf +0 -29
  748. langchain/llms/grammars/list.gbnf +0 -14
  749. langchain/llms/huggingface_endpoint.py +0 -23
  750. langchain/llms/huggingface_hub.py +0 -23
  751. langchain/llms/huggingface_pipeline.py +0 -23
  752. langchain/llms/huggingface_text_gen_inference.py +0 -23
  753. langchain/llms/human.py +0 -23
  754. langchain/llms/javelin_ai_gateway.py +0 -28
  755. langchain/llms/koboldai.py +0 -23
  756. langchain/llms/llamacpp.py +0 -23
  757. langchain/llms/loading.py +0 -27
  758. langchain/llms/manifest.py +0 -23
  759. langchain/llms/minimax.py +0 -23
  760. langchain/llms/mlflow.py +0 -23
  761. langchain/llms/mlflow_ai_gateway.py +0 -23
  762. langchain/llms/modal.py +0 -23
  763. langchain/llms/mosaicml.py +0 -23
  764. langchain/llms/nlpcloud.py +0 -23
  765. langchain/llms/octoai_endpoint.py +0 -23
  766. langchain/llms/ollama.py +0 -23
  767. langchain/llms/opaqueprompts.py +0 -23
  768. langchain/llms/openai.py +0 -32
  769. langchain/llms/openllm.py +0 -23
  770. langchain/llms/openlm.py +0 -23
  771. langchain/llms/pai_eas_endpoint.py +0 -23
  772. langchain/llms/petals.py +0 -23
  773. langchain/llms/pipelineai.py +0 -23
  774. langchain/llms/predibase.py +0 -23
  775. langchain/llms/predictionguard.py +0 -23
  776. langchain/llms/promptlayer_openai.py +0 -27
  777. langchain/llms/replicate.py +0 -23
  778. langchain/llms/rwkv.py +0 -23
  779. langchain/llms/sagemaker_endpoint.py +0 -28
  780. langchain/llms/self_hosted.py +0 -23
  781. langchain/llms/self_hosted_hugging_face.py +0 -23
  782. langchain/llms/stochasticai.py +0 -23
  783. langchain/llms/symblai_nebula.py +0 -23
  784. langchain/llms/textgen.py +0 -23
  785. langchain/llms/titan_takeoff.py +0 -23
  786. langchain/llms/titan_takeoff_pro.py +0 -23
  787. langchain/llms/together.py +0 -23
  788. langchain/llms/tongyi.py +0 -23
  789. langchain/llms/utils.py +0 -23
  790. langchain/llms/vertexai.py +0 -27
  791. langchain/llms/vllm.py +0 -27
  792. langchain/llms/volcengine_maas.py +0 -28
  793. langchain/llms/watsonxllm.py +0 -23
  794. langchain/llms/writer.py +0 -23
  795. langchain/llms/xinference.py +0 -23
  796. langchain/llms/yandex.py +0 -23
  797. langchain/load/__init__.py +0 -11
  798. langchain/load/dump.py +0 -3
  799. langchain/load/load.py +0 -3
  800. langchain/load/serializable.py +0 -19
  801. langchain/memory/__init__.py +0 -153
  802. langchain/memory/buffer.py +0 -178
  803. langchain/memory/buffer_window.py +0 -62
  804. langchain/memory/chat_memory.py +0 -104
  805. langchain/memory/chat_message_histories/__init__.py +0 -84
  806. langchain/memory/chat_message_histories/astradb.py +0 -25
  807. langchain/memory/chat_message_histories/cassandra.py +0 -25
  808. langchain/memory/chat_message_histories/cosmos_db.py +0 -25
  809. langchain/memory/chat_message_histories/dynamodb.py +0 -25
  810. langchain/memory/chat_message_histories/elasticsearch.py +0 -27
  811. langchain/memory/chat_message_histories/file.py +0 -25
  812. langchain/memory/chat_message_histories/firestore.py +0 -25
  813. langchain/memory/chat_message_histories/in_memory.py +0 -5
  814. langchain/memory/chat_message_histories/momento.py +0 -25
  815. langchain/memory/chat_message_histories/mongodb.py +0 -25
  816. langchain/memory/chat_message_histories/neo4j.py +0 -25
  817. langchain/memory/chat_message_histories/postgres.py +0 -25
  818. langchain/memory/chat_message_histories/redis.py +0 -25
  819. langchain/memory/chat_message_histories/rocksetdb.py +0 -25
  820. langchain/memory/chat_message_histories/singlestoredb.py +0 -27
  821. langchain/memory/chat_message_histories/sql.py +0 -33
  822. langchain/memory/chat_message_histories/streamlit.py +0 -25
  823. langchain/memory/chat_message_histories/upstash_redis.py +0 -27
  824. langchain/memory/chat_message_histories/xata.py +0 -25
  825. langchain/memory/chat_message_histories/zep.py +0 -25
  826. langchain/memory/combined.py +0 -85
  827. langchain/memory/entity.py +0 -611
  828. langchain/memory/kg.py +0 -23
  829. langchain/memory/motorhead_memory.py +0 -23
  830. langchain/memory/prompt.py +0 -164
  831. langchain/memory/readonly.py +0 -24
  832. langchain/memory/simple.py +0 -27
  833. langchain/memory/summary.py +0 -170
  834. langchain/memory/summary_buffer.py +0 -151
  835. langchain/memory/token_buffer.py +0 -74
  836. langchain/memory/utils.py +0 -21
  837. langchain/memory/vectorstore.py +0 -120
  838. langchain/memory/vectorstore_token_buffer_memory.py +0 -184
  839. langchain/memory/zep_memory.py +0 -23
  840. langchain/model_laboratory.py +0 -99
  841. langchain/output_parsers/__init__.py +0 -87
  842. langchain/output_parsers/boolean.py +0 -54
  843. langchain/output_parsers/combining.py +0 -59
  844. langchain/output_parsers/datetime.py +0 -58
  845. langchain/output_parsers/enum.py +0 -45
  846. langchain/output_parsers/ernie_functions.py +0 -45
  847. langchain/output_parsers/fix.py +0 -155
  848. langchain/output_parsers/format_instructions.py +0 -79
  849. langchain/output_parsers/json.py +0 -15
  850. langchain/output_parsers/list.py +0 -13
  851. langchain/output_parsers/loading.py +0 -22
  852. langchain/output_parsers/openai_functions.py +0 -13
  853. langchain/output_parsers/openai_tools.py +0 -7
  854. langchain/output_parsers/pandas_dataframe.py +0 -171
  855. langchain/output_parsers/prompts.py +0 -21
  856. langchain/output_parsers/pydantic.py +0 -3
  857. langchain/output_parsers/rail_parser.py +0 -25
  858. langchain/output_parsers/regex.py +0 -41
  859. langchain/output_parsers/regex_dict.py +0 -43
  860. langchain/output_parsers/retry.py +0 -316
  861. langchain/output_parsers/structured.py +0 -116
  862. langchain/output_parsers/xml.py +0 -3
  863. langchain/output_parsers/yaml.py +0 -77
  864. langchain/prompts/__init__.py +0 -102
  865. langchain/prompts/base.py +0 -21
  866. langchain/prompts/chat.py +0 -37
  867. langchain/prompts/example_selector/__init__.py +0 -42
  868. langchain/prompts/example_selector/base.py +0 -3
  869. langchain/prompts/example_selector/length_based.py +0 -5
  870. langchain/prompts/example_selector/ngram_overlap.py +0 -32
  871. langchain/prompts/example_selector/semantic_similarity.py +0 -11
  872. langchain/prompts/few_shot.py +0 -11
  873. langchain/prompts/few_shot_with_templates.py +0 -3
  874. langchain/prompts/loading.py +0 -23
  875. langchain/prompts/pipeline.py +0 -3
  876. langchain/prompts/prompt.py +0 -6
  877. langchain/pydantic_v1/__init__.py +0 -38
  878. langchain/pydantic_v1/dataclasses.py +0 -20
  879. langchain/pydantic_v1/main.py +0 -20
  880. langchain/python.py +0 -19
  881. langchain/requests.py +0 -35
  882. langchain/retrievers/__init__.py +0 -178
  883. langchain/retrievers/arcee.py +0 -23
  884. langchain/retrievers/arxiv.py +0 -23
  885. langchain/retrievers/azure_ai_search.py +0 -30
  886. langchain/retrievers/bedrock.py +0 -33
  887. langchain/retrievers/bm25.py +0 -28
  888. langchain/retrievers/chaindesk.py +0 -23
  889. langchain/retrievers/chatgpt_plugin_retriever.py +0 -23
  890. langchain/retrievers/cohere_rag_retriever.py +0 -23
  891. langchain/retrievers/contextual_compression.py +0 -81
  892. langchain/retrievers/databerry.py +0 -23
  893. langchain/retrievers/docarray.py +0 -28
  894. langchain/retrievers/document_compressors/__init__.py +0 -44
  895. langchain/retrievers/document_compressors/base.py +0 -82
  896. langchain/retrievers/document_compressors/chain_extract.py +0 -123
  897. langchain/retrievers/document_compressors/chain_extract_prompt.py +0 -10
  898. langchain/retrievers/document_compressors/chain_filter.py +0 -133
  899. langchain/retrievers/document_compressors/chain_filter_prompt.py +0 -8
  900. langchain/retrievers/document_compressors/cohere_rerank.py +0 -126
  901. langchain/retrievers/document_compressors/cross_encoder.py +0 -16
  902. langchain/retrievers/document_compressors/cross_encoder_rerank.py +0 -50
  903. langchain/retrievers/document_compressors/embeddings_filter.py +0 -140
  904. langchain/retrievers/document_compressors/flashrank_rerank.py +0 -27
  905. langchain/retrievers/document_compressors/listwise_rerank.py +0 -145
  906. langchain/retrievers/elastic_search_bm25.py +0 -23
  907. langchain/retrievers/embedchain.py +0 -23
  908. langchain/retrievers/ensemble.py +0 -336
  909. langchain/retrievers/google_cloud_documentai_warehouse.py +0 -25
  910. langchain/retrievers/google_vertex_ai_search.py +0 -33
  911. langchain/retrievers/kay.py +0 -23
  912. langchain/retrievers/kendra.py +0 -66
  913. langchain/retrievers/knn.py +0 -23
  914. langchain/retrievers/llama_index.py +0 -30
  915. langchain/retrievers/merger_retriever.py +0 -123
  916. langchain/retrievers/metal.py +0 -23
  917. langchain/retrievers/milvus.py +0 -28
  918. langchain/retrievers/multi_query.py +0 -233
  919. langchain/retrievers/multi_vector.py +0 -135
  920. langchain/retrievers/outline.py +0 -23
  921. langchain/retrievers/parent_document_retriever.py +0 -172
  922. langchain/retrievers/pinecone_hybrid_search.py +0 -23
  923. langchain/retrievers/pubmed.py +0 -23
  924. langchain/retrievers/pupmed.py +0 -23
  925. langchain/retrievers/re_phraser.py +0 -89
  926. langchain/retrievers/remote_retriever.py +0 -23
  927. langchain/retrievers/self_query/__init__.py +0 -0
  928. langchain/retrievers/self_query/astradb.py +0 -23
  929. langchain/retrievers/self_query/base.py +0 -416
  930. langchain/retrievers/self_query/chroma.py +0 -23
  931. langchain/retrievers/self_query/dashvector.py +0 -23
  932. langchain/retrievers/self_query/databricks_vector_search.py +0 -27
  933. langchain/retrievers/self_query/deeplake.py +0 -27
  934. langchain/retrievers/self_query/dingo.py +0 -23
  935. langchain/retrievers/self_query/elasticsearch.py +0 -25
  936. langchain/retrievers/self_query/milvus.py +0 -27
  937. langchain/retrievers/self_query/mongodb_atlas.py +0 -25
  938. langchain/retrievers/self_query/myscale.py +0 -23
  939. langchain/retrievers/self_query/opensearch.py +0 -23
  940. langchain/retrievers/self_query/pgvector.py +0 -23
  941. langchain/retrievers/self_query/pinecone.py +0 -23
  942. langchain/retrievers/self_query/qdrant.py +0 -23
  943. langchain/retrievers/self_query/redis.py +0 -23
  944. langchain/retrievers/self_query/supabase.py +0 -23
  945. langchain/retrievers/self_query/tencentvectordb.py +0 -27
  946. langchain/retrievers/self_query/timescalevector.py +0 -27
  947. langchain/retrievers/self_query/vectara.py +0 -27
  948. langchain/retrievers/self_query/weaviate.py +0 -23
  949. langchain/retrievers/svm.py +0 -23
  950. langchain/retrievers/tavily_search_api.py +0 -28
  951. langchain/retrievers/tfidf.py +0 -23
  952. langchain/retrievers/time_weighted_retriever.py +0 -196
  953. langchain/retrievers/vespa_retriever.py +0 -23
  954. langchain/retrievers/weaviate_hybrid_search.py +0 -23
  955. langchain/retrievers/web_research.py +0 -29
  956. langchain/retrievers/wikipedia.py +0 -23
  957. langchain/retrievers/you.py +0 -23
  958. langchain/retrievers/zep.py +0 -30
  959. langchain/retrievers/zilliz.py +0 -28
  960. langchain/runnables/__init__.py +0 -18
  961. langchain/runnables/hub.py +0 -44
  962. langchain/runnables/openai_functions.py +0 -57
  963. langchain/schema/__init__.py +0 -82
  964. langchain/schema/agent.py +0 -3
  965. langchain/schema/cache.py +0 -3
  966. langchain/schema/callbacks/__init__.py +0 -0
  967. langchain/schema/callbacks/base.py +0 -23
  968. langchain/schema/callbacks/manager.py +0 -55
  969. langchain/schema/callbacks/stdout.py +0 -3
  970. langchain/schema/callbacks/streaming_stdout.py +0 -3
  971. langchain/schema/callbacks/tracers/__init__.py +0 -0
  972. langchain/schema/callbacks/tracers/base.py +0 -4
  973. langchain/schema/callbacks/tracers/evaluation.py +0 -6
  974. langchain/schema/callbacks/tracers/langchain.py +0 -8
  975. langchain/schema/callbacks/tracers/langchain_v1.py +0 -3
  976. langchain/schema/callbacks/tracers/log_stream.py +0 -9
  977. langchain/schema/callbacks/tracers/root_listeners.py +0 -3
  978. langchain/schema/callbacks/tracers/run_collector.py +0 -3
  979. langchain/schema/callbacks/tracers/schemas.py +0 -27
  980. langchain/schema/callbacks/tracers/stdout.py +0 -13
  981. langchain/schema/chat.py +0 -3
  982. langchain/schema/chat_history.py +0 -3
  983. langchain/schema/document.py +0 -3
  984. langchain/schema/embeddings.py +0 -3
  985. langchain/schema/exceptions.py +0 -3
  986. langchain/schema/language_model.py +0 -15
  987. langchain/schema/memory.py +0 -3
  988. langchain/schema/messages.py +0 -51
  989. langchain/schema/output.py +0 -19
  990. langchain/schema/output_parser.py +0 -25
  991. langchain/schema/prompt.py +0 -3
  992. langchain/schema/prompt_template.py +0 -3
  993. langchain/schema/retriever.py +0 -3
  994. langchain/schema/runnable/__init__.py +0 -58
  995. langchain/schema/runnable/base.py +0 -38
  996. langchain/schema/runnable/branch.py +0 -3
  997. langchain/schema/runnable/config.py +0 -27
  998. langchain/schema/runnable/configurable.py +0 -15
  999. langchain/schema/runnable/fallbacks.py +0 -3
  1000. langchain/schema/runnable/history.py +0 -11
  1001. langchain/schema/runnable/passthrough.py +0 -8
  1002. langchain/schema/runnable/retry.py +0 -3
  1003. langchain/schema/runnable/router.py +0 -3
  1004. langchain/schema/runnable/utils.py +0 -51
  1005. langchain/schema/storage.py +0 -3
  1006. langchain/schema/vectorstore.py +0 -3
  1007. langchain/serpapi.py +0 -25
  1008. langchain/smith/__init__.py +0 -103
  1009. langchain/smith/evaluation/__init__.py +0 -68
  1010. langchain/smith/evaluation/config.py +0 -365
  1011. langchain/smith/evaluation/name_generation.py +0 -727
  1012. langchain/smith/evaluation/progress.py +0 -146
  1013. langchain/smith/evaluation/runner_utils.py +0 -1689
  1014. langchain/smith/evaluation/string_run_evaluator.py +0 -467
  1015. langchain/sql_database.py +0 -25
  1016. langchain/storage/__init__.py +0 -57
  1017. langchain/storage/_lc_store.py +0 -91
  1018. langchain/storage/encoder_backed.py +0 -128
  1019. langchain/storage/exceptions.py +0 -3
  1020. langchain/storage/file_system.py +0 -176
  1021. langchain/storage/in_memory.py +0 -13
  1022. langchain/storage/redis.py +0 -23
  1023. langchain/storage/upstash_redis.py +0 -27
  1024. langchain/text_splitter.py +0 -50
  1025. langchain/tools/ainetwork/__init__.py +0 -0
  1026. langchain/tools/ainetwork/app.py +0 -30
  1027. langchain/tools/ainetwork/base.py +0 -27
  1028. langchain/tools/ainetwork/owner.py +0 -28
  1029. langchain/tools/ainetwork/rule.py +0 -28
  1030. langchain/tools/ainetwork/transfer.py +0 -28
  1031. langchain/tools/ainetwork/value.py +0 -28
  1032. langchain/tools/amadeus/__init__.py +0 -30
  1033. langchain/tools/amadeus/base.py +0 -23
  1034. langchain/tools/amadeus/closest_airport.py +0 -30
  1035. langchain/tools/amadeus/flight_search.py +0 -30
  1036. langchain/tools/arxiv/__init__.py +0 -1
  1037. langchain/tools/arxiv/tool.py +0 -28
  1038. langchain/tools/azure_cognitive_services/__init__.py +0 -41
  1039. langchain/tools/azure_cognitive_services/form_recognizer.py +0 -23
  1040. langchain/tools/azure_cognitive_services/image_analysis.py +0 -23
  1041. langchain/tools/azure_cognitive_services/speech2text.py +0 -23
  1042. langchain/tools/azure_cognitive_services/text2speech.py +0 -23
  1043. langchain/tools/azure_cognitive_services/text_analytics_health.py +0 -23
  1044. langchain/tools/base.py +0 -19
  1045. langchain/tools/bearly/__init__.py +0 -0
  1046. langchain/tools/bearly/tool.py +0 -33
  1047. langchain/tools/bing_search/__init__.py +0 -29
  1048. langchain/tools/bing_search/tool.py +0 -27
  1049. langchain/tools/brave_search/__init__.py +0 -0
  1050. langchain/tools/brave_search/tool.py +0 -23
  1051. langchain/tools/clickup/__init__.py +0 -0
  1052. langchain/tools/clickup/tool.py +0 -23
  1053. langchain/tools/convert_to_openai.py +0 -4
  1054. langchain/tools/dataforseo_api_search/__init__.py +0 -34
  1055. langchain/tools/dataforseo_api_search/tool.py +0 -32
  1056. langchain/tools/ddg_search/__init__.py +0 -25
  1057. langchain/tools/ddg_search/tool.py +0 -32
  1058. langchain/tools/e2b_data_analysis/__init__.py +0 -0
  1059. langchain/tools/e2b_data_analysis/tool.py +0 -33
  1060. langchain/tools/edenai/__init__.py +0 -50
  1061. langchain/tools/edenai/audio_speech_to_text.py +0 -23
  1062. langchain/tools/edenai/audio_text_to_speech.py +0 -23
  1063. langchain/tools/edenai/edenai_base_tool.py +0 -23
  1064. langchain/tools/edenai/image_explicitcontent.py +0 -23
  1065. langchain/tools/edenai/image_objectdetection.py +0 -23
  1066. langchain/tools/edenai/ocr_identityparser.py +0 -23
  1067. langchain/tools/edenai/ocr_invoiceparser.py +0 -23
  1068. langchain/tools/edenai/text_moderation.py +0 -23
  1069. langchain/tools/eleven_labs/__init__.py +0 -25
  1070. langchain/tools/eleven_labs/models.py +0 -23
  1071. langchain/tools/eleven_labs/text2speech.py +0 -23
  1072. langchain/tools/file_management/__init__.py +0 -47
  1073. langchain/tools/file_management/copy.py +0 -28
  1074. langchain/tools/file_management/delete.py +0 -28
  1075. langchain/tools/file_management/file_search.py +0 -28
  1076. langchain/tools/file_management/list_dir.py +0 -28
  1077. langchain/tools/file_management/move.py +0 -28
  1078. langchain/tools/file_management/read.py +0 -28
  1079. langchain/tools/file_management/write.py +0 -28
  1080. langchain/tools/github/__init__.py +0 -1
  1081. langchain/tools/github/tool.py +0 -23
  1082. langchain/tools/gitlab/__init__.py +0 -1
  1083. langchain/tools/gitlab/tool.py +0 -23
  1084. langchain/tools/gmail/__init__.py +0 -41
  1085. langchain/tools/gmail/base.py +0 -23
  1086. langchain/tools/gmail/create_draft.py +0 -28
  1087. langchain/tools/gmail/get_message.py +0 -28
  1088. langchain/tools/gmail/get_thread.py +0 -28
  1089. langchain/tools/gmail/search.py +0 -30
  1090. langchain/tools/gmail/send_message.py +0 -28
  1091. langchain/tools/golden_query/__init__.py +0 -25
  1092. langchain/tools/golden_query/tool.py +0 -23
  1093. langchain/tools/google_cloud/__init__.py +0 -25
  1094. langchain/tools/google_cloud/texttospeech.py +0 -23
  1095. langchain/tools/google_finance/__init__.py +0 -27
  1096. langchain/tools/google_finance/tool.py +0 -25
  1097. langchain/tools/google_jobs/__init__.py +0 -25
  1098. langchain/tools/google_jobs/tool.py +0 -23
  1099. langchain/tools/google_lens/__init__.py +0 -25
  1100. langchain/tools/google_lens/tool.py +0 -23
  1101. langchain/tools/google_places/__init__.py +0 -25
  1102. langchain/tools/google_places/tool.py +0 -28
  1103. langchain/tools/google_scholar/__init__.py +0 -27
  1104. langchain/tools/google_scholar/tool.py +0 -25
  1105. langchain/tools/google_search/__init__.py +0 -29
  1106. langchain/tools/google_search/tool.py +0 -27
  1107. langchain/tools/google_serper/__init__.py +0 -30
  1108. langchain/tools/google_serper/tool.py +0 -27
  1109. langchain/tools/google_trends/__init__.py +0 -27
  1110. langchain/tools/google_trends/tool.py +0 -25
  1111. langchain/tools/graphql/__init__.py +0 -1
  1112. langchain/tools/graphql/tool.py +0 -23
  1113. langchain/tools/human/__init__.py +0 -25
  1114. langchain/tools/human/tool.py +0 -23
  1115. langchain/tools/ifttt.py +0 -23
  1116. langchain/tools/interaction/__init__.py +0 -1
  1117. langchain/tools/interaction/tool.py +0 -23
  1118. langchain/tools/jira/__init__.py +0 -1
  1119. langchain/tools/jira/tool.py +0 -42
  1120. langchain/tools/json/__init__.py +0 -1
  1121. langchain/tools/json/tool.py +0 -52
  1122. langchain/tools/memorize/__init__.py +0 -25
  1123. langchain/tools/memorize/tool.py +0 -27
  1124. langchain/tools/merriam_webster/__init__.py +0 -1
  1125. langchain/tools/merriam_webster/tool.py +0 -23
  1126. langchain/tools/metaphor_search/__init__.py +0 -25
  1127. langchain/tools/metaphor_search/tool.py +0 -23
  1128. langchain/tools/multion/__init__.py +0 -33
  1129. langchain/tools/multion/close_session.py +0 -30
  1130. langchain/tools/multion/create_session.py +0 -30
  1131. langchain/tools/multion/update_session.py +0 -30
  1132. langchain/tools/nasa/__init__.py +0 -0
  1133. langchain/tools/nasa/tool.py +0 -23
  1134. langchain/tools/nuclia/__init__.py +0 -23
  1135. langchain/tools/nuclia/tool.py +0 -27
  1136. langchain/tools/office365/__init__.py +0 -41
  1137. langchain/tools/office365/base.py +0 -23
  1138. langchain/tools/office365/create_draft_message.py +0 -32
  1139. langchain/tools/office365/events_search.py +0 -28
  1140. langchain/tools/office365/messages_search.py +0 -28
  1141. langchain/tools/office365/send_event.py +0 -28
  1142. langchain/tools/office365/send_message.py +0 -28
  1143. langchain/tools/openapi/__init__.py +0 -0
  1144. langchain/tools/openapi/utils/__init__.py +0 -0
  1145. langchain/tools/openapi/utils/api_models.py +0 -54
  1146. langchain/tools/openapi/utils/openapi_utils.py +0 -30
  1147. langchain/tools/openweathermap/__init__.py +0 -25
  1148. langchain/tools/openweathermap/tool.py +0 -23
  1149. langchain/tools/playwright/__init__.py +0 -47
  1150. langchain/tools/playwright/base.py +0 -23
  1151. langchain/tools/playwright/click.py +0 -28
  1152. langchain/tools/playwright/current_page.py +0 -23
  1153. langchain/tools/playwright/extract_hyperlinks.py +0 -32
  1154. langchain/tools/playwright/extract_text.py +0 -23
  1155. langchain/tools/playwright/get_elements.py +0 -28
  1156. langchain/tools/playwright/navigate.py +0 -28
  1157. langchain/tools/playwright/navigate_back.py +0 -23
  1158. langchain/tools/plugin.py +0 -32
  1159. langchain/tools/powerbi/__init__.py +0 -1
  1160. langchain/tools/powerbi/tool.py +0 -33
  1161. langchain/tools/pubmed/__init__.py +0 -1
  1162. langchain/tools/pubmed/tool.py +0 -23
  1163. langchain/tools/python/__init__.py +0 -13
  1164. langchain/tools/reddit_search/__init__.py +0 -0
  1165. langchain/tools/reddit_search/tool.py +0 -27
  1166. langchain/tools/render.py +0 -23
  1167. langchain/tools/requests/__init__.py +0 -1
  1168. langchain/tools/requests/tool.py +0 -42
  1169. langchain/tools/retriever.py +0 -11
  1170. langchain/tools/scenexplain/__init__.py +0 -1
  1171. langchain/tools/scenexplain/tool.py +0 -28
  1172. langchain/tools/searchapi/__init__.py +0 -30
  1173. langchain/tools/searchapi/tool.py +0 -27
  1174. langchain/tools/searx_search/__init__.py +0 -0
  1175. langchain/tools/searx_search/tool.py +0 -27
  1176. langchain/tools/shell/__init__.py +0 -25
  1177. langchain/tools/shell/tool.py +0 -28
  1178. langchain/tools/slack/__init__.py +0 -38
  1179. langchain/tools/slack/base.py +0 -23
  1180. langchain/tools/slack/get_channel.py +0 -23
  1181. langchain/tools/slack/get_message.py +0 -28
  1182. langchain/tools/slack/schedule_message.py +0 -28
  1183. langchain/tools/slack/send_message.py +0 -28
  1184. langchain/tools/sleep/__init__.py +0 -1
  1185. langchain/tools/sleep/tool.py +0 -28
  1186. langchain/tools/spark_sql/__init__.py +0 -1
  1187. langchain/tools/spark_sql/tool.py +0 -39
  1188. langchain/tools/sql_database/__init__.py +0 -1
  1189. langchain/tools/sql_database/prompt.py +0 -24
  1190. langchain/tools/sql_database/tool.py +0 -39
  1191. langchain/tools/stackexchange/__init__.py +0 -1
  1192. langchain/tools/stackexchange/tool.py +0 -23
  1193. langchain/tools/steam/__init__.py +0 -1
  1194. langchain/tools/steam/tool.py +0 -23
  1195. langchain/tools/steamship_image_generation/__init__.py +0 -25
  1196. langchain/tools/steamship_image_generation/tool.py +0 -28
  1197. langchain/tools/tavily_search/__init__.py +0 -32
  1198. langchain/tools/tavily_search/tool.py +0 -33
  1199. langchain/tools/vectorstore/__init__.py +0 -1
  1200. langchain/tools/vectorstore/tool.py +0 -30
  1201. langchain/tools/wikipedia/__init__.py +0 -1
  1202. langchain/tools/wikipedia/tool.py +0 -23
  1203. langchain/tools/wolfram_alpha/__init__.py +0 -25
  1204. langchain/tools/wolfram_alpha/tool.py +0 -23
  1205. langchain/tools/yahoo_finance_news.py +0 -23
  1206. langchain/tools/youtube/__init__.py +0 -0
  1207. langchain/tools/youtube/search.py +0 -23
  1208. langchain/tools/zapier/__init__.py +0 -29
  1209. langchain/tools/zapier/tool.py +0 -49
  1210. langchain/utilities/__init__.py +0 -168
  1211. langchain/utilities/alpha_vantage.py +0 -23
  1212. langchain/utilities/anthropic.py +0 -30
  1213. langchain/utilities/apify.py +0 -23
  1214. langchain/utilities/arcee.py +0 -45
  1215. langchain/utilities/arxiv.py +0 -23
  1216. langchain/utilities/asyncio.py +0 -11
  1217. langchain/utilities/awslambda.py +0 -23
  1218. langchain/utilities/bibtex.py +0 -23
  1219. langchain/utilities/bing_search.py +0 -23
  1220. langchain/utilities/brave_search.py +0 -23
  1221. langchain/utilities/clickup.py +0 -45
  1222. langchain/utilities/dalle_image_generator.py +0 -25
  1223. langchain/utilities/dataforseo_api_search.py +0 -25
  1224. langchain/utilities/duckduckgo_search.py +0 -23
  1225. langchain/utilities/github.py +0 -23
  1226. langchain/utilities/gitlab.py +0 -23
  1227. langchain/utilities/golden_query.py +0 -23
  1228. langchain/utilities/google_finance.py +0 -23
  1229. langchain/utilities/google_jobs.py +0 -23
  1230. langchain/utilities/google_lens.py +0 -23
  1231. langchain/utilities/google_places_api.py +0 -23
  1232. langchain/utilities/google_scholar.py +0 -23
  1233. langchain/utilities/google_search.py +0 -23
  1234. langchain/utilities/google_serper.py +0 -23
  1235. langchain/utilities/google_trends.py +0 -23
  1236. langchain/utilities/graphql.py +0 -23
  1237. langchain/utilities/jira.py +0 -23
  1238. langchain/utilities/loading.py +0 -4
  1239. langchain/utilities/max_compute.py +0 -23
  1240. langchain/utilities/merriam_webster.py +0 -23
  1241. langchain/utilities/metaphor_search.py +0 -23
  1242. langchain/utilities/nasa.py +0 -23
  1243. langchain/utilities/opaqueprompts.py +0 -27
  1244. langchain/utilities/openapi.py +0 -28
  1245. langchain/utilities/openweathermap.py +0 -23
  1246. langchain/utilities/outline.py +0 -23
  1247. langchain/utilities/portkey.py +0 -23
  1248. langchain/utilities/powerbi.py +0 -23
  1249. langchain/utilities/pubmed.py +0 -23
  1250. langchain/utilities/python.py +0 -19
  1251. langchain/utilities/reddit_search.py +0 -25
  1252. langchain/utilities/redis.py +0 -33
  1253. langchain/utilities/requests.py +0 -27
  1254. langchain/utilities/scenexplain.py +0 -23
  1255. langchain/utilities/searchapi.py +0 -23
  1256. langchain/utilities/searx_search.py +0 -28
  1257. langchain/utilities/serpapi.py +0 -28
  1258. langchain/utilities/spark_sql.py +0 -23
  1259. langchain/utilities/sql_database.py +0 -28
  1260. langchain/utilities/stackexchange.py +0 -23
  1261. langchain/utilities/steam.py +0 -23
  1262. langchain/utilities/tavily_search.py +0 -25
  1263. langchain/utilities/tensorflow_datasets.py +0 -23
  1264. langchain/utilities/twilio.py +0 -23
  1265. langchain/utilities/vertexai.py +0 -36
  1266. langchain/utilities/wikipedia.py +0 -23
  1267. langchain/utilities/wolfram_alpha.py +0 -23
  1268. langchain/utilities/zapier.py +0 -23
  1269. langchain/utils/__init__.py +0 -77
  1270. langchain/utils/aiter.py +0 -3
  1271. langchain/utils/env.py +0 -3
  1272. langchain/utils/ernie_functions.py +0 -36
  1273. langchain/utils/formatting.py +0 -3
  1274. langchain/utils/html.py +0 -19
  1275. langchain/utils/input.py +0 -8
  1276. langchain/utils/iter.py +0 -3
  1277. langchain/utils/json_schema.py +0 -11
  1278. langchain/utils/loading.py +0 -3
  1279. langchain/utils/math.py +0 -32
  1280. langchain/utils/openai.py +0 -23
  1281. langchain/utils/openai_functions.py +0 -13
  1282. langchain/utils/pydantic.py +0 -3
  1283. langchain/utils/strings.py +0 -3
  1284. langchain/utils/utils.py +0 -21
  1285. langchain/vectorstores/__init__.py +0 -262
  1286. langchain/vectorstores/alibabacloud_opensearch.py +0 -30
  1287. langchain/vectorstores/analyticdb.py +0 -23
  1288. langchain/vectorstores/annoy.py +0 -23
  1289. langchain/vectorstores/astradb.py +0 -23
  1290. langchain/vectorstores/atlas.py +0 -23
  1291. langchain/vectorstores/awadb.py +0 -23
  1292. langchain/vectorstores/azure_cosmos_db.py +0 -28
  1293. langchain/vectorstores/azuresearch.py +0 -30
  1294. langchain/vectorstores/bageldb.py +0 -23
  1295. langchain/vectorstores/baiducloud_vector_search.py +0 -23
  1296. langchain/vectorstores/base.py +0 -3
  1297. langchain/vectorstores/cassandra.py +0 -23
  1298. langchain/vectorstores/chroma.py +0 -23
  1299. langchain/vectorstores/clarifai.py +0 -23
  1300. langchain/vectorstores/clickhouse.py +0 -27
  1301. langchain/vectorstores/dashvector.py +0 -23
  1302. langchain/vectorstores/databricks_vector_search.py +0 -23
  1303. langchain/vectorstores/deeplake.py +0 -23
  1304. langchain/vectorstores/dingo.py +0 -23
  1305. langchain/vectorstores/docarray/__init__.py +0 -30
  1306. langchain/vectorstores/docarray/base.py +0 -23
  1307. langchain/vectorstores/docarray/hnsw.py +0 -23
  1308. langchain/vectorstores/docarray/in_memory.py +0 -23
  1309. langchain/vectorstores/elastic_vector_search.py +0 -27
  1310. langchain/vectorstores/elasticsearch.py +0 -39
  1311. langchain/vectorstores/epsilla.py +0 -23
  1312. langchain/vectorstores/faiss.py +0 -23
  1313. langchain/vectorstores/hippo.py +0 -23
  1314. langchain/vectorstores/hologres.py +0 -23
  1315. langchain/vectorstores/lancedb.py +0 -23
  1316. langchain/vectorstores/llm_rails.py +0 -28
  1317. langchain/vectorstores/marqo.py +0 -23
  1318. langchain/vectorstores/matching_engine.py +0 -23
  1319. langchain/vectorstores/meilisearch.py +0 -23
  1320. langchain/vectorstores/milvus.py +0 -23
  1321. langchain/vectorstores/momento_vector_index.py +0 -23
  1322. langchain/vectorstores/mongodb_atlas.py +0 -23
  1323. langchain/vectorstores/myscale.py +0 -30
  1324. langchain/vectorstores/neo4j_vector.py +0 -28
  1325. langchain/vectorstores/nucliadb.py +0 -23
  1326. langchain/vectorstores/opensearch_vector_search.py +0 -23
  1327. langchain/vectorstores/pgembedding.py +0 -36
  1328. langchain/vectorstores/pgvecto_rs.py +0 -23
  1329. langchain/vectorstores/pgvector.py +0 -28
  1330. langchain/vectorstores/pinecone.py +0 -23
  1331. langchain/vectorstores/qdrant.py +0 -28
  1332. langchain/vectorstores/redis/__init__.py +0 -42
  1333. langchain/vectorstores/redis/base.py +0 -33
  1334. langchain/vectorstores/redis/filters.py +0 -48
  1335. langchain/vectorstores/redis/schema.py +0 -54
  1336. langchain/vectorstores/rocksetdb.py +0 -23
  1337. langchain/vectorstores/scann.py +0 -23
  1338. langchain/vectorstores/semadb.py +0 -23
  1339. langchain/vectorstores/singlestoredb.py +0 -23
  1340. langchain/vectorstores/sklearn.py +0 -42
  1341. langchain/vectorstores/sqlitevss.py +0 -23
  1342. langchain/vectorstores/starrocks.py +0 -28
  1343. langchain/vectorstores/supabase.py +0 -23
  1344. langchain/vectorstores/tair.py +0 -23
  1345. langchain/vectorstores/tencentvectordb.py +0 -33
  1346. langchain/vectorstores/tigris.py +0 -23
  1347. langchain/vectorstores/tiledb.py +0 -23
  1348. langchain/vectorstores/timescalevector.py +0 -23
  1349. langchain/vectorstores/typesense.py +0 -23
  1350. langchain/vectorstores/usearch.py +0 -23
  1351. langchain/vectorstores/utils.py +0 -33
  1352. langchain/vectorstores/vald.py +0 -23
  1353. langchain/vectorstores/vearch.py +0 -23
  1354. langchain/vectorstores/vectara.py +0 -28
  1355. langchain/vectorstores/vespa.py +0 -23
  1356. langchain/vectorstores/weaviate.py +0 -23
  1357. langchain/vectorstores/xata.py +0 -23
  1358. langchain/vectorstores/yellowbrick.py +0 -23
  1359. langchain/vectorstores/zep.py +0 -28
  1360. langchain/vectorstores/zilliz.py +0 -23
  1361. langchain-0.4.0.dev0.dist-info/METADATA +0 -134
  1362. langchain-0.4.0.dev0.dist-info/RECORD +0 -1341
  1363. langchain-0.4.0.dev0.dist-info/entry_points.txt +0 -4
  1364. {langchain-0.4.0.dev0.dist-info → langchain-1.0.0.dist-info}/licenses/LICENSE +0 -0
@@ -1,82 +1,61 @@
1
+ """Factory functions for chat models."""
2
+
1
3
  from __future__ import annotations
2
4
 
3
5
  import warnings
4
- from collections.abc import AsyncIterator, Iterator, Sequence
5
6
  from importlib import util
6
- from typing import Any, Callable, Literal, Optional, Union, cast, overload
7
-
8
- from langchain_core.language_models import (
9
- BaseChatModel,
10
- LanguageModelInput,
11
- SimpleChatModel,
7
+ from typing import (
8
+ TYPE_CHECKING,
9
+ Any,
10
+ Literal,
11
+ TypeAlias,
12
+ cast,
13
+ overload,
12
14
  )
13
- from langchain_core.language_models.chat_models import (
14
- agenerate_from_stream,
15
- generate_from_stream,
16
- )
17
- from langchain_core.messages import AnyMessage, BaseMessage
15
+
16
+ from langchain_core.language_models import BaseChatModel, LanguageModelInput
17
+ from langchain_core.messages import AIMessage, AnyMessage
18
18
  from langchain_core.runnables import Runnable, RunnableConfig, ensure_config
19
- from langchain_core.runnables.schema import StreamEvent
20
- from langchain_core.tools import BaseTool
21
- from langchain_core.tracers import RunLog, RunLogPatch
22
- from langchain_core.v1.chat_models import BaseChatModel as BaseChatModelV1
23
- from pydantic import BaseModel
24
- from typing_extensions import TypeAlias, override
25
-
26
- __all__ = [
27
- # For backwards compatibility
28
- "BaseChatModel",
29
- "SimpleChatModel",
30
- "agenerate_from_stream",
31
- "generate_from_stream",
32
- "init_chat_model",
33
- ]
19
+ from typing_extensions import override
34
20
 
21
+ if TYPE_CHECKING:
22
+ from collections.abc import AsyncIterator, Callable, Iterator, Sequence
35
23
 
36
- @overload
37
- def init_chat_model(
38
- model: str,
39
- *,
40
- model_provider: Optional[str] = None,
41
- configurable_fields: Literal[None] = None,
42
- config_prefix: Optional[str] = None,
43
- message_version: Literal["v0"] = "v0",
44
- **kwargs: Any,
45
- ) -> BaseChatModel: ...
24
+ from langchain_core.runnables.schema import StreamEvent
25
+ from langchain_core.tools import BaseTool
26
+ from langchain_core.tracers import RunLog, RunLogPatch
27
+ from pydantic import BaseModel
46
28
 
47
29
 
48
30
  @overload
49
31
  def init_chat_model(
50
32
  model: str,
51
33
  *,
52
- model_provider: Optional[str] = None,
53
- configurable_fields: Literal[None] = None,
54
- config_prefix: Optional[str] = None,
55
- message_version: Literal["v1"] = "v1",
34
+ model_provider: str | None = None,
35
+ configurable_fields: None = None,
36
+ config_prefix: str | None = None,
56
37
  **kwargs: Any,
57
- ) -> BaseChatModelV1: ...
38
+ ) -> BaseChatModel: ...
58
39
 
59
40
 
60
41
  @overload
61
42
  def init_chat_model(
62
- model: Literal[None] = None,
43
+ model: None = None,
63
44
  *,
64
- model_provider: Optional[str] = None,
65
- configurable_fields: Literal[None] = None,
66
- config_prefix: Optional[str] = None,
67
- message_version: Literal["v0", "v1"] = "v0",
45
+ model_provider: str | None = None,
46
+ configurable_fields: None = None,
47
+ config_prefix: str | None = None,
68
48
  **kwargs: Any,
69
49
  ) -> _ConfigurableModel: ...
70
50
 
71
51
 
72
52
  @overload
73
53
  def init_chat_model(
74
- model: Optional[str] = None,
54
+ model: str | None = None,
75
55
  *,
76
- model_provider: Optional[str] = None,
77
- configurable_fields: Union[Literal["any"], list[str], tuple[str, ...]] = ...,
78
- config_prefix: Optional[str] = None,
79
- message_version: Literal["v0", "v1"] = "v0",
56
+ model_provider: str | None = None,
57
+ configurable_fields: Literal["any"] | list[str] | tuple[str, ...] = ...,
58
+ config_prefix: str | None = None,
80
59
  **kwargs: Any,
81
60
  ) -> _ConfigurableModel: ...
82
61
 
@@ -85,251 +64,216 @@ def init_chat_model(
85
64
  # name to the supported list in the docstring below. Do *not* change the order of the
86
65
  # existing providers.
87
66
  def init_chat_model(
88
- model: Optional[str] = None,
67
+ model: str | None = None,
89
68
  *,
90
- model_provider: Optional[str] = None,
91
- configurable_fields: Optional[
92
- Union[Literal["any"], list[str], tuple[str, ...]]
93
- ] = None,
94
- config_prefix: Optional[str] = None,
95
- message_version: Literal["v0", "v1"] = "v0",
69
+ model_provider: str | None = None,
70
+ configurable_fields: Literal["any"] | list[str] | tuple[str, ...] | None = None,
71
+ config_prefix: str | None = None,
96
72
  **kwargs: Any,
97
- ) -> Union[BaseChatModel, BaseChatModelV1, _ConfigurableModel]:
98
- """Initialize a ChatModel in a single line using the model's name and provider.
99
-
100
- .. note::
101
- Must have the integration package corresponding to the model provider installed.
102
- You should look at the `provider integration's API reference <https://python.langchain.com/api_reference/reference.html#integrations>`__
103
- to see what parameters are supported by the model.
104
-
105
- Args:
106
- model: The name of the model, e.g. ``'o3-mini'``, ``'claude-3-5-sonnet-latest'``. You can
107
- also specify model and model provider in a single argument using
108
- ``'{model_provider}:{model}'`` format, e.g. ``'openai:o1'``.
109
- model_provider: The model provider if not specified as part of model arg (see
110
- above). Supported model_provider values and the corresponding integration
111
- package are:
112
-
113
- - ``openai`` -> ``langchain-openai``
114
- - ``anthropic`` -> ``langchain-anthropic``
115
- - ``azure_openai`` -> ``langchain-openai``
116
- - ``azure_ai`` -> ``langchain-azure-ai``
117
- - ``google_vertexai`` -> ``langchain-google-vertexai``
118
- - ``google_genai`` -> ``langchain-google-genai``
119
- - ``bedrock`` -> ``langchain-aws``
120
- - ``bedrock_converse`` -> ``langchain-aws``
121
- - ``cohere`` -> ``langchain-cohere``
122
- - ``fireworks`` -> ``langchain-fireworks``
123
- - ``together`` -> ``langchain-together``
124
- - ``mistralai`` -> ``langchain-mistralai``
125
- - ``huggingface`` -> ``langchain-huggingface``
126
- - ``groq`` -> ``langchain-groq``
127
- - ``ollama`` -> ``langchain-ollama``
128
- - ``google_anthropic_vertex`` -> ``langchain-google-vertexai``
129
- - ``deepseek`` -> ``langchain-deepseek``
130
- - ``ibm`` -> ``langchain-ibm``
131
- - ``nvidia`` -> ``langchain-nvidia-ai-endpoints``
132
- - ``xai`` -> ``langchain-xai``
133
- - ``perplexity`` -> ``langchain-perplexity``
134
-
135
- Will attempt to infer model_provider from model if not specified. The
136
- following providers will be inferred based on these model prefixes:
73
+ ) -> BaseChatModel | _ConfigurableModel:
74
+ """Initialize a chat model in a single line using the model's name and provider.
137
75
 
138
- - ``gpt-3...`` | ``gpt-4...`` | ``o1...`` -> ``openai``
139
- - ``claude...`` -> ``anthropic``
140
- - ``amazon...`` -> ``bedrock``
141
- - ``gemini...`` -> ``google_vertexai``
142
- - ``command...`` -> ``cohere``
143
- - ``accounts/fireworks...`` -> ``fireworks``
144
- - ``mistral...`` -> ``mistralai``
145
- - ``deepseek...`` -> ``deepseek``
146
- - ``grok...`` -> ``xai``
147
- - ``sonar...`` -> ``perplexity``
76
+ !!! note
77
+ Requires the integration package for your model provider to be installed.
148
78
 
149
- message_version: The version of the BaseChatModel to return. Either ``"v0"`` for
150
- a v0 :class:`~langchain_core.language_models.chat_models.BaseChatModel` or
151
- ``"v1"`` for a v1 :class:`~langchain_core.v1.chat_models.BaseChatModel`. The
152
- output version determines what type of message objects the model will
153
- generate.
79
+ See the `model_provider` parameter below for specific package names
80
+ (e.g., `pip install langchain-openai`).
154
81
 
155
- .. note::
156
- Currently supported for these providers:
82
+ Refer to the [provider integration's API reference](https://docs.langchain.com/oss/python/integrations/providers)
83
+ for supported model parameters.
157
84
 
158
- - ``openai``
159
-
160
- .. versionadded:: 0.4.0
85
+ Args:
86
+ model: The name of the model, e.g. `'o3-mini'`, `'claude-sonnet-4-5-20250929'`.
87
+
88
+ You can also specify model and model provider in a single argument using:
89
+
90
+ `'{model_provider}:{model}'` format, e.g. `'openai:o1'`.
91
+ model_provider: The model provider if not specified as part of the model arg
92
+ (see above). Supported `model_provider` values and the corresponding
93
+ integration package are:
94
+
95
+ - `openai` -> [`langchain-openai`](https://docs.langchain.com/oss/python/integrations/providers/openai)
96
+ - `anthropic` -> [`langchain-anthropic`](https://docs.langchain.com/oss/python/integrations/providers/anthropic)
97
+ - `azure_openai` -> [`langchain-openai`](https://docs.langchain.com/oss/python/integrations/providers/openai)
98
+ - `azure_ai` -> [`langchain-azure-ai`](https://docs.langchain.com/oss/python/integrations/providers/microsoft)
99
+ - `google_vertexai` -> [`langchain-google-vertexai`](https://docs.langchain.com/oss/python/integrations/providers/google)
100
+ - `google_genai` -> [`langchain-google-genai`](https://docs.langchain.com/oss/python/integrations/providers/google)
101
+ - `bedrock` -> [`langchain-aws`](https://docs.langchain.com/oss/python/integrations/providers/aws)
102
+ - `bedrock_converse` -> [`langchain-aws`](https://docs.langchain.com/oss/python/integrations/providers/aws)
103
+ - `cohere` -> [`langchain-cohere`](https://docs.langchain.com/oss/python/integrations/providers/cohere)
104
+ - `fireworks` -> [`langchain-fireworks`](https://docs.langchain.com/oss/python/integrations/providers/fireworks)
105
+ - `together` -> [`langchain-together`](https://docs.langchain.com/oss/python/integrations/providers/together)
106
+ - `mistralai` -> [`langchain-mistralai`](https://docs.langchain.com/oss/python/integrations/providers/mistralai)
107
+ - `huggingface` -> [`langchain-huggingface`](https://docs.langchain.com/oss/python/integrations/providers/huggingface)
108
+ - `groq` -> [`langchain-groq`](https://docs.langchain.com/oss/python/integrations/providers/groq)
109
+ - `ollama` -> [`langchain-ollama`](https://docs.langchain.com/oss/python/integrations/providers/ollama)
110
+ - `google_anthropic_vertex` -> [`langchain-google-vertexai`](https://docs.langchain.com/oss/python/integrations/providers/google)
111
+ - `deepseek` -> [`langchain-deepseek`](https://docs.langchain.com/oss/python/integrations/providers/deepseek)
112
+ - `ibm` -> [`langchain-ibm`](https://docs.langchain.com/oss/python/integrations/providers/deepseek)
113
+ - `nvidia` -> [`langchain-nvidia-ai-endpoints`](https://docs.langchain.com/oss/python/integrations/providers/nvidia)
114
+ - `xai` -> [`langchain-xai`](https://docs.langchain.com/oss/python/integrations/providers/xai)
115
+ - `perplexity` -> [`langchain-perplexity`](https://docs.langchain.com/oss/python/integrations/providers/perplexity)
116
+
117
+ Will attempt to infer `model_provider` from model if not specified. The
118
+ following providers will be inferred based on these model prefixes:
161
119
 
120
+ - `gpt-...` | `o1...` | `o3...` -> `openai`
121
+ - `claude...` -> `anthropic`
122
+ - `amazon...` -> `bedrock`
123
+ - `gemini...` -> `google_vertexai`
124
+ - `command...` -> `cohere`
125
+ - `accounts/fireworks...` -> `fireworks`
126
+ - `mistral...` -> `mistralai`
127
+ - `deepseek...` -> `deepseek`
128
+ - `grok...` -> `xai`
129
+ - `sonar...` -> `perplexity`
162
130
  configurable_fields: Which model parameters are configurable:
163
131
 
164
- - None: No configurable fields.
165
- - ``'any'``: All fields are configurable. **See Security Note below.**
166
- - Union[List[str], Tuple[str, ...]]: Specified fields are configurable.
132
+ - `None`: No configurable fields.
133
+ - `'any'`: All fields are configurable. **See security note below.**
134
+ - `list[str] | Tuple[str, ...]`: Specified fields are configurable.
167
135
 
168
- Fields are assumed to have config_prefix stripped if there is a
169
- config_prefix. If model is specified, then defaults to None. If model is
170
- not specified, then defaults to ``("model", "model_provider")``.
136
+ Fields are assumed to have `config_prefix` stripped if there is a
137
+ `config_prefix`. If model is specified, then defaults to `None`. If model is
138
+ not specified, then defaults to `("model", "model_provider")`.
171
139
 
172
- ***Security Note***: Setting ``configurable_fields="any"`` means fields like
173
- ``api_key``, ``base_url``, etc. can be altered at runtime, potentially redirecting
174
- model requests to a different service/user. Make sure that if you're
175
- accepting untrusted configurations that you enumerate the
176
- ``configurable_fields=(...)`` explicitly.
140
+ !!! warning "Security note"
141
+ Setting `configurable_fields="any"` means fields like `api_key`,
142
+ `base_url`, etc. can be altered at runtime, potentially redirecting
143
+ model requests to a different service/user. Make sure that if you're
144
+ accepting untrusted configurations that you enumerate the
145
+ `configurable_fields=(...)` explicitly.
177
146
 
178
- config_prefix: If ``'config_prefix'`` is a non-empty string then model will be
147
+ config_prefix: If `'config_prefix'` is a non-empty string then model will be
179
148
  configurable at runtime via the
180
- ``config["configurable"]["{config_prefix}_{param}"]`` keys. If
181
- ``'config_prefix'`` is an empty string then model will be configurable via
182
- ``config["configurable"]["{param}"]``.
183
- temperature: Model temperature.
184
- max_tokens: Max output tokens.
185
- timeout: The maximum time (in seconds) to wait for a response from the model
186
- before canceling the request.
187
- max_retries: The maximum number of attempts the system will make to resend a
188
- request if it fails due to issues like network timeouts or rate limits.
189
- base_url: The URL of the API endpoint where requests are sent.
190
- rate_limiter: A ``BaseRateLimiter`` to space out requests to avoid exceeding
191
- rate limits.
192
- kwargs: Additional model-specific keyword args to pass to
193
- ``<<selected ChatModel>>.__init__(model=model_name, **kwargs)``.
149
+ `config["configurable"]["{config_prefix}_{param}"]` keys. If
150
+ `'config_prefix'` is an empty string then model will be configurable via
151
+ `config["configurable"]["{param}"]`.
152
+ **kwargs: Additional model-specific keyword args to pass to the underlying
153
+ chat model's `__init__` method. Common parameters include:
154
+
155
+ - `temperature`: Model temperature for controlling randomness.
156
+ - `max_tokens`: Maximum number of output tokens.
157
+ - `timeout`: Maximum time (in seconds) to wait for a response.
158
+ - `max_retries`: Maximum number of retry attempts for failed requests.
159
+ - `base_url`: Custom API endpoint URL.
160
+ - `rate_limiter`: A `BaseRateLimiter` instance to control request rate.
161
+
162
+ Refer to the specific model provider's documentation for all available
163
+ parameters.
194
164
 
195
165
  Returns:
196
- A BaseChatModel corresponding to the model_name and model_provider specified if
197
- configurability is inferred to be False. If configurable, a chat model emulator
198
- that initializes the underlying model at runtime once a config is passed in.
166
+ A `BaseChatModel` corresponding to the `model_name` and `model_provider`
167
+ specified if configurability is inferred to be `False`. If configurable, a
168
+ chat model emulator that initializes the underlying model at runtime once a
169
+ config is passed in.
199
170
 
200
171
  Raises:
201
- ValueError: If model_provider cannot be inferred or isn't supported.
172
+ ValueError: If `model_provider` cannot be inferred or isn't supported.
202
173
  ImportError: If the model provider integration package is not installed.
203
174
 
204
- .. dropdown:: Init non-configurable model
205
- :open:
206
-
207
- .. code-block:: python
208
-
209
- # pip install langchain langchain-openai langchain-anthropic langchain-google-vertexai
210
- from langchain.chat_models import init_chat_model
175
+ ???+ note "Initialize a non-configurable model"
211
176
 
212
- o3_mini = init_chat_model("openai:o3-mini", temperature=0)
213
- claude_sonnet = init_chat_model("anthropic:claude-3-5-sonnet-latest", temperature=0)
214
- gemini_2_flash = init_chat_model("google_vertexai:gemini-2.5-flash", temperature=0)
177
+ ```python
178
+ # pip install langchain langchain-openai langchain-anthropic langchain-google-vertexai
179
+ from langchain.chat_models import init_chat_model
215
180
 
216
- o3_mini.invoke("what's your name")
217
- claude_sonnet.invoke("what's your name")
218
- gemini_2_flash.invoke("what's your name")
181
+ o3_mini = init_chat_model("openai:o3-mini", temperature=0)
182
+ claude_sonnet = init_chat_model("anthropic:claude-sonnet-4-5-20250929", temperature=0)
183
+ gemini_2_flash = init_chat_model("google_vertexai:gemini-2.5-flash", temperature=0)
219
184
 
185
+ o3_mini.invoke("what's your name")
186
+ claude_sonnet.invoke("what's your name")
187
+ gemini_2_flash.invoke("what's your name")
188
+ ```
220
189
 
221
- .. dropdown:: Partially configurable model with no default
190
+ ??? note "Partially configurable model with no default"
222
191
 
223
- .. code-block:: python
192
+ ```python
193
+ # pip install langchain langchain-openai langchain-anthropic
194
+ from langchain.chat_models import init_chat_model
224
195
 
225
- # pip install langchain langchain-openai langchain-anthropic
226
- from langchain.chat_models import init_chat_model
196
+ # We don't need to specify configurable=True if a model isn't specified.
197
+ configurable_model = init_chat_model(temperature=0)
227
198
 
228
- # We don't need to specify configurable=True if a model isn't specified.
229
- configurable_model = init_chat_model(temperature=0)
199
+ configurable_model.invoke("what's your name", config={"configurable": {"model": "gpt-4o"}})
200
+ # GPT-4o response
230
201
 
231
- configurable_model.invoke(
232
- "what's your name",
233
- config={"configurable": {"model": "gpt-4o"}}
234
- )
235
- # GPT-4o response
236
-
237
- configurable_model.invoke(
238
- "what's your name",
239
- config={"configurable": {"model": "claude-3-5-sonnet-latest"}}
240
- )
241
- # claude-3.5 sonnet response
242
-
243
- .. dropdown:: Fully configurable model with a default
202
+ configurable_model.invoke(
203
+ "what's your name",
204
+ config={"configurable": {"model": "claude-sonnet-4-5-20250929"}},
205
+ )
206
+ ```
244
207
 
245
- .. code-block:: python
208
+ ??? note "Fully configurable model with a default"
246
209
 
247
- # pip install langchain langchain-openai langchain-anthropic
248
- from langchain.chat_models import init_chat_model
210
+ ```python
211
+ # pip install langchain langchain-openai langchain-anthropic
212
+ from langchain.chat_models import init_chat_model
249
213
 
250
- configurable_model_with_default = init_chat_model(
251
- "openai:gpt-4o",
252
- configurable_fields="any", # this allows us to configure other params like temperature, max_tokens, etc at runtime.
253
- config_prefix="foo",
254
- temperature=0
255
- )
214
+ configurable_model_with_default = init_chat_model(
215
+ "openai:gpt-4o",
216
+ configurable_fields="any", # This allows us to configure other params like temperature, max_tokens, etc at runtime.
217
+ config_prefix="foo",
218
+ temperature=0,
219
+ )
256
220
 
257
- configurable_model_with_default.invoke("what's your name")
258
- # GPT-4o response with temperature 0
221
+ configurable_model_with_default.invoke("what's your name")
222
+ # GPT-4o response with temperature 0
259
223
 
260
- configurable_model_with_default.invoke(
261
- "what's your name",
262
- config={
263
- "configurable": {
264
- "foo_model": "anthropic:claude-3-5-sonnet-20240620",
265
- "foo_temperature": 0.6
266
- }
224
+ configurable_model_with_default.invoke(
225
+ "what's your name",
226
+ config={
227
+ "configurable": {
228
+ "foo_model": "anthropic:claude-sonnet-4-5-20250929",
229
+ "foo_temperature": 0.6,
267
230
  }
268
- )
269
- # Claude-3.5 sonnet response with temperature 0.6
270
-
271
- .. dropdown:: Bind tools to a configurable model
272
-
273
- You can call any ChatModel declarative methods on a configurable model in the
274
- same way that you would with a normal model.
275
-
276
- .. code-block:: python
277
-
278
- # pip install langchain langchain-openai langchain-anthropic
279
- from langchain.chat_models import init_chat_model
280
- from pydantic import BaseModel, Field
281
-
282
- class GetWeather(BaseModel):
283
- '''Get the current weather in a given location'''
284
-
285
- location: str = Field(..., description="The city and state, e.g. San Francisco, CA")
286
-
287
- class GetPopulation(BaseModel):
288
- '''Get the current population in a given location'''
289
-
290
- location: str = Field(..., description="The city and state, e.g. San Francisco, CA")
231
+ },
232
+ )
233
+ ```
291
234
 
292
- configurable_model = init_chat_model(
293
- "gpt-4o",
294
- configurable_fields=("model", "model_provider"),
295
- temperature=0
296
- )
235
+ ??? note "Bind tools to a configurable model"
297
236
 
298
- configurable_model_with_tools = configurable_model.bind_tools([GetWeather, GetPopulation])
299
- configurable_model_with_tools.invoke(
300
- "Which city is hotter today and which is bigger: LA or NY?"
301
- )
302
- # GPT-4o response with tool calls
237
+ You can call any chat model declarative methods on a configurable model in the
238
+ same way that you would with a normal model:
303
239
 
304
- configurable_model_with_tools.invoke(
305
- "Which city is hotter today and which is bigger: LA or NY?",
306
- config={"configurable": {"model": "claude-3-5-sonnet-20240620"}}
307
- )
308
- # Claude-3.5 sonnet response with tools
240
+ ```python
241
+ # pip install langchain langchain-openai langchain-anthropic
242
+ from langchain.chat_models import init_chat_model
243
+ from pydantic import BaseModel, Field
309
244
 
310
- .. versionadded:: 0.2.7
311
245
 
312
- .. versionchanged:: 0.2.8
246
+ class GetWeather(BaseModel):
247
+ '''Get the current weather in a given location'''
313
248
 
314
- Support for ``configurable_fields`` and ``config_prefix`` added.
249
+ location: str = Field(..., description="The city and state, e.g. San Francisco, CA")
315
250
 
316
- .. versionchanged:: 0.2.12
317
251
 
318
- Support for Ollama via langchain-ollama package added
319
- (langchain_ollama.ChatOllama). Previously,
320
- the now-deprecated langchain-community version of Ollama was imported
321
- (langchain_community.chat_models.ChatOllama).
252
+ class GetPopulation(BaseModel):
253
+ '''Get the current population in a given location'''
322
254
 
323
- Support for AWS Bedrock models via the Converse API added
324
- (model_provider="bedrock_converse").
255
+ location: str = Field(..., description="The city and state, e.g. San Francisco, CA")
325
256
 
326
- .. versionchanged:: 0.3.5
327
257
 
328
- Out of beta.
258
+ configurable_model = init_chat_model(
259
+ "gpt-4o", configurable_fields=("model", "model_provider"), temperature=0
260
+ )
329
261
 
330
- .. versionchanged:: 0.3.19
262
+ configurable_model_with_tools = configurable_model.bind_tools(
263
+ [
264
+ GetWeather,
265
+ GetPopulation,
266
+ ]
267
+ )
268
+ configurable_model_with_tools.invoke(
269
+ "Which city is hotter today and which is bigger: LA or NY?"
270
+ )
331
271
 
332
- Support for Deepseek, IBM, Nvidia, and xAI models added.
272
+ configurable_model_with_tools.invoke(
273
+ "Which city is hotter today and which is bigger: LA or NY?",
274
+ config={"configurable": {"model": "claude-sonnet-4-5-20250929"}},
275
+ )
276
+ ```
333
277
 
334
278
  """ # noqa: E501
335
279
  if not model and not configurable_fields:
@@ -347,7 +291,6 @@ def init_chat_model(
347
291
  return _init_chat_model_helper(
348
292
  cast("str", model),
349
293
  model_provider=model_provider,
350
- message_version=message_version,
351
294
  **kwargs,
352
295
  )
353
296
  if model:
@@ -364,28 +307,15 @@ def init_chat_model(
364
307
  def _init_chat_model_helper(
365
308
  model: str,
366
309
  *,
367
- model_provider: Optional[str] = None,
368
- message_version: Literal["v0", "v1"] = "v0",
310
+ model_provider: str | None = None,
369
311
  **kwargs: Any,
370
- ) -> Union[BaseChatModel, BaseChatModelV1]:
312
+ ) -> BaseChatModel:
371
313
  model, model_provider = _parse_model(model, model_provider)
372
- if message_version != "v0" and model_provider not in ("openai",):
373
- warnings.warn(
374
- f"Model provider {model_provider} does not support "
375
- f"message_version={message_version}. Defaulting to v0.",
376
- stacklevel=2,
377
- )
378
314
  if model_provider == "openai":
379
315
  _check_pkg("langchain_openai")
380
- if message_version == "v0":
381
- from langchain_openai import ChatOpenAI
382
-
383
- return ChatOpenAI(model=model, **kwargs)
384
- # v1
385
- from langchain_openai.v1 import ChatOpenAI as ChatOpenAIV1
386
-
387
- return ChatOpenAIV1(model=model, **kwargs)
316
+ from langchain_openai import ChatOpenAI
388
317
 
318
+ return ChatOpenAI(model=model, **kwargs)
389
319
  if model_provider == "anthropic":
390
320
  _check_pkg("langchain_anthropic")
391
321
  from langchain_anthropic import ChatAnthropic
@@ -460,7 +390,6 @@ def _init_chat_model_helper(
460
390
  _check_pkg("langchain_aws")
461
391
  from langchain_aws import ChatBedrock
462
392
 
463
- # TODO: update to use model= once ChatBedrock supports
464
393
  return ChatBedrock(model_id=model, **kwargs)
465
394
  if model_provider == "bedrock_converse":
466
395
  _check_pkg("langchain_aws")
@@ -498,9 +427,7 @@ def _init_chat_model_helper(
498
427
 
499
428
  return ChatPerplexity(model=model, **kwargs)
500
429
  supported = ", ".join(_SUPPORTED_PROVIDERS)
501
- msg = (
502
- f"Unsupported {model_provider=}.\n\nSupported model providers are: {supported}"
503
- )
430
+ msg = f"Unsupported {model_provider=}.\n\nSupported model providers are: {supported}"
504
431
  raise ValueError(msg)
505
432
 
506
433
 
@@ -528,8 +455,8 @@ _SUPPORTED_PROVIDERS = {
528
455
  }
529
456
 
530
457
 
531
- def _attempt_infer_model_provider(model_name: str) -> Optional[str]:
532
- if any(model_name.startswith(pre) for pre in ("gpt-3", "gpt-4", "o1", "o3")):
458
+ def _attempt_infer_model_provider(model_name: str) -> str | None:
459
+ if any(model_name.startswith(pre) for pre in ("gpt-", "o1", "o3")):
533
460
  return "openai"
534
461
  if model_name.startswith("claude"):
535
462
  return "anthropic"
@@ -552,38 +479,29 @@ def _attempt_infer_model_provider(model_name: str) -> Optional[str]:
552
479
  return None
553
480
 
554
481
 
555
- def _parse_model(model: str, model_provider: Optional[str]) -> tuple[str, str]:
556
- if (
557
- not model_provider
558
- and ":" in model
559
- and model.split(":")[0] in _SUPPORTED_PROVIDERS
560
- ):
482
+ def _parse_model(model: str, model_provider: str | None) -> tuple[str, str]:
483
+ if not model_provider and ":" in model and model.split(":")[0] in _SUPPORTED_PROVIDERS:
561
484
  model_provider = model.split(":")[0]
562
485
  model = ":".join(model.split(":")[1:])
563
486
  model_provider = model_provider or _attempt_infer_model_provider(model)
564
487
  if not model_provider:
565
488
  msg = (
566
- f"Unable to infer model provider for {model=}, please specify "
567
- f"model_provider directly."
489
+ f"Unable to infer model provider for {model=}, please specify model_provider directly."
568
490
  )
569
491
  raise ValueError(msg)
570
492
  model_provider = model_provider.replace("-", "_").lower()
571
493
  return model, model_provider
572
494
 
573
495
 
574
- def _check_pkg(pkg: str, *, pkg_kebab: Optional[str] = None) -> None:
496
+ def _check_pkg(pkg: str, *, pkg_kebab: str | None = None) -> None:
575
497
  if not util.find_spec(pkg):
576
498
  pkg_kebab = pkg_kebab if pkg_kebab is not None else pkg.replace("_", "-")
577
- msg = (
578
- f"Unable to import {pkg}. Please install with `pip install -U {pkg_kebab}`"
579
- )
499
+ msg = f"Unable to import {pkg}. Please install with `pip install -U {pkg_kebab}`"
580
500
  raise ImportError(msg)
581
501
 
582
502
 
583
503
  def _remove_prefix(s: str, prefix: str) -> str:
584
- if s.startswith(prefix):
585
- s = s[len(prefix) :]
586
- return s
504
+ return s.removeprefix(prefix)
587
505
 
588
506
 
589
507
  _DECLARATIVE_METHODS = ("bind_tools", "with_structured_output")
@@ -593,16 +511,14 @@ class _ConfigurableModel(Runnable[LanguageModelInput, Any]):
593
511
  def __init__(
594
512
  self,
595
513
  *,
596
- default_config: Optional[dict] = None,
597
- configurable_fields: Union[Literal["any"], list[str], tuple[str, ...]] = "any",
514
+ default_config: dict | None = None,
515
+ configurable_fields: Literal["any"] | list[str] | tuple[str, ...] = "any",
598
516
  config_prefix: str = "",
599
517
  queued_declarative_operations: Sequence[tuple[str, tuple, dict]] = (),
600
518
  ) -> None:
601
519
  self._default_config: dict = default_config or {}
602
- self._configurable_fields: Union[Literal["any"], list[str]] = (
603
- configurable_fields
604
- if configurable_fields == "any"
605
- else list(configurable_fields)
520
+ self._configurable_fields: Literal["any"] | list[str] = (
521
+ configurable_fields if configurable_fields == "any" else list(configurable_fields)
606
522
  )
607
523
  self._config_prefix = (
608
524
  config_prefix + "_"
@@ -643,14 +559,14 @@ class _ConfigurableModel(Runnable[LanguageModelInput, Any]):
643
559
  msg += "."
644
560
  raise AttributeError(msg)
645
561
 
646
- def _model(self, config: Optional[RunnableConfig] = None) -> Runnable:
562
+ def _model(self, config: RunnableConfig | None = None) -> Runnable:
647
563
  params = {**self._default_config, **self._model_params(config)}
648
564
  model = _init_chat_model_helper(**params)
649
565
  for name, args, kwargs in self._queued_declarative_operations:
650
566
  model = getattr(model, name)(*args, **kwargs)
651
567
  return model
652
568
 
653
- def _model_params(self, config: Optional[RunnableConfig]) -> dict:
569
+ def _model_params(self, config: RunnableConfig | None) -> dict:
654
570
  config = ensure_config(config)
655
571
  model_params = {
656
572
  _remove_prefix(k, self._config_prefix): v
@@ -658,14 +574,12 @@ class _ConfigurableModel(Runnable[LanguageModelInput, Any]):
658
574
  if k.startswith(self._config_prefix)
659
575
  }
660
576
  if self._configurable_fields != "any":
661
- model_params = {
662
- k: v for k, v in model_params.items() if k in self._configurable_fields
663
- }
577
+ model_params = {k: v for k, v in model_params.items() if k in self._configurable_fields}
664
578
  return model_params
665
579
 
666
580
  def with_config(
667
581
  self,
668
- config: Optional[RunnableConfig] = None,
582
+ config: RunnableConfig | None = None,
669
583
  **kwargs: Any,
670
584
  ) -> _ConfigurableModel:
671
585
  """Bind config to a Runnable, returning a new Runnable."""
@@ -697,7 +611,7 @@ class _ConfigurableModel(Runnable[LanguageModelInput, Any]):
697
611
 
698
612
  @property
699
613
  def InputType(self) -> TypeAlias:
700
- """Get the input type for this runnable."""
614
+ """Get the input type for this `Runnable`."""
701
615
  from langchain_core.prompt_values import (
702
616
  ChatPromptValueConcrete,
703
617
  StringPromptValue,
@@ -706,17 +620,13 @@ class _ConfigurableModel(Runnable[LanguageModelInput, Any]):
706
620
  # This is a version of LanguageModelInput which replaces the abstract
707
621
  # base class BaseMessage with a union of its subclasses, which makes
708
622
  # for a much better schema.
709
- return Union[
710
- str,
711
- Union[StringPromptValue, ChatPromptValueConcrete],
712
- list[AnyMessage],
713
- ]
623
+ return str | StringPromptValue | ChatPromptValueConcrete | list[AnyMessage]
714
624
 
715
625
  @override
716
626
  def invoke(
717
627
  self,
718
628
  input: LanguageModelInput,
719
- config: Optional[RunnableConfig] = None,
629
+ config: RunnableConfig | None = None,
720
630
  **kwargs: Any,
721
631
  ) -> Any:
722
632
  return self._model(config).invoke(input, config=config, **kwargs)
@@ -725,7 +635,7 @@ class _ConfigurableModel(Runnable[LanguageModelInput, Any]):
725
635
  async def ainvoke(
726
636
  self,
727
637
  input: LanguageModelInput,
728
- config: Optional[RunnableConfig] = None,
638
+ config: RunnableConfig | None = None,
729
639
  **kwargs: Any,
730
640
  ) -> Any:
731
641
  return await self._model(config).ainvoke(input, config=config, **kwargs)
@@ -734,8 +644,8 @@ class _ConfigurableModel(Runnable[LanguageModelInput, Any]):
734
644
  def stream(
735
645
  self,
736
646
  input: LanguageModelInput,
737
- config: Optional[RunnableConfig] = None,
738
- **kwargs: Optional[Any],
647
+ config: RunnableConfig | None = None,
648
+ **kwargs: Any | None,
739
649
  ) -> Iterator[Any]:
740
650
  yield from self._model(config).stream(input, config=config, **kwargs)
741
651
 
@@ -743,8 +653,8 @@ class _ConfigurableModel(Runnable[LanguageModelInput, Any]):
743
653
  async def astream(
744
654
  self,
745
655
  input: LanguageModelInput,
746
- config: Optional[RunnableConfig] = None,
747
- **kwargs: Optional[Any],
656
+ config: RunnableConfig | None = None,
657
+ **kwargs: Any | None,
748
658
  ) -> AsyncIterator[Any]:
749
659
  async for x in self._model(config).astream(input, config=config, **kwargs):
750
660
  yield x
@@ -752,10 +662,10 @@ class _ConfigurableModel(Runnable[LanguageModelInput, Any]):
752
662
  def batch(
753
663
  self,
754
664
  inputs: list[LanguageModelInput],
755
- config: Optional[Union[RunnableConfig, list[RunnableConfig]]] = None,
665
+ config: RunnableConfig | list[RunnableConfig] | None = None,
756
666
  *,
757
667
  return_exceptions: bool = False,
758
- **kwargs: Optional[Any],
668
+ **kwargs: Any | None,
759
669
  ) -> list[Any]:
760
670
  config = config or None
761
671
  # If <= 1 config use the underlying models batch implementation.
@@ -780,10 +690,10 @@ class _ConfigurableModel(Runnable[LanguageModelInput, Any]):
780
690
  async def abatch(
781
691
  self,
782
692
  inputs: list[LanguageModelInput],
783
- config: Optional[Union[RunnableConfig, list[RunnableConfig]]] = None,
693
+ config: RunnableConfig | list[RunnableConfig] | None = None,
784
694
  *,
785
695
  return_exceptions: bool = False,
786
- **kwargs: Optional[Any],
696
+ **kwargs: Any | None,
787
697
  ) -> list[Any]:
788
698
  config = config or None
789
699
  # If <= 1 config use the underlying models batch implementation.
@@ -808,11 +718,11 @@ class _ConfigurableModel(Runnable[LanguageModelInput, Any]):
808
718
  def batch_as_completed(
809
719
  self,
810
720
  inputs: Sequence[LanguageModelInput],
811
- config: Optional[Union[RunnableConfig, Sequence[RunnableConfig]]] = None,
721
+ config: RunnableConfig | Sequence[RunnableConfig] | None = None,
812
722
  *,
813
723
  return_exceptions: bool = False,
814
724
  **kwargs: Any,
815
- ) -> Iterator[tuple[int, Union[Any, Exception]]]:
725
+ ) -> Iterator[tuple[int, Any | Exception]]:
816
726
  config = config or None
817
727
  # If <= 1 config use the underlying models batch implementation.
818
728
  if config is None or isinstance(config, dict) or len(config) <= 1:
@@ -837,7 +747,7 @@ class _ConfigurableModel(Runnable[LanguageModelInput, Any]):
837
747
  async def abatch_as_completed(
838
748
  self,
839
749
  inputs: Sequence[LanguageModelInput],
840
- config: Optional[Union[RunnableConfig, Sequence[RunnableConfig]]] = None,
750
+ config: RunnableConfig | Sequence[RunnableConfig] | None = None,
841
751
  *,
842
752
  return_exceptions: bool = False,
843
753
  **kwargs: Any,
@@ -871,8 +781,8 @@ class _ConfigurableModel(Runnable[LanguageModelInput, Any]):
871
781
  def transform(
872
782
  self,
873
783
  input: Iterator[LanguageModelInput],
874
- config: Optional[RunnableConfig] = None,
875
- **kwargs: Optional[Any],
784
+ config: RunnableConfig | None = None,
785
+ **kwargs: Any | None,
876
786
  ) -> Iterator[Any]:
877
787
  yield from self._model(config).transform(input, config=config, **kwargs)
878
788
 
@@ -880,8 +790,8 @@ class _ConfigurableModel(Runnable[LanguageModelInput, Any]):
880
790
  async def atransform(
881
791
  self,
882
792
  input: AsyncIterator[LanguageModelInput],
883
- config: Optional[RunnableConfig] = None,
884
- **kwargs: Optional[Any],
793
+ config: RunnableConfig | None = None,
794
+ **kwargs: Any | None,
885
795
  ) -> AsyncIterator[Any]:
886
796
  async for x in self._model(config).atransform(input, config=config, **kwargs):
887
797
  yield x
@@ -890,16 +800,16 @@ class _ConfigurableModel(Runnable[LanguageModelInput, Any]):
890
800
  def astream_log(
891
801
  self,
892
802
  input: Any,
893
- config: Optional[RunnableConfig] = None,
803
+ config: RunnableConfig | None = None,
894
804
  *,
895
805
  diff: Literal[True] = True,
896
806
  with_streamed_output_list: bool = True,
897
- include_names: Optional[Sequence[str]] = None,
898
- include_types: Optional[Sequence[str]] = None,
899
- include_tags: Optional[Sequence[str]] = None,
900
- exclude_names: Optional[Sequence[str]] = None,
901
- exclude_types: Optional[Sequence[str]] = None,
902
- exclude_tags: Optional[Sequence[str]] = None,
807
+ include_names: Sequence[str] | None = None,
808
+ include_types: Sequence[str] | None = None,
809
+ include_tags: Sequence[str] | None = None,
810
+ exclude_names: Sequence[str] | None = None,
811
+ exclude_types: Sequence[str] | None = None,
812
+ exclude_tags: Sequence[str] | None = None,
903
813
  **kwargs: Any,
904
814
  ) -> AsyncIterator[RunLogPatch]: ...
905
815
 
@@ -907,16 +817,16 @@ class _ConfigurableModel(Runnable[LanguageModelInput, Any]):
907
817
  def astream_log(
908
818
  self,
909
819
  input: Any,
910
- config: Optional[RunnableConfig] = None,
820
+ config: RunnableConfig | None = None,
911
821
  *,
912
822
  diff: Literal[False],
913
823
  with_streamed_output_list: bool = True,
914
- include_names: Optional[Sequence[str]] = None,
915
- include_types: Optional[Sequence[str]] = None,
916
- include_tags: Optional[Sequence[str]] = None,
917
- exclude_names: Optional[Sequence[str]] = None,
918
- exclude_types: Optional[Sequence[str]] = None,
919
- exclude_tags: Optional[Sequence[str]] = None,
824
+ include_names: Sequence[str] | None = None,
825
+ include_types: Sequence[str] | None = None,
826
+ include_tags: Sequence[str] | None = None,
827
+ exclude_names: Sequence[str] | None = None,
828
+ exclude_types: Sequence[str] | None = None,
829
+ exclude_tags: Sequence[str] | None = None,
920
830
  **kwargs: Any,
921
831
  ) -> AsyncIterator[RunLog]: ...
922
832
 
@@ -924,18 +834,18 @@ class _ConfigurableModel(Runnable[LanguageModelInput, Any]):
924
834
  async def astream_log(
925
835
  self,
926
836
  input: Any,
927
- config: Optional[RunnableConfig] = None,
837
+ config: RunnableConfig | None = None,
928
838
  *,
929
839
  diff: bool = True,
930
840
  with_streamed_output_list: bool = True,
931
- include_names: Optional[Sequence[str]] = None,
932
- include_types: Optional[Sequence[str]] = None,
933
- include_tags: Optional[Sequence[str]] = None,
934
- exclude_names: Optional[Sequence[str]] = None,
935
- exclude_types: Optional[Sequence[str]] = None,
936
- exclude_tags: Optional[Sequence[str]] = None,
841
+ include_names: Sequence[str] | None = None,
842
+ include_types: Sequence[str] | None = None,
843
+ include_tags: Sequence[str] | None = None,
844
+ exclude_names: Sequence[str] | None = None,
845
+ exclude_types: Sequence[str] | None = None,
846
+ exclude_tags: Sequence[str] | None = None,
937
847
  **kwargs: Any,
938
- ) -> Union[AsyncIterator[RunLogPatch], AsyncIterator[RunLog]]:
848
+ ) -> AsyncIterator[RunLogPatch] | AsyncIterator[RunLog]:
939
849
  async for x in self._model(config).astream_log( # type: ignore[call-overload, misc]
940
850
  input,
941
851
  config=config,
@@ -955,15 +865,15 @@ class _ConfigurableModel(Runnable[LanguageModelInput, Any]):
955
865
  async def astream_events(
956
866
  self,
957
867
  input: Any,
958
- config: Optional[RunnableConfig] = None,
868
+ config: RunnableConfig | None = None,
959
869
  *,
960
870
  version: Literal["v1", "v2"] = "v2",
961
- include_names: Optional[Sequence[str]] = None,
962
- include_types: Optional[Sequence[str]] = None,
963
- include_tags: Optional[Sequence[str]] = None,
964
- exclude_names: Optional[Sequence[str]] = None,
965
- exclude_types: Optional[Sequence[str]] = None,
966
- exclude_tags: Optional[Sequence[str]] = None,
871
+ include_names: Sequence[str] | None = None,
872
+ include_types: Sequence[str] | None = None,
873
+ include_tags: Sequence[str] | None = None,
874
+ exclude_names: Sequence[str] | None = None,
875
+ exclude_types: Sequence[str] | None = None,
876
+ exclude_tags: Sequence[str] | None = None,
967
877
  **kwargs: Any,
968
878
  ) -> AsyncIterator[StreamEvent]:
969
879
  async for x in self._model(config).astream_events(
@@ -983,15 +893,15 @@ class _ConfigurableModel(Runnable[LanguageModelInput, Any]):
983
893
  # Explicitly added to satisfy downstream linters.
984
894
  def bind_tools(
985
895
  self,
986
- tools: Sequence[Union[dict[str, Any], type[BaseModel], Callable, BaseTool]],
896
+ tools: Sequence[dict[str, Any] | type[BaseModel] | Callable | BaseTool],
987
897
  **kwargs: Any,
988
- ) -> Runnable[LanguageModelInput, BaseMessage]:
898
+ ) -> Runnable[LanguageModelInput, AIMessage]:
989
899
  return self.__getattr__("bind_tools")(tools, **kwargs)
990
900
 
991
901
  # Explicitly added to satisfy downstream linters.
992
902
  def with_structured_output(
993
903
  self,
994
- schema: Union[dict, type[BaseModel]],
904
+ schema: dict | type[BaseModel],
995
905
  **kwargs: Any,
996
- ) -> Runnable[LanguageModelInput, Union[dict, BaseModel]]:
906
+ ) -> Runnable[LanguageModelInput, dict | BaseModel]:
997
907
  return self.__getattr__("with_structured_output")(schema, **kwargs)