Ë
    uPêjÝ
  ã                   óˆ   — d dl mZ d dlZd dlZd dlmZ d dlmZ d dlm	Z	 d dl
mZ d dlmZ  G d„ d	e«      Z G d
„ de«      Zy)é    )ÚFinalN)ÚBaseLLMModelInfo)ÚBaseLLMException)Úget_secret_str)ÚAllMessageValues)Ú_add_path_to_api_basec                   ó�   ‡ — e Zd Z	 	 	 ddededej                  dz  dej                  dz  dej                  e	z  dz  f
ˆ fd„Z
ˆ xZS )	Ú	VLLMErrorNÚstatus_codeÚmessageÚrequestÚresponseÚheadersc                 ó.   •— t         ‰| �  |||||¬«       y )N)r   r   r   r   r   )ÚsuperÚ__init__)Úselfr   r   r   r   r   Ú	__class__s         €úc/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/litellm/llms/vllm/common_utils.pyr   zVLLMError.__init__   s&   ø€ ô 	‰ÑØ#ØØØØð 	õ 	
ó    )NNN)Ú__name__Ú
__module__Ú__qualname__ÚintÚstrÚhttpxÚRequestÚResponseÚHeadersÚdictr   Ú__classcell__)r   s   @r   r
   r
      sh   ø„ ð
 )-Ø*.Ø/3ñ
àð
ð ð
ð —‘ Ñ%ð	
ð
 —.‘. 4Ñ'ð
ð —‘ Ñ%¨Ñ,÷
ñ 
r   r
   c                   ó  — e Zd Z	 	 ddededee   dedededz  dedz  d	efd
„Zeddedz  d	edz  fd„«       Z	eddedz  d	edz  fd„«       Z
eded	edz  fd„«       Zddedz  dedz  d	ee   fd„Zdededeej                  z  d	efd„Zy)ÚVLLMModelInfoNr   ÚmodelÚmessagesÚoptional_paramsÚlitellm_paramsÚapi_keyÚapi_baseÚreturnc                 ó   — |�||d<   |S )Nz	x-api-key© )r   r   r$   r%   r&   r'   r(   r)   s           r   Úvalidate_environmentz"VLLMModelInfo.validate_environment    s   € ð ÐØ#*ˆG�KÑ Øˆr   c                 ó>   — | xs t        d«      } | €t        d«      ‚| S )NÚVLLM_API_BASEz�VLLM_API_BASE is not set. Please set the environment variable, to use VLLM's pass-through - `{LITELLM_API_BASE}/vllm/{endpoint}`.)r   Ú
ValueError)r)   s    r   Úget_api_basezVLLMModelInfo.get_api_base.   s1   € àÒ>œ~¨oÓ>ˆØÐÜð Tóð ð ˆr   c                  ó   — y ©Nr,   )r(   s    r   Úget_api_keyzVLLMModelInfo.get_api_key7   s   € àr   c                 ó   — | S r3   r,   )r$   s    r   Úget_base_modelzVLLMModelInfo.get_base_model;   s   € àˆr   c                 óF  — t         j                  |«      }t         j                  |«      }d}|�|€t        d«      ‚t	        ||«      }t
        j                  j                  |¬«      }|j                  «        |j                  «       d   }|D �cg c]  }|d   ‘Œ	 c}S c c}w )Nz
/v1/modelszrVLLM_API_BASE or VLLM_API_KEY is not set. Please set the environment variable, to query VLLM's `/models` endpoint.)ÚurlÚdataÚid)
r#   r1   r4   r0   r   ÚlitellmÚmodule_level_clientÚgetÚraise_for_statusÚjson)r   r(   r)   Úendpointr8   r   Úmodelsr$   s           r   Ú
get_modelszVLLMModelInfo.get_models?   s¦   € Ü ×-Ñ-¨hÓ7ˆÜ×+Ñ+¨GÓ4ˆØ&ˆØÐ˜w˜Üð Eóð ô +¨8°XÓ>ˆÜ!×5Ñ5×9Ñ9Øð :ó 
ˆð 	×!Ñ!Ô#à Ÿ™›¨Ñ/ˆà)/Ö0 ��d“Ò0Ð0ùÒ0s   ÂBÚerror_messager   c                 ó   — t        |||¬«      S )N)r   r   r   )r
   )r   rC   r   r   s       r   Úget_error_classzVLLMModelInfo.get_error_classS   s   € Ü [¸-ÐQXÔYÐYr   )NNr3   )r   r   r   r    r   Úlistr   r-   Ústaticmethodr1   r4   r6   rB   r   r   r   r   rE   r,   r   r   r#   r#      sA  „ ð #Ø#ñàðð ðð Ð'Ñ(ð	ð
 ðð ðð �t‘ðð ˜‘*ðð 
óð ñ˜s T™zð °S¸4±Zò ó ðð ñ˜S 4™Zð °3¸±:ò ó ðð ð˜cð  c¨D¡jò ó ðñ1 #¨¡*ð 1¸sÀT¹zð 1ÐUYÐZ]ÑU^ó 1ð(Z¨Sð Z¸sð ZÈTÐTY×TaÑTaÑMað ZÐfvô Zr   r#   )Útypingr   r   r;   Ú litellm.llms.base_llm.base_utilsr   Ú)litellm.llms.base_llm.chat.transformationr   Úlitellm.secret_managers.mainr   Úlitellm.types.llms.openair   Úlitellm.utilsr   r
   r#   r,   r   r   ú<module>rN      s9   ðÝ ã ã Ý =Ý FÝ 7Ý 6Ý /ô
Ð ô 
ô$5ZÐ$õ 5Zr   