§
    ™ŠtjŠ  ã                   ó0  — d Z ddlZddlmZ ddlmZ ddlmZ ddlm	Z	 ddl
mZ ddlmZ dd	lmZ dd
lmZ ddlmZ ddlmZ ddlmZ  eded¬¦  «        	 	 	 	 dddœdee         dededz  de	dz  dedz  dedz  dee         dz  dedefd„¦   «         ZdS )zLoad agent.é    N)ÚSequence)ÚAny)Ú
deprecated)ÚBaseCallbackManager)ÚBaseLanguageModel)ÚBaseTool)ÚAGENT_DEPRECATION_WARNING)ÚAgentExecutor)Ú	AgentType)Ú
load_agent)ÚAGENT_TO_CLASSz0.1.0z2.0.0)ÚmessageÚremoval)ÚtagsÚtoolsÚllmÚagentÚcallback_managerÚ
agent_pathÚagent_kwargsr   ÚkwargsÚreturnc                ó’  — |rt          |¦  «        ng }|€|€t          j        }|�|�d}	t          |	¦  «        ‚|�†|t          vr)d|› dt	          j        ¦   «         › d�}	t          |	¦  «        ‚|                     t          |t          ¦  «        r|j        n|¦  «         t          |         }
|pi } |
j	        || fd|i|¤Ž}nr|�_t          ||| |¬¦  «        }t          j        t          ¦  «        5  |                     |j        ¦  «         ddd¦  «         n# 1 swxY w Y   nd}	t          |	¦  «        ‚t          j        d
|| ||d	œ|¤ŽS )a  Load an agent executor given tools and LLM.

    !!! warning

        This function is no deprecated in favor of
        [`create_agent`][langchain.agents.create_agent] from the `langchain`
        package, which provides a more flexible agent factory with middleware
        support, structured output, and integration with LangGraph.

        For migration guidance, see
        [Migrating to langchain v1](https://docs.langchain.com/oss/python/migrate/langchain-v1)
        and
        [Migrating from AgentExecutor](https://python.langchain.com/docs/how_to/migrate_agent/).

    Args:
        tools: List of tools this agent has access to.
        llm: Language model to use as the agent.
        agent: Agent type to use. If `None` and agent_path is also None, will default
            to AgentType.ZERO_SHOT_REACT_DESCRIPTION.
        callback_manager: CallbackManager to use. Global callback manager is used if
            not provided.
        agent_path: Path to serialized agent to use. If `None` and agent is also None,
            will default to AgentType.ZERO_SHOT_REACT_DESCRIPTION.
        agent_kwargs: Additional keyword arguments to pass to the underlying agent.
        tags: Tags to apply to the traced runs.
        kwargs: Additional keyword arguments passed to the agent executor.

    Returns:
        An agent executor.

    Raises:
        ValueError: If both `agent` and `agent_path` are specified.
        ValueError: If `agent` is not a valid agent type.
        ValueError: If both `agent` and `agent_path` are None.
    NzLBoth `agent` and `agent_path` are specified, but at most only one should be.zGot unknown agent type: z. Valid types are: ú.r   )r   r   r   zISomehow both `agent` and `agent_path` are None, this should never happen.)r   r   r   r   © )Úlistr   ÚZERO_SHOT_REACT_DESCRIPTIONÚ
ValueErrorr   ÚkeysÚappendÚ
isinstanceÚvalueÚfrom_llm_and_toolsr   Ú
contextlibÚsuppressÚNotImplementedErrorÚ_agent_typer
   Úfrom_agent_and_tools)r   r   r   r   r   r   r   r   Útags_ÚmsgÚ	agent_clsÚ	agent_objs               úa/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/langchain_classic/agents/initialize.pyÚinitialize_agentr.      s  € ðf Ð&�D�‰JŒJˆJ B€EØ€}˜Ð+ÝÔ5ˆØÐ˜ZÐ3ð.ð 	õ ˜‰oŒoÐØÐØ�Ð&Ð&ð=¨5ð =ð =Ý$2Ô$7Ñ$9Ô$9ð=ð =ð =ð õ ˜S‘/”/Ð!Ø�Š¥J¨uµiÑ$@Ô$@ÐK�U”[�[ÀeÑLÔLÐLÝ" 5Ô)ˆ	Ø#Ð) rˆØ0�IÔ0ØØð
ð 
ð .ð
ð ð	
ð 
ˆ	ˆ	ð 
Ð	ÝØØØØ-ð	
ñ 
ô 
ˆ	õ Ô Õ!4Ñ5Ô5ð 	0ð 	0à�LŠL˜Ô.Ñ/Ô/Ð/ð	0ð 	0ð 	0ñ 	0ô 	0ð 	0ð 	0ð 	0ð 	0ð 	0ð 	0øøøð 	0ð 	0ð 	0ð 	0øð
 Xð 	õ ˜‰oŒoÐÝÔ-ð ØØØ)Øð	ð ð
 ðð ð s   Ã/DÄDÄD)NNNN)Ú__doc__r$   Úcollections.abcr   Útypingr   Úlangchain_core._apir   Úlangchain_core.callbacksr   Úlangchain_core.language_modelsr   Úlangchain_core.toolsr   Ú"langchain_classic._api.deprecationr	   Úlangchain_classic.agents.agentr
   Ú$langchain_classic.agents.agent_typesr   Ú langchain_classic.agents.loadingr   Úlangchain_classic.agents.typesr   ÚstrÚdictr.   r   ó    r-   ú<module>r>      sÎ  ðØ Ð à Ð Ð Ð Ø $Ð $Ð $Ð $Ð $Ð $Ø Ð Ð Ð Ð Ð à *Ð *Ð *Ð *Ð *Ð *Ø 8Ð 8Ð 8Ð 8Ð 8Ð 8Ø <Ð <Ð <Ð <Ð <Ð <Ø )Ð )Ð )Ð )Ð )Ð )à HÐ HÐ HÐ HÐ HÐ HØ 8Ð 8Ð 8Ð 8Ð 8Ð 8Ø :Ð :Ð :Ð :Ð :Ð :Ø 7Ð 7Ð 7Ð 7Ð 7Ð 7Ø 9Ð 9Ð 9Ð 9Ð 9Ð 9ð €ØØ%Øðñ ô ð #Ø37Ø!Ø $ð\ð "&ð\ð \ð \Ø�HÔð\à	ð\ð �tÑð\ð *¨DÑ0ð	\ð
 �d‘
ð\ð ˜‘+ð\ð �3Œ-˜$Ñ
ð\ð ð\ð ð\ð \ð \ñô ð
\ð \ð \r=   