
    Y j                         S SK r S SK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\
5      r " S S	\	5      r " S
 S\5      r " S S\5      rg)    N)Any)InferenceProviderMapping)RequestParameters_as_dict)BaseConversationalTaskBaseTextGenerationTaskTaskProviderHelperfilter_nonec                   N   ^  \ rS rSrU 4S jrS	S\\-  S\S-  S\4S jjr	Sr
U =r$ )
NebiusTextGenerationTask   c                 "   > [         TU ]  SSS9  g Nnebiushttps://api.studio.nebius.ai)providerbase_urlsuper__init__self	__class__s    |/root/GenerationalWealth/GenerationalWealth/venv/lib/python3.13/site-packages/huggingface_hub/inference/_providers/nebius.pyr   !NebiusTextGenerationTask.__init__       (5ST    Nresponserequest_paramsreturnc                 v    [        U5      S   S   nUS   UR                  S5      UR                  S5      S.S.$ )Nchoicesr   textfinish_reasonseed)r$   r%   )generated_textdetails)r   get)r   r   r   outputs       r   get_response%NebiusTextGenerationTask.get_response   sD    (#I.q1$Vn!'O!<

6*
 	
r    N)__name__
__module____qualname____firstlineno__r   bytesdictr   r   r*   __static_attributes____classcell__r   s   @r   r   r      s4    U
UT\ 
CTW[C[ 
gj 
 
r   r   c            	       N   ^  \ rS rSrU 4S jrS\S\S\S\S-  4U 4S jjrS	r	U =r
$ )
NebiusConversationalTask   c                 "   > [         TU ]  SSS9  g r   r   r   s    r   r   !NebiusConversationalTask.__init__   r   r   inputs
parametersprovider_mapping_infor    Nc                   > [         TU ]  XU5      nUR                  S5      n[        U[        5      (       aI  UR                  S5      S:X  a4  UR                  S5      n[        U[        5      (       a  SU;   a  US   US'   U$ )Nresponse_formattypejson_schemaschemaguided_json)r   _prepare_payload_as_dictr(   
isinstancer3   )r   r<   r=   r>   payloadr@   json_schema_detailsr   s          r   rE   1NebiusConversationalTask._prepare_payload_as_dict!   s     '26G\]$..):;ot,,1D1DV1LP]1]"1"5"5m"D-t44EX9X)<X)F&r   r,   )r.   r/   r0   r1   r   r   r3   r   rE   r4   r5   r6   s   @r   r8   r8      s7    U		'+	D\			 	r   r8   c            	          ^  \ rS rSrU 4S jrS\S\S\4S jrS\S\S	\	S\S
-  4S jr
SS\\-  S\S
-  S\4S jjrSrU =r$ )NebiusTextToImageTask-   c                 $   > [         TU ]  SSSS9  g )Nztext-to-imager   r   taskr   r   r   r   s    r   r   NebiusTextToImageTask.__init__.   s    oKijr   mapped_modelapi_keyr    c                     g)Nz/v1/images/generationsr,   r   rQ   rR   s      r   _prepare_route$NebiusTextToImageTask._prepare_route1   s    'r   r<   r=   r>   Nc                     UR                   n[        U5      nSU;   a  UR                  S5        UR                  S5      S;  a  SUS'   SU0UESU0E$ )Nguidance_scaler@   )b64_jsonurlrY   promptmodel)provider_idr
   popr(   )r   r<   r=   r>   rQ   s        r   rE   .NebiusTextToImageTask._prepare_payload_as_dict4   sc     -88 ,
z)NN+,>>+,4GG,6J()&FJFFFr   r   r   c                 V    [        U5      n[        R                  " US   S   S   5      $ )Ndatar   rY   )r   base64	b64decode)r   r   r   response_dicts       r   r*   "NebiusTextToImageTask.get_response@   s,     *f 5a 8 DEEr   r,   r-   r.   r/   r0   r1   r   strrU   r   r3   r   rE   r2   r   r*   r4   r5   r6   s   @r   rK   rK   -   s    k(3 ( ( (
G
G'+
GD\
G	
GFUT\ FCTW[C[ Fgj F Fr   rK   c            	          ^  \ rS rSrU 4S jrS\S\S\4S jrS\S\S	\	S\S
-  4S jr
SS\\-  S\S
-  S\4S jjrSrU =r$ )NebiusFeatureExtractionTaskE   c                 $   > [         TU ]  SSSS9  g )Nzfeature-extractionr   r   rN   r   r   s    r   r   $NebiusFeatureExtractionTask.__init__F   s    2XPnor   rQ   rR   r    c                     g)Nz/v1/embeddingsr,   rT   s      r   rU   *NebiusFeatureExtractionTask._prepare_routeI   s    r   r<   r=   r>   Nc                     XR                   S.$ )N)inputr\   )r]   )r   r<   r=   r>   s       r   rE   4NebiusFeatureExtractionTask._prepare_payload_as_dictL   s      *K*KLLr   r   r   c                 R    [        U5      S   nU Vs/ s H  oDS   PM	     sn$ s  snf )Nra   	embedding)r   )r   r   r   
embeddingsrs   s        r   r*   (NebiusFeatureExtractionTask.get_responseQ   s,    h'/
8BC
9+&
CCCs   $r,   r-   rf   r6   s   @r   ri   ri   E   s    p 3      MM'+MD\M	M
DUT\ DCTW[C[ Dgj D Dr   ri   )rb   typingr   huggingface_hub.hf_apir   !huggingface_hub.inference._commonr   r   ,huggingface_hub.inference._providers._commonr   r   r	   r
   r   r8   rK   ri   r,   r   r   <module>rz      sS      ; I 
5 
5  F. F0D"4 Dr   