Ë
    uPêj  ã                   ó2   — d dl mZ d dlmZ  G d„ de«      Zy)é    )ÚFinal)ÚOpenAIGPTConfigc                   ó(  ‡ — e Zd ZU dZdZedz  ed<   dZedz  ed<   dZ	edz  ed<   dZ
edz  ed<   dZedz  ed<   dZedz  ed<   dZedz  ed	<   dZedz  ed
<   dZedz  ed<   dZedz  ed<   dZedz  ed<   	 	 	 	 	 	 	 	 	 	 	 	 	 ddedz  dedz  dedz  dedz  dedz  dedz  dedz  dedz  d	edz  d
edz  dedz  dedz  dedz  ddfd„Zeˆ fd„«       Zdedefd„Zdededededef
d„Zdededefd„Zededefd„«       Zededefd„«       Zˆ xZ S )ÚBasetenConfigzS
    Reference: https://inference.baseten.co/v1

    Below are the parameters:
    NÚ
max_tokensÚresponse_formatÚseedÚstreamÚtop_pÚtool_choiceÚtoolsÚuserÚpresence_penaltyÚfrequency_penaltyÚstream_optionsÚstopÚtemperatureÚreturnc                 ó¤   — t        «       j                  «       }|j                  «       D ]%  \  }}|dk7  sŒ|€Œt        | j                  ||«       Œ' y )NÚself)ÚlocalsÚcopyÚitemsÚsetattrÚ	__class__)r   r   r   r	   r   r
   r   r   r   r   r   r   r   r   Úlocals_ÚkeyÚvalues                    ú^/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/litellm/llms/baseten/chat.pyÚ__init__zBasetenConfig.__init__   sF   € ô   ›Ÿ™›ˆØ!Ÿ-™-›/ò 	4‰JˆC�Ø�f‹} Ñ!2Ü˜Ÿ™¨¨UÕ3ñ	4ó    c                 ó    •— t         ‰| �  «       S )N)ÚsuperÚ
get_config)Úclsr   s    €r   r$   zBasetenConfig.get_config.   s   ø€ ä‰wÑ!Ó#Ð#r!   Úmodelc                 ó
   — g d¢S )zE
        Get the supported OpenAI params for the given model
        )r   Úmax_completion_tokensr   r	   r   r
   r   r   r   r   r   r   r   r   © )r   r&   s     r   Úget_supported_openai_paramsz)BasetenConfig.get_supported_openai_params2   s   € ò
ð 	
r!   Únon_default_paramsÚoptional_paramsÚdrop_paramsc                 ó„   — | j                  |¬«      }|j                  «       D ]  \  }}|dk(  r||d<   Œ||v sŒ|||<   Œ |S )N)r&   r(   r   )r*   r   )r   r+   r,   r&   r-   Úsupported_openai_paramsÚparamr   s           r   Úmap_openai_paramszBasetenConfig.map_openai_paramsG   sc   € ð *.×)IÑ)IÐPUÐ)IÓ)VÐØ.×4Ñ4Ó6ò 	/‰LˆE�5ØÐ/Ò/Ø05� Ò-ØÐ1Ò1Ø).� Ò&ð		/ð
 Ðr!   Úapi_baseÚapi_keyc                 ó   — d}|xs d}||fS )zE
        Get the OpenAI compatible provider info for Baseten
        úhttps://inference.baseten.co/v1ÚBASETEN_API_KEYr)   )r   r2   r3   Údefault_api_baseÚdefault_api_keys        r   Ú$_get_openai_compatible_provider_infoz2BasetenConfig._get_openai_compatible_provider_infoV   s!   € ð
 #DÐØ!(Ò!=Ð,=ˆà Ð0Ð0r!   c                 ód   — | j                  dd«      }ddl}t        |j                  d|«      «      S )zZ
        Check if the model is a dedicated deployment (8-digit alphanumeric code)
        úbaseten/Ú r   Nz^[a-zA-Z0-9]{8}$)ÚreplaceÚreÚboolÚmatch)r&   Úmodel_idr>   s      r   Úis_dedicated_deploymentz%BasetenConfig.is_dedicated_deployment`   s0   € ð  Ÿ-™-¨
°BÓ7ˆó 	ä�B—H‘HÐ0°(Ó;Ó<Ð<r!   c                 ó^   — t         j                  | «      r| j                  dd«      }d|› d�S y)zF
        Get the appropriate API base URL for the given model
        r;   r<   zhttps://model-z/.api.baseten.co/environments/production/sync/v1r5   )r   rB   r=   )r&   rA   s     r   Úget_api_base_for_modelz$BasetenConfig.get_api_base_for_modelm   s7   € ô
 ×0Ñ0°Ô7à#Ÿm™m¨J¸Ó;ˆHØ# H :Ð-\Ð]Ð]ð 5r!   )NNNNNNNNNNNNN)!Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   ÚintÚ__annotations__r   Údictr	   r
   r?   r   r   Ústrr   Úlistr   r   r   r   Úfloatr    Úclassmethodr$   r*   r1   Útupler9   ÚstaticmethodrB   rD   Ú__classcell__)r   s   @r   r   r      sM  ø… ñð "€J��d‘
Ó!Ø#'€O�T˜D‘[Ó'Ø€Dˆ#�‰*ÓØ€FˆD�4‰KÓØ€Eˆ3�‰:ÓØ"€K��t‘Ó"Ø€Eˆ4�$‰;ÓØ€Dˆ#�‰*ÓØ#'Ð�c˜D‘jÓ'Ø$(Ð�s˜T‘zÓ(Ø"&€N�D˜4‘KÓ&ð "&Ø'+ØØ Ø"Ø$(Ø Ø"&Ø!ØØ'+Ø(,Ø&*ñ4à˜$‘Jð4ð  ™ð4ð �D‰jð	4ð
 �T‰kð4ð �t‘ð4ð ˜T‘\ð4ð �T‰zð4ð ˜4‘Zð4ð �d‰{ð4ð �D‰jð4ð  ™*ð4ð  ™:ð4ð ˜t™ð4ð 
ó4ð* ó$ó ð$ð
°ð 
¸ó 
ð*à ðð ðð ð	ð
 ðð 
óð1¸Sð 1È3ð 1ÐSXó 1ð ð
= sð 
=¨tò 
=ó ð
=ð ð
5 cð 
5¨cò 
5ó ô
5r!   r   N)Útypingr   Ú+litellm.llms.openai.chat.gpt_transformationr   r   r)   r!   r   ú<module>rU      s   ðÝ å Gôr5�Oõ r5r!   