
    dhp&                     D   S r SSKrSSKJrJr  \(       Ga  SSKJr  SSK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  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!  SSK"J#r#  SSK$J%r%J&r&J'r'  SSK(J)r)  SSK*J+r+  SSK,J-r-  SSK.J/r/J0r0  SSK1J2r2  SSK3J4r4  SSK5J6r6  SSK7J8r8  SSK9J:r:  SSK;J<r<  SSK=J>r>  SSK?J@r@  SS KAJBrB  SS!KCJDrD  SS"KEJFrF  SS#KGJHrH  SS$KIJJrJ  SS%KKJLrL  SS&KMJNrN  SS'KOJPrP  SS(KQJRrR  SS)KSJTrT  SS*KUJVrV  SS+KWJXrX  SS,KYJZrZ  SS-K[J\r\  0 S.S/_S0S1_S2S3_S4S5_S6S7_S8S9_S:S9_S;S<_S=S>_S?S@_SASB_SCSD_SESF_SGSH_SISJ_SKSL_SMSN_0 SOSP_SQSN_SRSN_SSST_SUSV_SWSX_SYSX_SZS[_S\S]_S^S__S`Sa_SbSc_SdSe_SfSg_ShSi_SjSk_SlSm_ESnSoSpSqSrSsStSuSvSwSxSySz.Er]S{\^S|\4S} jr_/ S~Qr`g)a;  **Retriever** class returns Documents given a text **query**.

It is more general than a vector store. A retriever does not need to be able to
store documents, only to return (or retrieve) it. Vector stores can be used as
the backbone of a retriever, but there are other types of retrievers as well.

**Class hierarchy:**

.. code-block::

    BaseRetriever --> <name>Retriever  # Examples: ArxivRetriever, MergerRetriever

**Main helpers:**

.. code-block::

    Document, Serializable, Callbacks,
    CallbackManagerForRetrieverRun, AsyncCallbackManagerForRetrieverRun
    N)TYPE_CHECKINGAny)ArceeRetriever)ArxivRetriever)AskNewsRetriever)AzureAISearchRetrieverAzureCognitiveSearchRetriever)AmazonKnowledgeBasesRetriever)BM25Retriever)BreebsRetriever)ChaindeskRetriever)ChatGPTPluginRetriever)CohereRagRetriever)DocArrayRetriever)DriaRetriever)ElasticSearchBM25Retriever)EmbedchainRetriever)"GoogleDocumentAIWarehouseRetriever)$GoogleCloudEnterpriseSearchRetriever&GoogleVertexAIMultiTurnSearchRetrieverGoogleVertexAISearchRetriever)KayAiRetriever)AmazonKendraRetriever)KNNRetriever)LlamaIndexGraphRetrieverLlamaIndexRetriever)MetalRetriever)MilvusRetriever)NanoPQRetriever)NeedleRetriever)OutlineRetriever)PineconeHybridSearchRetriever)PubMedRetriever)QdrantSparseVectorRetriever)RememberizerRetriever)RemoteLangChainRetriever)SVMRetriever)TavilySearchAPIRetriever)TFIDFRetriever)NeuralDBRetriever)VespaRetriever)WeaviateHybridSearchRetriever)WebResearchRetriever)WikipediaRetriever)YouRetriever)ZepRetriever)ZepCloudRetriever)ZillizRetrieverr   z%langchain_community.retrievers.kendrar
   z&langchain_community.retrievers.bedrockr   z$langchain_community.retrievers.arceer   z$langchain_community.retrievers.arxivr   z&langchain_community.retrievers.asknewsr   z.langchain_community.retrievers.azure_ai_searchr	   r   z#langchain_community.retrievers.bm25r   z%langchain_community.retrievers.breebsr   z(langchain_community.retrievers.chaindeskr   z7langchain_community.retrievers.chatgpt_plugin_retrieverr   z3langchain_community.retrievers.cohere_rag_retrieverr   z'langchain_community.retrievers.docarrayr   z)langchain_community.retrievers.dria_indexr   z2langchain_community.retrievers.elastic_search_bm25r   z)langchain_community.retrievers.embedchainr   z6langchain_community.retrievers.google_vertex_ai_searchr   z@langchain_community.retrievers.google_cloud_documentai_warehouser   r   r   z"langchain_community.retrievers.knnr   z"langchain_community.retrievers.kayr   z*langchain_community.retrievers.llama_indexr   r   z$langchain_community.retrievers.metalr   z%langchain_community.retrievers.milvusr   z%langchain_community.retrievers.nanopqr    z%langchain_community.retrievers.needler!   z&langchain_community.retrievers.outliner"   z5langchain_community.retrievers.pinecone_hybrid_searchr#   z%langchain_community.retrievers.pubmedr$   z=langchain_community.retrievers.qdrant_sparse_vector_retrieverr%   z+langchain_community.retrievers.rememberizerr&   z/langchain_community.retrievers.remote_retrieverz"langchain_community.retrievers.svmz$langchain_community.retrievers.tfidfz0langchain_community.retrievers.tavily_search_apiz.langchain_community.retrievers.vespa_retrieverz5langchain_community.retrievers.weaviate_hybrid_searchz+langchain_community.retrievers.web_researchz(langchain_community.retrievers.wikipediaz"langchain_community.retrievers.youz"langchain_community.retrievers.zepz(langchain_community.retrievers.zep_cloudz%langchain_community.retrievers.zillizz/langchain_community.retrievers.thirdai_neuraldb)r'   r)   r(   r+   r,   r-   r.   r/   r0   r1   r2   r*   namereturnc                     U [         ;   a(  [        R                  " [         U    5      n[        X5      $ [	        S[
         SU  35      e)Nzmodule z has no attribute )_module_lookup	importlibimport_modulegetattrAttributeError__name__)r3   modules     _/var/www/html/shao/venv/lib/python3.13/site-packages/langchain_community/retrievers/__init__.py__getattr__r>      sC    ~(()=>v$$
78*,>tfE
FF    ).r   r
   r   r   r   r   r	   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r*   r!   r"   r#   r$   r%   r&   r'   r(   r)   r+   r,   r-   r.   r/   r0   r1   r2   )a__doc__r7   typingr   r   $langchain_community.retrievers.arceer   $langchain_community.retrievers.arxivr   &langchain_community.retrievers.asknewsr   .langchain_community.retrievers.azure_ai_searchr   r	   &langchain_community.retrievers.bedrockr
   #langchain_community.retrievers.bm25r   %langchain_community.retrievers.breebsr   (langchain_community.retrievers.chaindeskr   7langchain_community.retrievers.chatgpt_plugin_retrieverr   3langchain_community.retrievers.cohere_rag_retrieverr   'langchain_community.retrievers.docarrayr   )langchain_community.retrievers.dria_indexr   2langchain_community.retrievers.elastic_search_bm25r   )langchain_community.retrievers.embedchainr   @langchain_community.retrievers.google_cloud_documentai_warehouser   6langchain_community.retrievers.google_vertex_ai_searchr   r   r   "langchain_community.retrievers.kayr   %langchain_community.retrievers.kendrar   "langchain_community.retrievers.knnr   *langchain_community.retrievers.llama_indexr   r   $langchain_community.retrievers.metalr   %langchain_community.retrievers.milvusr   %langchain_community.retrievers.nanopqr   %langchain_community.retrievers.needler    &langchain_community.retrievers.outliner!   5langchain_community.retrievers.pinecone_hybrid_searchr"   %langchain_community.retrievers.pubmedr#   =langchain_community.retrievers.qdrant_sparse_vector_retrieverr$   +langchain_community.retrievers.rememberizerr%   /langchain_community.retrievers.remote_retrieverr&   "langchain_community.retrievers.svmr'   0langchain_community.retrievers.tavily_search_apir(   $langchain_community.retrievers.tfidfr)   /langchain_community.retrievers.thirdai_neuraldbr*   .langchain_community.retrievers.vespa_retrieverr+   5langchain_community.retrievers.weaviate_hybrid_searchr,   +langchain_community.retrievers.web_researchr-   (langchain_community.retrievers.wikipediar.   "langchain_community.retrievers.your/   "langchain_community.retrievers.zepr0   (langchain_community.retrievers.zep_cloudr1   %langchain_community.retrievers.zillizr2   r6   strr>   __all__ r?   r=   <module>ro      s  (  % 
 FE R Q
/D/#%M/ </ <	/
 @/ N/ $%U/ :/ >/ D/ W/ O/ B/ @/ !"V/  F!/" +,d#/$ )*l%/& -.f'/( $%])/* 8+/, :-/.  L//0 G1/2 <3/4 >5/6 >7/8 >9/: @;/< $%\=/> >?/@ "#bA/B JC/D  QE/F 9< RF%\ID88C>J]/dGc Gc G/r?   