
    dh                     j    S r SSKJrJrJrJrJr  SSKrSSKJ	r	  SSK
Jr  SSKJrJr   " S S\5      rg)	Wrapper for Rememberizer APIs.    )AnyDictListOptionalcastN)Documentget_from_dict_or_env)	BaseModelmodel_validatorc                       \ rS rSr% SrSr\\S'   Sr\	\
   \S'   \" SS9\S	\S
\4S j5       5       rS\
S
\4S jrS\
S
\\   4S jrSrg)RememberizerAPIWrapper   r   
   top_k_resultsNrememberizer_api_keybefore)modevaluesreturnc                 (    [        USS5      nX!S'   U$ )z%Validate that api key in environment.r   REMEMBERIZER_API_KEYr
   )clsr   r   s      b/var/www/html/shao/venv/lib/python3.13/site-packages/langchain_community/utilities/rememberizer.pyvalidate_environment+RememberizerAPIWrapper.validate_environment   s(      4*,B 
 *>%&    queryc                    SU SU R                    3n[        R                  " US[        [        U R
                  5      0S9nUR                  5       nUR                  S:w  a  [        SU 35      eUR                  S/ 5      nU$ )z+Search for a query in the Rememberizer API.z6https://api.rememberizer.ai/api/v1/documents/search?q=z&n=z	x-api-key)headers   zAPI Error: matched_chunks)	r   requestsgetr   strr   jsonstatus_code
ValueError)selfr   urlresponsedatar#   s         r   searchRememberizerAPIWrapper.search   s    FugSQUQcQcPde<<+tC1J1J'KL
 }}3&{4&122"2B7r   c                 |    U R                  U5      n/ nU H"  nUR                  [        US   US   S95        M$     U$ )Nmatched_contentdocument)page_contentmetadata)r.   appendr	   )r*   r   r#   docsmatched_chunks        r   loadRememberizerAPIWrapper.load*   sK    U++MKK!./@!A*:6 , r    )__name__
__module____qualname____firstlineno____doc__r   int__annotations__r   r   r&   r   classmethodr   r   r   dictr.   r   r	   r8   __static_attributes__r:   r   r   r   r      su    (M3*.(3-.(#$ 3   $C D 
# 
$x. 
r   r   )r?   typingr   r   r   r   r   r$   langchain_core.documentsr	   langchain_core.utilsr   pydanticr   r   r   r:   r   r   <module>rI      s&    $ 2 2  - 5 /)Y )r   