§
    šŠtjC  ã                  óh   — d dl mZ d dlmZmZmZmZ d dlmZ d dl	m
Z
 dd„Z G d„ dee
¦  «        ZdS )é    )Úannotations)ÚAnyÚIteratorÚListÚOptional)Ú
Embeddings)Ú	BaseModelÚtextsú	List[str]ÚsizeÚintÚreturnúIterator[List[str]]c              #  ój   K  — t          dt          | ¦  «        |¦  «        D ]}| |||z   …         V — Œd S ©Nr   )ÚrangeÚlen)r
   r   Úis      úo/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/langchain_community/embeddings/javelin_ai_gateway.pyÚ_chunkr   	   sM   è è € Ý�1•c˜%‘j”j $Ñ'Ô'ð "ð "ˆØ�A˜˜D™�LÔ!Ð!Ð!Ð!Ð!ð"ð "ó    c                  óŽ   ‡ — e Zd ZU dZded<   	 ded<   	 dZded<   	 dZded	<   	 dˆ fd„Zdd„Zdd„Z	dd„Z
dd„Zdd„Zdd„Zˆ xZS )ÚJavelinAIGatewayEmbeddingsaã  Javelin AI Gateway embeddings.

    To use, you should have the ``javelin_sdk`` python package installed.
    For more information, see https://docs.getjavelin.io

    Example:
        .. code-block:: python

            from langchain_community.embeddings import JavelinAIGatewayEmbeddings

            embeddings = JavelinAIGatewayEmbeddings(
                gateway_uri="<javelin-ai-gateway-uri>",
                route="<your-javelin-gateway-embeddings-route>"
            )
    r   ÚclientÚstrÚrouteNzOptional[str]Úgateway_uriÚjavelin_api_keyÚkwargsc                ó  •— 	 ddl m}m} n# t          $ r t          d¦  «        ‚w xY w t	          ¦   «         j        di |¤Ž | j        r<	  || j        | j        ¬¦  «        | _        d S # |$ r}t          d¦  «        |‚d }~ww xY wd S )Nr   )ÚJavelinClientÚUnauthorizedErrorz^Could not import javelin_sdk python package. Please install it with `pip install javelin_sdk`.)Úbase_urlÚapi_keyzJavelin: Incorrect API Key.© )
Újavelin_sdkr!   r"   ÚImportErrorÚsuperÚ__init__r   r   r   Ú
ValueError)Úselfr   r!   r"   ÚeÚ	__class__s        €r   r)   z#JavelinAIGatewayEmbeddings.__init__+   s  ø€ ð		ðð ð ð ð ð ð ð ð øõ ð 	ð 	ð 	ÝðDñô ð ð	øøøð 	�‰ŒÔÐ"Ð"˜6Ð"Ð"Ð"ØÔð 	GðGØ+˜mØ!Ô-°tÔ7Kðñ ô �”��øð %ð Gð Gð GÝ Ð!>Ñ?Ô?ÀQÐFøøøøðGøøøð	Gð 	Gs    ƒ Œ&Á
A( Á(BÁ-A=Á=Br
   r   r   úList[List[float]]c                ó¨  — g }t          |d¦  «        D ]¾}	 | j                             | j        d|i¬¦  «        }|                     ¦   «         }|                     di ¦  «                             dg ¦  «        }|D ]!}d|v r|                     |d         ¦  «         Œ"Œ‰# t          $ r)}t          dt          |¦  «        z   ¦  «         Y d }~Œ·d }~ww xY w|S ©Né   Úinput)Ú
query_bodyÚllm_responseÚdataÚ	embeddingzFailed to query route: )
r   r   Úquery_router   ÚdictÚgetÚappendr*   Úprintr   ©	r+   r
   Ú
