
    NgS
                    p    d dl mZ d dl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 )    )annotationsN)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      i/var/www/html/ai-engine/env/lib/python3.11/site-packages/langchain_community/embeddings/mlflow_gateway.py_chunkr   
   sM      1c%jj$'' " "ADL!!!!!" "    c                  Z     e Zd ZU dZded<   	 dZded<   	 d fd	ZddZddZddZ	 xZ
S )MlflowAIGatewayEmbeddingsa  MLflow AI Gateway embeddings.

    To use, you should have the ``mlflow[gateway]`` python package installed.
    For more information, see https://mlflow.org/docs/latest/gateway/index.html.

    Example:
        .. code-block:: python

            from langchain_community.embeddings import MlflowAIGatewayEmbeddings

            embeddings = MlflowAIGatewayEmbeddings(
                gateway_uri="<your-mlflow-ai-gateway-uri>",
                route="<your-mlflow-ai-gateway-embeddings-route>"
            )
    strrouteNzOptional[str]gateway_urikwargsr   c                   t          j        dt                     	 dd l}n"# t          $ r}t	          d          |d }~ww xY w t                      j        di | | j        r!|j        	                    | j                   d S d S )Nzd`MlflowAIGatewayEmbeddings` is deprecated. Use `MlflowEmbeddings` or `DatabricksEmbeddings` instead.r   _Could not import `mlflow.gateway` module. Please install it with `pip install mlflow[gateway]`. )
warningswarnDeprecationWarningmlflow.gatewayImportErrorsuper__init__r   gatewayset_gateway_uri)selfr   mlflowe	__class__s       r   r'   z"MlflowAIGatewayEmbeddings.__init__%   s    .	
 	
 	

	!!!!! 	 	 	H  	 	""6""" 	=N**4+;<<<<<	= 	=s   " 
A<Ar
   r   r   List[List[float]]c                v   	 dd l }n"# t          $ r}t          d          |d }~ww xY wg }t          |d          D ]}}|j                            | j        d|i          }t          |d         d         t                    r|                    |d                    b|	                    |d                    ~|S )Nr   r      text)data
embeddings)
r$   r%   r   r(   queryr   
isinstancer   extendappend)r*   r
   r+   r,   r3   txtresps          r   _queryz MlflowAIGatewayEmbeddings._query7   s    	!!!!! 	 	 	H  	 
%$$ 	6 	6C>''
&#'GGD$|,Q/66 6!!$|"45555 !!$|"45555s    
&!&c                ,    |                      |          S )Nr:   )r*   r
   s     r   embed_documentsz)MlflowAIGatewayEmbeddings.embed_documentsK   s    {{5!!!r   r1   List[float]c                :    |                      |g          d         S r   r<   )r*   r1   s     r   embed_queryz%MlflowAIGatewayEmbeddings.embed_queryN   s    {{D6""1%%r   )r   r   )r
   r   r   r.   )r1   r   r   r>   )__name__
__module____qualname____doc____annotations__r   r'   r:   r=   r@   __classcell__)r-   s   @r   r   r      s            JJJ9!%K%%%%0= = = = = =$   (" " " "& & & & & & & &r   r   )r
   r   r   r   r   r   )
__future__r   r!   typingr   r   r   r   langchain_core.embeddingsr   pydanticr	   r   r   r    r   r   <module>rK      s    " " " " " "  0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0      " " " "
@& @& @& @& @&
I @& @& @& @& @&r   