Ë
    ó©Ñh_	  ã                   óL   — d dl mZmZ d dlmZ d dlmZmZ dZ G d„ dee«      Z	y)é    )ÚAnyÚList)Ú
Embeddings)Ú	BaseModelÚ
ConfigDictzBhttps://tfhub.dev/google/universal-sentence-encoder-multilingual/3c                   ó”   ‡ — e Zd ZU dZdZeed<   eZe	ed<   	 defˆ fd„Z
 edd¬	«      Zd
ee	   deee      fd„Zde	dee   fd„Zˆ xZS )ÚTensorflowHubEmbeddingsa  TensorflowHub embedding models.

    To use, you should have the ``tensorflow_text`` python package installed.

    Example:
        .. code-block:: python

            from langchain_community.embeddings import TensorflowHubEmbeddings
            url = "https://tfhub.dev/google/universal-sentence-encoder-multilingual/3"
            tf = TensorflowHubEmbeddings(model_url=url)
    NÚembedÚ	model_urlÚkwargsc                 óØ   •— t        ‰|   di |¤Ž 	 ddl}	 ddl}|j                  | j                  «      | _        y# t        $ r t        d«      ‚w xY w# t        $ r t        d«      ‚w xY w)z2Initialize the tensorflow_hub and tensorflow_text.r   NzeCould not import tensorflow-hub python package. Please install it with `pip install tensorflow-hub``.zgCould not import tensorflow_text python package. Please install it with `pip install tensorflow_text``.© )ÚsuperÚ__init__Útensorflow_hubÚImportErrorÚtensorflow_textÚloadr   r
   )Úselfr   r   r   Ú	__class__s       €úk/var/www/html/eduruby.in/venv/lib/python3.12/site-packages/langchain_community/embeddings/tensorflow_hub.pyr   z TensorflowHubEmbeddings.__init__   s‚   ø€ ä‰ÑÑ"˜6Ò"ð	Û!ð	Û"ð $×(Ñ(¨¯©Ó8ˆ
øô ò 	ÜðHóð ð	ûô ò 	ÜðIóð ð	ús   ’< —A ¼AÁA)Úforbidr   )ÚextraÚprotected_namespacesÚtextsÚreturnc                 óŒ   — t        t        d„ |«      «      }| j                  |«      j                  «       }|j	                  «       S )zÉCompute doc embeddings using a TensorflowHub embedding model.

        Args:
            texts: The list of texts to embed.

        Returns:
            List of embeddings, one for each text.
        c                 ó&   — | j                  dd«      S )Nú
ú )Úreplace)Úxs    r   ú<lambda>z9TensorflowHubEmbeddings.embed_documents.<locals>.<lambda><   s   €  1§9¡9¨T°3Ó#7€ ó    )ÚlistÚmapr
   ÚnumpyÚtolist)r   r   Ú
embeddingss      r   Úembed_documentsz'TensorflowHubEmbeddings.embed_documents3   s<   € ô ”SÑ7¸Ó?Ó@ˆØ—Z‘Z Ó&×,Ñ,Ó.ˆ
Ø× Ñ Ó"Ð"r$   Útextc                 óŒ   — |j                  dd«      }| j                  |g«      j                  «       d   }|j                  «       S )z³Compute query embeddings using a TensorflowHub embedding model.

        Args:
            text: The text to embed.

        Returns:
            Embeddings for the text.
        r   r    r   )r!   r
   r'   r(   )r   r+   Ú	embeddings      r   Úembed_queryz#TensorflowHubEmbeddings.embed_query@   sA   € ð |‰|˜D #Ó&ˆØ—J‘J ˜vÓ&×,Ñ,Ó.¨qÑ1ˆ	Ø×ÑÓ!Ð!r$   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r
   r   Ú__annotations__ÚDEFAULT_MODEL_URLr   Ústrr   r   Úmodel_configr   Úfloatr*   r.   Ú__classcell__)r   s   @r   r	   r	   	   sv   ø… ñ
ð €Eˆ3ÓØ&€IˆsÓ&Øð9 õ 9ñ( ØØô€Lð
# T¨#¡Yð #°4¸¸U¹Ñ3Dó #ð" ð "¨¨U©÷ "r$   r	   N)
Útypingr   r   Úlangchain_core.embeddingsr   Úpydanticr   r   r4   r	   r   r$   r   ú<module>r<      s$   ðß å 0ß *àXÐ ôB"˜i¨õ B"r$   