File: //usr/local/lib/python3.10/dist-packages/langchain/agents/__pycache__/__init__.cpython-310.pyc
o
���g� �
@ s d Z ddlmZ ddlmZmZ ddlmZ ddlm Z ddl
mZ ddlm
Z
ddlmZmZmZmZmZmZ dd lmZ dd
lmZmZ ddlmZ ddlmZ dd
lmZ ddl m!Z! ddl"m#Z# ddl$m%Z% ddl&m'Z'm(Z( ddl)m*Z*m+Z+ ddl,m-Z- ddl.m/Z/ ddl0m1Z1 ddl2m3Z3m4Z4 ddl5m6Z6m7Z7 ddl8m9Z9m:Z: ddl;m<Z< ddl=m>Z>m?Z? er�ddl@mAZA ddlBmCZCmDZDmEZE ddlFmGZG ddlHmIZI ddlJmKZK dd lLmMZM dd!lNmOZO g d"�ZPd#d$d%d&d'd(d)d)d)d*� ZQe
eReQd+�ZSd,eTd-efd.d/�ZUg d0�ZVd1S )2a
**Agent** is a class that uses an LLM to choose a sequence of actions to take.
In Chains, a sequence of actions is hardcoded. In Agents,
a language model is used as a reasoning engine to determine which actions
to take and in which order.
Agents select and use **Tools** and **Toolkits** for actions.
**Class hierarchy:**
.. code-block::
BaseSingleActionAgent --> LLMSingleActionAgent
OpenAIFunctionsAgent
XMLAgent
Agent --> <name>Agent # Examples: ZeroShotAgent, ChatAgent
BaseMultiActionAgent --> OpenAIMultiFunctionsAgent
**Main helpers:**
.. code-block::
AgentType, AgentExecutor, AgentOutputParser, AgentExecutorIterator,
AgentAction, AgentFinish
� )�Path)�
TYPE_CHECKING�Any)�as_import_path)�Tool)�tool)�create_importer)�Agent�
AgentExecutor�AgentOutputParser�BaseMultiActionAgent�BaseSingleActionAgent�LLMSingleActionAgent)�AgentExecutorIterator)�create_vectorstore_agent�create_vectorstore_router_agent)� AgentType)�ConversationalAgent)�ConversationalChatAgent)�initialize_agent)�create_json_chat_agent)�
load_agent)� MRKLChain�
ZeroShotAgent)�OpenAIFunctionsAgent�create_openai_functions_agent)�OpenAIMultiFunctionsAgent)�create_openai_tools_agent)�create_react_agent)�
ReActChain�ReActTextWorldAgent)�SelfAskWithSearchChain�!create_self_ask_with_search_agent)�StructuredChatAgent�create_structured_chat_agent)�create_tool_calling_agent)�XMLAgent�create_xml_agent)�create_json_agent)�get_all_tool_names�load_huggingface_tool�
load_tools)�create_openapi_agent)�create_pbi_agent)�create_pbi_chat_agent)�create_spark_sql_agent)�create_sql_agent)�create_csv_agent�create_pandas_dataframe_agent�create_spark_dataframe_agent�create_xorbits_agentz,langchain_community.agent_toolkits.json.basez/langchain_community.agent_toolkits.openapi.basez/langchain_community.agent_toolkits.powerbi.basez4langchain_community.agent_toolkits.powerbi.chat_basez1langchain_community.agent_toolkits.spark_sql.basez+langchain_community.agent_toolkits.sql.basez-langchain_community.agent_toolkits.load_tools) r( r, r- r. r/ r0 r+ r* r) )�deprecated_lookups�name�returnc C s\ | t v r*tt�jd }ttt�j| |d�}d| }d| }t| � d|� d|� d���t| �S )zGet attr name.� )�suffix�relative_toz
langchain.zlangchain_experimental.z� has been moved to langchain experimental. See https://github.com/langchain-ai/langchain/discussions/11680for more information.
Please update your import statement from: `z` to `z`.)�DEPRECATED_CODEr �__file__�parentsr �parent�ImportError�_import_attribute)r6 �HERE�
relative_path�old_path�new_path� rE �D/usr/local/lib/python3.10/dist-packages/langchain/agents/__init__.py�__getattr__w s ����rG )*r r
r r r r r
r r r r r r r r r! r# r r( r, r- r. r/ r0 r r r) r r r* r+ r&