embeddingsÚtxtÚrespÚ	resp_dictÚembeddings_chunkÚitemr,   s	            r   Ú_queryz!JavelinAIGatewayEmbeddings._query@   s  € Øˆ
Ý˜% Ñ$Ô$ð 
	:ð 
	:ˆCð	:Ø”{×.Ò.¨t¬zÀwÐPSÀnÐ.ÑUÔU�Ø ŸIšI™KœK�	à#,§=¢=°ÀÑ#DÔ#D×#HÒ#HÈÐQSÑ#TÔ#TÐ Ø,ð =ð =�DØ" dÐ*Ð*Ø"×)Ò)¨$¨{Ô*;Ñ<Ô<Ð<øð=øõ ð :ð :ð :ÝÐ/µ#°a±&´&Ñ8Ñ9Ô9Ð9Ð9Ð9Ð9Ð9Ð9øøøøð:øøøð Ðs   –BBÂ
CÂ&C
Ã
Cc              ƒ  ó¸  K  — g }t          |d¦  «        D ]Ä}	 | j                             | j        d|i¬¦  «        ƒ d {V —†}|                     ¦   «         }|                     di ¦  «                             dg ¦  «        }|D ]!}d|v r|                     |d         ¦  «         Œ"Œ�# t          $ r)}t          dt          |¦  «        z   ¦  «         Y d }~Œ½d }~ww xY w|S r0   )
r   r   Úaquery_router   r8   r9   r:   r*   r;   r   r<   s	            r   Ú_aqueryz"JavelinAIGatewayEmbeddings._aqueryP   s-  è è € Øˆ
Ý˜% Ñ$Ô$ð 	:ð 	:ˆCð:Ø!œ[×5Ò5Ø”J¨G°S¨>ð 6ñ ô ð ð ð ð ð ð �ð !ŸIšI™KœK�	à#,§=¢=°ÀÑ#DÔ#D×#HÒ#HÈÐQSÑ#TÔ#TÐ Ø,ð =ð =�DØ" dÐ*Ð*Ø"×)Ò)¨$¨{Ô*;Ñ<Ô<Ð<øð=øõ ð :ð :ð :ÝÐ/µ#°a±&´&Ñ8Ñ9Ô9Ð9Ð9Ð9Ð9Ð9Ð9øøøøð:øøøð Ðs   ˜BB$Â$
CÂ.CÃCc                ó,   — |                       |¦  «        S ©N©rC   ©r+   r
   s     r   Úembed_documentsz*JavelinAIGatewayEmbeddings.embed_documentsb   s   € Ø�{Š{˜5Ñ!Ô!Ð!r   ÚtextúList[float]c                ó:   — |                       |g¦  «        d         S r   rI   )r+   rL   s     r   Úembed_queryz&JavelinAIGatewayEmbeddings.embed_querye   s   € Ø�{Š{˜D˜6Ñ"Ô" 1Ô%Ð%r   c              ƒ  ó<   K  — |                       |¦  «        ƒ d {V —†S rH   ©rF   rJ   s     r   Úaembed_documentsz+JavelinAIGatewayEmbeddings.aembed_documentsh   s*   è è € Ø—\’\ %Ñ(Ô(Ð(Ð(Ð(Ð(Ð(Ð(Ð(r   c              ƒ  óN   K  — |                       |g¦  «        ƒ d {V —†}|d         S r   rQ   )r+   rL   Úresults      r   Úaembed_queryz'JavelinAIGatewayEmbeddings.aembed_queryk   s5   è è € Ø—|’| T FÑ+Ô+Ð+Ð+Ð+Ð+Ð+Ð+ˆØ�aŒyÐr   )r   r   )r
   r   r   r.   )rL   r   r   rM   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ú__annotations__r   r   r)   rC   rF   rK   rO   rR   rU   Ú__classcell__)r-   s   @r   r   r      s	  ø€ € € € € € ðð ð  €K€K�KØà€J€J�JØ:à!%€KÐ%Ð%Ð%Ñ%Ø1à%)€OÐ)Ð)Ð)Ñ)Ø5ðGð Gð Gð Gð Gð Gð*ð ð ð ð ð ð ð ð$"ð "ð "ð "ð&ð &ð &ð &ð)ð )ð )ð )ðð ð ð ð ð ð ð r   r   N)r
   r   r   r   r   r   )Ú
__future__r   Útypingr   r   r   r   Úlangchain_core.embeddingsr   Úpydanticr	   r   r   r%   r   r   ú<module>r`      s³   ðØ "Ð "Ð "Ð "Ð "Ð "à 0Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0à 0Ð 0Ð 0Ð 0Ð 0Ð 0Ø Ð Ð Ð Ð Ð ð"ð "ð "ð "ð
_ð _ð _ð _ð _ ¨Yñ _ô _ð _ð _ð _r   