o
    ưi                     @   s8   d Z g dZdedefddZdededefddZd	S )
z
Utils for handling clientside credentials

Supported clientside credentials:
- api_key
- api_base
- base_url

If given, generate a unique model_id for the deployment.

Ensures cooldowns are applied correctly.
)Zapi_keyZapi_basebase_urlrequest_kwargsreturnc                    s   t  fddtD S )z=
    Check if the credential is a clientside credential.
    c                 3   s    | ]}| v V  qd S )N ).0keyr   r   i/home/app/Keep/.python/lib/python3.10/site-packages/litellm/router_utils/clientside_credential_handler.py	<genexpr>   s    z+is_clientside_credential.<locals>.<genexpr>)anyclientside_credential_keysr   r   r   r   is_clientside_credential   s   r   litellm_paramsc                 C   s"   t D ]}||v r|| | |< q| S )z
    Generate a unique model_id for the deployment.

    Returns
    - litellm_params: dict

    for generating a unique model_id.
    )r   )r   r   r   r   r   r   get_dynamic_litellm_params   s
   
r   N)__doc__r   dictboolr   r   r   r   r   r   <module>   s    