
    j                         d dl mZ d dlmZ d dlmZmZ ddlmZm	Z	m
Z
 dZdZ G d d	e	          Z G d
 de          ZdS )    )Any)InferenceProviderMapping)RequestParameters_as_dict   )BaseConversationalTaskBaseTextGenerationTaskfilter_none	deepinfrazhttps://api.deepinfra.comc            	       r     e Zd Z fdZdededefdZdedededed	z  fd
Z	dde
ez  ded	z  defdZ xZS )DeepInfraTextGenerationTaskc                 b    t                                          t          t                     d S N)providerbase_urlsuper__init__	_PROVIDER	_BASE_URLself	__class__s    q/var/www/html/Carbon-Document/venv/lib/python3.11/site-packages/huggingface_hub/inference/_providers/deepinfra.pyr   z$DeepInfraTextGenerationTask.__init__   &    )i@@@@@    mapped_modelapi_keyreturnc                     dS )Nz/v1/openai/completions r   r   r   s      r   _prepare_routez*DeepInfraTextGenerationTask._prepare_route   s    ''r   inputs
parametersprovider_mapping_infoNc                     t          |                                          }|                    dd           |d<   d|i|d|j        iS )Nmax_new_tokens
max_tokenspromptmodel)r
   copypopprovider_id)r   r$   r%   r&   paramss        r   _prepare_payload_as_dictz4DeepInfraTextGenerationTask._prepare_payload_as_dict   sR     Z__..//%zz*:DAA|&WFWG5J5VWWWr   responserequest_paramsc                     t          |          d         d         }|d         |                    d          |                    d          ddS )Nchoicesr   textfinish_reasonseed)r6   r7   )generated_textdetails)r   get)r   r1   r2   outputs       r   get_responsez(DeepInfraTextGenerationTask.get_response   sW    (##I.q1$Vn!'O!<!<

6** 
 
 	
r   )N)__name__
__module____qualname__r   strr#   r   dictr   r0   bytesr   r<   __classcell__r   s   @r   r   r      s        A A A A A(3 ( ( ( ( ( (XX'+XD\X	X X X X
 
UT\ 
CTW[C[ 
gj 
 
 
 
 
 
 
 
r   r   c                   2     e Zd Z fdZdededefdZ xZS )DeepInfraConversationalTaskc                 b    t                                          t          t                     d S r   r   r   s    r   r   z$DeepInfraConversationalTask.__init__(   r   r   r   r   r   c                     dS )Nz/v1/openai/chat/completionsr!   r"   s      r   r#   z*DeepInfraConversationalTask._prepare_route+   s    ,,r   )r=   r>   r?   r   r@   r#   rC   rD   s   @r   rF   rF   '   sf        A A A A A-3 - - - - - - - - - -r   rF   N)typingr   huggingface_hub.hf_apir   !huggingface_hub.inference._commonr   r   _commonr   r	   r
   r   r   r   rF   r!   r   r   <module>rM      s          ; ; ; ; ; ; I I I I I I I I P P P P P P P P P P 	'	
 
 
 
 
"8 
 
 
4- - - - -"8 - - - - -r   