Ë
    ´Œjµ  ã                   ó  — d Z ddlZddlmZ ddlmZ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e   dee
   dee   dee   deee      dedefd„«       Zy)zLoad agent.é    N)ÚSequence)ÚAnyÚOptional)Ú
deprecated)ÚBaseCallbackManager)ÚBaseLanguageModel)ÚBaseTool)ÚAGENT_DEPRECATION_WARNING)ÚAgentExecutor)Ú	AgentType)Ú
load_agent)ÚAGENT_TO_CLASSz0.1.0z1.0)ÚmessageÚremoval)ÚtagsÚtoolsÚllmÚagentÚcallback_managerÚ
agent_pathÚagent_kwargsr   ÚkwargsÚreturnc                ót  — |rt        |«      ng }|€|€t        j                  }|�|�d}	t        |	«      ‚|��|t        vr&d|› dt	        j
                  «       › d�}	t        |	«      ‚|j                  t        |t        «      r|j                  n|«       t        |   }
|xs i } |
j                  || fd|i|¤Ž}n\|�Mt        ||| |¬«      }t        j                  t        «      5  |j                  |j                  «       ddd«       nd}	t        |	«      ‚t        j                   d
|| ||d	œ|¤ŽS # 1 sw Y   Œ#xY w)a\  Load an agent executor given tools and LLM.

    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. Defaults to None.
        callback_manager: CallbackManager to use. Global callback manager is used if
            not provided. Defaults to None.
        agent_path: Path to serialized agent to use. If None and agent is also None,
            will default to AgentType.ZERO_SHOT_REACT_DESCRIPTION. Defaults to None.
        agent_kwargs: Additional keyword arguments to pass to the underlying agent.
            Defaults to None.
        tags: Tags to apply to the traced runs. Defaults to None.
        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               úe/var/www/html/Fitness-lenito-AI-main/venv/lib/python3.12/site-packages/langchain/agents/initialize.pyÚinitialize_agentr/      s{  € ñP ŒD�ŒJ B€EØ€}˜Ð+Ü×5Ñ5ˆØÐ˜ZÐ3ð.ð 	ô ˜‹oÐØÐØœÑ&à*¨5¨'ð 2$Ü$2×$7Ñ$7Ó$9Ð#:¸!ð=ð ô ˜S“/Ð!Ø�‰¤J¨u´iÔ$@�U—[’[ÀeÔLÜ" 5Ñ)ˆ	Ø#Ò) rˆØ0�I×0Ñ0ØØñ
ð .ð
ð ñ	
‰	ð 
Ð	ÜØØØØ-ô	
ˆ	ô × Ñ Ô!4Õ5à�L‰L˜×.Ñ.Ô/÷ 6Ð5ð
 Xð 	ô ˜‹oÐÜ×-Ñ-ð ØØØ)Øñ	ð
 ñð ÷ 6Ð5ús   Ã"D.Ä.D7)NNNN)Ú__doc__r%   Úcollections.abcr   Útypingr   r   Úlangchain_core._apir   Úlangchain_core.callbacksr   Úlangchain_core.language_modelsr   Úlangchain_core.toolsr	   Úlangchain._api.deprecationr
   Úlangchain.agents.agentr   Úlangchain.agents.agent_typesr   Úlangchain.agents.loadingr   Úlangchain.agents.typesr   ÚstrÚdictr/   r   ó    r.   Ú<module>r?      sé   ðÙ ã Ý $ß  å *Ý 8Ý <Ý )å @Ý 0Ý 2Ý /Ý 1ñ ØØ%Øôð "&Ø6:Ø $Ø#'ðQð %)òQØ�HÑðQà	ðQð �IÑðQð Ð2Ñ3ð	Qð
 ˜‘ðQð ˜4‘.ðQð �8˜C‘=Ñ
!ðQð ðQð òQóñ
Qr>   