§
    šŠtj¬  ã                   ód   — d dl mZmZmZ d dlmZ d dlmZmZ d dl	m
Z
mZ  G d„ de
e¦  «        ZdS )é    )ÚAnyÚDictÚList)Ú
Embeddings)Úget_from_dict_or_envÚpre_init)Ú	BaseModelÚ
ConfigDictc            	       óâ   ‡ — e Zd ZU dZeed<   eed<   eed<    ed¬¦  «        Z		 	 ddeded	ed
dfˆ fd„Z
eded
efd„¦   «         Zdee         d
eee                  fd„Zded
ee         fd„Zˆ xZS )ÚNLPCloudEmbeddingsa
  NLP Cloud embedding models.

    To use, you should have the nlpcloud python package installed

    Example:
        .. code-block:: python

            from langchain_community.embeddings import NLPCloudEmbeddings

            embeddings = NLPCloudEmbeddings()
    Ú
model_nameÚgpuÚclient© )Úprotected_namespacesú%paraphrase-multilingual-mpnet-base-v2FÚkwargsÚreturnNc                 ó@   •—  t          ¦   «         j        d||dœ|¤Ž d S )N)r   r   r   )ÚsuperÚ__init__)Úselfr   r   r   Ú	__class__s       €úe/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/langchain_community/embeddings/nlpcloud.pyr   zNLPCloudEmbeddings.__init__   s/   ø€ ð 	�‰ŒÔÐB J°CÐBÐB¸6ÐBÐBÐBÐBÐBó    Úvaluesc                 ó¾   — t          |dd¦  «        }	 ddl}|                     |d         ||d         d¬¦  «        |d	<   n# t          $ r t          d
¦  «        ‚w xY w|S )z?Validate that api key and python package exists in environment.Únlpcloud_api_keyÚNLPCLOUD_API_KEYr   Nr   r   Úen)r   Úlangr   zXCould not import nlpcloud python package. Please install it with `pip install nlpcloud`.)r   ÚnlpcloudÚClientÚImportError)Úclsr   r   r"   s       r   Úvalidate_environmentz'NLPCloudEmbeddings.validate_environment#   s›   € õ 0ØÐ&Ð(:ñ
ô 
Ðð
	ØˆOˆOˆOà'ŸšØ�|Ô$Ð&6¸FÀ5¼MÐPTð  /ñ  ô  ˆF�8ÑÐøõ ð 	ð 	ð 	ÝðAñô ð ð	øøøð
 ˆs   “,A  Á AÚtextsc                 óB   — | j                              |¦  «        d         S )z¶Embed a list of documents using NLP Cloud.

        Args:
            texts: The list of texts to embed.

        Returns:
            List of embeddings, one for each text.
        Ú
embeddings©r   r)   )r   r'   s     r   Úembed_documentsz"NLPCloudEmbeddings.embed_documents6   s   € ð Œ{×%Ò% eÑ,Ô,¨\Ô:Ð:r   Útextc                 óP   — | j                              |g¦  «        d         d         S )z’Embed a query using NLP Cloud.

        Args:
            text: The text to embed.

        Returns:
            Embeddings for the text.
        r)   r   r*   )r   r,   s     r   Úembed_queryzNLPCloudEmbeddings.embed_queryB   s&   € ð Œ{×%Ò% t fÑ-Ô-¨lÔ;¸AÔ>Ð>r   )r   F)Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚstrÚ__annotations__Úboolr   r
   Úmodel_configr   r   r   r&   r   Úfloatr+   r.   Ú__classcell__)r   s   @r   r   r      s:  ø€ € € € € € ð
ð 
ð €O€O�OØ	€I€I�IØ€K€K�Kà�:°2Ð6Ñ6Ô6€Lð BØðCð CàðCð ðCð ð	Cð
 
ðCð Cð Cð Cð Cð Cð ð¨$ð °4ð ð ð ñ „Xðð$
; T¨#¤Yð 
;°4¸¸U¼Ô3Dð 
;ð 
;ð 
;ð 
;ð	? ð 	?¨¨U¬ð 	?ð 	?ð 	?ð 	?ð 	?ð 	?ð 	?ð 	?r   r   N)Útypingr   r   r   Úlangchain_core.embeddingsr   Úlangchain_core.utilsr   r   Úpydanticr	   r
   r   r   r   r   ú<module>r=      s¥   ðØ "Ð "Ð "Ð "Ð "Ð "Ð "Ð "Ð "Ð "à 0Ð 0Ð 0Ð 0Ð 0Ð 0Ø ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?Ø *Ð *Ð *Ð *Ð *Ð *Ð *Ð *ðC?ð C?ð C?ð C?ð C?˜ Jñ C?ô C?ð C?ð C?ð C?r   