Ë
    µŒjq  ã                  óˆ   — d dl mZ d dlZd dlmZmZmZmZmZ d dl	m
Z
 d dlmZ d dlmZ  G d„ ded	¬
«      Z G d„ de«      Zy)é    )ÚannotationsN)ÚAnyÚDictÚListÚMappingÚOptional)ÚCallbackManagerForLLMRun)ÚLLM)Ú	BaseModelc                  óL   — e Zd ZU dZdZded<   dZded<   	 dZd	ed
<   dZded<   y)ÚParamsz)Parameters for the MLflow AI Gateway LLM.g        ÚfloatÚtemperatureé   ÚintÚcandidate_countNúOptional[List[str]]ÚstopzOptional[int]Ú
max_tokens)	Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   Ú__annotations__r   r   r   © ó    út/var/www/html/Fitness-lenito-AI-main/venv/lib/python3.12/site-packages/langchain_community/llms/mlflow_ai_gateway.pyr   r      s1   … Ù3à€K�ÓØ€O�SÓØ-Ø $€DÐ
Ó$Ø $€J�Ô$r   r   Úallow)Úextrac                  ó¢   ‡ — e Zd ZU dZded<   dZded<   dZded<   dˆ fd	„Zedd
„«       Z	edd„«       Z
	 	 d	 	 	 	 	 	 	 	 	 dd„Zedd„«       Zˆ xZS )ÚMlflowAIGatewaya7  MLflow AI Gateway LLMs.

    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.llms import MlflowAIGateway

            completions = MlflowAIGateway(
                gateway_uri="<your-mlflow-ai-gateway-uri>",
                route="<your-mlflow-ai-gateway-completions-route>",
                params={
                    "temperature": 0.1
                }
            )
    ÚstrÚrouteNzOptional[str]Úgateway_urizOptional[Params]Úparamsc                ó   •— t        j                  dt        «       	 dd l}t        ‰| �  di |¤Ž | j                  r&|j                  j                  | j                  «       y y # t        $ r}t	        d«      |‚d }~ww xY w)NzF`MlflowAIGateway` is deprecated. Use `Mlflow` or `Databricks` instead.r   ú_Could not import `mlflow.gateway` module. Please install it with `pip install mlflow[gateway]`.r   )
ÚwarningsÚwarnÚDeprecationWarningÚmlflow.gatewayÚImportErrorÚsuperÚ__init__r$   ÚgatewayÚset_gateway_uri)ÚselfÚkwargsÚmlflowÚeÚ	__class__s       €r   r.   zMlflowAIGateway.__init__/   s   ø€ Ü�‰ØTÜô	
ð	Û!ô 	‰ÑÑ"˜6Ò"Ø×ÒØ�N‰N×*Ñ*¨4×+;Ñ+;Õ<ð øô ò 	ÜðHóð ðûð	ús   �A# Á#	A=Á,A8Á8A=c                óŽ   — | j                   | j                  dœ| j                  r| j                  j                  «       ¥}|S i ¥}|S )N)r$   r#   )r$   r#   r%   Údict)r1   r%   s     r   Ú_default_paramszMlflowAIGateway._default_params@   sR   € ð  ×+Ñ+Ø—Z‘Zñ"
ð &*§[¢[ˆt�{‰{×ÑÓ!ð"
ˆð
 ˆð 79ð"
ˆð
 ˆr   c                ó   — | j                   S )N)r8   ©r1   s    r   Ú_identifying_paramsz#MlflowAIGateway._identifying_paramsI   s   € à×#Ñ#Ð#r   c                ó`  — 	 dd l }d|i| j                  r| j                  j                  «       ni ¥}|xs$ | j                  r| j                  j                  nd x}r||d<   |j
                  j                  | j                  |¬«      }	|	d   d   d   S # t        $ r}t        d«      |‚d }~ww xY w)Nr   r'   Úpromptr   )ÚdataÚ
candidatesÚtext)r+   r,   r%   r7   r   r/   Úqueryr#   )
r1   r=   r   Úrun_managerr2   r3   r4   r>   ÚsÚresps
             r   Ú_callzMlflowAIGateway._callM   s¾   € ð	Û!ð �fð 
à%)§[¢[ˆt�{‰{×ÑÔ!°bð 
ˆð ÒD¨d¯kªk˜$Ÿ+™+×*Ò*¸tÐEˆ1ÐEØˆD�‰LØ�~‰~×#Ñ# D§J¡J°TÐ#Ó:ˆØ�LÑ! !Ñ$ VÑ,Ð,øô ò 	ÜðHóð ðûð	ús   ‚B Â	B-ÂB(Â(B-c                 ó   — y)Nzmlflow-ai-gatewayr   r:   s    r   Ú	_llm_typezMlflowAIGateway._llm_typee   s   € à"r   )r2   r   )ÚreturnzDict[str, Any])rH   zMapping[str, Any])NN)
r=   r"   r   r   rB   z"Optional[CallbackManagerForLLMRun]r2   r   rH   r"   )rH   r"   )r   r   r   r   r   r$   r%   r.   Úpropertyr8   r;   rE   rG   Ú__classcell__)r5   s   @r   r!   r!      s¢   ø… ñð& ƒJØ!%€K�Ó%Ø#€FÐÓ#õ=ð" òó ðð ò$ó ð$ð %)Ø:>ð	-àð-ð "ð-ð 8ð	-ð
 ð-ð 
ó-ð0 ò#ó ô#r   r!   )Ú
__future__r   r(   Útypingr   r   r   r   r   Úlangchain_core.callbacksr	   Ú#langchain_core.language_models.llmsr
   Úpydanticr   r   r!   r   r   r   Ú<module>rP      s6   ðÝ "ã ß 5Õ 5å =Ý 3Ý ô
%ˆY˜gõ %ôP#�cõ P#r   