o
    vZh                     @   s8   d dl mZ d dlmZ d dlmZ G dd deZdS )    )Optional)InferenceProviderMapping)BaseConversationalTaskc                       sH   e Zd Z fddZdee defddZdee defdd	Z  Z	S )
OpenAIConversationalTaskc                    s   t  jddd d S )NZopenaizhttps://api.openai.com)providerbase_url)super__init__)self	__class__ Z/var/www/auris/lib/python3.10/site-packages/huggingface_hub/inference/_providers/openai.pyr	      s   z!OpenAIConversationalTask.__init__api_keyreturnc                 C   s&   |d u rt d|drt d|S )Nz4You must provide an api_key to work with OpenAI API.Zhf_zbOpenAI provider is not available through Hugging Face routing, please use your own OpenAI API key.)
ValueError
startswith)r
   r   r   r   r   _prepare_api_key   s   
z)OpenAIConversationalTask._prepare_api_keymodelc                 C   s    |d u rt dt|dd|dS )Nz9Please provide an OpenAI model ID, e.g. `gpt-4o` or `o1`.Zconversationallive)Z
providerIdtaskstatusZhf_model_id)r   r   )r
   r   r   r   r   _prepare_mapping_info   s   z.OpenAIConversationalTask._prepare_mapping_info)
__name__
__module____qualname__r	   r   strr   r   r   __classcell__r   r   r   r   r      s    	r   N)typingr   Zhuggingface_hub.hf_apir   Z,huggingface_hub.inference._providers._commonr   r   r   r   r   r   <module>   s    