
    ITh	                         S SK JrJrJrJr  S SKJr  S SKJrJ	r	  S SK
JrJrJrJr  S SKJr  SrSr " S S	\5      r " S
 S\5      r " S S\5      rg)    )AnyDictOptionalUnion)InferenceProviderMapping)RequestParameters_as_dict)BaseConversationalTaskBaseTextGenerationTaskTaskProviderHelperfilter_none)get_sessionnovitazhttps://api.novita.aic                   h   ^  \ rS rSrU 4S jrS\S\S\4S jrSS\\\	4   S\
\   S\4S	 jjrS
rU =r$ )NovitaTextGenerationTask   c                 2   > [         TU ]  [        [        S9  g N)providerbase_urlsuper__init__	_PROVIDER	_BASE_URLself	__class__s    c/var/www/auris/envauris/lib/python3.13/site-packages/huggingface_hub/inference/_providers/novita.pyr   !NovitaTextGenerationTask.__init__       )i@    mapped_modelapi_keyreturnc                     g)Nz/v3/openai/completions r   r#   r$   s      r   _prepare_route'NovitaTextGenerationTask._prepare_route   s    'r"   responserequest_paramsc                 v    [        U5      S   S   nUS   UR                  S5      UR                  S5      S.S.$ )Nchoicesr   textfinish_reasonseed)r0   r1   )generated_textdetails)r	   get)r   r+   r,   outputs       r   get_response%NovitaTextGenerationTask.get_response   sD    (#I.q1$Vn!'O!<

6*
 	
r"   r'   N)__name__
__module____qualname____firstlineno__r   strr)   r   bytesr   r   r   r   r6   __static_attributes____classcell__r   s   @r   r   r      sR    A(3 ( ( (
U5$;%7 
RcId 
ps 
 
r"   r   c                   >   ^  \ rS rSrU 4S jrS\S\S\4S jrSrU =r$ )NovitaConversationalTask%   c                 2   > [         TU ]  [        [        S9  g r   r   r   s    r   r   !NovitaConversationalTask.__init__&   r!   r"   r#   r$   r%   c                     g)Nz/v3/openai/chat/completionsr'   r(   s      r   r)   'NovitaConversationalTask._prepare_route)   s    ,r"   r'   )	r9   r:   r;   r<   r   r=   r)   r?   r@   rA   s   @r   rC   rC   %   s(    A-3 - - - -r"   rC   c            	          ^  \ rS rSrU 4S jrS\S\S\4S jrS\S\S	\	S\
\   4S
 jrSS\\\4   S\
\   S\4S jjrSrU =r$ )NovitaTextToVideoTask.   c                 4   > [         TU ]  [        [        SS9  g )Nztext-to-video)r   r   taskr   r   s    r   r   NovitaTextToVideoTask.__init__/   s    )ioVr"   r#   r$   r%   c                     SU 3$ )Nz/v3/hf/r'   r(   s      r   r)   $NovitaTextToVideoTask._prepare_route2   s    ''r"   inputs
parametersprovider_mapping_infoc                      SU0[        U5      E$ )Nprompt)r   )r   rQ   rR   rS   s       r   _prepare_payload_as_dict.NovitaTextToVideoTask._prepare_payload_as_dict5   s     &<K
$;<<r"   r+   r,   c                     [        U5      n[        U[        5      (       a'  SU;   a!  [        US   [        5      (       a	  SUS   ;   d  [        S5      eUS   S   n[	        5       R                  U5      R                  $ )Nvideo	video_urlz>Expected response format: { 'video': { 'video_url': string } })r	   
isinstancedict
ValueErrorr   r4   content)r   r+   r,   response_dictrZ   s        r   r6   "NovitaTextToVideoTask.get_response:   st     *}d++=(=1488}W55]^^!'*;7	}  +333r"   r'   r8   )r9   r:   r;   r<   r   r=   r)   r   r   r   r   rV   r   r>   r   r6   r?   r@   rA   s   @r   rJ   rJ   .   s{    W(3 ( ( (=='+=D\=	$=
4U5$;%7 4RcId 4ps 4 4r"   rJ   N)typingr   r   r   r   huggingface_hub.hf_apir   !huggingface_hub.inference._commonr   r	   ,huggingface_hub.inference._providers._commonr
   r   r   r   huggingface_hub.utilsr   r   r   r   rC   rJ   r'   r"   r   <module>rf      sS    - - ; I  . 	#	
5 
&-5 -4. 4r"   