
    3fi!                         d Z ddlmZmZmZmZ ddlmZ ddlm	Z	m
Z
 ddlmZ ddlmZ  eddd	
       G d de             Zy)z!Tool for the Metaphor search API.    )DictListOptionalUnion)
deprecated)AsyncCallbackManagerForToolRunCallbackManagerForToolRun)BaseTool)MetaphorSearchAPIWrapperz0.0.15z1.0zlangchain_exa.ExaSearchResults)sinceremovalalternativec                   \   e Zd ZU dZdZeed<   dZeed<   eed<   	 	 	 	 	 	 	 	 dded	e	d
e
ee      de
ee      de
e   de
e   de
e   de
e   de
e   de
e   deee   ef   fdZ	 	 	 	 	 	 	 	 dded	e	d
e
ee      de
ee      de
e   de
e   de
e   de
e   de
e   de
e   deee   ef   fdZy)MetaphorSearchResultsz=Tool that queries the Metaphor Search API and gets back json.metaphor_search_results_jsonnamezyA wrapper around Metaphor Search. Input should be a Metaphor-optimized query. Output is a JSON array of the query resultsdescriptionapi_wrapperNquerynum_resultsinclude_domainsexclude_domainsstart_crawl_dateend_crawl_datestart_published_dateend_published_dateuse_autopromptrun_managerreturnc                     	 | j                   j                  |||||||||		      S # t        $ r}t        |      cY d}~S d}~ww xY w)zUse the tool.N)r   results	Exceptionreprselfr   r   r   r   r   r   r   r   r   r   es               l/var/www/auto_recruiter/arenv/lib/python3.12/site-packages/langchain_community/tools/metaphor_search/tool.py_runzMetaphorSearchResults._run   sV    	##++ $"
 
  	7N	s   "% 	A
>AAc                    K   	 | j                   j                  |||||||||		       d{   S 7 # t        $ r}t        |      cY d}~S d}~ww xY ww)zUse the tool asynchronously.N)r   results_asyncr"   r#   r$   s               r'   _arunzMetaphorSearchResults._arun<   sc     	))77 $"
 
 
 
  	7N	s<   A&1 /1 A1 	A
A
AA
AA)NNNNNNNN)__name__
__module____qualname____doc__r   str__annotations__r   r   intr   r   boolr	   r   r   r(   r   r+        r'   r   r      s    H.D#.	6  
 *) 04/3*.(,.2,0)-;?  "$s),	
 "$s), #3- ! 'sm %SM ! 78 
tDz3	B 04/3*.(,.2,0)-@D  "$s),	
 "$s), #3- ! 'sm %SM ! <= 
tDz3	r5   r   N)r/   typingr   r   r   r   langchain_core._api.deprecationr   langchain_core.callbacksr   r	   langchain_core.toolsr
   -langchain_community.utilities.metaphor_searchr   r   r4   r5   r'   <module>r;      sJ    ' . . 6 * R 
0
CH C
Cr5   