
    @h                     R    S r SSKJr  SSKJrJr  SSKJrJr   " S S\5      r	SS/r
g)	zInterface for tools.    )Optional)AsyncCallbackManagerForToolRunCallbackManagerForToolRun)BaseTooltoolc            	           \ rS rSr% SrSr\\S'    Sr\\S'     SS\S	\	\   S
\
\   S\4S jjr SS\S	\	\   S
\
\   S\4S jjrSrg)InvalidTool   z@Tool that is run when invalid tool name is encountered by agent.invalid_toolnamez<Called when tool name is invalid. Suggests valid tool names.descriptionNrequested_tool_nameavailable_tool_namesrun_managerreturnc                 F    SR                  [        U5      5      nU SU S3$ )zUse the tool., " is not a valid tool, try one of [].joinlistselfr   r   r   available_tool_names_strs        N/var/www/html/shao/venv/lib/python3.13/site-packages/langchain/agents/tools.py_runInvalidTool._run   s6     $(99T2F-G#H "# $34B8	
    c                 N   #    SR                  [        U5      5      nU SU S3$ 7f)zUse the tool asynchronously.r   r   r   r   r   s        r   _arunInvalidTool._arun!   s9      $(99T2F-G#H "# $34B8	
s   #% )N)__name__
__module____qualname____firstlineno____doc__r   str__annotations__r   r   r   r   r   r   r!   __static_attributes__r#   r   r   r	   r	      s    JD#UKU" <@	
 
 #3i
 78	

 

" AE	
 
 #3i
 <=	

 

 
r   r	   r   N)r(   typingr   langchain_core.callbacksr   r   langchain_core.toolsr   r   r	   __all__r#   r   r   <module>r0      s.      0 
(  
F &
!r   