
    @h              
          S r SSKJr  SSKJrJr  SSKJr  SSKJ	r	  SSK
Jr  SSKJr  SSKJrJrJrJrJrJr  SS	KJr  SS
KJrJr  SSKJr  SSKJr  SSKJr  SSK J!r!  SSK"J#r#  SSK$J%r%  SSK&J'r'J(r(  SSK)J*r*J+r+  SSK,J-r-  SSK.J/r/  SSK0J1r1  SSK2J3r3J4r4  SSK5J6r6J7r7  SSK8J9r9J:r:  SSK;J<r<  SSK=J>r>J?r?  \(       a.  SSK@JArA  SSKBJCrCJDrDJErE  SSKFJGrG  SSKHJIrI  SSKJJKrK  SS KLJMrM  SS!KNJOrO  / S"QrPS#S$S%S&S'S(S)S)S)S*.	rQ\" \R\QS+9rSS,\TS-\4S. jrU/ S/QrVg0)1a  
**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/   r0   r1   r,   r+   r*   )deprecated_lookupsnamereturnc                     U [         ;   a^  [        [        5      R                  S   n[	        [        [        5      R
                  U US9nSU-   nSU-   nU  SU SU S3n[        U5      e[        U 5      $ )zGet attr name.   )suffixrelative_toz
langchain.zlangchain_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)r7   HERErelative_pathold_pathnew_pathmsgs         Q/var/www/html/shao/venv/lib/python3.13/site-packages/langchain/agents/__init__.py__getattr__rI   w   s    H~%%a(&N!!

  -/,}<f : ;C6(SUW 	 #T""    )*r
   r   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r$   r   r'   r   r)   r   r   r   r-   r.   r/   r   r#   r0   r1   r%   r&   r   r   r(   r*   r   r   r+   r,   r   N)W__doc__pathlibr   typingr   r   langchain_core._api.pathr   langchain_core.toolsr   langchain_core.tools.convertr   langchain._apir	   langchain.agents.agentr
   r   r   r   r   r   langchain.agents.agent_iteratorr   0langchain.agents.agent_toolkits.vectorstore.baser   r   langchain.agents.agent_typesr   $langchain.agents.conversational.baser   )langchain.agents.conversational_chat.baser   langchain.agents.initializer   langchain.agents.json_chat.baser   langchain.agents.loadingr   langchain.agents.mrkl.baser   r   ,langchain.agents.openai_functions_agent.baser   r   2langchain.agents.openai_functions_multi_agent.baser   "langchain.agents.openai_tools.baser   langchain.agents.react.agentr   langchain.agents.react.baser    r!   *langchain.agents.self_ask_with_search.baser"   r#   %langchain.agents.structured_chat.baser$   r%   (langchain.agents.tool_calling_agent.baser&   langchain.agents.xml.baser'   r(   ,langchain_community.agent_toolkits.json.baser)   -langchain_community.agent_toolkits.load_toolsr*   r+   r,   /langchain_community.agent_toolkits.openapi.baser-   /langchain_community.agent_toolkits.powerbi.baser.   4langchain_community.agent_toolkits.powerbi.chat_baser/   1langchain_community.agent_toolkits.spark_sql.baser0   +langchain_community.agent_toolkits.sql.baser1   r=   DEPRECATED_LOOKUP__package__rB   strrI   __all__ rJ   rH   <module>rq      s   >  % 3 % - *  B 3 D M 8 B / ? Y H ; G O @N 
 UP YL HMISQEALI
  $KDUV #c #c #,+rJ   