Ë
    µŒj8  ã                   óB   — d dl mZmZ d dlmZ d dlmZ  G d„ de«      Zy)é    )ÚCallableÚUnion)ÚDocument)ÚDocstorec                   óB   — e Zd ZdZdeegeeef   f   fd„Zdedefd„Z	y)Ú
DocstoreFnzãDocstore via arbitrary lookup function.

    This is useful when:
     * it's expensive to construct an InMemoryDocstore/dict
     * you retrieve documents from remote sources
     * you just want to reuse existing objects
    Ú	lookup_fnc                 ó   — || _         y )N)Ú
_lookup_fn)Úselfr	   s     ús/var/www/html/Fitness-lenito-AI-main/venv/lib/python3.12/site-packages/langchain_community/docstore/arbitrary_fn.pyÚ__init__zDocstoreFn.__init__   s   € ð $ˆ�ó    ÚsearchÚreturnc                 ó´   — | j                  |«      }t        |t        «      rt        |d|i¬«      S t        |t        «      r|S t	        dt        |«      › �«      ‚)z•Search for a document.

        Args:
            search: search string

        Returns:
            Document if found, else error message.
        Úsource)Úpage_contentÚmetadatazUnexpected type of document )r   Ú
isinstanceÚstrr   Ú
ValueErrorÚtype)r   r   Úrs      r   r   zDocstoreFn.search   sT   € ð �O‰O˜FÓ#ˆÜ�aœÔä¨°hÀÐ5GÔHÐHÜ˜œ8Ô$ØˆHÜÐ7¼¸Q»°yÐAÓBÐBr   N)
Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r   r   r   © r   r   r   r      s?   „ ñð$à˜S˜E 5¨°3¨Ñ#7Ð7Ñ8ó$ðC˜Sð C Xô Cr   r   N)Útypingr   r   Úlangchain_core.documentsr   Ú!langchain_community.docstore.baser   r   r   r   r   Ú<module>r#      s   ðß "å -å 6ôC�õ Cr   