
    dh                        S SK Jr  S SKJrJrJrJr  S SKJr  S SK	J
r
Jr  S SKJr  S SKJr  S SKJr  S SKJr  S S	KJrJr  \(       a  S S
KJr  SS jr\" SSSS9 " S S\5      5       rg)    )annotations)TYPE_CHECKINGAnyDictList)
deprecated)#AsyncCallbackManagerForRetrieverRunCallbackManagerForRetrieverRun)Document)BaseChatModel)HumanMessage)BaseRetriever)
ConfigDictField)BaseMessagec                V   SU R                   ;  a  / O)U R                   S    Vs/ sH  n[        US   US9PM     snnUR                  [        U R                  R                  SU R                   S   U R                   S   U R                   S   U R                   S   S	.S95        U$ s  snf )
N	documentssnippet)page_contentmetadatamodel_response	citationssearch_resultssearch_queriestoken_count)typer   r   r   r   )generation_infor   appendmessagecontent)responsedocdocss      k/var/www/html/shao/venv/lib/python3.13/site-packages/langchain_community/retrievers/cohere_rag_retriever.py	_get_docsr%      s     h666 	  //<
< #i.3?<
 	 	KK!))11(%55kB"*":":;K"L"*":":;K"L'77F		
 K#
s   B&z0.0.30z1.0z#langchain_cohere.CohereRagRetriever)sinceremovalalternative_importc                      \ rS rSr% Sr\" S S9rS\S'    S\S'    \" S	S
9r	        SS jr
        SS jrSrg)CohereRagRetriever,   zCohere Chat API with RAG.c                     SS0/$ )Nidz
web-search r.       r$   <lambda>CohereRagRetriever.<lambda>4   s    T<<P;Qr/   )default_factoryz
List[Dict]
connectorsr   llmT)arbitrary_types_allowedc                   [        US9//nU R                  R                  " U4U R                  UR	                  5       S.UD6R
                  S   S   n[        U5      $ N)r    )r3   	callbacksr   )r   r4   generater3   	get_childgenerationsr%   selfqueryrun_managerkwargsmessagesress         r$   _get_relevant_documents*CohereRagRetriever._get_relevant_documentsD   sq     /;5.I-J,Khh
!++-
 	

 +a
  ~r/   c                  #    [        US9//nU R                  R                  " U4U R                  UR	                  5       S.UD6I S h  vN R
                  S   S   n[        U5      $  N7fr7   )r   r4   	agenerater3   r:   r;   r%   r<   s         r$   _aget_relevant_documents+CohereRagRetriever._aget_relevant_documentsP   s~      /;5.I-J,K(($$??%//1 	  +a  ~s   AA+	A)
 A+r.   N)r>   strr?   r
   r@   r   returnList[Document])r>   rI   r?   r	   r@   r   rJ   rK   )__name__
__module____qualname____firstlineno____doc__r   r3   __annotations__r   model_configrC   rG   __static_attributes__r.   r/   r$   r*   r*   ,   s     $"3QRJ
R 
" $L

*H
TW
	
 9	
  
r/   r*   N)r!   r   rJ   rK   )
__future__r   typingr   r   r   r   langchain_core._api.deprecationr   langchain_core.callbacksr	   r
   langchain_core.documentsr   *langchain_core.language_models.chat_modelsr   langchain_core.messagesr   langchain_core.retrieversr   pydanticr   r   r   r%   r*   r.   r/   r$   <module>r]      s[    " 1 1 6 . D 0 3 &30 
<
/ /
/r/   