
    Ng                     j    d dl mZmZ d dlZd dlZd dlmZmZ d dlm	Z	 d dl
mZ  G d de          ZdS )    )ListOptionalN)#AsyncCallbackManagerForRetrieverRunCallbackManagerForRetrieverRun)Document)BaseRetrieverc                       e Zd ZU dZeed<   	 dZee         ed<   	 dZ	eed<   	 dZ
eed<   	 d	Zeed
<   	 dZeed<   	 dededee         fdZdededee         fdZdS )RemoteLangChainRetrieverz`LangChain API` retriever.urlNheadersmessage	input_keyresponseresponse_keypage_contentpage_content_keymetadatametadata_keyqueryrun_managerreturnc                     t          j         j         j        |i j                  }|                                } fd| j                 D             S )N)jsonr   c                 ^    g | ])}t          |j                 |j                            *S )r   r   r   r   r   .0rselfs     k/var/www/html/ai-engine/env/lib/python3.11/site-packages/langchain_community/retrievers/remote_retriever.py
<listcomp>zDRemoteLangChainRetriever._get_relevant_documents.<locals>.<listcomp>$   O     
 
 
  t45$BS@T  
 
 
    )requestspostr   r   r   r   r   )r    r   r   r   results   `    r!   _get_relevant_documentsz0RemoteLangChainRetriever._get_relevant_documents   sq     =HDNE2DL
 
 
 
 
 
 
 D-.	
 
 
 	
r$   c                   K   t          j                    4 d {V }|                    d j         j         j        |i          4 d {V 	 }|                                 d {V }d d d           d {V  n# 1 d {V swxY w Y   d d d           d {V  n# 1 d {V swxY w Y    fd| j                 D             S )NPOST)r   r   c                 ^    g | ])}t          |j                 |j                            *S r   r   r   s     r!   r"   zERemoteLangChainRetriever._aget_relevant_documents.<locals>.<listcomp>3   r#   r$   )aiohttpClientSessionrequestr   r   r   r   r   )r    r   r   sessionr   r'   s   `     r!   _aget_relevant_documentsz1RemoteLangChainRetriever._aget_relevant_documents+   s      (** 	/ 	/ 	/ 	/ 	/ 	/ 	/g$,dne=T '   / / / / / / / /'}}....../ / / / / / / / / / / / / / / / / / / / / / / / / / /	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/

 
 
 
 D-.	
 
 
 	
s5   1BA<*B<
B	B	B	
B
B),B))__name__
__module____qualname____doc__str__annotations__r   r   dictr   r   r   r   r   r   r   r(   r   r0    r$   r!   r
   r
      s         $$	HHH*"GXd^""")Is2"L#"""5*c***:"L#"""6

*H
	h
 
 
 


*M
	h
 
 
 
 
 
r$   r
   )typingr   r   r,   r%   langchain_core.callbacksr   r   langchain_core.documentsr   langchain_core.retrieversr   r
   r8   r$   r!   <module>r=      s    ! ! ! ! ! ! ! !          . - - - - - 3 3 3 3 3 3+
 +
 +
 +
 +
} +
 +
 +
 +
 +
r$   