
    IThe
                         S SK r S SKJr  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rSr " S	 S
\\5      r " S S\5      r " S S\5      r " S S\5      rg)    N)ABC)AnyDictOptionalUnion)InferenceProviderMapping)RequestParameters_as_dict)BaseConversationalTaskBaseTextGenerationTaskTaskProviderHelperfilter_nonetogetherzhttps://api.together.xyzc                   J   ^  \ rS rSrSrS\4U 4S jjrS\S\S\4S jrS	rU =r	$ )
TogetherTask   z"Base class for Together API tasks.taskc                 4   > [         TU ]  [        [        US9  g )N)providerbase_urlr   super__init__	_PROVIDER	_BASE_URL)selfr   	__class__s     e/var/www/auris/envauris/lib/python3.13/site-packages/huggingface_hub/inference/_providers/together.pyr   TogetherTask.__init__   s    )idK    mapped_modelapi_keyreturnc                     U R                   S:X  a  gU R                   S:X  a  gU R                   S:X  a  g[        SU R                    S35      e)	Ntext-to-imagez/v1/images/generationsconversationalz/v1/chat/completionsztext-generationz/v1/completionszUnsupported task 'z' for Together API.)r   
ValueError)r   r!   r"   s      r   _prepare_routeTogetherTask._prepare_route   sK    99'+YY**)YY++$-dii[8KLMMr     )
__name__
__module____qualname____firstlineno____doc__strr   r(   __static_attributes____classcell__r   s   @r   r   r      s8    ,LS LN3 N N N Nr    r   c                   R   ^  \ rS rSrU 4S jrSS\\\4   S\\	   S\
4S jjrSrU =r$ )	TogetherTextGenerationTask#   c                 2   > [         TU ]  [        [        S9  g N)r   r   r   r   r   s    r   r   #TogetherTextGenerationTask.__init__$       )i@r    responserequest_paramsr#   c                 v    [        U5      S   S   nUS   UR                  S5      UR                  S5      S.S.$ )Nchoicesr   textfinish_reasonseed)rA   rB   )generated_textdetails)r
   get)r   r<   r=   outputs       r   get_response'TogetherTextGenerationTask.get_response'   sD    (#I.q1$Vn!'O!<

6*
 	
r    r*   N)r+   r,   r-   r.   r   r   bytesr   r   r	   r   rG   r1   r2   r3   s   @r   r5   r5   #   s8    A
U5$;%7 
RcId 
ps 
 
r    r5   c                   (   ^  \ rS rSrU 4S jrSrU =r$ )TogetherConversationalTask2   c                 2   > [         TU ]  [        [        S9  g r8   r   r9   s    r   r   #TogetherConversationalTask.__init__3   r;   r    r*   )r+   r,   r-   r.   r   r1   r2   r3   s   @r   rL   rL   2   s    A Ar    rL   c            	       r   ^  \ rS rSrU 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$ )TogetherTextToImageTask7   c                 $   > [         TU ]  S5        g )Nr%   )r   r   r9   s    r   r    TogetherTextToImageTask.__init__8   s    )r    inputs
parametersprovider_mapping_infor#   c                     UR                   n[        U5      nSU;   a  UR                  S5      US'   SU;   a  UR                  S5      US'   USS.UESU0E$ )Nnum_inference_stepsstepsguidance_scaleguidancebase64)promptresponse_formatmodel)provider_idr   pop)r   rU   rV   rW   r!   s        r   _prepare_payload_as_dict0TogetherTextToImageTask._prepare_payload_as_dict;   si     -88 ,
 J.",..1F"GJwz)%/^^4D%EJz" XccWVbccr    r<   r=   c                 V    [        U5      n[        R                  " US   S   S   5      $ )Ndatar   b64_json)r
   r]   	b64decode)r   r<   r=   response_dicts       r   rG   $TogetherTextToImageTask.get_responseG   s,     *f 5a 8 DEEr    r*   rI   )r+   r,   r-   r.   r   r   r   r   r   rc   r   rJ   r	   rG   r1   r2   r3   s   @r   rQ   rQ   7   sj    *
d
d'+
dD\
d	$
dFU5$;%7 FRcId Fps F Fr    rQ   )r]   abcr   typingr   r   r   r   huggingface_hub.hf_apir   !huggingface_hub.inference._commonr	   r
   ,huggingface_hub.inference._providers._commonr   r   r   r   r   r   r   r5   rL   rQ   r*   r    r   <module>rp      sh      - - ; I  	&	N%s N 
!7 
A!7 A
Fl Fr    