o
    Æ°ip  ã                   @   s@   d Z ddlmZmZ ddlmZ ddlmZ G dd„ deƒZdS )	zO
Translate from OpenAI's `/v1/chat/completions` to v0's `/v1/chat/completions`
é    )ÚOptionalÚTuple©Úget_secret_stré   )ÚOpenAILikeChatConfigc                	   @   sf   e Zd ZdZedee fdd„ƒZdee dee deee ee f fdd„Z	d	ede
fd
d„ZdS )ÚV0ChatConfigz9
    v0 is OpenAI-compatible with standard endpoints
    Úreturnc                 C   s   dS )NZv0© )Úselfr
   r
   úZ/home/app/Keep/.python/lib/python3.10/site-packages/litellm/llms/v0/chat/transformation.pyÚcustom_llm_provider   s   z V0ChatConfig.custom_llm_providerÚapi_baseÚapi_keyc                 C   s$   |pt dƒpd}|pt dƒ}||fS )NZV0_API_BASEzhttps://api.v0.dev/v1Z
V0_API_KEYr   )r   r   r   Zdynamic_api_keyr
   r
   r   Ú$_get_openai_compatible_provider_info   s   ÿýz1V0ChatConfig._get_openai_compatible_provider_infoÚmodelc                 C   s   g d¢S )z„
        v0 supports a limited subset of OpenAI parameters
        Reference: https://v0.dev/docs/v0-model-api#request-body
        )Úmessagesr   ÚstreamZtoolsZtool_choicer
   )r   r   r
   r
   r   Úget_supported_openai_params!   s   z(V0ChatConfig.get_supported_openai_paramsN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Úpropertyr   Ústrr   r   r   Úlistr   r
   r
   r
   r   r      s    ÿÿ
þr   N)	r   Útypingr   r   Zlitellm.secret_managers.mainr   Zopenai_like.chat.transformationr   r   r
   r
   r
   r   Ú<module>   s
    